Site search

Tag Universe

Asia Blogging Books Boston Cambodia China Economics Entrepreneurship Fishes Food Friends India Korea Laos Malaysia Management Marketing Math Geek MIT Open Source Personal Pictures Product Design Psychology San Francisco Scuba Diving SDM Singapore Social Software Development Travels Ultimate Frisbee Vietnam Wordpress

 

August 2008
S M T W T F S
« Mar    
 12
3456789
10111213141516
17181920212223
24252627282930
31  

Archives

Links:

Twitter Updates

Categories

You're visitor:

A terse summary of open source software licenses

I recently did a consulting gig on open source software business and open source licensing for a local company in Cambridge. The following table summarizes the findings from the project.

License Characteristics Commercial Examples
GPL Most open license and prevents proprietary fork. Modified source code must be accompanied with the same GPL with all distribution. Red Hat (Linux Kernel)
LGPL A more permissive version of GPL. Prohibits commercial fork and distribution but permits internal use. Red Hat (JBoss)
Apache License Does not require modified versions of the software to be distributed with Apache License or even as open source. Google (Android)
Mozilla Public License Hybridization of GPL and BSD. Modified code must stay as MPL. But MPL code can be linked with proprietary code. SUN (OpenSolaris)
BSD Few restrictions on what you can add and how you can limit openness of what you add to BSD licensed code. Apple (parts of Mac OS X)

 

Here are links to other comparisons of open source software licenses.

Frisbee thrower

When I attended the System Design Management (SDM) program at MIT, all students are required to take a course called Product Design and Development (PDD). The course is truly multidisciplinary covering the engineering, design, and management aspects of a product development process from conceptualization to marketing. Our instructors consist of faculty members from Rhode Island School of Design (RISD), MIT School of Engineering, and Sloan School of Management. At the beginning of the course, each student is tasked to conceive and present a product concept to the class. Each team would then select a product concept from the pool of ideas and be responsible for implementing their selected concept into a prototype.

My team designed and built arguably one of the coolest products for that class during Spring 2005 semester. Yoav first conceived the idea of building a mechanized frisbee thrower based on his personal observation of ultimate frisbee teams in training. Initially, the product concept was deemed too complex by the instructors as they expressed concerns whether we would be able to deliver the product by the end of the course. But our determination convinced them otherwise leading to a final approval of the project. Dave’s mechanical expertise contributed greatly to the team as he designed the product and directed the initial build of the prototype at the MIT Hobby Shop. Ultimately, it was really a team effort and countless hours at the hobby shop that we eventually built a frisbee throwing machine. The final prototype works and even attracted the attention of an ultimate frisbee instructor Dan who eagerly asked for a demonstration of the prototype. Here’s what Dan wrote about our frisbee throwing machine.

Also, here is a video of our frisbee thrower in action.

Website update and MIT nostalgia

Since I switched my blogging software to Wordpress a week ago, I have been busy transferring the blog posts from my old website to this new website. However, I quickly realized that the content transfer isn’t just a simple process of exporting the old content to an XML file and then importing the file into the new blogging system. It’s frustrating to learn that the end of line characters in the XML file must be removed or they get converted to line breaks during import and consequently messing up the layout (it seems that dasBlog, the old blogging system I used, didn’t export the content very well). The editing of the XML file took forever since the occurrence of these line characters seem to be random, making it difficult for me to use a script to remove the special characters systematically since there are instances where a end of line character is legitimate. Nonetheless, I was finally able to import this year’s blog entries from my old website to this website.

What about those blog posts older than 2008, the blogs I wrote while I was at MIT? Well, after some consideration, I have decided to not to integrate those blog entries to the main blog. Fundamentally, those blog entries were written about my experience at MIT, which sadly has become a memory of a past. Those blog entries were also written in a different style. I want to start blogging with a different style from now on. I feel that it may be better to separate my older blog entries from the main blog for consistency reason. When I was blogging at MIT, I tend to keep some of my blog entries brief with only 20-30 words. Of course, times have changed. Today, one can achieve similar effect of keeping a blog short through twittering. From here on, brief personal status of me would be updated as tweets (Twitter updates) on this blog while blog entries would be focused on lengthier, more thoughtful content.

I have actually transferred my MIT blog entries over to a subdirectory on this website (it’s hidden for now) but I still have more clean up to do, especially broken links. I am confident that transfer will be completed by the end of this week. While transferring the MIT blog content, I started reading the old blog entries and before long, I was overcame with nostalgia for my time at MIT. It was an awesome time. My favorite year is without a doubt 2005, the year I entered MIT as an SDM student. I miss the camaraderie on PDD team 12. I still remember the discontent of the SDM cohort with System Architecture and ERBA. Who can forget the commotion of so-called SDM boot camp during MIT IAP. Great memories!!!

Of course, I would like to thank fellow SDM classmates Yoav and Matti who introduced me to blogging as an outlet to express my experience and thoughts in prose. My absence in the blogosphere the past months was due to poor blogging software and the motivation to blog. Now that I have Wordpress, there shouldn’t be anymore excuse for not blogging.

Cybersam.org 5.0

