2010/04/19
http://www.google.com/publicdata/home
The animation over time is so cool! Check it out.
2010/04/13
The only reason that is preventing me from switching to Chrome on Mac is the lack of Mouse gesture support. Now I found a Mouse gesture extension for Chrome called "Smooth Gesture" which works for Mac. Great. Now I am fully switched and use Chrome as default browser. So far I am very happy about the switch, it's so much faster. 
I tried disk order before, it works but costs $30 dollars. Today I finally found a free alternative and it's quite good, it's called muCommander and it's written in Java, maybe I will contribute some code if I find something missing, but so far so good. Here is a list of features:
- Virtual filesystem with support for local volumes, FTP, SFTP, SMB, NFS, HTTP, Amazon S3, Hadoop HDFS and Bonjour
- Quickly copy, move, rename files, create directories, email files...
- Browse, create and uncompress ZIP, RAR, 7z, TAR, GZip, BZip2, ISO/NRG, AR/Deb and LST archives
- ZIP files can be modified on-the-fly, without having to recompress the whole archive
- Universal bookmarks and credentials manager
- Multiple windows support
- Full keyboard access
- Highly configurable
2009/10/23
Yesterday I upgraded Chrome on Mac to 4.0.233.8 which seemed to be a much stabler release. I found Firefox 3.5 on Mac snow leopard became more and more unstable especially while Flash player. It might have something to do with the Flash 9 installed with Flex Builder. But anyway, Chrome seems much stabler than Firefox and of course, faster. I also found Xmarks for Chrome working like a charm. 
One interesting thing is while comparing the memory consumption between Firefox and Chrome. While having about 11 tabs open, Firefox was using about 260MB memory and Chrome only used about 100MB which was surprisingly good. However, I found there are more than 15 "Google Chrome Helper" process also exist where each process take about 30MB memory. Whenever I created a new tab, a new "Google Chrome Helper" showed up in "Activity Monitor", if I killed the process, the tab literally died. So, if I added all the memory used by each "Google Chrome Helper" together, Chrome is a much bigger memory sucker. 
Another cool feature about Chrome was the latest themes designed by artists. And my favorite is Yulia Brodskaya 
2009/10/19
After upgrading to snow leopard, things seemed faster (especially Safari but I don't use it very often.) After I did a full svn update from the code base, compilation was fine but weblogic failed to start complaining about some JMX subsystem issue, then I noticed that the JVM being used by weblogic has changed to Java 1.6.0_b14 64 bits. After digging into the issue, I found out that the /System/Library/Frameworks/JavaVM.framework/1.5.0 changed to a symbolic link which was linked to 1.6. Apparently the snow leopard upgrade made an assumption where we don't need java 5 any more and replaced with java 1.6, to keep the old stuff work, it basically changed all the existing JVM version except 1.3 to symbolic links and point to java 1.6, as well as CurrentJDK. Maybe most java apps still work in java 6 (it should be) and the user won't even notice the switch from 1.5 to 1.6 jvm. However, it's not the case with Weblogic and Flex Builder. To fix the problem, I had to
- delete the java 1.5.0 symbolic link
- manually downloaded java 1.5 and move to /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0
- delete CurrentJDK symbolic link and relink to 1.5.0
After this weblogic started fine but Flex still crashed where the crash report showed that it is still using java 1.6 somehow. I had to manually edit /Applications/Adobe Flex Builder 3/Flex Builder.app/Contents/MacOS/FlexBuilder.ini and added the following two lines to force it use Java 5.
-vm
/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0
After this change, Flex now can build Flex projects again. 
Apple, why can't you let us choose which Java version as default instead of silently removing it.
2009/10/01
Use Command + Shift + <- or Command + Shift + ->
Thanks to comments at http://ciaranwal.sh/2007/12/10/tab-switching-in-terminal
2009/09/22
Took me a while to find out how to do it. I changed the "browser.gesture.swipe.down" to close tab instead of go all the way to the bottom of the page.
- Open a new tab in Firefox and type in "about:config" (It might warn you about changes might affect Firefox's stability, performance, etc..)
- Search for "gesture"
- Double click on "browser.gesture.swipe.down" and set the value to "cmd_close".
That's it.
2009/09/19
http://support.apple.com/kb/HT1343
http://guides.macrumors.com/Keyboard_shortcuts
I enabled spaces and the shortcut that I chose was "Option + Arrow key" which is actually conflicting with the keyboard shortcut that move left/right one word in any Cocoa application. Now I change the shortcut for Spaces to "Command + Arrow Key" and I am getting back the move left/right one word at a time capability. Bravo!!!
A colleague demoed Evernote's desktop app in the GTD discussion session I hosted and I bought it. Although I still wish Evernote had a multiple level hierarchy of notebook or notes, but the product is constantly upgrading even with an iPhone app. So I spent 30 minutes to migrate all my google notebook notes to Evernote and installed the desktop app for Mac. I have been using it since then and so far so good. 
2009/08/05
I was introduced to Sonar by the JavaPosse a couple months ago. It was a the best software quality tool that I have seen, from the official website:
SONAR is an open source quality management platform, dedicated to continuously analyze and measure source code quality...
So I setup a sonar server at work, tweaked it to work with the existing maven build, create a code analysis script and configured the windows scheduler to run it every morning at 4pm (yes, I was still using windows at that time.) The routing is simply, basically check out the latest source code, then run maven build with sonar on each project.
Couple weeks ago I was asked by a colleague whether I could add a new java project which is using Java6 to sonar. Sure, why not... When I started implementing it to my analysis script, I found the issue. The issue is quite interesting, my company had an enterprise license for clover 1 and we use the maven-clover-plugin to generate code coverage report. This new project required Java6 as the source level in pom.xml, however, the maven-clover-plugin only works with Java 1.4 or 1.5 but not 1.6. In pom.xml, the source level for the maven-clover-plugin can be customized to use 1.5 while the main project's compilation still in 1.6. But Sonar doesn't seems to pick that configuration up which I guess because sonar invoke the maven-clover-plugin from maven repository with default settings.
I asked this question to Sonar's user group and the answer I got was to upgrade to clover2. Today I finally got some time to dig into the documentation trying to figure out an alternative, luckily, I did find one. The solution is not too complicated:
- configure maven-clover-plugin to generate xml report, for example,
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clover-plugin</artifactId>
<configuration>
<jdk>1.5</jdk>
<targetPercentage>0%</targetPercentage>
<licenseLocation>${path_to_license}</licenseLocation>
<generateXml>true</generateXml>
</configuration>
......
</plugin>
- Run a regular maven build to generate the clover report
- Run maven build again and ask it to use the clover report generated on step2.
mvn sonar:sonar -Dsonar.dynamicAnalysis=reuseReports
It has been almost a year since my last blog entry. Being busy and spending more and more time on facebook and Linkedin, anyway, all excuses. :-P Recently I finally found a good solution for me to implement GTD (Getting Things Done) and I am back to super multi-tasking again since I have a trusted system which will help me to keep tracking of all the running threads. 
Recently 3 things in my life are worth mentioning:
- Toodledo + Google Calendar + iCal + iPhone + Google Notebook (This is the trusted GTD system that I am using).
Toodledo has been improved so much in the past two years which made it the perfect solution for GTD people like me.
- Mac
I started using Mac full time and it has absolutely the best OS in the world. I don't even want to look at windows any more.
- iPhone development
I started learning and playing with iPhone development for my company, it was fun.
I will try to keep up with a good pace on blogging which hopefully make the money paying for the hosting worth a while.
2008/09/21
http://www.atlassian.com/software/jira/personal.jsp
Supports 3 free accounts. 
Well done, Atlassian, I have been waiting for this for such a long time. Keep it coming. _
2008/08/02
The slides are very informative already, I wish the video would be released in the near future.
New technologies to me including: SOFEA (Service Oriented Front-End Architecture) and SOUI (Service Oriented UI) 
2008/07/16
I have been waiting for the 2nd generation of iphone for more than a year and the new iphone 3g makes all the waiting well worth it. I was very disappointed when AT&T released their upgrade plan on their website with some funny "iReady" videos, according to the video, I needed to check the website on whether I am eligible to upgrade (I was within a 2 years contract with AT&T, at around 19 months also). And from the website, I was not eligible to upgrade which really pissed me off. I just don't want to spend $200 more for it, because I think it's unfair. And according to the stupid price chart, it seemed that the only choice I have is the $129 family plan, which is insane compare to my current plan $60/month for 550 minutes.
I was planning on getting the iphone 3G the very first day, I didn't wait in line because I was not eligible to upgrade.
Last Sunday, I stopped by an AT&T store to complain, and they checked my current phone number and told me that I was eligible to upgrade. What a surprise!!! They said I became eligible after July 6th, I was pretty sure that the website still said I was not eligible to upgrade even a few days after July 6th. Whatever, as long as I am eligible. _
I was lucky not waiting in line the very first day when the whole AT&T and Apple system was screwed, pretty much the whole day. Yesterday I spent couple hours waiting in line and finally got my iphone. The AT&T system still said I was not eligible for upgrade. Anyway, I think the whole AT&T system is a crap. 
I took some screen shots with the iphone and the pictures are available at http://gallery.me.com/xigua/100010
2008/06/01
|
|
September 2010 |
|
| Sun |
Mon |
Tue |
Wed |
Thu |
Fri |
Sat |
|
|
|
|
1
|
2
|
3
|
4
|
|
5
|
6
|
7
|
8
|
9
|
10
|
11
|
|
12
|
13
|
14
|
15
|
16
|
17
|
18
|
|
19
|
20
|
21
|
22
|
23
|
24
|
25
|
|
26
|
27
|
28
|
29
|
30
|
|
|
|