Archive for May, 2008

Singleton is a bad design pattern »

I am not totally against Singleton design pattern. However, based on experience, normally if there is Singleton design pattern in your application, you should carefully study your code. Usually there is always a better way of doing it other than using Singleton design pattern. Consider the following code snippet I encountered for one of the [...]

New JDBC URL Syntax for Oracle 10g JDBC Driver »

This is something you might have overlooked if you are using Oracle JDBC Driver. Prior to Oracle 10g, the syntax for the JDBC URL looks like below jdbc:oracle:<driver_type>:@hostname:<;listener-port>:<SID> E.g.   However, there is a special THIN style service name syntax supported with only THIN JDBC driver that was introduced in 10g JDBC driver jdbc:oracle:thin:@//host_name:port_number/service_name [...]

HeidiSQL: MySQL Made Easy »

HeidiSQL provides a very good UI to administer MySQL. If you want to have a desktop application that can manage MySQL, then you should consider using it. phpMyAdmin is good if you want to use a web application for MySQL administration. As quoted from the website, with HeidiSQL you will also be able to  generate [...]

BlueFish on Windows »

BlueFish and PSPad are the 2 commonly developer editors that I used. Before this I normally used BlueFish on Linux, but recently I get to know there is a Windows version available at

Open Source Grid Computing »

Here are some open source grid computing software that are quite interesting. GridGain is the open source grid computing software for Java. It is dual-licensed under LGPL and Apache 2.0 licenses and is built on open source software foundation   BOINC is a software platform for volunteer computing and desktop grid computing.  BOINC is designed [...]

Lightweight ESB: Apache Synapse »

This article is written since now I am trying to compare Apache Synapse, Mule and Apache ServiceMix. Apache Synapse is the first enterprise service bus I am looking at now. As quoted from the website, Apache Synapse is designed to be a simple, lightweight and high performance Enterprise Service Bus (ESB) from Apache. Based on [...]

Free GeoIP Database »

Here are 3 GeoIP databases that are free MaxMind WebNet77 HostIP – is a community-based project to geo-locate IP addresses

.NET: MTOM Enabled Your Application Using WSE »

One of my user encountered the following error when he is trying to use .NET to connect to the web services which are running under Apache CXF. Client found response content type of ‘multipart/related; type=”application/xop+ xml”; boundary=”—-=_Part_0_9519730.1210566764662″; start=”<root.message@cxf.ap>”; start-info=”application/soap+xml”‘, but expected ‘application/soap+x ml’. The request failed with the error message: —   ——=_Part_0_9519730.1210566764662 Content-Type: [...]

Implement OSGI using Apache Felix »

OSGI is the technology I am currently looking at. I am experimenting it using Apache Felix. OSGi technology originally targeted embedded devices and home services gateways, but it is ideally suited for any project that is interested in principles of modularity, component-oriented, and/or service-orientation. Felix is a community effort to implement the OSGi R4 Service [...]

Java Generic: Type Inference »

This is a simple trick I just recently found out. I have a Generic interface 1: public interface Generic<T> { 2: 3: } And the implementation 1: public class GenericImpl<T> implements Generic<T> { 2:  3: public static <V> Generic<V> make() { 4: return new GenericImpl<V>(); 5: } 6:  7: } Normally I do this 1:  [...]

Open Source Speech Recognition Engines »

The open source speech recognition engines from the Sphinx Group at Carnegie Mellon University is an interesting project that I have looked at previously. The CMU Sphinx project released a set of reasonably mature, world-class speech components that provide a basic level of technology to anyone interested in creating speech-using applications without the once-prohibitive initial [...]

FreeTTS: Open Source Speech Synthesizer »

FreeTTS is the Java speech synthesizer I used sometime back in one of my projects. As quoted from the website, FreeTTS is a speech synthesis system written entirely in the JavaTM programming language. It is based upon Flite: a small run-time speech synthesis engine developed at Carnegie Mellon University. Flite is derived from the Festival [...]

Statistical Analysis for Lotto »

Statistical analysis is always an interesting field. For those gamblers either they perform structural or non-structural analysis on their own or using software. E.g., in a 6/49 lottery (the most common world wide) there are 13,983,816 possible combinations. If, say, every combination were to come out just once, in random order, in 14 million draws, [...]

Coding4Fun Developer Kit »

C4F Developer Kit project was created to demonstrate the power and ease of creating fun, cool applications with the new Visual Studio 2008 Express Editions. It features Easy to use drag ‘n drop controls including 10+ Windows Vista APIs and 8+ Web Service wrappers Complete source code in both Visual Basic and Visual C# for [...]

OpenX: Open Source PHP Ad Server »

This is the free and open source ad server I am trying now. As quoted, OpenX  is a hugely popular, free ad server designed by web publishers for web publishers. It provides everything you need to manage your online advertising.Make more money from online advertising today. OpenX gives you: Control  – Maximize your revenue by [...]

Piwik: Open Source PHP Web Analytics »

This is the open source web analytics software in PHP that I recently tried. I am quite satisfied with the features it provided. As quoted from the website, piwik is an open source (GPL license) web analytics software. It gives interesting reports on your website visitors, your popular pages, the search engines keywords they used, [...]

Writing Easily Maintainable Code ? »

Download Source Code This is the design pattern I came across while browsing through my RSS feed reader. Not very confirmed now from where I read about this. It is quite hard to apply this to the data access layer since I use ORM tools but I am not sure how this can be applied [...]

SubSonic: Help a WebSite Build Itself »

As quoted from the website, SubSonic is a toolset that helps a website build itself. Basically, it generates the DAL (Data Access Layer) on the .NET platform for you. Currently SubSonic supports MS SQL Server, MySQL and Oracle.  I particularly like the design concept using ActiveRecord. SubSonic uses the ActiveRecord pattern for the data-aware base [...]