I finally gave my website a well deserved facelift by migrating to a new blogging tool Wordpress and redesigning the site. I will be converting my older blog posts I made with the previous blogging tool over to a format that is supported by Wordpress. Unfortunately, the conversion process turned out to be more complicated than I had previously thought. I have to hack a few lines of codes to get the older content converted. Hopefully, I can complete setting this new website up by the end of the week.

Apparently, after reading my previous blog postings, I realized that the recent facelift is really the fifth time I am making significant changes to the website. I first started this website with BlogX (a predecessor to dasBlog, a .NET blogging software). I tried to use Blogger for my blogging need for about a month but decided to stick with .NET blogging solution, which in hindsight wasn’t the best decision. I am using Wordpress now and loving it. 

  • Version 1.0 - BlogX
  • Version 2.0 - Blogger
  • Version 3.0 - dasBlog (an updated version of BlogX)
  • Version 4.0 - dasBlog 2

Pi Day

Happy pi day everyone. It’s 3.14 today. I am such a nerd…

Predictably Irrational (Part 2)

I read about 3/4 of Predictably Irrational by Dan Ariely while flying a red-eye from San Francisco to Boston 2 weeks ago. Today, I finally finished reading the reminder of the book and am glad that I bought the book. The book is witty, engaging, and easy to read (no technical jargons). While we like to believe that we are making logically sound choices, the truth (as attested by the book) is that we usually don’t. The book certainly gives an interesting insight to human psychology especially how it comes into play during a decision making process.

Predictably Irrational

From Wikipedia, rationality is broadly described as “All that is required for an action to be rational is that if one believes action X (which can be done) implies Y, and that Y is desirable, he or she does X. The action would likewise be avoided were Y undesirable. Such arguments are logically valid but not necessarily logically sound.” And being logically sound requires good human judgment.

So as humans do we make a decision based primarily on our intelligence or impulse? As the title of his book Predictably Irrational may suggests, Dan Ariely thinks it is the latter. In a span of a week, I have seen or heard about the book from different sources. I first heard about the book when the author was being interviewed on NPR last week. Yesterday, I saw the book on the shelves in a bookstore in San Francisco. Earlier today, my friend Siobhan, sent me this link to the New York Times review of the book. The author is also one of the 2 co-professors of a marketing class I took at 3 years ago (gosh, has it been that long). Here is the blog entry about my thoughts about his class.

As an economic junkie and a Freakonomics fan, I am attracted to the content of Ariely’s book. Maybe I should go pick a copy up and read it on my red eye flight from San Francisco to Boston tomorrow.

A Little Lao Girl and the 2 Ps of marketing

Modern business, lifestyle, and culture are creeping into the mainstream in Laos. The country is changing fast and in the face of enormous economic change, great opportunities can be created. I can relate to a story of how a Lao girl react to economic change in her local turf.

In , , where I worked, there is a strip of land by the Mekong River known as the Mekong Promenade (or Fa Ngum) where traditional streetside food vendors set up makeshift stalls selling delicious Lao food.

In recent years new beer gardens and riverside restaurants have opened up in the area. Mekong Deck, one of the newer modern beer gardens with a stylish modern decor opened for business in around September 2007. I visited Mekong Deck a lot while I was working in Vientiane since my roommate and I knew the people who own the bar. Honestly, Mekong Deck is a wonderful place to nurse a glass of Beer Lao and enjoy the evening tropical breeze by the Mekong River.

Whenever I was at the Mekong Deck, I saw this little girl, about 12 years old, with nice complexion and beautiful eyes selling inflatable figures. Every night, she would walk from one end of the promenade where the streetside food vendors are located to the other end where the chic bars and restaurants are. She would hold these inflated figures usually of animals and sometimes of super-heroes, like Spiderman, while making rounds on the circuit selling toys to patrons there. Regretfully, her business hasn’t been doing well. I have never seen a sellout of her inventory. Some nights, I see her getting mad by stomping her feet and yelling at customers for not being able to sell her toys. And then there are nights when she was just sad and disappointed. Ally, a girlfriend of my roommate, and I sympathized with the girl. We really wanted to do something to help her out. One doesn’t need an MBA to realize that this is a classical example of adapting to the market and selling the right product. In business lingo, what she needs is the 2 Ps (out of 4) of marketing: placement and product. In terms of placement, we need to recognize that the market is changing at the Mekon Promenade. The demographic trend is towards a younger, affluent, and sophisticated crowd. More importantly, most people go to the Mekong Promenade at night to drink. So she needs a product that specifically targets these people. And what better way to entice a drinking crowd than peanuts. Since I can only speak “baby” Lao (a level of mastery where I can “get by,” ie. ordering food and getting around town), I had Ally to speak to the little girl in their native language. We didn’t baffle her with the Ps of marketing. Our message was direct and simple. We simply told her: “Go sell some peanuts. Everyone at this beer garden wants peanut.” She first reacted by shrugging her shoulders and then asked if we want to buy an inflatable figure from her. We repeated our message to her. She then stared at us for a good 2 seconds before walking away looking disappointed that we didn’t buy a balloon from her. Sigh… Maybe I should have bought a toy from her just to get her full attention. In any case, I hope she took our advice and is successful in what she does. I hate seeing her feeling frustrated and disappointed every night.

