Follow Slashdot blog updates by subscribing to our blog RSS feed


Forgot your password?
Check out the new SourceForge HTML5 internet speed test! No Flash necessary and runs on all devices. ×

Comment Wrong assumption (Score 1) 170

"Swarm Intelligence" allows groups to amplify their collective IQ beyond the capacity of individuals, something that the human species hasn't been able to do because of evolutionary restraints.

Can you please tell me the individual who designed CERN? Or more simple who designed the whole computer/tablet you are now typing on.

Comment Re:Odd thoughts: (Score 1) 285

One thing nice about Powershell is that you can truncate options as long as they're not abmiguous. So you can make -Recursive be -Rec, or even -R, as long as there's not also a -Recreate or -Recover options. That seems to be a nice middle-ground.

Sounds good and cool but what is happening if "Recursive" is the only option now and tomorrow not (adding a new option/functionality Recover)? Your script which was running fine before will create an ambigous command and stop working in the new version of the shell.

Comment Re:Verbosity is easy? (Score 3, Informative) 414

A Stream is not a String. A Stream is a pipe which can serve you bytes as soon as some of them available.
If the InputStream.toString() will give you the full content of the stream you will have some very nasty errors. Eg. A beginner wants to read a file using a stream and is doing a toString() suddenly all the file will be loaded into memory into a big String eating all the memory. Another beginner listens to a tcp port using a stream does a toString() and suddenly the thread hangs until the client closes the channel. Plus you need a reader on top of the stream to have proper String encoding. Stream is for binary Reader is for strings.

“I find it extremely annoying to have to cast things into the right object type” This is by design, Java is strongly typed. If you find yourself casting too much then is something wrong with your code style or the library that you are using.

Comment Re:An Old Story (Score 1) 386

Multiple inheritance is a broad topic. It's needed, but how much and how easy you can avoid it's a matter of balance. Interfaces do it well in Java and C#. You do have some duplicate code but you avoid ambigous calls to methods.

Operator overloading is a can of worms. Perfect good tutorial are showing complex numbers (and one of the few places you need). Worst gotchas are in c++ overloading operators plus impicit casting. Eg.

list array;
list += 2;

Will add 2 to the list or add an empty list with 2 guaranted spaces to the array? Last time I checked (loong time ago) it was the last. Clean code with a lot of gotchas.

Comment Re:An Old Story (Score 1) 386

You should think of them not as training wheels but as safety belts. It does not matter how good you are at driving safety belt should be mandatory even for a F1 driver driving a van.

You are not upgrading computers to run the same version of the program at the same speed.You are upgrading because you are using a new version of the program which is doing vastly more on an operating system which is able to do vastly more and yes, indeed, some programmers are using a new framework witch makes abstraction layers over abstraction layers to do everything "universal", "reusable" and "future proof".

I agree that many programmers should now more about under the hood mechanisms but this is valid for everybody, including drivers, plumbers and electricians.

Slashdot Top Deals

If you can't learn to do it well, learn to enjoy doing it badly.