Eclipse Summit Day 2

October 11th, 2007

Small summary of a couple of projects seen during the second conference day:

  • eRCP (abbreviation of embedded Rich Client Platform): this version, which is a subset of RCP, is targetted towards mobile devices and is also based upon OSGi. eRCP bundles light version of components from RCP, like eSWT, eJFace and eWorkbench and eUpdate. OSGi and the JVM is tuned for mobile devices and therefore has a smaller memory footprint than for a normal OSGi application, along with some other optimizations and tweaks. The aim is to get the benefits from RCP, while slightly adapted for mobile devices: multiplatform, native look & feel and better compatibility between devices than MIDP.
  • eSWT (embedded SWT): I talked yesterday about RAP for AJAX application and RWT. eSWT is a similar project, but targetted this time for mobile devices. eSWT is also a subset of SWT and is split in 3 components for better memory usage: Core eSWT (required), Expanded eSWT and Mobile Extension eSWT, the two latter being optional. Like SWT, eSWT uses native widgets from the underlying operating system, although a difference is that much of the code within eSWT is native code, giving rise to much better performances than a basic wrapping of OS widgets (a critical factor for mobile devices). eSWT implementations exist already for a number of mobile device platforms, like Windows Mobile and Symbian series 80, among others. A version for Symbian series 60 is ongoing and should be released shortly, along with the corresponding SDK. During the talk, a demo of a simple news reader was made, where a version using SWT was running on a desktop computer, a second version using RWT was run as an AJAX application, and finally a version using eSWT was running on a mobile device. Impressive to see that a single code base can be used to produce 3 applications running each on a completely different platform, although at least small modifications of the code base are needed.
  • Ganymatic: there is a couple of challenges for building an Eclipse distro, mainly managing the dependencies and running basic tests to be sure that plug-in A does not break the API of plug-in B when combined. This project, based on the package manager Buckminster aims at making such a process easier by providing an integrated infrastructure. This would enable to generate a distro automatically by fetching the required base packages, installing recursively their dependencies, running a number of automated tests to be sure everything is in place, making the binary build and reporting possible errors. The project will be used in particular for next year Eclipse’s release called Ganymede.
  • BMW CarIT: Eclipse is here used as a platform along several lines. For instance an Autosar IDE has been realized based on Eclipse RCP (using technologies like EMF, GEF, OAW), providing a modeling tool for developing Autosar applications. There is also the embedded development in C++ done with Eclipse CDT, where a custom compiler has been quickly integrated, including error/warnings annotations, taking advantage of the openness and extensibility of Eclipse as an IDE. Some other projects regarding Eclipse have also been presented (like an automated deployment solution).
  • Medany Platform: this is a project developed in France on top of Eclipse RCP and eRCP. The idea is here to use mobile devices (PDA) to aquire medical data and synchronize them with some servers. eRCP is used on the mobile devices while RCP on the server. The project is heavily based on Model Driven Architecture (EMF, OAW) and some other Eclipse projects (WTP, DTP).

I guess, that’s it for this year. More information can be found on the Eclipse Summit 2007 website.

Eclipse Summit Day 1

October 10th, 2007

I am at the moment in Ludwigsburg, which is in the Stuttgart’s area, in Germany, for the annual Eclipse Summit 2007. This is actually a quite interesting conference in the effervescent and mainly open source field of Eclipse. Lots of different projects around the mother project Eclipse are being presented. There are actually lots of interactions between them. Check the Eclipse Summit page for more information as well as a live cast and the slides regarding the talks.

A little summary of some interesting projects seen today:

  • Erich Gamma presenting the Jazz project. A collaborative development environment. It provides a number of tools, which are integrated together, to enable a better collaboration in software development. I am seeing this a bit like a web 2.0 touch to software engineering, where the different developers have the opportunity to follow in real time the development of the whole tool: chat together using instant messenging, see a distributed task list of the project, send by drag and drop references to bugs or defects, see who is online at the moment to be able to address a given problem with that person directly, etc. The application is unfortunately not open source, but is of course based on Eclipse RCP.
  • An update regarding the Equinox or OSGI framework, which is an underlying framework and architecture on which Eclipse is based from the version 3.0.
  • An AJAX framework called RAP. This project aims at providing a target platform for deploying existing SWT applications, as AJAX apps, providing API’s (mostly) compatible with SWT. RAP or the RWT framework, as it is called, is in fact a subset of the SWT API’s. An application using the RWT target platform will be automatically translated into a web application upon execution, including javascript handling of the user events. It seems like a great idea to have a unique code base for an application, using either SWT or RWT depending on the deployment type. Although I am wondering how a seemless integration of the RAP application within the browser can take place: for the moment, the RAP application will have for instance its own windows, within the browser window, which I don’t find very nice. But in any case, a project to keep an eye on.
  • An update regarding JDT. I know I had read it in the release notes when Eclipse 3.3 was released, but I re-discovered the CTRL + 3 (Command + 3 on a Mac) shortcut. It does basically the same than Quicksilver or Spotlight on a Mac, just within Eclipse. Typing a short text, it does a search among all possible operations applicable to the situation. A great way to save time when launching operations (e.g. show the error log view or do a code cleanup).
  • GUIDancer: I find this name funny. This application basically enables to run tests of GUI based applications, at the moment just using Swing, although the version 2.0, which should be release to the end of the year, should support SWT and Web applications as well. A good complement to Unit Testing.

