Unhosted web apps
The Unhosted project offers a new path for web development that is technically and socially significant. The key idea is: browser-based apps with no server-side backend. This is done using standardised remote-storage with various new web/browser features (WebStorage, CORS, WebFinger, OAuth). The result: first, it unifies development work into the browser; second, it shifts the balance of control of data toward users. It also leads to a web not of pages but general data.
Posted by HXA on 4th November 2012.
Federated Wiki - the next evolution of the wiki
Ward Cunningham, inventor of the wiki, has extended his original ideas and built a working prototype known as the 'Smallest Federated Wiki'. It is open source and there are Ruby or Node versions. We've installed it at temporalitywiki2.herokuapp.com. Feel free to have a go, but it might not be immediately obvious how to use it. For more information see c2.com/cgi/wiki?SmallestFederatedWiki. (c2.com was the first wiki to appear, it was developed by Cunningham and is about programming).
Posted by Mark on 14th September 2012.
Node.js - Javascript for back-end development
See nodejs.org. The project is immature but seems to be going somewhere; even Crockford blesses it. Node utilises server resources very efficiently and is suitable for developing lightweight networked server processes. It may affect mainstream web development by encouraging a move away from the 'serving pages' model. Node's programming model (event-driven I/O) can have its difficulties but oddly enough front-end developers familiar with Ajax applications may find it quite natural.
Posted by Mark on 14th September 2012.
Javascript ecosystem flourishes
River Trail is a javascript engine that supports data parallel processing. Emscripten allows programs written in many languages to be translated into Javascript. WebGL lets browsers use 3D graphics hardware acceleration. WebRTC enables video/audio/data streaming directly between browsers. Web workers support multithreaded Javascript on the browser. Web Sockets provide efficient low level browser/server network connections. Web apps may soon use cameras, audio, GPS and others.
Posted by Mark on 14th September 2012.
Programming language choice
Small languages are the true way. For low level control of the machine - C or perhaps a very limited subset of C++. For large projects, Go seems like a better choice than C# or Java; fast compilation, built-in concurrency and an interesting way of using interfaces instead of classical style object orientation. For web development Javascript can be used on both client and server and has dynamic typing, nestable key/value pairs, first class functions, closures and prototypical inheritance.
Posted by Mark on 14th September 2012.