Future coding

There is an issue that may at some point begin to loom large for software developers everywhere: In the future, how will we code our computer programs?

Right now I am typing this on a MacBook keyboard. I find it to be a convenient and comfortable way to enter all sorts of text and data.

When I am walking around, I can still continue to “type” emails and text messages. I just switch to Google’s speech-to-text, which is usually highly reliable if you speak in unaccented American English (as I do).

So for natural language text, going keyboard-less doesn’t seem like it is going to be a show stopper. But coding is a different thing entirely.

There is no good way, in current frameworks, to create a computer program by “speaking” it. Also, coding is a highly non-linear process. Having written something, you tend to go back over it many times. Most computer programs are created by a process of highly iterative editing.

So how are we going to deal with this when we are all wearing those future extended reality glasses? Will we create software through a combination of speech and hand gestures?

Or in the future will we still continue to write our programs using old fashioned QWERTY keyboards? I guess we will find out soon enough. :-)

5 Responses to “Future coding”

  1. J. Peterson says:

    Given the piano keyboard has been around in some form for half a millennium, it’s plausible the QWERTY keyboard could have similar staying power.

  2. admin says:

    Good point! Useful physical objects that fit the human body well tend to stick around. It would be interesting to make a list of great examples.

    Here are a few: piano, guitar, drum, hammer, axe, shoe, jacket, hat, eyeglasses, drinking mug, knapsack.

    I wonder whether, in the future, we will carry around a portable QWERTY keyboard. Or maybe they will just be lying around, ready to connect to the nearest person’s wearable.

  3. Adrian says:

    Two reactions:

    1. Bret Victor has a great talk called The Future of Programming, which (cleverly) suggests that (among other things) coding in the future might be more visual than textual. So maybe we won’t need keyboards. You’re probably familiar with it, but just in case: https://vimeo.com/71278954

    2. I don’t consider writing code as substantially more non-linear than writing, say, a blog post. You’re right that coding _is_ very non-linear, but so are other kinds of writing. I don’t think I could easily knock out a good email message with a voice interface because (for me) composition is also a very non-linear process: from correcting simple typos, to changing the paragraphing, diction, style choices, reordering the ideas, and cutting the noise. Heck, I usually don’t write the subject line until the body is complete.

  4. A Marshall says:

    How about the hubble pen.

    Many folk prefer to write with a pen even though there are many obvious benefits to working on the computer. What if the pen or stylus actually felt like the real thing, but that the text was getting inputted into a computer. Then the ‘screen’ has the ability to rewrite the text (perhaps you are working on e-ink, or perhaps the text just appears to you using your future extended reality glasses and getting the text projected onto whatever surface you are leaning on).

    There could be some form of gesture to say make a gap and allow you to add extra text. You could rearrange the text on the page with a different set of Gestures.

    Perhaps it interprets your quick scrawl, and converts it to a neater version of your own handwriting. You could even have it spell check your handwriting and make the auto corrections (again, in your own handwriting).

    Carrying a pen or stylus around with you is much more convenient than a keyboard.

  5. Adam says:

    Of some interest may be a recent (though after your post) article about a game developed hands-free, with voice recognition and head tracking: https://arstechnica.com/gaming/2019/04/coding-without-a-keystroke-the-hands-free-creation-of-a-full-video-game/

Leave a Reply