Maybe this is nothing, maybe it’s something?

Notes

22 May

The Telectroscope from New York to London is an awesome project. I remember wanting to drill a hole to China in my younger days. Now it’s been done with science and technology!

08 May

You’re Friends Aren’t Watching the Same Show You are (and That’s Okay) - a pretty good (and funny) article on how different people like the same show for different reasons.


Bike Adventures!

August 22, 2008

So, as many of my real life friends know, I bought a motorcycle from a good friends and coworker about two and a half months ago. But, the story starts about two and a half years before that. I had gone to India for some work I was doing, and was living in Bangalore. As I had to commute to work every day, it became a pain to take an autorikshaw everywhere. I mean, in addition to the monetary cost, it would also take a long time, because of the traffic. Bangalore traffic isn't organized. At all! So, I started commuting with one of my coworkers there on his motorcycle. After our trip to Goa, I really wanted to ride a bike, and so I started learning to ride while I was there, riding my coworkers bike (what faith in my fledgling ability).

Fast forward a year and a half and we're at the end of 2007. My friend, Scott suggested to me that we should get our M1 motorcycle license (the M1 is the endorsement that one needs to ride a motorcycle in the state of California). Of course, since I had been riding in India, and was interested in riding again, I jumped at the chance. With Carmen and Scott, I took the MSF sponsored course. This provided us with enough hours of on vehicle training, did not require us to own a helmet or a bike. All we had to bring was our valid driver's license, a leather jacket, some gloves, and boots. And in two five hour sessions in a parking lot (along with one two hour session in the classroom), we had passed the driving portion of the course. And two months later we went to the DMV and tackled the written portion of the test and we had our M1 endorsements.

I've been riding my bike for about two months. I enjoy it a lot. And today, Carmen bought her first bike. Of course, she didn't have the easy time I did in getting the bike. The charging system on the bike seems to have been bad. And this was just bad luck for us. But, thanks to the awesome guy (named California) at San Jose Harley-Davidson, it seems like she ended up ahead. He's going to take a look at the bike and repair it for her for just the parts. That's basically, awesomeness.

Now, I'm excited to have someone to ride my bike around with at home!

Fusion 2.0 beta 2 - Consumer Oriented

July 31, 2008

Yesterday, after a few months of hard work, VMware has released VMware Fusion 2.0 beta 2. In this release, I spent most of my time on the new "Unity 2.0" feature. These include all the integration between your mac and your virtual machine. Like opening files in your VM, or opening links from your VM out on your Mac. The idea of course being that it makes it easier to just use your VM for applications. I also worked on the "mirrored folders" portion of shared folders allowing you to replace your Windows documents, desktop, music, or pictures folder with that of your Mac (by fiddling with the registry for you).

People may complain about security, etc. While you can turn off all of the features, the whole purpose of the feature is to more tightly integrate the two environments. We're trying to shove the complicated concept of "computer in a computer" or "virtual machine" as much under the carpet as possible to make life easier for our users. Of course, this doesn't mean our technical users can't enjoy themselves either!

Hope you enjoy.

Indiana Jones - Number 4

May 23, 2008

Thanks to my (now, former) room mate, who works at LucasArts, I was able to see Indiana Jones and the Kingdom of the Crystal Skull last Sunday. I wasn't expecting much, after all, Indiana Jones and the Temple of Doom didn't do much for me. In fact, on some levels, it made me cringe. Now Indy 4 (as I'll call it) was a solid movie. I got into the theater, and right away, you could feel the anticipation in the crowd. Right away, you're introduced to Indiana Jones getting out of a car (you don't even see his face). Instantly, just from the gate of his walk, the way he limps, it's classic Indiana Jones.

I thoroughly enjoyed the movie, and I only thought it was "bad" at the end where it jumped the Indiana Jones shark. If you haven't seen it, I won't give the ending away. Nonetheless it was everything I wanted from an Indy movie. Shia LeBouf did a fantastic job as well. I couldn't have asked for more from a series that's 20 years old. The temptation to modernize it must have been great, but it was well done. (I keep saying that, I know).

It didn't hurt that they made fun of Ford/Indy being an old man, and didn't take themselves incredibly seriously. Of course, I think some of the things done in the movie seal the series off. Of course, someone could open it up again, but...

XML, XSLT, and Content Engines

May 14, 2008

As I was looking for new Content Management Systems, one of the things I was looking for an easy way to theme the all of the data. I also wanted an easy way to be able to integrate other data sources into the theme easily. For systems like Movable Type and Wordpress, this meant writing my own code to fetch the data and insert it into the theme. I had to write the php, manually set up the database, write my own SQL code, etc.

Symphony solves those problems. Part one of solving the problem is that it gives me an easy way to create the data sources. It creates the tables, and has the ability to even link two sections together. In addition it gives an easy interface to add and remove data sources, and columns in those sources. As for the second part, it gives an easy mechanism for fetching and manipulating that data. It does so by presenting the data using XML. XML is a markup language that allows the presentation of arbitrary data and does so in a human readable way.

Let's talk briefly about XML. XML is a mark up language that in theory allows you to present any set of data. It allows user definable vocabularies. HTML, for example, is a strict subset of XML in that it follows the syntax, but has a finite set of pre-defined keywords in its vocabulary. Symphony's "theming" engine is an XSL template on top of an XML dataset. It takes an XML document and applies styles to it. One of the advantages of this is, that, as loose as XML is at encapsulating data, it is quite strict in the data presentation. This allows us to easily manipulate it because though we do not know "keywords", we do know the format.

XSLT has its roots in the idea that one can separate data layer from the presentation layer. This means that when a data set is provided via XML it doesn't provide any presentation. Let's take a web browser as our presenter. By virtue of the mechanism it uses to parse HTML, it can probably parse the XML document (these days, many browsers use a DOM parser that could parse XML). But because the Web browser understands only the strict set of HTML keywords, it doesn't know how to present the data. In stead it simply skips over the keywords (or tags in HTMLspeak) that it doesn't understand. To present this to a user in the format that we want to, we need to "transform" this data into the web page of our choosing.

Using XSL we can merge, morph, and style the data however we want. Symphony, via its datasource section, can manipulate the way in which any set of data is grouped. For example, in a category based listing, I might want all the posts I make to be grouped by category. In a chronological archive, I'd want them grouped by date. Of course date being a special case, Symphony does sub-groupings by year, month, and day. None of this information is lost from the entry, simply rearranged for the XSL template to be applied upon.

Using XSLT + XML, makes Symphony very powerful. It adds a lot of flexibility to the system. It allows me to easy add datasources and not have to worry about how it integrates with the theming engine. It's removed from how I present my data. And my data presentation layer (the theming engine, if you will) can manipulate any data provided.