Mark Billen asks whether a consumer switch to more passive, touchscreen-based devices could endanger the development of future developers.
Perhaps I’m already reaching the age where my outlook is hampered by dewy-eyed nostalgia. A hankering back to those early days of an upbringing heavily influenced by unfeasibly clunky computers. As cutting-edge technology always is, they were awe-inspiring at the time and every bit as essential to me as the devices we all seemingly take for granted today. It was this wonder and magic that fueled an interest in computer science, the degree I would later sit and indeed the tech journalism career I have enjoyed since. What’s more I believe that due to the very nature of the machinery, I was able to experiment with how it worked.
Desktop and laptop computers, PC or Mac, in less sophisticated days had something important. What they often lacked in computational power and convenience, they compensated for in being open. The limitations were not boundaries but rather invitations to hobbyists and enthusiasts to develop, in more ways than one. Those who had perhaps grown up feverishly keying code listings into a Sinclair Spectrum, just to play an all-too often unfulfilling ‘homebrew’ game, were already at home with programming. Computer literacy, by today’s definition, would inevitably evolve into something far in excess of ‘Googling’ and reading your email.
“Much like modern cars, we are required to know and investigate less the nuts and bolts of how they operate.”
One of the threats we face from a modern computing paradigm, certainly at consumer level, is passivity. While understandably people welcome intuitiveness and accessibility from devices, we inevitably sacrifice freedom and versatility in the process. Smartphones and more significantly tablets, suggest a desire from consumers to move away from the keyboard, mouse and monitor definition of a computer. Lightweight operating systems are automatically updated, running streamlined web-connected apps rather than sprawling software suites. However, much like modern cars, we are required to know and investigate less the nuts and bolts of how they operate.
The experience is much more passive, so what does this imply for rearing the next generation of developers? Yeah sure, users can download certain apps for coding and debugging on the move – although these are more supportive than substantial. In addition the obvious focus seems to be around client-side web technologies, beginning and ending with HTML5 and CSS3. Both are valid in their own right of course but have little to do with the native technologies associated with either iOS or Android apps.
This ‘closed’ approach to development and indeed a ring fencing of the operating system might be great for the vendors but what of the bigger picture? It is already conceivable for the next generation of computer users to dismiss PCs completely, discarding them as passé in comparison to devices carried in their pockets. So if we still expect young users to be desktop-literate enough in the workplace or will inevitably look to them to build our computer systems of the future, is there cause for concern?
“Until we can simply swipe modular blocks of code into order and build truly powerful, original systems – the touchscreen tablet won’t cut it.”
To answer this it’s worth considering how the actual mechanics of software development have evolved. If the device paradigm has shifted considerably, you might expect that the traditional practice of ‘coding’ has changed alongside. However, by and large, it remains identical. It will still come back to keying in those listings at some stage, despite reusable open source libraries like jQuery enabling us to ‘Write Less, Do More”. Until we can simply swipe modular blocks of code into order and build truly powerful, original systems – the touchscreen tablet won’t cut it.
One of the big worries here is quite simply the physical act of writing code, whether that is in fact HTML or C++. In the earlier days of command-line PC operating systems, primarily MS-DOS and indeed Linux, the communication lines between man and machine were drawn to promote the concept of procedural instruction. You couldn’t even perform basic file operations without knowing and constructing a valid syntax! So when it came to learning BASIC and crafting those first few applications it didn’t take a huge cognitive leap to compile them.
So while it’s conceivable for the tablet to become all purveying, perhaps the most intriguing long-term impact will be how it manages to spark tomorrow’s developers before they realise that’s what they want to be. What do you think? Comments and feedback encouraged below…