Chrome OS: First Impressions...  

Posted by Anirudh Acharya in ,


To satisfy my itching hands I finally pulled Chrome OS sources and compiled them, made a VMWare disk and installed it. I must say I'm not at all impressed by it. The first thing I said was: "WTH! It lacks a Shutdown/Reboot button!" Agreed, it's a developer build, but no shutdown/reboot?? Come on... you must be kidding! Not everybody can drop to the terminal to reboot or shutdown. Yes, to get to the terminal (a geek's haven!) you need to press the key combo: Ctrl + Alt + T. Once there, you find Chrome OS familiar :)

As of now, there aren't many options to fiddle with and many features are incomplete. You can close all the tabs in Chrome and lock yourself out. It's as though everything got sucked by the black-hole and now you are there staring at your monitor, looking helpless! You cannot change the system-wide volume. To log on to the system, you need to be connected to the internet - True cloud computing! You login using your Google/Gmail ID and password. There aren't many web app shortcuts as of now. Google Wave is hell slow. Flash plugin crashes every now and then. The task manager says everything is sandboxed.

When the terminal is up, the everyday Linux user smiles :) and feels at home. Its Ubuntu under the hood with many optimizations. The most evident is the elimination of many processes and daemons which boost the startup speed. The system boots in about 13 secs, even on a VMWare-emulated SCSI disk. Phew! Thats fast. Good job, Google! 'top' shows that almost no user-level processes run in background. The /proc fs is the door to all stats-gobbling enthusiasts. The root partition (/) is read only, hence the 'lock' in /var/cache/sources can't be modified. This ensures that no 3rd party software can be installed.

Private browsing is enabled and one can switch between the private browsing and normal Chrome window with Alt + Tab. The System tray displays the Network and Battery status. The OS has a simple task manager that has a weird column: Goats Teleported. Wait a minute... "Goats Teleported"??!! WTF is that??!! Another task manager opens directly in the browser, called Task manager for Geeks. The widget toolkit used is GTK+ (Yay! Mac4Lin FTW! :D).

Overall, it's still a very half-baked product. And IMHO, even after its ready I wouldn't like this very much. I think Google has taken up a very good initiative to make the OS very simple and easy to use without giving the users many confusing options. But running this on overpowered Netbooks just doesn't cut the cake, it cannot be justified considering the power they have under the hood. Netbooks are already quite powerful. By the time Chrome OS comes out, they'll be as powerful as full-blown computers were an year ago. I agree it's still to early to comment on all the features. But the best thing Google has done to it is that it's Open Source. So let's wait and watch!

Update: Turns out that the "Goats teleported" is just a dummy column as explained here. This is what the source code says according to that source:

// An id for the most important column, made sufficiently large so as not to
// collide with anything else.
static const int64 kNuthMagicNumber = 1737350766;
static const int kBitMask = 0x7FFFFFFF;
static const int kGoatsTeleportedColumn =(94024 * kNuthMagicNumber) & kBitMask;

....

case kGoatsTeleportedColumn: // Goats Teleported.
goats_teleported_ += rand();
return FormatNumber(goats_teleported_);

.....

// See design doc at http://go/at-teleporter for more information.
static int goats_teleported_;


http://go/at-teleporter is an invalid link. Must be Google's intranet. The goats_teleported_ += rand(); statement makes the number go like crazy and overflow. Looks like this is just an internal Google joke! :D

Update 2: There are prebuilt versions of Chrome OS. You don't have to take the pains of compiling it from source. Head to this page for instructions and download.

Some screenshots:

1) Chrome OS:

Free Image Hosting at www.ImageShack.us

QuickPost Quickpost this image to Myspace, Digg, Facebook, and others!

2) Google Wave: Slow as hell!

Free Image Hosting at www.ImageShack.us

QuickPost Quickpost this image to Myspace, Digg, Facebook, and others!

3) This is what happens when you close all of the tabs! No way to get them back unless you fall back to the terminal:

Free Image Hosting at www.ImageShack.us

QuickPost Quickpost this image to Myspace, Digg, Facebook, and others!

4) The options menu. Same as Chrome:

Free Image Hosting at www.ImageShack.us

QuickPost Quickpost this image to Myspace, Digg, Facebook, and others!

5) The network config menu:

Free Image Hosting at www.ImageShack.us

QuickPost Quickpost this image to Myspace, Digg, Facebook, and others!

6) The battery menu:

Free Image Hosting at www.ImageShack.us

QuickPost Quickpost this image to Myspace, Digg, Facebook, and others!

7) Funny hostname!

