We were thinking about which application seamed the best choice for creating the Quick Start Guide and the sample application.
It should be not too big, but useful, and make use of a good deal of the platform.
It should also be helpful to compare the effort needed to create an application from scratch and using our framework.
So we finally choose PasswordKeeper, a KeePass like application that has J2ME version at source forge (KeePass for J2ME).
Here are a few quick facts about the size of the project, that I think that speak aloud:
UPDATE: the table above represents some statistics about the SOURCE code of both applications, not the final .jar size of the application itself. We are trying to picture the development effort.
| PasswordKeeper | KeePass for J2ME | |
|---|---|---|
| Number of files | 20 (5 java, 1 XML for the views, the rest resources) | 71 |
| Size in Kb (approx) | 94 (includes images) | 237 |
| Lines of code | 2326 (807) | 6835 |
The number of 807 between parenthesis is the approximate number of lines of code that are actually part of the application and not of the template, so the ones that you really create.
Have some comments?













Finally, we are releasing OpenBaseMovil 3.0.
This version fixes some bugs found in RC3 and adds a lot of interesting things:
- app-template is an application template from which you can create the skeleton for your application, simply running ant in the folder will ask you a few questions and create your new project.
- PasswordKeeper, this is a sample application built with the app-template. You can download a working version for you phone at the download page and also the source code to learn how to create applications.
- Best of all, the Quick Start Guide which is also available for download. This guide explains how to use the app-template and follows the process of PasswordKeeper.
With this release we hope that you have every thing you need to create your own applications, and don't forget that the BaseMovil developer program is open (in a yet restricted beta) allowing you to to get access to the sync engine, application and database hosting, and more... for FREE for developers.
Just a quick note, I wrote PasswordKeeper in about 8 hours while I created the Quick Start Guide and refined the app-template, so we could say that it took me about 4 hours to write the entire application. It may contain bugs, it's a 0.1 version, but I think that the result is a good one for just 4 hours.
We would love to hear from you, your applications, your thoughts, feature requests... feel free to use the comments and the project page at Source Forge.













We have released another version of the library, the RC3.
It fixes a bug in the new table creation methods and one in the build system.
We've also made some improvements and moved some classes from the util library to the core and bluetooth libraries.
We have done this release so fast because the bug resolved in the Table class is important enough, though it could be easily "workarounded" we felt that it should be fixed at once. It was only one missing line of code!
We are working with the application template and the demo application. They are going to bring some minor changes to the database engine. We will release them (the template and the sample) soon, along with the final version 3.0.













Hello everyone,
We've been working hard to publish this 3.0 RC2 release, because this is the first complete release of the OpenBaseMovil platform.
This means that you can now create applications with all the supplied files that you can download at Source Forge.
We have finally included the ui library, along with the net and util libraries and much, much more. This includes some bonuses such as a barcode scanner interface to Microvision Flic barcode scanner and also a NMEA compatible driver for bluetooth GPS antennas. You just start them and register your class to listen for their events, and then you just have to process the events with the data (barcodes and gps locations respectively).
So what's next? We'll be releasing soon also a template application and a demo application built with it, along with a series of posts here with a tutorial on how to build applications very quickly. So stay tuned, and subscribe to the feed!
You have been very helpful and very inspiring through your commens and emails, and I encourage you to keep that way.
Please, leave your thoughts and digg it if you like it!













We have finally released the first "almost complete" version of OpenBaseMovil.
You can download it at Source Forge.
This version includes the awaited OpenBaseMovil-db J2ME Relational Database Engine, along with all the dependencies and almost all the build tools.
We have included some changes in the database structure and api compared to the current commercial version, since the standalone open source version needs methods to create the database manually while the commercial version gets the structure over the air with the sync engine. But you can consider it a very stable release.
In the next one, RC2 which should also come this week or earlier next week, we will include the remaining libraries and tools. The most important one missing now is the ui library.
With RC2 we will also publish some samples and templates.
And finally, after your valuable comments we will release the final 3.0 version which should be almost the same as RC2.
Thanks to all of you that have showed such a great interest in OpenBaseMovil, through this blog's comments and through email. We are almost there... just a few days for RC2 and you will have all you need to create powerful, enterprise-class J2ME applications.













