mapbender's blog

Summary: Mapbender code sprint July 2-4


After meeting in Bolsena in June the Mapbender team once again gathered for a code sprint. This time we chose the friendly atmosphere of Linuxhotel in Essen.

We created a road map for the next quarter, which should make sure that FOSS4G and Intergeo will be successful for the project.

We already added Mapbender to the OSGeo Live DVD 4.0 release candidate, and we'll be optimizing it further. There are still some open issues, please feel free to help us.

Another work in progress is a Mapbender debian package. With help from the folks of the FAI project (who were also staying at Linuxhotel) we were able to get closer to creating a preliminary version. Again, we still have to address some open issues, and we are looking for people knowledgable in debian.

Preparations for FOSS4G also included the Mapbender workshop, where good progress was made. There are still some slots available, so register if you plan to attend.

There is also a new section in the Mapbender wiki about case studies. So far, it only features the Geoportal Rhineland Palatine SDI. We plan to add more case studies to this page, so if you are using Mapbender, we definitely encourage you to add your project to the site.

But of course there was much more going on, like fixing bugs, documentation, feature improvements and so on. Thanks to Astrid, Karim, Verena, Michael, Marc, Arnulf, Uli, Thomas, Christoph and Martin for attending!

The next code sprints will be in Barcelona, where we planning to focus on the GeoJQuery project, and very likely at Intergeo, in order to plan the final quarter of 2010.

OSGeo Hacking Event in Bolsena (day five)

Mapbender with OpenLayers and OpenStreetMap

The report from day five is a little late, sorry for that. Maybe because coding lasted till late at night, and after that maps were not the only thing bent, on a lovely summer night spent in great company.

We managed to finish a new OpenLayers demo application. First we updated to OpenLayers 2.9.1, and enabled Mapbender to do a custom build of it for each application, depending on the functionality needed. As we added another "heavy" plugin (the jQuery UI-Layout plugin to wrap the OpenLayers map), the final weight of JavaScript code is 166KB. But we didn't yet focus on optimization, for example, the OpenLayers code is not yet minified.

We also added some new modules, like zooming to a defined extent on load (similar to the existing setBBox element), or WMS feature info. We realized that OpenLayers is not using the full potential of WMS here, as the set of queried WMS layers is always identical to the set of visible layers, so you can't exclude a layer from feature info and still see it. However, we managed to create a workaround by adding a custom control.

We've had a great time in Bolsena, thanks again to Jeroen Ticheler for organizing, and we are already looking forward to meeting at the next sprint in Essen on July 2nd to 4th.

OSGeo Hacking Event in Bolsena (day four)

Today we did some more brainstorming on GeoJQuery, today with Paul van Genuchten. He showed us an interesting application he did, based on similar jQuery plugins Mapbender uses, like jQuery UI, jQuery UI-Layout, or jsTree. But he also used widgets we were unaware of, like the extended layer switcher. It looks like there are a lot of interested parties in GeoJQuery, so join the discussion and development.

We also continued to work on the OpenLayers integration, but discovered some inconsistencies between the Mapbender viewer and OpenLayers. Where Mapbender allows the user to toggle the queryability of each individual WMS layer (independent of visibility), OpenLayers just queries all visible layers. After a short but fruitful IRC discussion with Christopher Schmidt we decided to create our own control, basing it on the existing WMSGetFeatureInfo control and changing two functions. Now we are able to translate the Mapbender behaviour to OpenLayers, a demo will follow.

Another topic was linking Mapbender and GeoNetwork, where we got great help from Pieter Verbaarschott. We worked on server side authentication and using the XML import to synchronise the data between Mapbender and GeoNetwork. Pieter has written a great shell script for us, which we might improve even further tomorrow.

And last but not least, Mapbender 2.6.1 has finally been released, thanks to Thomas Baschetti. This is a bugfix release, please update your installations, and let us know if you like it. Look out for Mapbender 2.7 and 3.0 beta which will both be released before FOSS4G in early September.

Friday is the last day in Bolsena, watch out for our final report tomorrow.

OSGeo Hacking Event in Bolsena (day three)

On day three of the OSGeo Hacking Event the Mapbender team continued to work on the integration of OpenLayers. While the older versions of Mapbender always loaded the whole OpenLayers library, we now include only the minimal amount of classes needed for each individual application, which makes the client really thin. We managed to create a test application with about 130Kb of JavaScript, which is still not minified, so we will try to deliver a basic WMS application with no more than 100Kb of JavaScript by the end of the week. The cool thing about Mapbender is, that you don't need to worry about recompiling the OpenLayers JavaScript file if you have added or removed functionality from your application, it is built automatically by Mapbender.

