The art of programming
Software development might be a science but an excellent code is a work of art. The programmer uses a language to write code, which has its own grammar. The programmer follows the syntax, composes accurate expressions and does his best to create concise code. As with literature only mere combination of right words and sentences does not produce a beautiful poem or prose, similarly just an act of writing correct code does not make it aesthetic or pleasing.
Although written to achieve an objective, program itself is a subjective entity. The code is a reflection of the programmers’ personality. Good programmers get emotionally involved with their code, programs are often described using words like ugly, beautiful, awesome or sexy. There is a kind of personal bond with the piece of code. Names of movies, movie characters, ice-creams, donuts, birds, animals, trees, flowers and many other day to day nouns are commonly found as names of software. Programmers are very close to these things from real life and hence they choose to name their software after them. A good programmer relies greatly on intuition rather than memory.
Programming seeks to create a two way interaction, which is a step up from traditional art forms. The users can not only appreciate the beauty of the end result but also play with it. Like an artist programmer derives inspiration from his surroundings and seeks to imitate them. It’s the same reason why today’s interfaces are so more intuitive and quick to learn. People can easily understand the purpose of an object by merely looking at it. It’s no surprise why we have terms like bins, folders, files, note-pads, forms, buttons, drag & drop, click, tap, swipe, eBooks, calendars, drawers and many more used commonly in interface design.
Like atoms in the real world, pixel is the building block of life on screen. Screen gives life to the character. We can program feelings of pain, sorrow, misery by way of pixel manipulation. Almost every real world phenomenon can be simulated in software environment. So be it the universe, solar system, the gravity or the sub-atomic world. Off course we cannot create or impart consciousness to our characters from the virtual world, even if we build physical robots that still doesn’t seem to be the possibility. But with programming we can come unbelievably close to creating the illusion of reality, which at times isn’t illusion at all. Try playing a game like Prince of Persia or Counter strike and see how you respond to the character’s action. Programming gives you the ability to play the role of the creator where your imaginations have no bounds.
If one could learn his spoken language, then the person can learn a programming language too. Like any other language it takes practice and frequent use. Children benefit greatly from learning to program. Programming opens up a whole new world for these kids. For adults there is more than enough in the programming world to provide you with a hobby for a lifetime, whose benefits are incalculable.