Archive for April, 2010

Automation to Innovation: A historical account of the future

Tuesday, April 20th, 2010 at 2:21 am   - Posted by Shivesh Vishwanathan
“A piece of software is mass-produced the instant it is written.”

Towards the later half of the twentieth century, a big revolution gripped humanity. After having tackled mass production and creating machines, people looked to using a single machine to do multiple things. I am happy to report that software was born, and with it, a period of information revolution was unleashed. The whole digital world is an automated mass production factory that can’t help being any other way. A piece of software is mass-produced the instant it is written (it is soft-ware after all!). In fact, people go to great lengths to limit this inherent mass production feature by encrypting information, using DRM etc. etc.

Industrial revolution took the pockets of automation already happening and put it on steroids. Similarly, information revolution takes the pockets of innovation and puts them on steroids. The result is for everyone to see. Just the internet itself doesn’t cease from being an immense source of innovative entrepreneurs and even more innovative users generating “user generated content”. However, just like automation couldn’t be an end unto itself, innovation for innovation’s sake is meaningless. And so here we go… What is innovation for? Automation enabled worldwide mass production, and what innovation is enabling is a worldwide mass varietization. There was a time when standardization was sought after as a means of achieving conformance. Parts were supposed to adhere to a standard. Today, standardization is looked upon as a means of achieving variety (companies now support a standard, don’t they?). HTTP, HTML, WWW and so many building blocks of the information revolution are examples of standards that enable variety to emerge and thrive. Open source only takes this variety-production-ability to the next level by freeing up the mass production of software.

Today’s teens and the so-called millenials have limited attention span, want a huge variety to choose from, and are just not afraid of the ton-loads of information that is being off-loaded on them. Mr. Henry Ford’s customers might have been content with “a car painted any colour that he wants so long as it is black”, but today’s teens expect to choose from a free-flowing variety of options. Great companies of the future will be those that realize this need for variety and capitalize on it. So if you are building software, remember the following:

  1. Build scope for variety into your system. Enable users to customize and personalize your software. It might seem like a whole lot of trouble for nothing, but it will pay off in the end.
  2. Support a variety of standards. You don’t know where your software will end up finding its users and what they will make of it.
  3. Have a big heart. Trust your users a bit and let go of some things. Don’t worry, they will catch the ball and run with it.

I have a feeling that this list will look a lot clearer in hindsight, but if you can add, please do. I am letting things go a bit myself!

It is said that a picture is worth a thousand words. Following is an interactive flash image of the evolution of variety amidst us.

This post was thought out and written over 2 days. The two diagrams above were built with Raptivity in about 20 minutes.

 

Technology Trends in Gaming Industry: My Views from the GDC

Friday, April 16th, 2010 at 3:05 am   - Posted by Pravin Kulange
I recently visited the Game Developer Conference at San Francisco. GDC is the largest event for folks in the gaming industry. This year’s GDC attracted a record number of participants from across the world and highlighted some interesting trends that are significantly changing the gaming industry. While I observed various interesting trends during this GDC, I am limiting this blog post to the three that I think are the important ones: Social Games, Augmented Reality and Mobile.

1. Social Games
Social gaming is spreading rapidly beyond the borders of game platforms, and attracting those users who rarely played games before. It has caught on because it’s a lot of fun to play with your real friends and with real identities on social networks such as Facebook, MySpace and hi5. Moreover, console and PC game vendors are also attempting to use social graphs in multi-player games.

Companies such as Zynga, Playdom, and Playfish are thriving on social platforms and earning big sums by selling virtual goods. There is room for experiments as the initial investment is low compared to traditional video games. It is now possible for small game titles to get noticed in the long tail of games competing for attention on the social platforms like Facebook (which has over 400 million users).

2. Augmented Reality (AR)
With AR, the line between real life and games is blurring. Add 3D and HD video to it and what you have is a clear trend towards a more immersive gaming experience. All the top game console vendors are into it, and we will see plenty of augmented reality games in the near future.

Building on Wii’s efforts to change gaming from a sit-down experience into an active and physically involved one, Sony unveiled their motion controller PlayStation Move during the GDC. There were other interesting demonstrations by smaller vendors too. One of it was Parrot AR.Drone quadricopter controlled by an iPhone connected through Wi-Fi where wannabe pilots can navigate, shoot and do other interested things. Although not demoed in the GDC, Microsoft is also planning to launch new motion control system for XBox 360, codenamed Project Natal, where only a video camera is used to get you in the AR game and there is no need of a controller. So, interesting!

3. Mobile
Like many other industries, the gaming industry is upbeat about mobile platforms, and this segment is set to explode with launch of tons of iPhone like devices. Numbers suggest that one out of five mobile applications is a game, which goes to show how much this medium is already popular for gaming. Mobile platforms are increasingly used in almost every type of game that we know: video, MMOG (massively multiplayer online) and social games. Following are some of my observations from the GDC about the use of mobile platforms in gaming:
  • iPhone: It appears that iPhone will continue to dominate as the best mobile gaming platform for some more time. Developers are using iPhone and iPod Touch creatively, be it as a remote for playing games, as an extension to the game development IDEs, or as part of the integration with social platforms. On the flip side, the Apple AppStore is far too saturated, and that may encourage developers to look elsewhere.
  • Android: That elsewhere is increasing looking like Android. As big as it is, considering that share of iPhone in global market is just around 3% of all mobile handsets and 14.4% of smart phones, and looking at the pace at which device manufacturers are adopting Android, there is no doubt that games will take to Android.
  • Windows Phone 7: Microsoft demonstrated new tools (part of XNA Game Studio) that enable developers to write once and publish for multiple Microsoft game platforms – Windows, Xbox 360 and Windows Phone 7. This cross-platform development ability seems to have helped Microsoft in attracting attention. Folks are optimistic about it but they don’t expect an iPhone-killer, I think they are keeping their fingers crossed for something that really adds to Xbox 360, PC gaming experience.
  • Others: RIM (Blackberry), Nokia and Qualcomm (Brew) are also in the game (do pardon the pun!) and doing their best to grab market share.