I will try to charge my laptop battery until tomorrow, so that I can give an update of the second day.

@Edit. I forgot to mention the EMF Compare project:

  • EMF Compare is a project started exactly one year ago at Eclipse Summit 2006. The aim was to privide model comparison capabilities, which were lacking at the time. One year later, a working prototype has been implemented. This enables, when using EMF for Model Driven Architecture, to be able to compare graphically two models, useful for instance when merging back to Subversion or CVS a modified version of a model. This project can be also used to compare graphically different XML files.

Virtual Barbershop

October 3rd, 2007

A friend sent me the other day the link of the virtual barbershop. Amazing. Remember to use headphones, though.

Spam

October 1st, 2007

I have just seen in the blog dashboard the following activity log:

“Akismet has protected your site from 6,753 spam comments.”

Nice. There are some people out there that are quite nice and have useful things to comment on, I see. Hopefully I am using Akismet, a spam protection tool for WordPress, that is using a webservice for comment validation. It actually works pretty well. I have just got a couple of spam comments lately, that I have anyway to approve before showing up.

pView: Description Page Updated

October 1st, 2007

I have just slightly updated the description page of pView, a photo gallery viewer I had programmed in 2004/2005. I have in particular added a few screenshots. Feel free to use this software if you like it.

pview_detail_sma1.jpg

pview_thumbnails_sma2.jpg

Summary of its features:

  • Extremely easy to use: The photos within a folder are shown as thumbnail images, the sub-folders as sub-galleries.
  • Comments may be added for each picture in the administration page.
  • Possibility to navigate through the galleries/folder.
  • Each picture is supported in 3 sizes: original size (e.g. 4 or 10 mega pixels), full screen (i.e. 800×600) and thumbnail (i.e. 320×240), so no need to archive separately the photos you manage with pView.
  • Browsing between the pages inside a gallery (the number of pictures per page can be changed in the config).
  • Access control of the folder: possible to define a login/password for selected galleries.
  • Users’ management page: create, delete users and change their passwords.
  • The design of the galleries is done through a generic html template that can be changed. In addition, if an html template is present in a particular folder, it will be used instead of the default template (customization of particular galleries).
  • Automatic generation of the thumbnails through a shell script (I know, it would be better to have an on the fly generation of the thumbnails, should come in a future version).

myclimate

August 31st, 2007

As a few of you probably already know, I am using a car to go to work from my home in Zurich to Baden. This for a main reason, it’s faster than using the train. By public transportation, the trip lasts 1 hour door to door, one way, while using the car it lasts just 30 minutes. At the end of the day, literally, I am gaining 1 hour. But of course, by car I am less environmental friendly than using public transportation, which I am aware of.

Browsing the net, I stumbled upon the website of a Switzerland-based company, myclimate.org, active in the domain of climate protection and CO2 compensations. The idea is quite interesting and simple: try to get environmental friendly by avoiding carbon emissions, while buying carbon credits for the emissions that cannot, for some reason, be avoided. The collected money is then invested in projects around the world, which aim at reducing the carbon emissions, e.g. the construction of a wind park in Egypt, which will avoid using a coal plant for producing electricity.

So here we go. I calculated the CO2 emission caused by my car use for going to work, which corresponds to about 11’000 Km a year with a car consuming 7 l/100 Km. This gives 2.35 tons of CO2 a year. Not kidding! Although there is just 25 Km between my home and work place, it gets to 2.35 tons! The majority of CO2 weight comes form the oxygen atoms, which come from the air. That’s the reason why 770 l of fuel produces 2.35 tons of CO2. At the end, I bought the carbon credits, which is a good thing, I think, but should not restrain from living, or trying to live, more climate neutral.
myclimate.png

Busy Time

August 31st, 2007

In the last past weeks I had a busy time finishing an Eclipse/SWT project, therefore having less time to post news on this blog. It should be better for the coming weeks.

Back in Madrid

June 30th, 2007

We arrived yesterday in Madrid, back from a short week in Extremadura. It was a nice journey. We visited some other nice pueblos. Caceres about 80 km North of Don Benito, where we saw nice roman and arab ruins, in particular a few towers around the antique city along with walls protecting against invaders. Caceres shows a nice mix between the original roman style and arab constructions. We went also to Guadalupe, a village in the mountain at 1.5 hour driving North East from Don Benito. There we visited an old monastery, where lots of antique christian objects in the purest Spanish and baroque tradition have been conserved. We did finally a short stop on Thursday in Medellin, that I mentioned already in my last post. There we saw of course a statue of Hernan Cortes. I am wondering if this guy is worth admiring, considering what has been done by the spanish conquistadors in South America, where the native peoples were persecuted, their culture and language largely cannibilized by the spanish invaders.

