Wednesday, July 25, 2007

Got the $199 EEPC, the $9.99 broadband; now where is the content?

I read about the ASUS EEPC today (http://www.hothardware.com/News/Asus_Eee_PC_Hands_On_Preview_/).
Here are the highlights that struck me as most interesting:
1. Full blown Linux distribution (Xandros) with Open Office installed
2. Weight of <900 gms
3. Expansion through USB
4. VGA output
5. WLAN/Ethernet connectivity
6. Rumors of putting 3G connectivity on the EEPC soon
7. $200
8. $200
9. $200
10. $200

Yes the pricing is very attractive, and it will be a high volume seller in developing countries (think volume, think China, Latin American, Africa, and South Asia). There are offcourse, lots of issues here. For example, localization is one issue. Then there is the issue of Internet connectivity itself.

But the most important issue is that of content. So far, the content on the Internet is limited to cater to people who have some western-style education. Content for the masses, and I mean content that is interesting to large populations of developing countries does not exist. One of most important business plans that needs to be written now is how to produce, syndicate and price content for this huge market. Unless we have meaningful and reasonable content to offer, the case for spending $200 on a computer becomes very weak.

We also need to understand that there may be populations who now have access to the Internet, but other basic infrastructure such as roads, delivery services, banking systems, electricity, etc. lag far behind.

How do we prevent the situation of putting the cart in front of the horse?

Saturday, July 21, 2007

Skills and programming languages

One of my cousins asked me about the programming language to learn to acquire the "skill" of computer programming. By skill she meant, I suppose, something that can be marketed in a job interview as a differentiator from the other candidates.

But ever since compiler/interpreter design advanced beyond assembly programming, most computer languages are written as simple English statements, making computer languages easy to learn and understand. In fact, the "skill" in Computer programming is almost independent of the computer language used.

So what is the skill part?

The real "skill" is understanding the capabilities and limitations of the underlying data-structures and algorithms that come pre-packaged with several of the contemporary high-level programming languages. Now that requires some serious CS education. For example, the CLR book is an excellent resource for mastering data-structures. And if you are brave you could read Knuth's work.

Still, its good to be conversant with the syntax and peculiarities of a programming language or two because it saves a *lot* of time and debugging effort while actually writing up code. In my experience, I can trace the usage of my programming language learning/usage patterns as this

Age: Computer Language
7-9: Logo
10-12: Basic
13-16: Pascal, C
18-21: C, C++, 8086 Assembler
21-25: Java, C++, VB
26-27:C#
27: Python
28: Python, C++

Thats a whole lot of languages. Now lets analyze the list and come up with the minimum but adequate list of things to read

1. For syntax, just learn C, or C++, or C#, or Java. The syntax of these languages is nearly identical and knowing one of these well will go along way toward working in any of these languages. But do not assume you know one if you know another! These different languages exist because they were created to support different programming paradigms and architectures. Please read up the fine print before switching arbitrarily between them!!!

2. Learn a scripting language like Perl, Python, etc. in addition to a "heavy duty" language like C, C++, C# or Java. In many circumstances writing a quick (although perhaps inefficient) program in a scripting language can save you lots of time.

So my 2 cents about the marketable skill part: C++ and Python. And a good data-structures course.

Friday, July 20, 2007

Paradigm shift towards near-network communication

There was a story on Slashdot (http://pressesc.com/01184858412_multi_gigabit_wireless) about new radio technologies that will make it possible to communicate between devices separated by a few meters at rates of several Gbps. Think Bluetooth on steroids.

I am tempted to declare this possibility as one of the most exciting things in the future of Networking. Whoa thats a big statement, but consider the possibilities from having the facility of super fast near networks.

1. Wireless peripherals, finally. Yea I know we've heard this before, but with this fat bandwidth pipe even (super) HD resolution screens and data-pumps such as set-top-boxes could go wireless. Only 1 power cable per box.

2. Networking at the edge. The prospect of mobile-p2p bcomes very compelling if you consider that near network connectivity will exceed the capabilities of core/access networks. Offcourse the latter will also improve, but given that it is cheaper to have users buy devices with high-wirelss bandwidth interfaces rather than deploy fiber-optic cables to every apartment, I believe that near networks will become a cost-saving platform to distribute content.

Example: My neighbor and I see the 2012 Olympics in super HDTV resolution. Can we form a near-network bridge instead of having the access network fork 2 separate copies to both of us? Here is the possibility to mitigate the fundamental bottleneck of on-demand high-definition content delivery of havng to unicast at the last leg no matter what smart protocol you employ.

Monday, July 16, 2007

DVRs n us in year 2010+

I read an article in the WSJ (http://online.wsj.com/article/SB118458998340567497.html)earlier today which spoke about how cable companies are incorporating DVR technology into their service offerings. DVR or Digital Video Recorder technology enables the wonderful convenience of time shifting using which users can watch their programs at any time after the broadcast. Many also provide convenience features such as the facility to cut out advertisements from the broadcast.

The article says that 50% of US cable subscribers will have DVRs by 2010 and goes on to predict that the DVR will become an essential aspect of the TV experience.

When this happens, TV will no longer be, well, TV. What a DVR offers is very titillating to my geek sense: A time travel feature as far as my TV is concerned, something that has more potential than just geek excitement.

The PVR is yet another acknowledgment of the limitations of our unicasting infrastructure for VOD. If there was infinite network capacity and infinite server capacity then no content provider would allow content caching on users' PVRs (even if it was DRMed). This mental block is noted in the WSJ article, but now cable companies see the value ($) of promoting PVR technology. The truth is that PVRs enable a whole bunch of services that were just not possible with the current unicast infrastructure for VOD. Lets talk a little about these golden nuggets for the service providers.

1. Directed ad-insertion: Yep I know we all think that PVRs are supposed to cut out the ads. But imagine the mouth watering preposition of inserting a car ad when daddy is watching the Simpsons and inserting a Harry Potter trailer when little Johnny sees the show. The Simpsons program downloads once, but the directed ads get inserted at the Q-tone according to who is watching.

2. Promise of large scale VOD: Its true: supporting concurrent VOD through having a centralized server is just not feasible with present bandwidth (including ADSL 2+) or server capacity. This explains why even P2P video technologies like Joost feverishly download and cache content when a user is not watching. The short bursty duty cycle of watching TV in the day (meaning people watch TV for maybe an hour every day on average) is a great opportunity to cache content on the local PVR during the downtime.

3. The battle for the boss-box of the living room: The battle to become the defacto box of the living room is on. Is it going to be the game consoles like X-boxes and Sony PS*s with their growing hard disks that can double as PVRs? Or will they be service providers" set-top-boxes/PVRs? Any of these stake-holders would love to win over the eye-balls and ear-drums of the whole family.

Friday, July 13, 2007

Oh Mr (Video) DJ I want to dance for Real

Real player v11 is going to change everything in the "User generated" video content category i.e. You-Tube and Google Video sort of content.

A few months ago I was looking for ways of downloading You-tube videos. There was a rather arduous way with Linux and Mplayer and scripts and that sort of stuff. Typically not what would excite a budding video mixing artist. But now Real has done it. The latest Real player provides an easy way to download any non-copyrighted content into your hard-disk on a plain Windows PC (Real says that a Mac version is in the works). Best thing is, it supports all sorts of formats.

In short, I now envision 1000s of budding Video DJs downloading little clips of video from all over the Internet, stitching n' mixing them up (adding value through their talent), and then republishing content.

And I imagine that after a few iterations, this content may just graduate from "User Generated" to hugely engaging and popular A-class content. Wow this is like the analogue of open source software. Open source content, being refined and sliced and diced and mixed for your viewing pleasure.