Friday, February 8, 2013

The Future of Coding

You don't have to write computer code for very long before realizing that you're going to spend a lot of time inside a text editor. And, a good chunk of that time is going to be spent debugging.

In many disciplines, there are only a few fundamentals. In boxing, there are only four basic punches: jab, cross, hook, and upper cut. In computer execution, like DNA, there are only two states (zero or one; or A-T or C-G, respectively). It's amazing what can be created with just two possible states mixed up in endless combinations.

In computer science, most programs continuously do three basic things:
1. Declare (foo = bar or NSTimestamp now = new NSTimestamp());
2. Test (if now > later then a=b or if snow > 6 then school = "closed")
3. Jump (GOTO 500 or JMP SIGNON)

Which begs a question that I've been pondering. Centuries from now, will computer programming still involve editing text? After all, programming is just a static form of communications between man and machine (pardon the sexism, I'm going for alliteration).

For many millennia, humans have primarily communicated statically, through writing. There are obviously other forms of communications, such as speaking and non-verbal communications (just stare at a stranger for a long time to communicate "I am creepy.") But other than writing (to include images), it's not really fixed (without the aid of technology, e.g. video).

So, just like building a house has always involved assembling small things like bricks and boards, will coding still involve text editing in the 23th Century?

No comments: