Yes, the web was meant for building pages , not applications , and that shows. HTML and CSS are horrible at laying out apps (even with flexbox). Which is why using front-end libraries is critical. Have a look at https://webix.com - it's amazing how expressive that widgets library is: 10 lines of code for a master-detail tree+grid layout. As for the server side and the client-server communication, nothing really beats…
* Classes
* Modules
* Block-scoped variables
* Multi-line strings
* Default parameters
* Template Literals
* Arrow functions
* Promises
* Async/await
And JavaScript keeps eating the world:
"In three months from today, 98% of all Walmart.com traffic will be serviced via Node APIs and displayed with React.js according to Alex Grigoryan, Director of Software Engineering at WalMart Labs. Three months after that, SamsClub.com, Walmart’s second biggest property, will be 100% javascript based. Even their iOS and Android experiences will eventually be done in React Native, a javascript technology that’s made to replace native Java/Objective C coding." -- https://medium.com/presence-product-group/javascript-and-nod...