WHAT'S THE DIFFERENCE BETWEEN A CODER, A HACKER, A PROGRAMMER, A DEVELOPER, AND A COMPUTER SCIENTIST?
These words might all mean the same thing to you. Perhaps you hear geek, nerd, and dweeb, but we all know these have very important differences. Knowing the differences also can give you a sense of how deep you want to go on your coding adventure.
- Coders - Can pretty much figure out it. It'll work, but it won't be pretty.
- Hackers - usually low level folks, skillful, with detailed understanding of some area deeply, often scarily deeply.
- Programmer - Write code and understand algorithms. Often work alone and well.
- Developer - Are the best generalists, can use lots of different systems and languages and get them to talk to each other. Are true and broad professionals, work with people, and communicate well.
- Computer Scientist - Need to be able to prove how computers work, at a theoretical level. Are usually math people also.
If you are closer to one of these already you can get an idea of which direction to head.
ARE WE ASSUMING WEB PROGRAMMING?
Everyone on the thread assumed some kind of web programming, which makes sense, since nearly everyone's on the web in 2013. However, just a few years ago we might have sat our friend down and made a Hello World app at the console, or perhaps loaded up Visual Basic, dragged a button, and Message Box'ed Hello World.
If you want to be a coder today, or, let me go further and say if you want to be an effective coder, you will want understand the web and what really happens when you type twitter.com in your web browser. Just like you should understand how trees grow if you want to be a carpenter, how engines work if you want to be a race car driver, or where the water comes from if you want to be a plumber. Heck, you should really understand all of these things if you want to be an effective human. ;)