When I started my career in programming, I was 10 years old and enrolled in a summer computer camp called ACE. I didn’t get to decide what to learn, I followed a strict curriculum: BASIC, Java, C++, with a little HMTL thrown in on the side.
If you’ve made the choice to become a programmer today, though, it seems like it would be so difficult to figure out where to get started…
And man, there are a lot of ways to go about figuring that out. If you search “What programming language should I learn,” you’ll probably find cool images like this one:
All those things are going to pose a lot of questions to you about what kinds of projects you want to work on, what field you want to get into, or even how much money you want to make. And of course, those are all very important considerations to make.
I feel like one thing often gets lost, though, when thinking about real beginners: what kind of learner is he or she? How is a true beginner really supposed to know whether they want to get down into the
mallocs and pointers with C or abstract everything away with Python and Ruby? Doesn’t it depend on how his or her brain works? I feel like it was good for me to work from the ground up, abstracting as we went, probably because I really like knowing the how and the why of things. Others probably don’t care about that and just want to get to the cutting edge as fast as possible.
I could be way off here, but there needs to be a better way for us to help programmers get started than just telling them what the “best languages” are. And I don’t know what the answer is here, or how to do this practically, I feel like we need to take a closer look at where a beginner is coming from, not just where he or she wants to go.