
Netscape first provided a grand unification of sorts by offering a single, uniform interface to resources spread across the globe. Simple HTML interfaces to CGI (and later PHP) scripts provided the second grand unification-as suddenly software developers did not need to worry about client software distribution any more. Both Java and Javascript attempted (in their own ways) to enhance the degree of sophistication of the end-user experience. Protocols and technologies came and went (xml-rpc, SOAP, Java RMI, OpenLaszlo, etc.) while the typical web development solution slowly converged towards a (now traditional) LAMP stack architecture. As web development projects became more demanding, frameworks like Spring and Rails (for Ruby) demonstrated the viability of the MVC pattern and helped spawn replicas (CakePHP, Django, Grails, etc.) into other communities. Today it's fair to say that the move towards the MVC architectures was just another (spontaneous, unplanned) attempt to unify development over the web. Simplicity often tends to be a great focal point of evolution. In the last 5-6 years another type of unification became possible due to the surprising resurgence of a most unlikely candidate: Javascript. First Javascript was the glue that made possible the ideas behind HTML5 (as an entirely new set of APIs, and not just a new set of tags). Then in 2009 with the first release of Node.js (relying on Google's Javascript V8 engine) the creation of web servers and networking tools using JavaScript became not just possible, but also extremely efficient. These days, using MongoDB as the document database, Node.js as the server platform (with Express as a flexible and robust server-side web application framework) along with AngularJS (by Google) for the GUIs on the client side, developers are finally capable of creating more agile software by using a single language across all layers of application development. This has the potential to drastically change how we teach web programming. Bring your own laptop and join us for a workshop as we explore in tutorial fashion all major aspects, stages and components of web development with the MEAN stack.
| selected citations These citations are derived from selected sources. This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | 7 | |
| popularity This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network. | Top 10% | |
| influence This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | Average | |
| impulse This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network. | Average |
