Upgrading to etch

It has been a long long time I have not updated to my blog. Here is my first in 2007: "Updating to Etch".

I have been a big fan of Debian for 5 years, first woody, then sarge and now etch! As you may know, punknix.com is powered by Debian and my lovely embedded x86 project "Voyage" is also debain-based. At the time I write this blog, punknix.com has just been updated to etch. The upgrading process is not as smooth as you should expect, but carefully follow the release notes is much more safer, I believe.

Right now I would like to share my personal experience for the upgrading. Most of the materials you could found in the release notes, but concrete examples are better than a large piece of documents ;-). Although my procedure for upgrading punknix.com to etch is not documented, but I have another UML environment that is suitable candidate for this "experiement"!

DB2 Express-C - Free to Develop, Deploy, Distribute

The DB2 "Express" version is now completely free. I think it is a response to Oracle Express.

"DB2 Express-C is a version of DB2 Universal Database Express Edition (DB2 
Express) for the community. DB2 Express-C is a no-charge data server for 
use in development and deployment of applications including: C/C++, Java, 
.NET, PHP, and more. DB2 Express-C can be run on up to 2 dual-core CPU 
servers, with up to 4 GB of memory, any storage system setup and with no 
restrictions on database size or any other artificial restrictions."

2 dual-core and up to 4GB memory, this is good enough for most production use. For more information, please look at: DB2 Express-C Overview. Unfortunately, it is not as free as open source software.

Please note that the current production version is UDB 8.2 which are free to use. 9.0 (viper) version is still in "test drive" stage, and requires a "Try and Buy" license which lasts for 90 days.

This article helps you understand the architectural differences between, MySQL, Postresql and DB2.

Google Browser Sync - signing could not be verified

My colleague has suggested Google Brower Sync for sync'ing bookmarks on different computers. By installing this Firefox extension, it manages the bookmarks, history, passwords using my Google account for central storage. That sounds good to me, as I have over 100 bookmarks accumulated over 8 years, and I had problem in keeping them in sync with my Office and Home PC (and my iBook as well). Recently, I has been using import/export bookmark function to keep them in-sync, but it is very time consuming in managing those bookmarks as I need to reorganize them in a better order for each import.

I can manage to install it on the Firefox of my Office PC, but my Home PC doesn't. After downloading the extension. Firefox complains about "Signing could not be verified" and stopped the installation. I have reviewed the options/preferences in Firefox, test with diferent certification setting and get no idea. Searching on google and following some troubleshooting instructions and I am still getting nowhere. Now, Google Browser Sync is of no use to me, as I only get one PC working... I will try it on my iBook later.

Restoring MBR to boot XP directly


My Desktop PC has dual boot to SuSE 9.3 and XP. Since I am now switching to use VM Server, the old SuSE no longer needs. To get more disk space, I need to uninstall SuSE. The problem is, I have to uninstall grub first and restore the original XP bootloader.

The old way is to use the famous "fdisk /mbr" tricks. However, the modern XP no longer ships with fdisk anymore. Surfing the net I found that I need XP CD to boot in recovery mode and run "fixmbr" command. I don't have the XP CD on hand as this is an office desktop that our support team owns the CDs. Searching further I finally discovered that SuSE will backup the original MBR when installation and I can use YaST to restore the MBR.

Waiting Plastik support for Firefox 1.5


Firefox 1.5 is out. Although the new features are not appeared to be very much appealing, I like the drag-n-drop browser tab re-ording very much and it is the feature I really want when I was using 1.0.

After the upgrade, I found that Plastik Crystal SVG theme is incompatible to 1.5. I know the author has now been working on it, but it won't be out shortly. My decision is to to 1.5 on my Office PC (because for experience it), but hold it for my home PC and my iBook until Plastik support 1.5.

But anyway, it is a nice upgrade experience. No problem on my profiles and bookmarks after upgrade. At least, I feel that the new firefox appears to be faster on startup.

Podcasts for IT developers

In recent days I have been playing around with Podcasts for listening interesting program with my iPod Mini and iTunes in leisure or on the way home. Of course, I didn't miss out the favourite Cantonese Podcast "林海峰是但噏發花癲". Another local Podcast I rated very much is "CMM。創作人。腦地圖" presented by 林子揚. One day I read a blog post from O'reilly Network and follow its Podcast feed to listen, the Community of Web 2.0, which gives me some insight of the next generation of Web.

Searching in iTunes I found some IT and developer related Podcasts. Most of them are the audio recording from developer conference such as OSCON and Where 2.0. Here are some developer Podcast I currently subscribed:

I have listened to just a few of the audio, but I have learned that why Linux crossed the chasm presented by Geoffrey Moore's "Open Source Has Crossed the Chasm...Now What?", which is available in ITC Open Source channel. Also listening Joel Spolsky in ITC Programming Podcast is a lot of fun, and know that he is quite a humors guy. Of course, one of my favourite authors, Prof. Clayton Christensen - the author of Innovator's Dilemma and Seeing What's Next, also gave a nearly 2-hour speech on ITC Open Source Podcast. I will need to find a free time-slot to listen to it at once.

So Podcast brought me to a new site, IT Conversations. If you are interesting in listening to more IT-related audio program, you should go to that site to find more.