In the afternoon Jeroen Ticheler had organized an excursion to the beautiful medieval town of Orvieto, where we had a guided tour through the famous cathedral and other remarkable sites. In the evening we were treated an excellent dinner at a restaurant probably too good for a bunch of nerds. But we enjoyed ourselves very much, it's always remarkable how important these social events are, they allow your relations to grow to another dimension. Thanks to Jeroen for organizing this day out.

During courses we brainstormed about the future of the project currently known as GeoJQuery together with Volker Mische, which was very satisfying. We will now continue to work on a sample OpenLayers control wrapped in a jQuery plugin for Mapbender (probably WMSGetFeatureInfo), and finally refactor it using the jQuery UI Widget Factory, and contributing it to GeoJQuery. We hope that GeoJQuery will gain some momentum, as there is demand for it, and Mapbender would most likely profit from it. So check it out and hack some code, everyone's input is highly appreciated. See you tomorrow for day four!

OSGeo Hacking Event in Bolsena (day two)

Day two of the OSGeo Hacking event saw the Mapbender team mainly focussing on the RESTful API, which is the subject of Mapbender's current Google Summer of Code project. With the help of Volker Mische, the creator of GeoCouch, the team came up with a preliminary design for a core resource. Being surrounded by creative and gifted people is truly an inspiring experience, which makes events like this unique. Summer of Code student Vikash Banjara will now build upon this design, in collaboration with his mentor Arnulf Christl.

In the afternoon we continued to work on integrating OpenLayers in Mapbender, mainly dealing with the button and panel controls, and starting to build a jQuery plugin for a toggle button triggering the OpenLayers WMSGetFeatureInfo control. In addition to the OpenLayers experts present in Bolsena, we found the recently released book on OpenLayers by Marc Jansen and Till Adams very helpful, and to no surprise there was an immediate demand for an english translation.

Later on we also fixed some bugs for Mapbender 2.6.1. With only a single open ticket left, we are coming closer to an actual release, so look out for an announcement on the mailing lists.

Leaving our notebooks behind after dinner, we then headed for an idyllic town square in the middle of Bolsena, where stimulating conversations and humourous anecdotes let day two slowly fade out. We enjoy being here and are looking forward to another day of coding tomorrow.

OSGeo Hacking Event in Bolsena (day one)

The first day of the annual OSGeo Hacking Event in Bolsena, Italy, already made the Mapbender Team sweat, not only because of intense sunshine and ridiculously abundant food portions (served by our own chef, Enzo), but also because of the progress made in various aspects.

We addressed OSGeo's initiative to measure project maturity by discussing along the given guidelines, finally summing it up in the Mapbender wiki. Although being mature in almost every aspect, we were also able to identify some issues we can improve in the near future. Thanks to Andrea Aimee for bringing this topic up in the OSGeo discuss mailing list.

We also worked on integrating OpenLayers in Mapbender, slowly replacing all functionality in Mapbender with its OpenLayers counterpart. Today we focussed on wrapping the OpenLayers Panel in a jQuery plugin, allowing an admin to create button sets just like in the current Mapbender version.

Other topics included release planning: We are definitely going to release Mapbender 2.6.1 by the end of the week. We also decided to release a 3.0 version early, in order to allow people to follow the current development of Mapbender. However, this 3.0 version will be delivered with a very limited set of functionality, the upside being that it will rely completely on OpenLayers as a map viewer, and being thoroughly tested.

In order to guarantee the availability of a stable and full-fledged Mapbender, we will also release Mapbender 2.7. So the Mapbender 2 series will continue, until the 3 series contains all functionality that are essential for users now. Both 2.7 and 3.0 will be released prior to FOSS4G, which takes place in Barcelona in early September.

Tomorrow we will report again from day two of this magical event. Thanks to Jeroen Ticheler for making it happen, and also a big thanks to WhereGroup and FOSSGIS e.V. for sponsoring.

Report from Mapbender code sprint, Apr 9-10, Bonn

On April, 9th and 10th, again 10 Developers met in Bonn to take further steps to the next release of Mapbender 3.0 which is planned for this summer.

public user and default application

To allow open applications where an explicit login only annoys users we
introduced the concept of a public user, which can be defined in mapbender.conf. Additionally a default application is definable, which will be loaded for every public user as a default.

login and Portalseite are now applications