Free Image Hosting at www.ImageShack.us

QuickPost Quickpost this image to Myspace, Digg, Facebook, and others!

8 ) Under the hood! Its Ubuntu all the way...

Free Image Hosting at www.ImageShack.us

QuickPost Quickpost this image to Myspace, Digg, Facebook, and others!

9) Private Browsing:

Free Image Hosting at www.ImageShack.us

QuickPost Quickpost this image to Myspace, Digg, Facebook, and others!

10) Task manager. What's "Goats teleported"??!! LOL...

Free Image Hosting at www.ImageShack.us

QuickPost Quickpost this image to Myspace, Digg, Facebook, and others!

11) Taskman for Geeks (thats how it's link is presented as in the Simple Task manager). Will it support IE, Safari through WINE? or is the message satirical??!!

Free Image Hosting at www.ImageShack.us

QuickPost Quickpost this image to Myspace, Digg, Facebook, and others!

Iktara has been playing on my iPod since a fortnight!  

Posted by Anirudh Acharya in , , ,

Yes, "long time no see". I've been way too busy with my final semester of Master's. Projects, exams, assignments and sometimes classes... I'm stuck in this infinite loop! I wish like running away. Sigh! I have no choice but to endure these. After all, there's this consolation that I'll be earning my Master's degree in a month from now.

So, with those elements in the infinite loop, what's the one thing that's "loop invariant"? Music, of course! I've been hooked to The Fray's How to save a life since quite sometime now. Not a new song (released sometime around September 2006, first version), but the lyrics are touching. The lead singer, Isaac Slade, (though has some vocabulary problems :D... weird pronunciation I must say!), says he was influenced by his experience while working as a mentor at a camp for troubled teens. You can listen to this song here.

But the song that gets to be the cherry on the cake is "Iktara" from the movie Wake Up Sid. Absolutely amazing, mesmerizing, pure genius! Yes, it's a bit old as compared to the new songs like Tera hone laga hoon (from the crappy movie, Ajab prem ki ghazab kahani) etc. I am now wondering how could I have left this beautiful song unexplored, untouched! The lyrics are just so perfect and Kavita Seth's voice does complete justice to this song. Amitabh Bhattacharya complements Kavita's voice well. Add to this recipe a dash of Shankar-Ehsaan-Loy and lo and behold! you have the perfect delicacy! So much so, that this song's been playing on my iPod for the past 15 days in Repeat Item mode!

Listen to this song here.

PS: For some reason my last.fm scrobbling isn't working! :(

Where are all the jobs in the computing industry??!!  

Posted by Anirudh Acharya in , , ,


To start with, let me clarify that this post is not meant to be a job search guide! It is intended to only give some pointers in choosing the right courses.

If you are in the field of computing, you would know that these days the mantra is Multi-core CPUs rather than Blazingly fast single-core CPUs. Gone are the days of clock-cranking where you would see a jump in the CPU clock speed every fortnight or so. In a way, the computing industry has reached a theoretical barrier of cranking the clock speed. The focus is now on inclusion of multiple cores on the same die. No wonder you see the "dual-core, tri-core, quad-core and soon octa-core CPU" ads. Unless there is a breakthrough in the field of microelectronics and cooling solutions, this "stuffing-of-more-cores-on-the-same-die" will continue.

From a normal computer user's perspective, it may seem like "Wow! Two cores, double performance!". Nope...Thats not entirely true, in fact not even half true! There are some inherent challenges in the multi-core environment. What are those challenges? If you can find the answers to these challenges, then Hey Presto you most probably would be hired! The challenge is 'Parallel Programming'. What is parallel programming? This is a concept, which deals with processing data in parallel. Lets say you need to perform this task: Fill two glasses of water. Assuming you have 2 glasses with you, 2 taps and a big container, enough to hold the water of 2 glasses, this is pretty easy and fast. You can fill in those two glasses with both your hands in parallel and there, you completed the task in half time as compared to doing that work sequentially!

Now, what happens if you have 2 glasses, but only 1 tap? Even though you have enough resources, you are forced to do the work sequentially because you need to wait on the tap (the source). What happens if you have 2 taps, 2 glasses but a container big enough to hold only one glass of water? You need to wait till its consumed and then fill in from the other glass. See something here which you can relate to the world of computing? The glasses are the cores of the CPU, the taps represent the programs, the container represents data bandwidth. Makes sense? What it all means is that if you do not have complementing system components and a program optimized to be processed in parallel by multiple cores of the CPU, the performance gain will be negligible even if you haf the world's most advanced CPU.

Let me iterate the title of this post now: "Where are all the jobs in the computing industry??!!" The jobs are here:

1) in making sure that there are as many taps as glasses - developing parallel algorithms and programs which all these years were sequential, so that each part of the program can be processed in parallel on each core of the CPU
2) in making sure that there are more glasses - designing multi-core CPUs, understanding the shared-memory problem, coherent caches etc, so that you have more "workers" for completing the task
3) in making sure that there are big enough containers - designing memory systems which can complement the multi-core CPUs by keeping them busy, feeding them with and extracting useful data/results without being the bottleneck

