Tomorrow, we’ll all be VR developers

Demand for better user experience is increasing at an ever-faster rate and driving expectations of a front end developer’s skillset. The web-to-mobile revolution took a while but mobile-to-VR will happen much faster.

Dolly the sheep was cloned in 1997, stuffed in 2003. Since then, many sheep have been cloned in the pursuit of web development.

1997 was a big year. Not because Comet Hale-Bopp appeared. Not because Steve Jobs returned to Apple. Not because Dolly the sheep was born. 1997 was the year I built my first website. Twenty years ago. I’d like to say I was two years old at the time, but that would be a shameful lie.

I found that website recently and, wow, it looks just awful. At the time, it was a modern marvel, obviously. I used Dreamweaver and remember the feeling of pure OCD joy upon discovering that Dreamweaver could output code that was directly editable. Hello HTML. We went on to become good friends. I haven’t kept in touch with Dreamweaver.

Roll forward to 2009. Javascript and CSS joined the party and yours truly had become a Web Developer. There was a lot to contend with back then. Internet Explorer insisted on having its own parallel universe. Doctype plurality was a thing that kept people awake at night, as was the constant, nagging worry that a significant number of users actively disabled Javascript. It was less about delivering an experience versus catering to the foibles of eccentric browsers, Internet-wary users, and medieval bandwidths.

At the same time, things were easier back then. Essentially, we built for the average desktop computer monitor on the average user’s desk. We thought in terms of resolution. Anyone remember 1024x768? That was a classic. 1366x768, 1280x800 and even 1920x1080 were other increasingly popular resolutions. Then we started to care about media queries and actually altering the experience depending on the screen used. We still thought in terms of resolution, but the web developer’s toolkit had become much more aligned to creating better user experiences. I remember winning business specifically because I took into account different screen sizes and designed for those.

Things change quicker than expected

Somewhere amid the flurry of parallax backgrounds, hosted web fonts, and analytics tracking, a new creature reared its head. Mobile. I don’t recall exactly when I became aware that mobile was a thing. Somewhere between 2010 and 2012. Probably because one of my desktop websites had been loaded into a mobile browser and looked dreadful. No web developer wants their stuff to look bad (although a quick visit to the Internet will disprove that thought) and so I made sure my media queries accommodated these new smaller screen sizes. Otherwise the mobile version of a website was essentially a hacked-back desktop version and that made for a bad user experience. So I found a new unique selling point: I was a web developer who knew how to handle the small number of mobile visitors that your website received. Another weapon in the arsenal of winning web business.

But we were still web developers. If you wanted a bona fide mobile app (wait, mobile phones could run apps?) then you were barking up the wrong tree. Why on earth would a business need an actual app? That would require knowledge of the low level languages used across a multitude of different mobile devices. That would require an iOS or Android developer. Rare breeds indeed. A whole new box of frogs. A different kettle of fish.

Then mobile became really popular. How a website behaved on a mobile device became very important. User experience became a really hot topic. Users suddenly cared. Web development moved on from the old approach of adaptive design to the shiny new standards of responsive design. We started to care about the intrinsic abilities of the device rather than the number of pixels. 2013 saw the first murmurings of “mobile first”, the notion that things should be designed up and not down.

The development of web-driven mobile experiences really started to take off, driven by new frameworks like jQuery Mobile, and later Ionic and React Native. The latter two leverage HTML and native mobile components, meaning we can suddenly build mobile apps. Javascript web app frameworks and libraries such as Angular and React have really helped here, with their ‘think once’ approach to building across different platforms.

I remember interviewing candidates for front end development roles in 2014 and being inconsolably disappointed that many of them still saw mobile as a different skillset. Candidates for similar front end roles in 2015 and 2016 were considerably more interested in mobile and, crucially, would often point to mobile projects in their portfolio. The 2017 front end developer is probably fluent in both ‘traditional’ web and mobile approaches, and is maybe starting to see that the blurred line is fading completely. A fair number have native mobile dev experience too. As I see it, front end roles need to be this way. Just like the Borg, we have adapted. Resistance to progress is futile (again, a quick glance at the Internet may contradict this truism).

That last new thing has changed already

So there we go, mobile is the new web. But wait. What light through yonder virtual window breaks? I heard the other day that VR (virtual reality) is the new mobile. VR could easily be AR (augmented reality). Or MR (mixed reality). Let’s just call it all XR (extended reality). VR is the new mobile is the new web. Consider that. If you are a front end developer who can relate to the sequence of events outlined in this post, then you should see all this coming. Here’s my assertion:

The 2018 front end developer will be fluent across web, mobile and VR platforms, designing experiences that work compellingly no matter how the user chooses to engage.

I’m making this assertion because I see the same pattern of evolution happening once again. Demand for a better user experience always drives things forward and it matters more in VR than anything previously. Facebook recently launched React VR, to sit alongside React Native (mobile) and React (web). Browser-based VR experiences are being championed by the likes of WebVR and A-Frame. We are seeing web-driven approaches pop up and coexist with lower level approaches such as Unity and Unreal (both developed for gaming but with obvious applications to other stuff). This is great for VR. It opens things up for web developers and I believe this will have a very positive effect on user experience.

My own team (Apps at Cisco Emerge) is already playing with web-driven VR. The overhead to build is much, much smaller than a low level approach. I took one of our existing video web apps (built with Angular) and jiggled it around to work nicely in 360 wrap-around mode in the Oculus Virtual Desktop. Not perfect — it’s purely HTML, CSS and JS — but a long way from the terrible experience I had initially predicted. It took a few hours and we had a passable prototype to show our customers and testers. The next phase is probably to build in React VR and incrementally improve the experience. I expect that to take days rather than months.

A great US President once said “you cannot escape the responsibility of tomorrow by evading it today”. I doubt he was talking about the evolution of virtual reality, but maybe there was a little bit of front end developer in Lincoln. You never know.

I wonder what the next twenty years will hold?

  1. Dolly the sheep: By Toni Barros from São Paulo, Brasil (Hello, Dolly!) [CC BY-SA 2.0 (], via Wikimedia Commons