Tech Trained Monkey

Everyday Problem Solvers

About “Who should learn programming”

As most of you already know, there’s a buzz about who should learn to program and who should not. I will say now that im in favor that everyone should, and I say this because as you learn to program you learn a set of techniques that will most definitely help you all of your life.

Most people who are discussing this matter are focusing on the question “Ok, I learned to program, now what do I do with it?”. My answer to this question is: “I don’t care!”. I don’t want you to learn to program because I want to hire you, or because the world needs programmers or because the children in Africa are hungry, I want you to learn to program because when you put your head into making an algorithm you develop skills that are very useful in life and business, such as:

  • Deviation Planning
  • Error Handling
  • Loop Handling
  • Resource Optimization

Deviation Planning and Error Handling are siblings concepts. I call “Deviation Planning” the ability to predict where things might not be as you wanted them to be and you need to either reject them or handle them. Error Handling is the ability to predict where things might go “off-the-tracks” and either “how to put them back on tracks” or “how to in a nice and user-friendly-way display that things have gone wrong”. Now you might be thinking “A lot of people know that… and they don’t program and never did”. A lot of people can deal with problems as they appear, programmers can identify “hot-spots” and what kind of errors might occur and they plan ahead for them. As a rule of thumb if someone is surprised that an error occurred, they’re not good at Error Handling.

Loop Handling is the skill to know how many times something must or can be done in order to achieve a desired result. This is relevant because, I’ve witnessed at least 5 times, people say that you could do X how many times you wanted, Y will happen, like: “Give a employe a bonus and he will always perform/engage/deliver/bla-bla-bla better” (sounds ridiculous, but YES IT HAPPENED!). Loop Handling is far more than do this that amount of times.

The most important of all, in my opinion, Resource Optimization, the art of making more with the same (not more with less). This is specially difficult to apply to humans. Teach a machine to turn X in Y give it X you get Y. Teach a man to turn X in Y, give him X and who knows what you might get? Maybe you get something better than Y.

When I discussed this with my colleagues they argued that you can learn this all these skills in other areas but they all agreed that programming is the only that teach them all.

In conclusion, the mayor of New York probably has little use for the core concepts of the .Net CLR but I’m sure that all agree that he could use some extra points on his error handling skill and maybe polish resource optimization… What do I know… I don’t even live in NY!


8 responses to “About “Who should learn programming”

  1. ipad repair penang April 12, 2013 at 11:44 am

    Superb site you have here but I was wanting to know if you knew of any
    forums that cover the same topics talked about in
    this article? I’d really like to be a part of group where I can get comments from other experienced individuals that share the same interest. If you have any recommendations, please let me know. Kudos!

  2. Iris April 18, 2013 at 2:06 am

    I am curious to find out what blog platform you have
    been utilizing? I’m having some small security problems with my latest site and I would like to find something more secure. Do you have any recommendations?

  3. macbook repair April 19, 2013 at 10:42 am

    Heya i’m for the primary time here. I came across this board and I find It truly helpful & it helped me out much. I’m hoping to present one thing again
    and aid others like you helped me.

  4. iphone screen repair petaling jaya April 21, 2013 at 9:08 am

    Whats up very nice blog!! Man .. Beautiful .
    . Amazing .. I will bookmark your website and take the feeds additionally?
    I’m happy to search out a lot of useful information right here within the submit, we need develop extra techniques in this regard, thank you for sharing. . . . . .

  5. Dustin April 26, 2013 at 1:25 pm

    Excellent way of describing, and pleasant article to take facts regarding my presentation subject matter, which i am going to present in college.

  6. Ipad 3 Screen repair bangsar April 29, 2013 at 1:53 pm

    I’ve been surfing on-line greater than 3 hours nowadays, yet I by no means found any interesting article like yours. It is pretty price enough for me. In my opinion, if all site owners and bloggers made just right content as you did, the net will likely be a lot more helpful than ever before.

  7. iphone repair petaling jaya May 3, 2013 at 1:39 am

    No matter if some one searches for his required thing,
    so he/she needs to be available that in detail, therefore that thing is maintained over

  8. iphone repair petaling jaya May 5, 2013 at 1:52 pm

    I enjoy what you guys are usually up too. Such clever work and exposure!

    Keep up the excellent works guys I’ve incorporated you guys to my blogroll.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: