This blog is all about ideas, thoughts and observations. I will be posting mine here and opening them up to criticism and comments from the world. I want to explore potential and possibilities, to ask the question "What if ... ?". If you've ever lost sleep because your mind was whirling around a new idea, if you've ever thought "There must be a better way" and then went out and found it, if your urge to create is more than a desire, but an unstoppable psychological compulsion, then you're my kind of people. Welcome here.

Monday, August 07, 2006

Programming is no longer an esoteric skill

es·o·ter·ic (adj.)

  1. Intended for, or understood by only a particular group.
  2. Of or relating to that which is known by a restricted number of people

Unintended consequences and unforeseen ramifications are absolutely fascinating. One that has caught my attention lately is how the craft of computer programming has been transformed from something arcane into nearly-common knowledge. The skills that used to be the exclusive domain of the hardcore geek can now be acquired by anyone with a passing interest.

During the first generation of computers, programming was synonymous with assembling. Hard-wired logic circuits gave way to stored-procedure computers and the discipline of computer programming was born. The size, cost and complexity of these computers limited their deployment to large companies, government departments and other institutions. Unless you worked for a large organization that had the resources and need for one of the original behemoths, learning how to program was an avenue that simply wasn't available to you.

The personal computer revolution of the early 80's changed that. The physical availability and utility of desktop-sized computers drove the demand for programmers. However the difficulty of programming these cantankerous machines limited the skill to the gifted and truly dedicated. Learning how to program usually meant spending much time and effort, not to mention money on books and courses.

The explosion of the Internet has further demolished the barrier of entry to a speed bump. In retrospect, it's easy to see how and why this happened, but I don't remember anyone talking along these lines ten years ago. The first denizens of the Internet were the tech people, including legions of programmers, and they talked about what they were passionate about - technology. First in newsgroups and IRC, then on web-based forums, portals and blogs. Requests for help, discussions (and arguments!) about the relative strengths of particular languages, conversations regarding algorithms and techniques, how-to articles and tutorials, accessible documentation -– all of this incessant chatter has resulted in the creation of a huge body of knowledge, much of it related to programming. Search engines index this information and serve it up to the user on a virtual silver platter, on demand. Today, if someone wants to learn how to program, he doesn't have to go to university for four years, he can teach himself by reading tutorials, referencing documentation, participating in forums and practicing on his own.

In some ways, programming knowledge has mirrored that of the Open Source movement - it's a skill that has moved from the cathedral to the bazaar. What used to be restricted to a few is now available to all. However, I believe that the culture of the computer industry has been slow to catch on to this. For the most part, we still want to operate as if the members of the inner circle, commonly referred to as "the I.T. department", are the only ones that can be entrusted with the keys to the digital kingdom, and we operate as if we are the only ones possessing knowledge of how things are done. Witness the rise of what I call 'departmental programmers' -– people haven't been trained as programmers, don't have formal degrees, aren't members of an I.T. department, yet are out there creating web apps, Access databases, extensive VBA macros -– tools that their co-workers want, need and can't get out of their highly centralized I.T. infrastructure. The emergence of this role is a direct, yet unforeseen, result of the programming information that has been made available via the Internet.

Our professional culture has not yet come to grips with the fact that our precious knowledge has escaped our grasp, and is permeating through the unwashed masses we know as 'users'. We don't want to believe that the value of our skills has decreased, as if the laws of supply and demand don't apply in the cerebral realm. Yet we are going to have to contend with these facts, and change because of them. I believe this will be one of the great challenges our industry will grapple with in the next five years.


The value of knowledge is proportional to the effort it takes to acquire it.


Labels:


Comments: Post a Comment

Links to this post:

Create a Link



<< Home

This page is powered by Blogger. Isn't yours?