Friday, July 1, 2011

A Comparison of Browsers: Popularity and JavaScript Compatibility

At the beginning of every month, new statistics are published on browser usage: At the onset of July 2011, as you can see from the diagram below, Chrome is closing in on Firefox, even as IE is losing its market share.

Source: StatCounter Global Stats - Browser Market Share


Wednesday, June 29, 2011

SVForum Cloud Services SIG: "The Future of the Data Center"

By the title of the meetup, namely "The Future of the Data Center", you might conclude that the two scheduled talks would be about how to architect future data centers, racks, power, cooling, etc. But, the talks were a bit more focused on only two, but important, aspects of enterprise clouds:
Brad Stone, Nexenta: Cloud Storage.











Sunday, May 29, 2011

Cloud Fabrics and Virtual Networks

In the last couple of years, nearly every networking equipment vendor is touting their new data center fabric aimed at the creation of clouds. Take a look at the [partial] list below, culled from the respective web sites:

Company Fabric Offering
Arista Networks ????
Brocade Communication Systems, Inc. Data Center Fabric
Cisco Systems Unified Data Center Fabric
Extreme Networks Open Fabric Data Center
Force10 Networks Open Cloud Networking
HP FlexFabric
IBM BladeCenter
Juniper Networks QFabric
NEC ????


Thursday, May 26, 2011

At the Silicon Valley Cloud Computing Group: Zynga presents a Real World Case Study

If you believe cloud computing is still in its infancy, you have not learnt about Zynga. While Zynga have a hybrid cloud that powers their game servers involving their data center, a private cloud, zCloud, and a public cloud, namely Amazon Web Services (AWS), the more interesting fact is that they expect to be profitable in 2011 with a net margin of 35%, or a net profit of $630m on a $1.8B revenue.


Tuesday, May 24, 2011

At the Cloud and Virtualization SIG on Virtual Networks

This SDForum Cloud and Virtualization SIG meeting saw a set of very exciting set of presentations by vCider, Big Switch and Cisco. There have been mature commercial availability of CPU and storage clouds, but there have been no rich commercial offerings of [virtual] networks1.


Friday, May 20, 2011

Virtual Networking and Clouds.

Recently, in a blog post written by Chris Marino, titled Virtual Networking, It’s Not Just a VLAN…, I came across a beautiful definition of what a virtual network is:
"A virtual network is a network you control that runs on top of another network that you don’t control."

Friday, May 13, 2011

Cloud Computing according to Yahoo!

In a presentation yesterday at Cloud Computing at Yahoo! Lessons, Challenges and Futures, Yahoo! Cloud Wrangler Geoff Arnold presented a view of how the Yahoo network needs to evolve in the present day cloud computing environment.
Although the actual extent of the present day Yahoo network could not be divulged for obvious reasons, Geoff argued that public cloud providers like Amazon Web Services (AWS) could not support the functionality that is expected of the Yahoo network. Even if the public network were to be made use of for a 24x7x365 production network, Yahoo would have to rent bare metal CPUs networked and storaged1 together, and I do not know if the economics for such a deployment is already there. (We know, though, that Netflix uses AWS for streaming movies to its subscribers). This is probably true of other network based services such as Facebook's, Google's, etc.
Yahoo! Cloud Architectural Vision

The Yahoo! cloud architectural vision that was laid out — slide 31 on Slideshare.net — somewhat explains why general purpose public cloud services may not be sufficient: There seems to be substantial functionality that is somewhat Yahoo-specific that is not necessarily readily available in the public cloud. And, Geoff talked about "planet scale" for most of the functionality Yahoo delivers. In addition to the familiar layers of SaaS, PaaS and IaaS, that are probably richer than their run-of-the-mill counterparts, he also sees a Knowledge as a Service (KaaS) layer sandwiched between SaaS and PaaS.

Overall, you come away with the awesome feeling that the Yahoo network is really very big.

The video of the presentation is at the Silicon Valley Cloud Computing Group channel at Ustream.


1We can regard this kind of journalistic license [of creating new verbs on the fly] as an advantage of the computer science profession.

