Forgot your password?
typodupeerror

Comment: Re: Is it still braindeadly single-threaded? (Score 1) 138

by mrvan (#47414111) Attached to: Dwarf Fortress Gets Biggest Update In Years

embarrassingly parallel has a specific meaning, namely that the task is composed of a (relatively large) number of sub tasks that can each be performed completely independent of each of the other sub tasks. So, any sane attempt to pathfind (say an A* search) is not embarrassingly parallel since whether a path can be pruned depends on the best paths found so far in other branches, and there is an optimal ordering for which branches to descend into first which is also dependent on what's happening in the other branches. I'm sure you can make a parallel version by e.g. forking out N possible branches to some depth, gathering state, and then pruning and ordering centrally and branching out again on the most promising branches, but this is not "embarrassingly" parallel.

Comment: Re: Is it still braindeadly single-threaded? (Score 3, Informative) 138

by mrvan (#47413845) Attached to: Dwarf Fortress Gets Biggest Update In Years

For one unit, sure. The CPU problem in DF (as far as I understand) is that there are 200 dwarves, 100 goblins and 400 kittens all trying to pathfind at the same time. Unless I miss something, each of these units van pathfind in parallel since they don't "know" about the other's paths.

Comment: Re:Is it still braindeadly single-threaded? (Score 5, Informative) 138

by mrvan (#47413605) Attached to: Dwarf Fortress Gets Biggest Update In Years

Yes... From what I gather, the developer ("Toady") is an autodidact that doesn't use any sort of version control and no multithreading. Although the simulation might be difficult to run in multiple threads, I think the path finding is one of the biggest CPU drains and that should be embarrassingly parallel. Also, he is really giving the community a tough time by having a monolithic game engine + GUI instead of some sort of modular system, which would allow the many programming-savvy fans to build tools much more easily (tools such as dfhack and therapist now use direct memory hacking, which is annoying (therapist needs root access, dfhack encapsulates df itself) but also unstable.

Comment: Re:PeridexisErrant's DF Starter Pack - Get it! (Score 3, Informative) 138

by mrvan (#47413465) Attached to: Dwarf Fortress Gets Biggest Update In Years

Also, if you've never played DF, it is probably best to either wait a couple months until the worst bugs are fixed and the wiki etc are updated, or just grab the previous versions. This new version will still be quite rough at the edges and some of the info on the wiki, youtube etc will be outdated.

I'm pretty excited about the new release, I've been playing for a couple years and I hope that especially the AI behaviour has been improved although it is not listed in the change log as such...

Comment: Re:Other consequences (Score 3, Insightful) 138

by mrvan (#47252721) Attached to: France Cries Foul At World Cup "Spy Drone"

This is an important part of the story. Public decency laws, and nude beaches as an official exception to them, are not there to protect the nude people, they're there to protect the prude from the nude.

The sad truth is, however, that while being nude at a nude beach is OK, having a picture taken of you and distributed outside that context is not OK. For one thing, it violates my feeling of privacy more than a picture of me walking in the park (I guess there is still a remnant of prudishness there), but it can also damage my reputation and social standing among people who dislike nudity. Thus, it makes perfect sense to be stricter about taking and distributing pictures from nude beaches, just like there is a distinction between taking a picture of me in my front garden (maybe ok?), sunbathing in my back garden (less ok), watching television in my living room (bad) and having fun in the bedroom or bathroom (really bad).

(Note also that most people don't go to nude beaches because they're exhibitionist: they go there because it is much nicer to sunbathe and swim without swimming gear. If you've never swum naked, you should really try it one day, it's a world of difference)

Comment: Re:Im stickng wth C and shell scripting (Score 1) 466

by mrvan (#47241791) Attached to: Ask Slashdot: Best Rapid Development Language To Learn Today?

For most* languages out there you can automatically create a binding to a C api, if 1:1 API use is what you want. It is true that C is the default goto language for libraries, but if you actually want to do something like parse plain text (or json/xml), communicate over a socket, use SCP, etc etc, it is by no means the easiest language to do something in.

For the record: perl was king more like 20 years ago. I started around 1998 and it was all perl. 5 years later I had switched to python and I think most people started realizing that perl was not the future. If you look at e.g. tiobe, you'll see that python went mainstream around 2004 and has stayed more or less constant since.

Comment: Re:Python (Score 2) 466

by mrvan (#47241047) Attached to: Ask Slashdot: Best Rapid Development Language To Learn Today?

Yeah, although I understand the reasoning for the whitespace and don't object on principled grounds, it can be quite annoying practically if you are copy/pasting code, need to (de)indent a large block, and especially if you are forced to develop somewhere where your favourite editor/IDE that actually handles these cases well is unavailable and you have to work with something that actually inserts a tab when you press tab... *shudders*

It's also a shame that some of the things corrected in python3 were not corrected earlier, but at least they did have the courage to make some breaking changes, instead of waiting for the next language to come around and start without the excess baggage but also without the built-up community and design experience...

Comment: Re:Java in an IDE (Score 1) 466

by mrvan (#47240961) Attached to: Ask Slashdot: Best Rapid Development Language To Learn Today?

(frigging slashdot ate my generics!)

Sure, if you like typing stuff such as

Set<? super TreeMap> s = new LinkedHashSet<TreeMap>()

Just because the compiler needs to know advance every method of everything you are ever going to put into your container...

Java has its uses, and for certain hard-core back-end software it might be the most appropriate language; but for writing quick and dirty scripts to get stuff done, for prototyping, and for UI I would stay very far away from it.

(but then I'm an ex-Java developer so probably biased ;-))

Comment: Re:Java in an IDE (Score 1) 466

by mrvan (#47240947) Attached to: Ask Slashdot: Best Rapid Development Language To Learn Today?

Sure, if you like typing stuff such as


Set s = new LinkedHashSet()

Just because the compiler needs to know advance every method of everything you are ever going to put into your container...

Java has its uses, and for certain hard-core back-end software it might be the most appropriate language; but for writing quick and dirty scripts to get stuff done, for prototyping, and for UI I would stay very far away from it.

(but then I'm an ex-Java developer so probably biased ;-))

Comment: Re:Seriously? (Score 5, Insightful) 466

by mrvan (#47240923) Attached to: Ask Slashdot: Best Rapid Development Language To Learn Today?

Maybe you should leave the coding to people who actually know what they're doing? If you're just a 'dabbler' then your code will always suck in every language and 'real' coders will smell it a mile away. Looking for the latest, greatest, buzzword to add to your resume will not improve your skills.

I really disagree with this. I think everybody who touches computers and data for a living (and who doesn't, nowadays?) should know some essential programming. They might never use it, but they'll understand so much more on what is going on.

I am very far from a car geek, but I can point to the basic components of my car and has some clue about what they do; same for small jobs around the house, basic management skills, etc etc.

Comment: Re:Python (Score 3, Insightful) 466

by mrvan (#47240831) Attached to: Ask Slashdot: Best Rapid Development Language To Learn Today?

Python: 'Nuff said

+1

Python is quick to learn, portable, has great libraries, both the standard-library and frameworks such as django and sqlalchemy. You can use it OO or more "imperatively", and it has some great primitives for functional-style programming. It is easy to use in a command-line script sense and just as easy to use in a web (backend) role, from very lightweight flask to all-bells-and-whistles django. The documentation and community are also suberb, and you can find a good answer to almost every question online.

Make headway at work. Continue to let things deteriorate at home.

Working...