Primarily, bragging rights... but bragging rights on a global scale.
This... definitely this. You generally cannot test your own work. You have too many assumption about how it works.
What developers SHOULD do is unit testing. One way to make this more bearable is to "code to the test". First create the unit tests which will prove your code does what it is supposed to.. then code until the tests pass. It's more like a game this way.
You mean like a human giving birth to another human and then dying off?
Do the policemen suffer any penalty for issuing bad tickets? Until that happens this will never end.
Go get Algorithms in Java and implement the algorithms. Not only will you learn about algorithms but simple tasks like this teach you a lot about coding that you can't learn from a book. That would be things like testing, and debugging.
Next implement something!
Good beginner projects are conway's game of life.
Tetris or breakout.
You can also go to one of the programming challenge websites and start working through their problems.
Then you really need to find a project that you want to implement. If not that at least an open source project that you can contribute to.
How about make windows illegal?
I still believe it is ridiculous that murderers get shorter sentences than this.
and what is the probability of someone successfully blowing up a plane using liquids?
Make sure you replace your hubcap gasket while you got the car up.
Statistics in it's purest sense is simply math. Very few people know very much about this.
Statistics in the wild is generally bullshit! You should not be able to get two equally qualified people the same data set and receive two different answers!
As for statistics for performance measurement? If you are doing something important than analyze worst case performance. Statistics doesn't come into play in this case.
The issue is more like this.
If you don't know what a splay tree is you will never know when to use one. It's a problem of not knowing what you don't know. It is very rare that you will need a datastructure and then go find one. You will use the tools you have to solve the problems in front of you.
Well... first you have to find their command and control channels. Then you have to figure out how they work. Many times the command and control is both distributed and encrypted so it is very hard to "chop the head off"
This is why writing software is more than simply learning a language. You also have to learn how the machine works.
Also, this isn't a problem with binary representation. You have the same issue with decimal representation. Try dividing 10/3 and then performing a bunch of math on it.
In any real terms is putting someone on the moon today any easier than it was in the 1970's?