Since I have been writing about Jython, a version of Python implemented on the JVM, I thought I would provide a link to some Python resources for Java programmers who are using DB4O: Learn Python, why don’t you?
If you like what Java has to offer in terms of class libraries, but you like the Python language and its idioms, then Jython is the best of both worlds.
To prepare for my next installments on Jython, Django and DB4O, read about introspection in Python.

What Is Vendor Lock-in?
One of the worst things that could happen to you as a supplier of goods and services is for the customer to leave you for one of your competitors. You can prevent this by providing a service nobody else provides, by offering unrivaled quality or service, or by charging a price that is hard for others to match. You can also combine these methods of keeping a customer, and you can raise customer awareness by marketing and advertising your offering.
Another tactic is to find ways to prevent or discourage your client from switching even if he or she wants to. In other words, you can try to lock the client in. You can do this with service contracts that contain cancellation fees. Sometimes, a client locks him or herself by committing to a platform or product by writing code.
If I build my business on an in-house software solution that uses an Oracle database, I may do the work such that it is difficult and costly to switch to a different database product. If Oracle changes their terms of service, or raises the cost in some way, it may be cheaper for me to pay this cost or accept the service changes than it would be to change the application so that it works with a different database product. In this case, I have locked myself in.
If my needs are such that I can depend on the MySQL database, I am free to run my database on Linux, Windows, or some other operating system. My choice of MySQL does not lock me into using the Windows OS. However, if I want to use SQL Server, I will also need to buy a Windows license. Another way to lock you in is to provide products that depend on each other and to force clients to use one if they want to use the other.
Another way to lock you in has been to provide a software product that uses proprietary file formats or closed APIs. This makes it hard to switch to a new product without converting you old files, or rewriting your code. It is in your best interests to support open file formats, and open APIs.
For more information about vendor lock-in see:
Oppose Vendor Lock-in
Some people may argue that some of the practices I have described here are wrong or immoral. I won’t argue that. If you are willing to allow yourself to get locked in, then I suppose I will have to admit that the practices I describe are smart – I wouldn’t say the same thing about you.
As a consumer, you should want to preserve your ability to switch to a competing product. If something better than comes along, you want to be able to consider lowering your cost or improving the quality or performance of the software you use. In software, innovation is encouraged by openness and by collaboration more than it is by monopoly practices.
Defenestration is about putting you in the drivers seat. It is about encouraging innovation, choice and competition.
Why Use Open Source?

Reducing my reliance on closed and proprietary source products is not something I did in one swoop. I did it in stages. But, I did embrace the reasons for moving to open source very quickly. I will list some here, and then address a few of them. Some may appeal to you, and other will not. The range of opinion is wide – some people will go as far a saying close source is evil. I am not trying to convince you, but I hope I do justice to the reasons others give. I have my own opinions, which I will share in due course.
Open Source is often free. This is true, and it is a factor for me. However, all software environments require maintenance. Users need to be trained. Files and information must be able to flow from closed sources systems to open source systems and back. The cost of the the software is more than the cost of acquisition. Free is not the be all and end all, but it can be a important.
Managing licenses is a time consuming and difficult exercise. This is true, and I find that it is an important consideration. Remember, it is often illegal to install multiple copies of the same package on different computers. Even if you have a volume license, you have to keep track of how many licenses are being used on how many computers.
However, I am using Open Office as opposed to Microsoft Office. I can hire as many employees as I want and install the software without the time and expense and managing licenses. Using Open Office, I can create files that can be used and edited by people who are using Microsoft Office. Open Office is considered a very good replacement for Microsoft Office, and any other proprietary office suite.
Open Source Avoids Vendor Lock-in. Nobody controls my use of the Apache Web Server. If I want to hire somebody to alter or extend its functionality, I can do that. If I want to include Apache in a product that I develop, market and sell, I can do that without paying royalties to the owner. My use of open source software is limited by a variety of software licenses.
Anybody can hang out a shingle and offer services that include installing and supporting the Apache web server, and other open source products. In the case of proprietary products, you can never get away from the fact that the product and the company that owns it are one.
The issue of vendor locki-n deserves an entry all to itself. I will pick up there in my next installment. Later, I will address some of the other reasons to use open source.