What should I study in order to be a programmer. (except programming languages :) )
I know some C/C++ and some Java(, but I don't have the thinking of a programmer. I probably need to study some algorithms. What is your opinion?
What should I study in order to be a programmer. (except programming languages :) )
I know some C/C++ and some Java(, but I don't have the thinking of a programmer. I probably need to study some algorithms. What is your opinion?
You need to study a vast variety of things to become a programmer. These include:
The thing is that you need to take a small step at a time. Now you know a couple of programming languages, good, learn something about databases, read about algorithms. Then go, apply it in practice. This will give you experience to think about. This thinking will take yoy to the next stage, you get deeper into algorithms, you learn more about languages features. After some time you start to think of global issues like application architecture. An so it will go on, one iteration after the other you will be getting better and better.
Imaging a field of old dry grass. You need to have it burnt. What will you do? To make it more effective you ignite the field for several sides, then it will burn evenly. You watch it, where it goes out you ignite again. There it goes. Always watch out where in your knowledge you have white spaces and focus efforts on there when you have the time and wish (or need).
My advice (and also what I did) is to start programming right away. After programming continuosly for 5 years, you can call yourself a programmer :) Also it helps to read theory as you go (various books and blogs on algorithms, design, good practices...), but practise is the foundation :)
Since programs are built out of algorithms, yes, it would be good to know that. Look at your average CS curriculum and it will be a decent rundown of skills that are useful for a programmer. The specific skills you need depend somewhat on your specialization, but basic computer science will serve you well anywhere.
The most important thing, as far as I"m concerned, is to choose a project and build it yourself, from scratch. This doesn't have to be a huge project, in fact, something small is probably better to start with.
During the course of building your project, you're going to come across all sorts of things you need to do and don't know. Then, and only then, go and read about them until you can solve them. Eventually, you should be able to finish the project.
Not only is this how most programmer get started, but as far as I see, being a programmer at its most basic means being able to program anything. After finishing a few of these projects, you'll be able to program anything (even if you don't know anything necessary, you'll know how to learn as you go, the #1 skill).
Programmer is who writing programs. To become him - start writing programs. That's all.