Why the Modified BSD License?

May 10th, 2008

For the past few weeks, I’ve been releasing a few pieces of software such as Pitacalc, Coobird’s Blocks and now Cannons 2000 under the modified BSD license. More information on the license is available from Wikipedia and the Open Source Initiative.

First of all, I chose to have my software released under an open source license because I want my code to be available for others to use if desired and also to waive the liability from any damage which could occur. With the choice to open source the software, there are many open source licenses to choose from. Of all licenses, the most famous is probably the GNU General Public License, or the GPL.

The GPL tries to keep the software free. However, this is puts restrictions to how the software and its source can be used. For example, if I release my software under GPL, people who want to incorporate my code into their software can do so without restrictions. However, if the person wants to release the software that uses my code, they must also distribute their code under the GPL. To me, this is a restriction that I am not particularly enthusiastic about. This leads to some debate whether or not the GPL can be considered viral.

Don’t get me wrong, I don’t have a problem with GPL. In fact, I use many GPL’ed software like OpenOffice.org, the GIMP, VirtualDub, to name a few. However, I would like my code to be used without restriction of having to release the source under GPL. The requirement that GPL’ed code can only be used in a GPL’ed program seems a little bit restrictive, and that requirement seems to promote the proliferation of GPL-licensed software over the freedom of using the software itself. A non-copyleft license like the modified BSD license seems to be less restrictive in the sense that it allows the people that obtain the software to do what they want to do with the software. The “Types of copyleft and relation to other licenses” in the Copyleft article at Wikipedia sums up the issue of freedom:

This debate hinges on complex issues such as the definition of freedom and whose freedoms are more important, or whether to maximize the freedom of all potential future recipients of a work (freedom from the creation of proprietary software). Non-copyleft free software licenses maximize the freedom of the initial recipient (freedom to create proprietary software).

The GPL is concerned about having software free from being locked up in proprietary code, while the BSD license is more concerned about giving freedom to the person who obtains the software to do anything they want to do with it.

Although most the software I’ve released so far use the modified BSD license, it doesn’t preclude me from picking the GPL as the license of choice for a piece of software if I feel it’s better suited than using another license.

Coobird’s Blocks release 0.2

May 8th, 2008

Blocks image Coobird’s Blocks 0.2 has been released. They include some minor changes such as:

  • Selectable background image.
  • Default image path changed.
  • Uses the AWT Toolkit instance for loading images.

For more information, please check out the post at the Devblog.

Coobird’s Blocks now Available

May 3rd, 2008

Coobird's Blocks imageCoobird’s Blocks can now be played as a Java applet on coobird.net or as an application, both of which is available for download from the Coobird’s Blocks project page. The game is licensed under the terms of the modified BSD license and is free, open source software available for download.

This is the first release of Coobird’s Blocks, release version 0.1.

Blocks Updates

April 23rd, 2008

Blocks imageCoobird’s Blocks is a Breakout-like game written in Java. It is designed to eventually be developed into an applet and application. The project page has been updated extensively as the development of the program has resumed.

Computers are Useless

April 23rd, 2008

Computers are Useless is a Java applet which generates random questions from a list of words. It is intended to be an entertaining program to bring out a few laughs by generating sentences that, most of the time, make no sense.

The motivation for creating the applet was a quote by the painter Pablo Picasso, which was “Computers are useless. They can only give answers.” Well, this applet will generate questions rather than answers. However, these are randomly generated sentences, so they can be quite entertaining. “Did he slice a clock?” “Do you question trees?” “Would she dream of pumpkins?” are among the 45000+ sentences that the applet generates.

The source code released under the modified BSD license and is available from the Computers are Useless page.

Dvaspi is Available for Download

April 14th, 2008

Dvaspi image Coobird’s Data Viewing and Selecting Program with Integration (Dvaspi) is available for download. It is a free, open source Java application which will perform functions such as plotting data points from comma-separated value or tab-delimited text files, selecting the data points and copying to the clipboard, integrating with a baseline correction and many other functions.

Dvaspi is an open source software application licensed under the GNU General Public License. The source code and executable files are available for free.

The User Documentation lists the features and of the program along with other information which may be helpful in the use of the program.

This is the first release for Dvaspi and it is versioned at 0.5.
The program came to be from a merger of two separate utilities which were written to help the author with write-ups for his chemistry laboratory classes.

Pitacalc is Available for Download

March 31st, 2008

Pitacalc imagePitacalc is now open source and available for download.

The command line interface calculator program is available for download along with the source code which is released under a BSD-style license.

New Contents and Updates

March 30th, 2008

There have been a few updates at coobird.net in the past few days.

The following new contents have been added:

  • Dvaspi – Coobird’s Data Viewing and Selecting Program with Integration, a Java application that performs functions the name suggests.
  • Building a Processor – A project to build a processor out of discrete IC components. Currently it is put on hold, but there is an introduction.

Dvaspi imageDvapsi is under heavy development at the moment with changes being made to the graphical user interface as well as the underlying source code in preparation to be released under a open source license. (The GNU General Public License is the primary candidate.)

Transit Game imageAlso, a new entry has been made to the Past Programs section of coobird.net. Transit Game is a tile-based display system demonstration program. The program itself never materialized as a game, which was the original intent.

coobird.net Picture GalleryNew pictures have been added to the Picture Gallery. Enjoy the pictures of cherry blossoms in Tokyo.

The TGenerator class of Thumbnailator, the main class used to produce thumbnails, has been released under GNU General Public License.

More updates are expected to be made in the coming weeks.

Dealing with CSS Rendering of Internet Explorer 6

January 21st, 2008

One big headache I’ve had for the past year with coobird.net was the font rendering on Internet Explorer 6 (IE6). Compared to other browsers, IE6 will render the fonts at a larger size that is defined by using Cascading Style Sheets (CSS). My browser of choice is Firefox, so I generally create content and view them on Firefox. Unfortunately, IE6 implements CSS differently from other browsers, the end result is text that’s too big and borders that are too thick.

The following are some screenshots of coobird.net before changes were made to make the page rendering more consistent between IE6 and other browsers:
coobird.net on Firefox
Firefox 2
coobird.net on Opera
Opera 9
coobird.net on Internet Explorer 6
Internet Explorer 6

Searching around for the CSS font rendering of Internet Explorer 6, there are quite a few people out there who are experiencing the same problem. One way to fix this problem is to use a different style sheet for Internet Explorer 6 using conditional comments. (Hack-free CSS for IE was a good article on conditional comments.)

Currently, coobird.net implements the conditional comments technique mentioned above to use a separate style sheet that specifies different font sizes and border thicknesses for IE6. Finally coobird.net looks half-way decent on Internet Explorer 6.

Lots of Updates

October 17th, 2007

New contents have been added to coobird.net. Quite a bit of new content were added along with minor changes to the design of the site.
The Past Programs section of this blog has been moved to coobird.net. A new feature, the Picture Gallery has been added, although it is still in an experimental phase. More contents should be added in the coming weeks.