The Myths of Open Source License for IT

I have recently read Dan Woods' blog on O'ReillyNet. The author interviewed Mark Brewer, CEO of Covalent Technologies, on his preference to BSD-style license for IT companies. His blog encourages me expressing my view on adopting open source software in IT company or IT department.

Some companies have been using open source software such as Apache web server, Tomcat and MySQL. Those software may even benn deployed on open source operating systems like Linux and FreeBSD. Of course, the open source license grants the right of using these software for free and freedom. But attentions have to be paid for any IT companies to use open source software or software libaries in their own propriatary software that are sold for commercial use. It is all about the open source licenses to care about.

From my experience and observation, BSD- and Apache-style licenses allow maximum flexibility for integrating with propriatary software. It only requires the licensees to give credit to the original author. Such credit notice could be found in end-user documentation or included in the software package of the distribution. In addtion, it is also allowed to modify source code and create a new derivative work for their own use or selling it, as long as the licensees do not bare the same name. I called these licenses a less-restrictive license because it allows commercial company to bundle these software with minimum intervention and restriction.

GPL, on the other hand, is more restrictive as the philosophy behind GPL is different. GPL states that the freedom is protected when a work is created, and such freedom will be delegated to all of its derivative work. That means, any propriatary software that integrates GPL'd software to their product are forced to provide the source code for free. And that's why Microsoft called GPL an evil.

LGPL (Lesser GPL) provides another less restrictive alternative to GPL. LGPL is originally designed for library, so that propriatary software is allowed to use or "link" their code to LGPL'd library. But LGPL retains some GPL philosophy that all modification and derivative work must be freely available and be provided for free.

I am not going to argue or discuss which open source license is good and which one is bad. It depends on the use and the business model. See below link for why JBoss uses LGPL and why MySQL uses GPL, and how they use different licensing strategy (dual-license) to protect their business.

As a company supporting open source like MySQL AB and JBoss, they have their own reason to protect their business by using GPL and LGPL. MySQL AB discourages others commercial companies to take their work and offer another similar solution by modifying the source code. On the other hand, they provide commercial license for interested parties, allowing them to modify source code for their own use. Such dual-license approach protects the open source software from branching or creating fork.

JBoss's decision to LGPL is to ensure that changes and improvements to JBoss software remain available as open source software. Nobody will be able to convert JBoss into proprietary software or to create incompatible versions. On the other hand, CollabNet and Covalent Technologies integrates large ammount of open source software to build and customize their own Enterprise-grade software. As you can see, different companies uses different licensing strategies and business models to support open source initative and incubating open source software to their products.

So, let's conclude. My recommendation for using open source license in IT companies, in short:

  • Use BSD- and Apache-style license at anytime, especially for integrating open source software into propriatary software.
  • Use LGPL, if unavoidable, in library level. Be careful in distributing LGPL software together with propriatary software.
  • Do not use GPL'd libaries for integration. Only limit it to standalone application such as MySQL. And remember not to distribute GPL applications together with propriatary software. But GPL is a viable option than BSD- or Apache-style licence for commerical companies providing their products as open source. They protect their open source products from branching and forking while generate revenues by offering support and commercial license.

Inside the big switch

Arstechnica has always been a good source for technical information, and sometimes it surprises you on the content coverage and the level of the details that issues or topics discussed. Today, Mr "Hannibal", who has been writting awful lots of articles on modern microprocessor architecture, discloses the relationship between Apple and IBM by quoting the unnamed source, and explain why they broke (or fxxked) up. I am not going to give out any judgement or conclusion, just follow the thread and read:

Inside the big switch: the iPod and the future of Apple Computer

Sometimes, the problem may not be something that it appears to be. And in this case, it looks like IBM a victim and Apple an evil.

Apple to Intel: the rumors come true

It stunned me early this morning when I followed the live coverage of WWDC 2005 that Steve Jobs announced a 2-year "Transitions" of Mac from PowerPC to Intel. This marks the 3rd transition in the Mac history. Starting from early 90's from Moto's 680x0 to PowerPC, then ten years after from Mac OS 9 to OS X.

He further surprised me that Mac OS X has been ported to Intel in every releases and demostrated a running 3.6GHz Pentinum 4 "Mac" in the later half of the Keynotes session.

The concept of universal binary is great. But I curious that it is only be able to build univeral binary through XCode and is designed for .app only . How about thousands of respectable Open Source software such as Apache, Samba, OpenLDAP and others?

Announcing Voyage Linux & status update

There has been a long long time not updating punknix.com. Apart from my work, I has been very busy with my part-time studies these days. The reader should noticed that I have an article categories called Technology Management, which is used to record my studies summary or project assignment. When I have time I will continue to contribute stuff under this category.

Before X'mas last year, I had started an open source project called Voyage Linux, which delegate the idea from pebble. It is yet-another light-weight Linux distro for low-end to embeddedd systems. What it differs from pebble is that it is a trimmed-down Debian Sarge in opposed to Woody, and it embraced 2.6 kernel. Moreover, Voyage is completely buildable from scratch and is designed to be highly customizable to make your distro. This is particularly important for people who want a fast-start way to have their own version which can be easily deployed to a number of embedded systems, and Voyage exactly fits to this category.