If you are interested in 1) then you will most probably be a Computer Sciences student and IMO you should take up courses like Algorithms, Parallel Programming, GPGPU etc.

If you are interested in 2) then you will most probably be a Computer Engineering student and IMO you should take up courses like Parallel Architecture, Design of GPUs, Advanced Microarchitecture etc.

If you are interested in 3) then you will most probably be an Electrical [Electronics] Engineering student and IMO you should take up courses like Memory Systems, Digital/IC Design etc.

Whether Computer architects come up with many-core CPUs or not, whether Electrical Engineers come up with high bandwidth systems or not, Computer Sciences students will always have the job of converting the billions of already existing sequential computer programs into parallel to make use of the current multi-core CPUs. So if you are a CS student go ahead and register for any and every Parallel Programming related course that you can. These are sure-shot job fetching courses.

I hope this post was useful :)

Mac4Lin featured in ComputerWorld!  

Posted by Anirudh Acharya in , ,


I'm very happy to inform you all that Mac4Lin has been featured in the current issue of CompterWorld. I'd like to thank Howard Wen for penning down the article. The topic of the article was Transformation Packs. It can be read here.

Back to school...  

Posted by Anirudh Acharya in , , ,


Summer full of enjoyment and a trip back to India. What more could one want??? Studies and Classes??? Its the same ol' routine again - class, home, cooking, projects, assignments! Well, hopefully this will be my last semester at Graduate School. Will "try" to enjoy my time!

The palatial home at San Diego, the work at Qualcomm, the beautiful San Diego, my home in Bangalore, Mum's delicious dishes - I waved a bye bye to all that for the time being and am back to being a student at the hot-and-humid Raleigh. I'm eagerly waiting for winters. I hate summer in Raleigh.

My trip to India was really good. Its always nice to see your near and dear ones :) Most of the time I was home, helping my family pack as they are moving to a different place. Met friends, family. Had a nice time. About the travel, I'd like to caution people traveling on Lufthansa. The journey wasn't particularly a pleasant one. Especially my last leg of journey Frankfurt to Bangalore. It was an old Jumbo Jet (747) with almost absolutely no in-flight entertainment. Only I know how I managed that journey squeezed in the middle seat. If you are traveling on that route fully load and charge your iPods. You gonna need abundant supply of entertainment. So make sure your iPods are faithful!

More to come...

Thanks for your support!  

Posted by Anirudh Acharya in , , ,



Thanks to everybody who voted for Mac4Lin. Xbox Media Center and Mac4Lin were hot favorite contenders for Sourceforge.net Community Choice Awards 2009. But there was an unexpected winner in the "Best Visual Design" category - PortableApps!!!

I congratulate the PortableApps team for winning the award :) Mac4Lin was a finalist at CCA 09, being 1 in 85 amongst more than 47,000 Opensource projects worldwide. That is a big achievement for me. I thank you all once again.

The other news is that my internship at GPU division of Qualcomm, San Diego is almost over. I'm looking forward to my India trip but definitely NOT looking forward to going back to school again [for at least one semester!].

Final Voting: Mac4Lin - Sourceforge.net Community Awards 2009  

Posted by Anirudh Acharya in , ,

I'm very happy to announce that Mac4Lin has been declared as one of the finalists at Sourceforge.net Community Awards 2009 in the Best Visual Design category. The final phase of voting began today and will run till July 20th 2009. Please vote for Mac4Lin, if you feel it deserves to be voted. To vote click on this image:



Optionally, you can also click on the first box in the right frame on my blog. You do not need to Sourceforge.net login id. All you need is a valid email id. Each vote is associated with an email id, which needs confirmation that you actually voted (you will get an email giving a confirmation link, so all you need to do is click it). The whole voting process takes just 3 clicks.

I urge patrons to vote for Mac4Lin if they feel it should win. Mac4Lin is completing with projects like Xbox Media Center (XBMC) etc. I once again thank everyone for their continued support, feedback and appreciation. Mac4Lin exists today because of you all :) Do spread the word around about this.