We're working to release as soon as possible the J2ME database engine, OpenBaseMovil-db, along with the required dependencies.
In the mean time, we have written a short developer guide that will let you take a deeper look at the database.
It also contains the specification of the proposed SQL engine that will sit on top of the current API-based one, as requested by some of you by email. This SQL engine is to be written, but for most applications I believe it is not really necessary.
We are very happy of the echo and the comments that we are receiving from the community, we hope that you find our framework really useful.
Stay tunned, the database engine will be released soon, and a little afterwards the first complete release with the ui engine.
Here is the OpenBaseMovil-db Developer Guide in PDF format.
Update: The document has been updated with some minor changes in the SQL format and some examples.













Hi all,
We've just started to use the project wiki (provided by SourceForge). We plan to put there useful information about the platform, but mainly as a vehicle for collaborative definition of objectives and specifications.
The first thing we are defining and discussing is the specification for the OpenMidsets platform. The idea behind it is to create a first well defined draft that will guide the development of the host application itself, but more over the foundations for the programming model for the hosted applications.
We are defining the life cycle of an OpenMidset, the intercommunication protocol to allow applications to collaborate between them and to access system resources in a uniform way that can be really portable to platforms other than J2ME (like Android).
It has very little information yet, bet we expect to put more over the next weeks and we'd like you to share your ideas with us to make it a better platform for powerful mobile applications.













Here's is the promised english version of the presentation we delivered at OpenMovilforum.
I hope you can get a better grasp of the full BaseMovil and OpenBaseMovil capabilitites with it.













Today we will present OpenBaseMovil and the incomming OpenMidsets platform at OpenMovilForum, a Spanish event for Open Source development of mobility solutions sponsored by Telefónica Movistar and Nokia.
Here you can find the presentation that we will deliver. Most of it is in Spanish, but we will upload an English version very soon: OpenBaseMovil presentation at Open Movil Forum













We have just released openbasemovil-script-0.1, this is the first revision that we have uploaded. There is still work to do, but the system is running fine and you can create your scripts and extend the script language (please, send your contributions to the project).
We have called the language bmScript, it is an object oriented scripting language, with a syntax very similar to Java, C++ or C#, but a lot easier.
While it is easy, we have designed it to be easily extensible, both the core language it self and the virtual machine interface to "the outer world". That means that new keywords can be added very easily, and (that will be far more common) you can extend the reach of the language to whatever you want just by providing the appropriate proxy classes.
Lets see the famous Hello World! example with bmScript:
class HelloWorld
{
method void main()
{
system.println( "Hello World!" );
}
}
Unlike Java, bmScript supports multiple inheritance and has no notion of interfaces. You can extend a class from one or more super-classes, and in case of method conflict the one that belongs to the first declared super-class is used.
Like Java, each class must go in it's own file with the same name and it is case-sensitive.
class foo
{
method String sayHello()
{
return "hello ";
}
}
class bar
{
method int calc( int i1, int i2 )
{
return ( i1 + i2 );
}
}
class foobar : foo, bar
{
method void main()
{
// Will show: hello 25
system.println( (sayHello() + calc( 10, 15 )) );
}
}
The next article will be a more in depth look to the language and how can you extend it, with samples from the upcoming releases of OpenBaseMovil-db and OpenBaseMovil-ui libraries that allow the script to access the database engine and the ui toolkit, respectively.
Please, leave your comments. We have big plans for this engine (and the rest of the OpenBaseMovil project), such as running in other platforms like Android, Windows Mobile, Black Berry and Symbian (it actually works through the jvm, but we mean directly for better control and speed).













