Someday, Everyone Will Be a Programmer

Over the past few decades, Computer programming has ignited gallons of technological innovation, disrupting one industry after the other. For as long, programming has been a skilled task, a niche profession, art of sorts too. It has also made good programmers a rare breed. But I’ve started to imagine that in the coming years everyone will be able to program.

“Give a man a fish and he will eat for a day. Teach a man to fish and he will eat for the rest of his life.”

Most people already program their devices as end-users to a tiny extent, be it an iPhone or the heating thermostat. But a more diverse level of programming will reach the masses, sooner than one might think. It won’t be the same as one would perceive writing complex computer code. It will be more intuitive.

At the moment, the majority of programming is profit or research oriented. The mass programming that I anticipate will primarily be self-serve. Want your refrigerator to automatically order a watermelon and some cold beverages for home delivery based on periodic weather forecast checks? Just program it through your tablet. Want to replace a broken part in your juicer mixer? Just program the 3D printer to make a new one right at home. Want the carpet vacuumed before the in-laws arrive in the evening? Just program the personal robot at home to do so while you are at work.

This emergence is already being made possible due to:

1. Open hardware initiatives, that make device integration and prototyping easier than ever, like Arduino, Raspberry Pi, SparkFun, Seeed Studio, GTA04, Pandora Handheld, and its all going to be huge.

2. Global ‘Learn to Code’ initiatives, that encourage programming as a fun activity for all, like Code Year 2012 (where 333,628 people have already enrolled at the time of writing this post), the UK government introducing programming lessons into British schools, and ‘The Academy for Software Engineering‘ – New York City’s first public high school that will actually train kids to develop software, and even the One Laptop per Child (OLPC) project will reach out to kids in under-developed nations.

3. Visual programming tools, that enable a simplified approach to developing applications, will also help accelerate the adoption of the self-serve programming culture, a bit like ifttt I suppose. But their UI/UX will take a few more years to achieve mass appeal. (Updated 21 Feb 2014: checkout some fascinating screenshots of Visual Programming Languages)

4. Community support – Years ago I read somewhere that “Institutions will try to preserve the problem to which they are the solution.” I believe programmers and hackers are not such institutions. We like to share, teach and learn in the process. The sheer volume of open source projects out in the wild is an evidence of this. The existing programming community will help thrive the Long Tail of mass programming.

Computer Science may remain to be for the elite, but someday, soon, self-serve programming is going to become a common man’s Swiss Army Knife.

7 thoughts on “Someday, Everyone Will Be a Programmer

  1. You are right to certain extent. I think it would be little ahead of programming. Programming also would be programmed. As Anthony said common devices will be programmed by certain inputs.

  2. Although one programmer has the necessary skills and knowledge to work competently on a problem or even create a program, he or she can only do so much. Creating the source code for an operating system, for example, will require thousands of manhours from a single programmer and most probably, he or she will only be halfway through. There just isn’t enough time for one or even two programmers to work effectively to produce a usable program..

  3. even researchers in psychology know how to program now; the common web blogger is starting to learn it too. with all the resources on the web, anybody can learn the basics.

  4. The technology will always find new ways of evolution and surely your thoughts do have some weight. But the main problem in common man taking programming seriously in that you have to understand the machine’s language assume its functioning in advance.
    I am sorry to say bur I do not agree with Sandeep Mishra’s Negativity as we are still a power house in IT sector especially software designing.

  5. I hope that it will be in India also…I think image is showing perfectly that why western countries are so ahead in IT and development…India is popular for…just scams

  6. Hi, I like your thinking! However, I disagree somewhat…

    In one respect, I think there will be a midpoint in which the programing of common devices will require some abstract high level implementation. However, that won’t last long… Common devices will program themselves via simple input, such as voice. Actions/Triggers and or events will not be executed via a programming console (Unless we define programming console as visual steps); rather, via a series of questions and answers, input statements interpreted as what the user desires. Etc…

    Thanks,

    Anthony

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>