Last week, I’ve went to live person HQ to give a talk in ILTechTalks on HTML5 and how you can use some of its new APIs in order to build you next web app. Today, web apps like: gmail, maps, google docs etc’ are consider to be modern web apps. They are rich, interactive applications that users spend long hours with them. There are few features that distinguish modern (or great) web apps from sites:
- Self Contained & Functional – Think of gmail and its main effort to let you communicate as efficient as possible.
- “Offline First” – They should work even when there is no internet connection and later use the sync layer in order to save your state/data to the cloud.
- Client Side Architecture – MV* frameworks. As we have more and more code in the client side we need a good way to make it maintainable readable and (of course) testable (psst… checkout Angular.js with its test driven approach).
- Device Aware – We all know that mobile is growing like crazy… So you better make sure that your web app can run on: tablets, mobile devices and even TVs. It’s not an easy task and in many cases you might want to think on separating the apps in order to give your users the best experience for their screen size.
- Speed – There are so many articles about performance and how it will improve all the other metrics you care (CTR, CPM, TOS). In a nutshell, users expect your app to work as fast as possible and to be smooth (60fps when you scroll long list!)
The talk covered new APIs like:
- CSS For Web Apps – with a big focus on (the new) flexbox layout.
- Dynamic CSS – calc()
- Data binding
- Multithreaded Programs with web workers.
- HTML5 file API – Yep, you can work with files.
- Efficiently Transfer Data with web sockets.
- Access Native Hardware
- WebRTC – Stream Multimedia
I also tried to show some new option to work with devtools. If you wish to learn more (in hebrew) on devtools here is a set of chrome devtools web casts I’ve made last month. After good 40min I saw that people are becoming thirsty (yep… I can tell from looking at them and the beers on the side) so I wrap things with 4-5min on ChromeOS update.