Prisoner’s Dilemma and traffic jam

Wikipedia offers the following description of the classical prisoner’s dilemma:

Two suspects, A and B, are arrested by the police. The police have insufficient evidence for a conviction, and, having separated both prisoners, visit each of them to offer the same deal: if one testifies for the prosecution against the other and the other remains silent, the betrayer goes free and the silent accomplice receives the full 10-year sentence. If both remain silent, both prisoners are sentenced to only six months in jail for a minor charge. If each betrays the other, each receives a five-year sentence. Each prisoner must make the choice of whether to betray the other or to remain silent. However, neither prisoner knows for sure what choice the other prisoner will make. So this dilemma poses the question: How should the prisoners act?

 

The dilemma can be summarized thus:

  Prisoner B Stays Silent Prisoner B Betrays
Prisoner A Stays Silent Each serves six months Prisoner A serves ten years    

Prisoner B goes free

Prisoner A Betrays Prisoner A goes free    

Prisoner B serves ten years

Each serves five years

 

Basically, each prisoner has only two choices:

  1. Betrays or defects
  2. Cooperates and stays silent

Moreover each prisoner must choose without knowing what his accomplice has chosen, thereby making the situation more interesting. But for any prisoner, the dominant strategy is to defect. If the prisoner B stays silent, it would be better for prisoner A to defect. Even if prisoner B defects, it would still be better for prisoner to defect as he/she will be serving 5 years instead of 10. But here’s the rub: since all rational players will defect (all things being equal), each prisoner will end up serving 5 years in prison. The system optimal solution is for both to cooperate so that if both prisoners stay silent, they each serves 6 months. In other words, cooperation is the way to go.

What makes prisoner’s dilemma even more interesting is how it can be used to explain the one of the behaviors I commonly witness when I was traveling in Asia: the lack of cooperation. I have observed that the lack of social cooperation (sometime it is just downright selfishness) is pervasive in many Asian societies (there are exceptions but the attitude of “everyone for him/herself” seems to be most entrenched in most developing Asian countries). Try taking the subway in or driving in , and you will know what I mean. I am no saint myself. Within hours of assimilation in a new city in Asia, I, too, think “If everyone is looking out for him or herself. Why shouldn’t I?” That said, my argument isn’t a moral diatribe or even a criticism of any sorts. But rather how I can explain traffic gridlock in China and India using the concepts of the prisoner’s dilemma.

I have seen it so many times in China and India, people there love to run the red light and most often than not, creating a gridlock that looks like this:

I was traveling on a taxi from New Delhi to Jaipur two months ago. Halfway through the journey, J.K. the taxi driver and I, came to an intersection in a town where the traffic was heavy. As we were about to cross the intersection, the red light came on. Even though there was simply no room to maneuver ahead, every driver in the moving traffic including J.K. floored the pedal and raced ahead as if stopping behind a red light was a death sentence. But in doing so, we actually created something that very much looked like the scene in the picture above. We wasted a good 3 minutes as drivers rushed to untangle the mess they had created. So I asked J.K. whom I had got to know very well by now why he and everyone around him did this even though it doesn’t serve anyone any good. With a thick Indian accent, he answered: “We always have to ge ahead.” I said: “But J.K. there’s a reason why we need to stop at the red light.” He responded: “No sir, you won’t survive if you play nice.”

I disagree with J.K. I don’t think cooperation is a sign of weakness or niceness. If J.K. was the only person running the red light, that’s fine by me since the traffic would still flow. But if everyone is doing it, that’s a different story. On the contrary, when drivers actually cooperate and observe traffic rules (a system optimal solution for everyone involved), we can all get through it a little faster by avoiding a traffic carnage. Indeed, I read it from somewhere before that selfishness can go hand in hand with cooperation. So I think the lesson of the prisoner’s dilemma in real life is: whether you are altruistic or selfish, the best strategy over the long term should be mutual cooperation.

Sunsets in Asia Pacific

I didn’t have a great camera when I was traveling in Asia recently. In fact, my Canon digital camera broke on the first day I was in . I had to resort to using my camera phone (a Blackberry Pearl) for the rest of my trip there. I have been lucky with photo taking, especially with sunset as being the subject. I happened to be at the right place and the right time to capture some amazing sunsets and silhouettes. Here are some of the best sunset pictures that I took. See here for the complete collection.

Sunset in Sipadan, MalaysiaSunset in Vientiane, LaosSunset at Angkor Wat, Cambodia (Part 1)Sunset at Angkor Wat, Cambodia (Part 2)Sunset at Angkor Wat, Cambodia (Part 3)Sunset at Angkor Wat, Cambodia (Part 4)Sunset in Luang Prabang, Laos
Sunset in Tongariro National Park, New ZealandSunset in Udaipur, India (Part 1)Sunset in Udaipur, India (Part 2)Sunset in Darjeeliing, IndiaSunset over Kanchenjunga, IndiaSunset in West Sikkim, IndiaSunset in Kathmandu, Nepal