Wednesday, 12 June 2013

Internet of Things

Ever since I started to play with Node.js many years go, I wondered if maybe there would be a nice clean way to solve this "Internet of Things" shizzle.

Node was really the first time we saw JavaScript make it to the server-side in a good way. We did it at Netscape with LiveScript but Javascript wasn't yet a standard at that point, and the features were limited. This was pre-ECMA days. With Node, what we saw was the "web programming language" move underneath the application, rather than just being out on the edge as the Web UI language of choice. Then some guy writes a whole operating system in JavaScript, and suddenly we see the "web language" move underneath the whole OS.

At this point I started to wonder if maybe one day this inherent web enablement would just make it's way even lower in the stack, and we end up with a standard (and extensible) "WIOS" (for lack of a better name). Basically a Web-enabled BIOS that could run everywhere. That way no matter what you did on top of the device in the firmware or app layer, it was inherently Web enabled. The new stack might then end up being WIOS -> JavaScript -> OS -> App. Now that has turned the tables a bit from the traditional BIOS -> OS -> App -> Web layering we are currently used to. 

The WIOS would need to be extensible so that each individual device type could extend it to allow for whatever native I/O capabilities is has (from sensors to lightbulbs to washing machines to whole cars). Now the Internet of Things seems so much simpler to achieve. If everything on the planet was WIOS enabled, then (secure) WebSockets would be the de-facto communication choice, and you could then use MQTT over the top of the WebSocket to do the M2M messaging piece.

Sure, you could just do the same with a regular TCP/IP based layer at the bottom and nothing else, but you would then need to deal with arbitrary ports over the Internet, probably some secure tunnelling, firewall issues, etc etc. Instead, having all these devices communicate *any* protocol over the Web solves a lot of these issues, requires no changes to Firewalls, is a known deployment and scale up/out model and is instantly intra-inter-cross-Cloud ready. 

I've bought some Ninja Blocks and plan to WIOS enable them next time I get bored.

Bit whacky, but til I see the Internet of Things brought together in a common, consistent manner, anything and everything is up for grabs. :)

Wednesday, 18 April 2012

Traders go Web

The Web is no longer too difficult, or too risky to trade financial instruments across.

See how.

Monday, 12 September 2011

Wednesday, 11 May 2011

WebSockets to plumb your TV

Cisco look to be taking on Google (and others) with the launch of their Videoscape offering. Fantastic to see that it supports WebSockets too! Makes a lot of sense if you are after an efficient, standards based way to deliver real-time content from the Cloud and across the Web.

I can see a day when TVs are all IP based, resulting in much richer content, and a richer, more immersive experience than you're used to today. A time will soon come when you can watch TV programs on demand, see content and context aware ads targeting to you (no longer just generic ads splatter-gunned to the whole audience and hope a small percentage find it relevant) and perhaps even be able to conduct e-commerce at the same time. 

You could be watching prime time, get an ad displayed for a product that is related to the show, targeted to your profile, of real interest to you, with real-time reviews appearing alongside, coupled with a crowd-sourced sentiment for not only the show you're watching, but the product being advertised as well. Embedded will be an ability to click-to-purchase, knowing the purchased item is on it's way to you for delivery tomorrow morning. 

No reason to leave the sofa.


Thanks Krakow!

Slides from a recent talk I gave at the 33rd Degree Java Masters Conference in Krakow can be found here.

Wednesday, 27 April 2011

Be the traffic - Part 2

http://www.engadget.com/2011/04/27/apple-officially-answers-questions-on-location-tracking-says-it/


"One of Apple's answers seems to disclose an extra bit of new information: "Apple is now collecting anonymous traffic data to build a crowd-sourced traffic database with the goal of providing iPhone users an improved traffic service in the next couple of years." 


Think I blogged about this concept a while ago. Fantastic to see crowd-sourced traffic data becoming a reality.

Tuesday, 19 April 2011

Who cares...

I believe that the applicability for HTML5 WebSockets is very broad. Whilst today we're seeing considerable uptake in the next generation of RIAs being built, I can see a day very soon when WebSockets will be leveraged in a myriad of ways that we couldn't imagine with yesterday's Web.

So here is a random list of large software and infrastructure companies, beyond just the browser vendors, that I believe do (or should) care about HTML5 WebSockets in a big way, and why.

Google: The Google view of your world is everything on their servers, and your online life lived through the Chrome browser, Chromium (on a laptop), or Android (on a phone/tablet). Everything Google provides is essentially Web or Cloud based. Search, GMail, Google Docs, Maps, Latitude, Wave (before it was canned), Picasa, etc. If your Google life is to be lived within the browser, then surely WebSockets constitutes the best communication fabric to connect you with your data and your rich, dynamic, online collection of life tools. The reduction in network bandwidth and latency resulting from moving from HTTP polling to WebSockets means huge savings for the likes of Google hosting these sorts of apps. The ability to do data and application aggregation directly in the browser (or mobile device) rather than at a Portal server simplifies the architecture.

Apple: With the proliferation of iOS devices, and a dislike of Adobe Flash, Apple are making big noises in the HTML5 movement, with good reason. Connecting your iOS device with iTunes, MobileMe and onboard apps with associated data requires low latency, efficient, bi-directional connectivity. Whether you're tethered, WiFi or cellular, WebSockets is ideal for providing Web connectivity for these devices. Apple built a massive new data centre for a reason; to host a lot of your online world there.

Cisco: For two reasons. Because they own technologies like WebEx that would benefit from using HTML5 technologies to provide a rich in-browser experience without the need for plugins. And also because I believe WebSockets are "TCP for the Web". So if you're the biggest player in TCP infrastructure in town, you'd care about owning that space in and across the Cloud.

Messaging Vendors: Business (or Enterprise) Messaging for the Web is the next big thing for these guys. Being able to extend the reach of critical business messaging technologies out across the Web and across the Cloud will drive a new wave of business applications that provide a broad reach of business-to-business connectivity. Some or all of these vendors have already highlighted the fact that messaging for the Web is their new hot topic. The likes of Tibco, Informatica (29West), IBM and Solace could benefit from using WebSockets to extend the reach of their existing messaging systems to the Web and across the Cloud in a real-time, efficient manner. No more de-coupling at the web middleware layer and relying on HTTP. Reduced latency, reduced bandwidth, increased proliferation of vital business data.

Citrix: Extending the reach of business applications is big business. Doing it securely and across the Web is hard. It requires special software, plugins, client-side bits and pieces and lots of security configuration. Secure WebSockets extends the reach of any business application and it's associated communication protocol across the Web seamlessly, no plugins required. Drive those apps in-browser or on Desktop and let WebSockets be the technology that "placeshifts" the app and it's data to where you are, securely. Bye bye VPN, bye bye heavy thick client installs.

Microsoft: From a heritage of pushing back against adoption for open standards (I know, I used to work at Netscape during the first browser war), to a modern Microsoft who have one of the better HTML5 enabled browsers in IE9 and (preview) IE10. The dinosaur uses it's weight to drive forward an important new standard. If future generations of Office are going to be cloud-based, subscription models, driven through IE, then WebSockets will be the best piece of tarmac between you and your next Word doc or Powerpoint preso.

Social Networking: Don't even get me started on the amount of infrastructure Facebook, Twitter, Zynga, etc could all save if they moved to WebSockets. The dramatically improved, richer user experience they could deliver by sending all their data over WebSockets is just a bonus.

The list goes on. Those are just a few examples. However one constant fact remains; HTML5 WebSockets are going to be doing things on the Web that will revolutionise how we communicate tomorrow.

I believe the future for WebSockets is very bright, and it's happening now.