The former static pages for login and portal are now applications, which allows greater flexibility and a more consistant approach.

integration of jQuery UI.Layout

With jQuery UI.Layout the creation of different and flexible layouts for mapbender is now even more easy and comfortable.

Google Summer of Code

Again this year mapbender takes part in Google Summer of Code to allow students to participate in an open source project. We discussed the priorities and ranking of the projects and hope to get some slots, as we have really interesting stuff (REST API, new adminstration interface).

FOSS4G contribution

Mapbender Community will take part at the upcoming FOSS4G, 3 submissions are planned.

minimalistic Mapbender

A new "Mapbender core" was created, consisting only of essential stuff like login, create user and basic application templates. Based on this core the upcoming Mapbender 3 will be build, allowing only tested and done modules to be integrated.


As usual a lot of details were also done regarding security, code quality, bugfixing. At the moment Mapbender 2.6.1 is being tested and expected to be released real soon now.

A new glossary has been started, to avoid ambiguities and misunderstanding espacially for newcomers.

Again we had a great time, see you at the next Mapbender Dev Sprint in May.

Students, apply for Google Summer of Code 2010 and work on Mapbender

OSGeo has applied to be sponsored by Google during the Summer of Code 2010. This means that Google pays students to work on Open Source software! The Mapbender project is hoping to get a few slots to mentor students who want to work on Mapbender.

Take a look at the ideas page. We offer a huge variety of projects using cutting-edge technology, like creating RESTful Web Services, working with jQuery and jQuery UI, or using vector graphics libraries like RaphaelJS.

Thanks for considering Mapbender, we are looking forward to working with you! Please do not hesitate to contact us up-front, just use our IRC channel.

Report from the Mapbender Code Sprint at FOSSGIS 2010


The fourth day of the FOSSGIS 2010 conference in Osnabrück, Germany (Friday 5th of March) saw a day of Mapbender hacking. A dozen developers and power users flocked around Mapbender to discuss general issues and hack a bit. The agenda (link) listed several points we wanted to address explicitly.

One important question was the next release. The last year has seen massive refactoring and a lot of new functionality and finally Mapbender ships with an install script. But a lot of old modules, especially quick & dirty hacks broke during the refactoring. The more generically focused developers favor a clear cut and to remove old stuff. The more user-implementation focused developers favor a slower approach and keeping the broad set of functionality, even if it means to carry along old stuff. Many Mapbender installations are long lived and typically host metadata for hundreds and thousands of services and users who need the web mapping platform in every day work. This puts a lot of responsibility on the development group to create stable software and smooth upgrade paths. Therefore it was decided to release a bug fixed version 2.6.1 next week.

One important goal of latest development has been the leverage of jQuery and jQuery UI to pimp the Mapbender front end. Adopting jQuery and being able to include tons of PlugIns make Mapbender look and feel a lot more up-to-date and addresses the user's desire for sleeker user interfaces. Another very important improvement that came out of the refactoring efforts is much cleaner code which will make it a lot easier for new developers to get into Mapbender.

Therfore it was decided to step up a full version number in summer with new features and most importantly a clean and well documented API. A full version step also justifies that some older installations will brake at some points. This is an invigorating decision as it will allow us to be cleaner and meaner with old stuff. The new Mapbender API will make developing much easier and more fun in.

The first release candidate 3.0 will come out after the Bolsena hack sprint. It will include a thorough integration of OpenLayers, a completely refactored user interface and potentially even a connection to a metadata bucket with thousands of OGC services to choose from. But that is another story.

Have fun.

REad more about the sprint at:

Mapbender code sprint: Feb 20th 2010

We met in Bonn for the pre-FOSSGIS code sprint. There were eight developers present, one participating from Portugal via IRC. We adressed the agenda we agreed upon earlier this month.

We discussed JavaScript Unit Testing and tried envJS and QUnit, which relies on jQuery. The results have been compiled here.

Another issue was bug fixing, a lot of tickets for Mapbender 2.6.1 and 2.7 were closed. We also worked on i18n, which has been added for several modules.

We also created several new template applications, which are not finished yet, we will continue to work on them for the upcoming release of 2.7. Examples are a basic map application, a basic WFS(T) application and a Twitter demo.

More work was done on the update script, which is now also working under Windows. Furthermore it was enhanced, now you can pass all arguments directly without the need for user prompts.

The day has been a lot of fun, and we are already looking forward to meeting again in Osnabrück on March 5th, Friday after FOSSGIS 2010.

Syndicate content