|

Learn a Programming Language

Note: This article was published while I was in my early 20s. I was much younger and dumber. Please don't hold it against me. One of the perils of having a 20+ year old website!

Over at LifeHacker, they are hosting a spirited discussion on what the programming language to learn first is. I think this is a pretty interesting discussion to have and want to comment on what the others are saying, as well as justify my stance. First of all, I did weigh in, saying:

I’d say if you’re not going to be a serious applications programmer, learn some weak-typed language like PHP or Javascript first to get your feet wet with program logic without having to worry about whether your types (the difference between say a number and a word) are correct. This will help you with the control structures(if statements, loops), how the logic works and how to solve some basic problems. Then you can move on to a more advanced language and learn the different types, objects, etc.

Many of the others who commented said that Javascript is not a programming language, it’s a scripting language. Is there a huge difference? Maybe, but not to someone first learning. They will not be doing things a programming language calls for- they will be learning control structures and how a program works, what kind of logic goes into writing a program, etc. To be honest, I first learned Java when I was a freshman in college, but I didn’t really understand programming until I picked up PHP over winter break of that academic year. So is there a difference? Sure. Is it a huge deal to someone starting out? Not at all.

Then we’ve got those who say, “Learn C first, it’s the best” or someone even said, “Learn Assembly.” I know how to program and Assembly is hard. You’re not writing code in something that looks remotely like English and you need an understand of how data is represented on a machine. It sort-of applies for C too, as C is a low level language. Don’t get me wrong, C is the best language I’ve coded in- it’s fast and you can do really powerful stuff. But I think pointers alone is enough to turn someone off to C and programming in general.

Finally, we’ve got those who say learning an Object Oriented (OO) language is the way to go. I can see that. I feel there is enough abstraction there that the learner might be ok. They shouldn’t dive right into object, however, because objects are pretty difficult to visualize if you’re just starting out.

I still say my approach is at least a good one. Learning a simpler language that doesn’t put restrictions on data types will allow the learner to focus on program logic more than data representation. They will begin how to think like a programmer and can move up from there. PHP isn’t a bad place to start because it acts like a simple language (weak typed, syntax is pretty easy to understand), but you can do some powerful things like create objects.

Teaching yourself to program is a pretty daunting task to begin with. However, if you pick up a good book and start with a simple language, you should be fine.

PS- HTML is not a programming language. It’s a Markup Language. You will not learn anything about programming.

Similar Posts

  • |

    Learning Binge 2: Design, Sketch, and Angular

    Around January of 2014, I wrote about a learning plan I came up with get me up to speed on several tools, including git and Sass. That worked out relatively well for me, seeing as I use both of those every day now. I’ve decided that while I’m not going to break it down by weeks…

  • Trying Out the hyperpaper Planner

    I’m a pen and paper guy for sure, but the Kindle Scribe is a perfect companion for me. And as a result, I’ve been using the freeform notebooks more like a planner. I still use (and love) my William Hannah notebook, but my friend Brian sent me an interesting link the other day: hyperpaper.me. This…

  • |

    10 Things Every College Student Needs

    Note: This article was published while I was in my early 20s. I was much younger and dumber. Please don’t hold it against me. One of the perils of having a 20+ year old website! As we approach August and people gear up to go back to school, it is time to think of what…

  • |

    50K Downloads & More Coming to How I Built It

    Last summer I was at a crossroads with WP in One Month. In-person courses didn’t work, the webinars were running their course but that wasn’t a sustainable business model. I started having conversations with some great folks in the community – Matt Medeiros, Cory Miller, and Shawn Hesketh just to name a few. These conversations taught me…

  • | |

    lala for Music

    Note: This article was published while I was in my early 20s. I was much younger and dumber. Please don’t hold it against me. One of the perils of having a 20+ year old website!Wow! It’s been a while and I apologize. I’ve been keeping busy with Cognition Media (which is finally getting off the…

  • | |

    The Yankees and the World Series

    Note: This article was published while I was in my early 20s. I was much younger and dumber. Please don’t hold it against me. One of the perils of having a 20+ year old website! Since the last time the Yankees went to the World Series in 2003 I’ve: Graduated college (MS and BS), started…

One Comment

  1. I just started with Object Oriented BlueJ programming as my first language and its really easy to get a hang of the syntax and basic functions. I would say thats the way to go for any other beginners.

Comments are closed.