¡Visitando España!

June 26th, 2007

Spending some holidays in Spain at the moment. We arrived on Saturday in Madrid and then went to Don Benito on Sunday. It is a small town at 3.5 hours driving from Madrid, in Extremadura, a state in the center of Spain bording Portugal. Very nice. The area has lots of antique roman buildings to visit. We were yesterday in Merida, about 60 km away from Don Benito, where we visited lots roman ruins like a stadium, a theatre, various houses and roman roads, as well as an incredible roman bridge that is still in use today and is a couple of hundreds meter long! Definitely worth visiting.

It’s funny, because around here there are lots of villages or small town with well known names. A village beside Don Benito is named Medellin. There are just a couple of thousands people living there. But it is also the home village of the spanish conquistador Hernan Cortes, so no wonder that there is a city in South America, in Colombia, with that name. Merida, is also a name found in Equator and some other place around the world. Although I am not sure why.

Ultimate Configuration Guide for Linksys SPA, PAP2 & Sipura

June 26th, 2007

Definitely worth a look. The page shows an example configuration for a Linksys SPA, PAP2 or Sipura VOIP device for different VOIP operators. Unfortunately the explanations are in German. Otherwise, lots of details, relevant options appearing in red and even advice given when needed.

SPAKonfig

Tomato on a WRT54GL

June 17th, 2007

The wireless access point and router WRT54GL is an amazing device. Since Linksys changed the firmware of the WRT54G and WRT54GS from Linux to a custom one and reduced the RAM and flash memory size, they released the old linux driven device as the WRT54GL. It is the only device of that family on which we can install a wide range of firmwares, for instance the excellent OpenWRT, or Tomato. You can find here a complete list.

I had beforehand experimented a lot with OpenWRT. With it, you can do pretty much everything you want. You can setup wireless security (e.g. WPA), you can configure a firewall and even assign one of the ports of the switch to another network subnet than the LAN. Unfortunately, although you have got a basic web administration tool in the previous stable release (White Russian), you need to do lots of stuffs using the command line.

So this week-end I tried to install Tomato 1.07 on my access point. You have got a very nice set of features. I’ll list some of them after a small screenshot.

tomato-wrt.png
  • Nice AJAX web interface with which you can do (almost) everything. Very neat and powerful.
  • Network monitoring tool with real time view (see the screenshot)
  • Every kind of network administration stuffs (e.g. wireless setup and security)
  • Quality of Service (QoS). Here you can prioritize the different protocols you use, e.g. set VOIP with a higher priority than surfing and P2P with a lower one. This is a feature I have never used with OpenWRT.
  • Acess restriction
  • SSH access in case you want to change some very specific things. I needed this just to create another subnet on port 4 for a DMZ.
  • etc.

So far I have had a very good experience with Tomato. It’s easy to configure and power users can even customize or extend the system scripts (init, firewall, wan up, etc.) using the web interface.

Copy Sparse Files with Rsync

June 4th, 2007

Updating my backup script that is using rsync, I have just realized that without further options, rsync does not handle well copying sparse files (i.e. files that are for instance holding a file system and that just take the space needed by their actual size). A consequence is that on the target file system, the sparse file won’t be any longer a sparse one, i.e. will take its maximal size.

Fortunately, adding the -S option to rsync will do the trick, for instance

rsync -a -S /source_dir/ /dest_dir

Configuration of Linksys PAP2 VOIP Adapter

June 3rd, 2007

I have written a small howto that explains how to configure a Linksys PAP2 VOIP adapter for a voip provider like voipbuster.

PAP2 Configuration for Voipbuster

Ubuntu Nano Backspace Problem Fix

June 3rd, 2007

There is an annoying problem with Ubuntu. Using the command line editor nano, the backspace key acts sometimes as the delete key (deleting the first character on the right and not on the left).

You can fix this by adding the following line to your /etc/nanorc file:

set rebinddelete

Xen on Ubuntu Feisty

June 1st, 2007

I have just installed Ubuntu Feisty (7.04) server edition on my home server. Needless to say that it was a piece of cake, including the setup of the software RAID-1 array. I have been able to do everything using the text mode graphical installer. I did a minimal server installation with no special features as I am going to include everything within virtualized guests.

The killer functionality that my friend Allon pointed out in an entry on my wiki regarding the installation of Xen on a Hetzner dedicated server: now we can install under Feisty a completely functional Xen system — including the dom-0, the host — using a single command:

sudo apt-get install ubuntu-xen-server

This is quite nice. Just reboot after the install process is finished and you are ready to setup you individual guests systems (domUs).