I’ve always been a fan of the concept of HTML5 app development, mostly due to the fact that I knew little Java/ObjectiveC in order to be able to even begin to do native.
That said, in the past 12 months I’ve been able to help out on an iOS app developed in ObjC & Swift; and then a hackathon where we used some neat networking tricks to create the “Internet of Christmas Jumpers” – more on that in a post later in the year.
One of the frameworks I’ve been following for a while is Ionic, and it doesn’t disappoint. One of the nicest surprises though has been the IDE functionality built out more recently in VSCode. The cordova-tools extension to VSCode is absolutely fantastic to play with:
I can click and drag on that phone in the bottom right to mimic accelerometer data. Of course; to tweak the right values you need to play around with a device in the real world – but it’s a neat ‘accelerator’ to places where you require native functionality integration.
The other thing that’s pleasing me more is the developments of Progressive Web Apps, therefore the ability to run a mobile site and download the page/functionality without having to pass through the stringent requirements of individual app stores. Most ‘apps’ I write are throwaway ideas, rather than productised moneymaking things – and the ability to run these as PWAs allows me to ignore much of the device integration – and focus on the HTML5 bits.
As browser APIs start to provide more and more in depth functionality; the need to do ‘native’ integration is passed over to the Cordova library for performance, and with the wonderful work of the open source community in keeping this every improving, we can be confident that this will continue to be ‘good enough’ for quite a while.