So what does it mean for the game developers?
Game developers need to look beyond their traditional development tools. For example, in addition to the usual languages and frameworks, many games now utilize the powerful capabilities that 2D and 3D engines and tools like Unity and Unreal . Knowledge of e-commerce and m-commerce API is also a mainstream need in order to realize the huge potential to monetize these games.

Social games themselves are actually a very different breed! Unlike traditional games, most of these games are light on UI and front-end, with complex business logic behind them on the server. So they need expert knowledge of server side languages like PHP, ASP .NET and Flex, frameworks like .NET, J2EE, Spring and Hibernate and integration technologies like Web Services (REST/SOAP), XML and XSL. As if that were not enough to make them look like a complex enterprise system, they also need storage and management of huge amount of data with database systems like Oracle, MS SQL Server and MySQL. There is also a big network effect involved with social games, so the knowledge of architecture and platforms that can be scaled easily, including the Cloud Computing, is also at play.

After attending the GDC and looking at these trends, I get a distinct feeling that, as gaming comes to the mainstream at your home or to a social network near you, the concept of game development itself is changing rapidly.
 

Apple’s Secret Sauce: Interactive User Experience

Monday, April 5th, 2010 at 5:34 am   - Posted by Shivesh Vishwanathan

An interesting study conducted recently could shed some light on why some of the new-age companies like Google and Apple are scoring so well compared to the erstwhile leaders like Microsoft and Yahoo!. The study from Cornell, published in , shows that experiences are better than possessions. The study essentially says:

The satisfaction we get from buying vacations, bikes for exercise and other experiences starts high and keeps growing. The initial high we feel from acquiring a flashy car or megascreen TV, on the other hand, trails off rather quickly.

I will not be exaggerating at all if I attribute the recent successes of Apple, from the launch of iPod to iPad (read Apple sold 300,000 iPads on its first day), to the creation of great user experiences. Experiences stick with users for a long time and are hard to compare very objectively. What Apple creates is what we call Interactive User Experience. If you are thinking IUX is just some nice UI, think again! IUX goes beyond the mere user interface and puts you firmly inside the context of your interaction. It is rooted in three principles that are coming of age in 2010 – Touch, Sensor and Location. It’s the difference between driving a car and racing it on a PlayStation. IUX is the thing of the future, just like GUI was the thing of the future back in the late 70s. And with the iPads and iPods of the world just coming out, it is safe to say that we are just getting started!

Our white paper Interactive User Experience: Going Beyond Interfaces, describes how IUX is different from UI, and illustrates it with some examples.

 

SuperSpeed USB 3.0: A Perfect Complement to Solid-state Drives?

Monday, April 5th, 2010 at 4:51 am   - Posted by Subodh Bhide
Super fast USB 3.0 and colossal SSD seems to be like a perfect marriage, with the two clearly complementing each other.

The SuperSpeed USB 3.0, as the name suggests, aims to be much faster than its predecessors, the Hi-Speed USB 2.0. With a signaling rate of 5 Gbps, usb.org claims a 10x performance boost over Hi-Speed. As I had mentioned in my previous post on SSD, the capacity of flash NAND based SSDs is on the rise. Few hundreds of giga bytes have now become standard capacities. As this type of storage reaches the enterprise world, the struggle for capacity increase will continue, and in the near future, we will have SSDs with terra byte capacities.

Now, even as SSD is a great improvement over traditional storage media, and enables massive storage spaces, without the fast speeds of data transfer, the large amount of storage would be severely restricted. To get a sense of the enormity of this problem, consider this: Based on a back-of-the-envelope calculation, USB 2.0 will take approximately 73 minutes to read 250 GB of data whereas USB 3.0 will take 7.5 minutes (not considering any types of latencies). So, combining USB 3.0 and SSD together will give us an almost perfect combination that includes a large capacity source (or a sink) and a very fast channel to move data in and out of it.

A close analysis of the specifications brings out 5 primary reasons that make USB 3.0 so fast –

  1. Physically, USB 3.0 implements 2 additional twisted signal pairs than USB 2.0 for carrying data.
  2. At a protocol level, SuperSpeed implements a dual-simplex unicast bus for concurrent bi-directional operations. Earlier versions of USB used the slow, half-duplex broadcast bus.
  3. Data Bursting in USB 3.0 allows the end points to send / receive data packets with no time wastage for handshakes. Though error prone, this gives greater efficiency when data is transferred in burst mode.
  4. USB 3.0 has introduced streaming capabilities for bulk type of transfers. This allows multiple streams (between 1 and 65533 in number) to be established over the same pipe. This gives a much greater bandwidth for data transfer.
  5. SuperSpeed USB 3.0 does not work on a serial transaction model like USB 2.0, where the host has to wait for an acknowledgment of a transaction before initiating a new transaction. Instead, USB 3.0 uses a sort of split transaction model, which allows multiple transactions at the same time. This kind of parallel processing results in improved response time.

The SuperSpeed USB 3.0 specification has surely set the stage for USB to be an ideal channel for data transfer from SSD. However, the real picture will emerge as USB 3.0 gets absorbed into the main stream by year 2011 and the way it stands up to competitive technologies like SATA and PCI Express.