Future Web App Technologies: Mendel Rosenblum
Future Web App Technologies: Mendel Rosenblum
Technologies
Mendel Rosenblum
● Decoupling from the browser DOM enabled component use other places
○ Server-side rendering
○ Native client
● Supports:
○ Super fast web app startup - All components and even model data already in the web app
○ Offline operation - Can run out out of the server worker cache
● Desktop environments
○ Electron - Build cross platform desktop apps with JavaScript, HTML, and CSS
■ Extend Node.js with browser functionality (chromium)
■ Example app: Atom - A hackable text editor for the 21st Century
○ Ionic
● Native apps
○ Native look and feel user interface
○ Integrate with host platform - special devices and services
● Backend can be largely the same for both - (e.g. REST/GraphQL/RPC APIs)
○ Need legacy support
go processRequest(request);
● Encourages using tons of threads. Example: per request threads
● Various systems that promises to take a specification of your web app and
deliver it
● Storage
○ Realtime Database - Shared JSON blob (noSQL) with watches and protection
■ Client directly queries database (no web servers needed)
○ Cloud Storage - Blob storage for bigger things like files
■ Use for unstructured data you don't want to encode into JSON in the realtime database
● Google Integration
○ Admob - Show ads in your app
○ Adwords - Advertise your app on Google
○ App Indexing - Have your app show up in Google Search
● Language Translation
● Information extraction services:
○ Video Analysis
○ Speech Analysis
○ Text Analysis
● State Management
○ Reactive programming
○ Observable pattern
○ Becoming similar to old distributed system consistency issues