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 ...

Monday, August 30, 2010

Do we need yet another blog on cloud computing?

Why do we need yet another blog on cloud computing? In this age of information overloading, responsible netizens need to clarify the reason for the creation of another blog.