Monday, December 13, 2010

Proud Recipient of a Google Chrome OS Notebook Cr-48!

Happiness comes to you in different ways. Today, I was surprised, along with 199 others I believe, at the HTML5 Talk event conducted by Google at their campus in Mountain View. While HTML5 was definitely talked about, the key surprise was kept so until the last few minutes of the presentation by the Chrome OS product manager, when he announced that everyone attending the talk would get a Cr-48, as part of their pilot program!

Cloud computing is certainly taking hold, and you can read about Google CEO Eric Schmidt's thoughts at the announcement. There are several reviews already out on the Cr-48, including this one by IT World.

Here's a first impression of an engineering major, a sophomore — my son — on the Cr-48:
Microsoft and Apple have to rethink their computer strategy!
Nothing but the Web.

Thursday, December 9, 2010

Netflix moving to Amazon Cloud by Hien Luu - A Review.

It is not often that you get to listen to a story that describes how a massively scalable application — as of October 2010, Netflix has nearly 17 million paid subscribers for their streaming solution — has been developed for the cloud, in this case the Amazon cloud, known as Amazon Web Services (AWS). Hien Luu described such a story. He was part of the implementation team at Netflix, and is presently with LinkedIn.
The event was conducted by Software and Architecture Modeling (SAM) Special Interest Group of the SDForum.

He made the presentation livelier by sprinkling interesting questions about Netflix throughout his presentation, and awarding a copy of the book titled Host Your Web Site in the Cloud to whoever in the audience answered a question with the greatest accuracy1.

Hien's presentation involved four sections (Slide #2):
  • Why Amazon cloud? The answer, as you would expect, is that "Netflix is not in the business of creating and operating data centers", even though they currently have 2 data centers for their private data, and the Amazon cloud proved to be an effective platform for hosting the Netflix streaming solution.
  • Tour of AWS. This tour was a very useful introduction to AWS, particularly since the later portion of the talk makes use of several of the AWS components in creating the streaming solution.
  • How Netflix leverages [the cloud]. Netflix uses ~4000 EC22 instances during encoding movies into digital format for streaming, typically a 15-day exercise, while ~1000 EC2 are normally deployed for servicing subscribers. The storage is of the order of petabytes. The storage for movies, built on AWS S3, has a rather large latency — 300 mS — and hence the S3 is front-ended by Memcached, and the resulting latency is brought down to about 5 mS. (Slide #30). Slide #32 highlights the storage usage: e.g., ~800M objects in SimpleDB, ~17M objects in S3. Slide #33 brings out the importance of some key features that would be desired in a cloud, but were missing from AWS, as Netflix prepared their implementation; Memcached is one of the missing services.
  • Best practices. In this section, Hien highlighted the need for automation — Can you imagine setting up 4000 machines by hand? —, minimizing latency, ensuring storage persistence, instrumenting every step of the call, sharding, etc.
Overall, a lively evening, as you got to know how Netflix has prepared itself for paid subscriber growth for the streaming solution.

There were several announcements made at the beginning of the session:
  • SAM SIG & Java SIG will be combined beginning January 2011
  • Jian Zhang of GridX announced they have openings for software engineers — Hadoop, Java, Front-end UI programmers — in building a cloud based financial application for the Smart Grid.

1One example question was "How many paid subscribers does Netflix currently have?". The answer is 17 million. There were more books than there were questions, and some lucky folks in the audience got the rest of them in the end.
2Elastic Compute Cloud.

Saturday, December 4, 2010

The Action behind Clouds: Cisco's Acquisition of LineSider.

Clouds are good for cloud subscribers, but how can cloud providers offer on-the-fly provisioning such as is expected by the subscribers? Clearly, requests1 for Infrastructure as a Service (IaaS) at a subscriber level — a certain combination of CPU, networking and storage — must be translated down to device-level, actionable, commands to both physical and virtual devices. And, these commands need to be effected as a single transaction in the cloud provider system. Cisco's intent last week, to acquire LineSider Technologies, brings this matter to the fore.

LineSider's white paper on Network Services Virtualization elaborates on the challenges by bringing out the limitations of point2 products of the following types:
  1. Configuration Management and Automation Engines
  2. Inventory and Capacity Management
  3. Network Alarm and Correlation Management
Their OverDrive product "... automatically initiates the creation of the required virtual machines (VMs). As the VMs are coming online the OverDrive virtualization engine defines and deploys the network access and security models across all required infrastructure devices (routers, switches, firewalls) as needed, to deliver the Cloud service to the defined end-users. The entire process is completed in seconds ...". Moreover, "Once the Business Policy is implemented and the Cloud service is active, the access and security models are bound to the end-point resources and persisted in the OverDrive engine."

What is the moral of the story? While it is important to create point technologies for the cloud, it is also important to think about their manageability in an 'end-to-end' scenario: The cloud subscriber is one of the ends, and the cloud provider is the other end, with all the devices in between — physical or virtual — associated with the cloud service in a persistent, auditable, manner.

1Requests for cloud services are equally well applicable to both private enterprise cloud subscribers and public cloud subscribers.
2What were once 'end-to-end' solutions become 'point' solutions in an evolving system.

Thursday, December 2, 2010

HTML5: Up and Running by Mark Pilgrim - A Book Review.

For quite some time, I have felt that good programmers can be good storytellers; this book confirms my belief. The conversational style of presentation is particularly appealing.

This is an excellent introductory HTML5 book for someone who has prior knowledge of HTML, CSS, DOM & JavaScript. This is a book that is useful even to experienced web programmers who may think that they already know what the book is going to say; a good author can tie together various nuances into beautiful prose.

Chapter 2 on Detecting HTML5 Features is a typical example of how a good programmer can be a good storyteller. It introduces the Modernizr, an open source MIT-licensed JavaScript library, in a very easy way. The reader is led slowly, but inexorably, to the conclusions the author wishes to establish regarding how to ensure proper web programming in the context of HTML5.

Chapter 3 provides a very nice introduction to the semantic elements of HTML5 by evolving a HTML4 document, also a syntactically valid HTML5 document, into a more desirable HTML5 document, making use of new semantic elements.

Chapter 5 is a rather thorough explanation of the semantics of the <audio> and <video> elements. There is ample detail about containers and tracks — of audio and video packaging — that it completely demystifies the handling of audio and video in HTML5.

Other chapters delve into various other aspects of HTML5, and this is a book you want to have so that you can refer to it whenever you want to recall the thought behind a certain HTML5 feature.

There is humor in the book too. e.g., on p. 147,
"Everybody knows about web forms, right? ... You don't know the half of it ... HTML5 defines a dozen new input types ... I don't mean to say that all of these exciting features are actually supported in every browser ... In modern browsers, yes ... In legacy browsers ... all of these features degrade gracefully in every browser. Even IE 6."
The italics are mine, for emphasis.

The online version of the book is made available free under a Creative Commons License.

There are many other reviews of the book on the web, and I found this one by Ben Nadel particularly enjoyable to read.

This is definitely a book for your bookshelf, physical or virtual.

Sunday, October 10, 2010

From Silicon Valley Code Camp 2010, Part II.

Day 2

In the session on Fun with HTML5, CSS3 and JavaScript, Tab Atkins Jr. [substituted for Newton Chan and] took the audience through creating a complete gaming program on the fly, called worms, by making use of the canvas element. Very educational.

In the session on REST for the rest of usKen Yagen provided an overview of the RESTx open source framework for creating RESTful services through demos. Key characteristics of this framework are:
  1. RESTx resources are self-discoverable through RESTful APIs.
  2. RESTx lets you define your services in any language of your choice.
He recommended the O'Reilly book on RESTful Web Services as good introductory reading material.

The session on Building Video Applications with YouTube API by Jarek Wilkiewicz was useful because the published APIs available both for browser-based integration with Player APIs and rich back-end data store with Data API enable rich vertical integration. Some amazing statistics:
  • 2B views/day
  • 150m mobile views/day
  • 24 hours of video uploaded/minute
The final session of the camp that I attended was with the title Are you ready to switch your role from PM to scrum master? Do you know what you do not know? by Amit Sarkar. One thought I came away with was the Agile and Waterfall methodologies are useful in different contexts; the Agile is definitely more useful in software development arena. Has any one used the Agile methodology in, say, the construction of a large airport such as the San Francisco International in place of Waterfall methodology?

Epilogue

Pulling together all the resources to accomplish as an enormous a task as this camp is really very commendable. Thank you, Peter Kellner. Equally commendable are the corporate and institutional sponsorships that funded the activity. Particularly for the for-profit companies, this form of social responsibility will only increase societal goodwill towards them.

Saturday, October 9, 2010

From Silicon Valley Code Camp 2010, Part I.

Prologue

This year's 2-day Silicon Valley Code Camp 2010 is characterized by 9 tracks, 194 sessions and 3040 registrants. This is quite a huge undertaking, considering that it is run entirely by volunteersAlthough sponsored by a lot of big name companies, I'd say that one company that is conspicuously absent is Apple.

A good part of the organization of the camp is the manner in which volunteers were solicited: It was very easy for anyone to sign up on the web for one or more of ~1.5-hour slots; I volunteered for the registration hour on both days, prior to the actual conduct of the sessions.

Foothill College is on a nice campus.

I chose the sessions I attended with no particular intent of following any one track fully.

Day 1

The session on Introducing Google APIs Part-I (A-Z & Geo) was very informative regarding the enormity of application level services provided by Google, more than about 80 sets of APIs. In particular, the utility of Fusion Table was nicely brought out.

In the session on Sencha Touch: Amazing Mobile Web Apps with HTML5, CSS3 & JavaScript, David Kaneda described the Sencha Touch application development framework product that enables mobile development for touch-enabled devices using primarily HTML5, CSS3 & JavaScript. This method may see considerable success because of the simplicity it affords the mobile application developer: No significant knowledge of anything other than those three. (There is another similar framework in this space, namely Appcelerator's Titanium). David also explained Syntactically Awesome Stylesheets (SASS) and the Compass framework that together contribute to greater fun in dealing with style sheets. He mentioned, or recommended, use of PhoneGap to prepare the Sencha Touch app for the Apple Store for iPhone apps.

In one of the last sessions of the day, Tab Atkins Jr. provided one of the most engaging sessions I attended on the 1st day. Starting with an overview of the new elements in HTML5, he went on to provide rather unique capabilities that HTML5 brings to a web page.

I can only look forward to tomorrow.

Thursday, October 7, 2010

GTUG Meetup on Google Apps Script: A Review.

This meeting on 6 October 2010 was primarily about Google Apps Script by Martin Omander, Developer Advocate at Google.

After a greeting by Van Riper, lead organizer of the Silicon Valley GTUG Meetup Group, the following initial announcements were made.
  1. Bess Ho gave out the discount code for Paypal X Innovate conference; also mentioned games design, Oct 12.
  2. Kevin Nilson talked about the upcoming Silicon Valley Code Camp, October 9-10
  3. Wesley Chun, the chief organizer of the Google tracks in the camp, briefed the audience on what is to come in those tracks.
The main talk began by showing the home page of Google Apps Script:
Subsequently, Martin went through examples of different functions created by Google and others in the Script Gallery, e.g., =weather(), =getTweets(). He also went through a simple mail merge example.

Tuesday, September 28, 2010

HTML5 Overview Meetup in Silicon Valley: A Review.

HTML5 Overview by Robin Zimmerman, Product Manager, Kaazing Corporation, September 28, 2010

As is usual in the IT industry, a single phrase or concept (or an acronym) means different things to different people and HTML5 is no different. Robin presented a section by WHATWG group that produces a clear distinction among the following:
  1. Features that are considered part of the next generation of HTML beyond HTML5 ...
  2. Features that are part of HTML (and this specification) but that are currently published as separate specifications ...
  3. Features that are not currently in this document that were in the past considered part of HTML5, or that were never part of HTML5 but have been referred to as part of HTML5 in the media ...