Motorcycle Adventures and Free Software

Weblog: Archive

2006-01-01 - 2006-12-31

Happy New Year, and a look back at 2005

Posted on 2006-01-02 10:54:32 UTC to . 0 comments.

We spent the New Year's Eve at our favorite rock star's place having sauna, and welcoming the new year with Pikkuoravat, Verka Serduchka and Sovetskoe Shampanskoe. Globalization was really showing through, with SMS messages arriving in several languages and from several different time zones. Some samples:

  • Polish: Szczesliwego Nowego Roku
  • German: Ein frohes neues Jahr
  • Portuguese: Feliz ano novo
  • Italian: Felice nuov'anno
  • Frech: Bonne annee
  • Russian: S Novim Godom

While not as adventuristic as 2004 when I scaled mountains in Africa, rode the motorcycle in Caucasus and saw the Orange Revolution begin in Ukraine. The year 2005 was focused on learning and development.

Winter

The Midgard Site Creation Wizard was launched in early January making it easy to set up new websites from scratch. It also enabled creation of reusable style templates.

I started my flying lessons in late February at BF-lento, had the first solo flight in early May, and passed the check flight in August. After acquiring my Private Pilot's License I've been flying at the Malmi Aviation Club.

In February I also got the first look at the Digital Business Ecosystem, an EU-funded project to developer peer-to-peer systems to help small companies to network and work together. DBE would later feature as a major OpenPsa feature.

Jukka Zitting, the original founder of the Midgard Project returned from hiatus in February and launched his own consultancy, Yukatan. One of his earliest projects was development of a Java Content Repository interface for Midgard. Since then he has also worked on other things like DBE and development of Exorcist, the cross-CMS replication tool.

Spring

In March, Midgard got its integrated content indexer based on Apache Lucene, which ensures all content changes are immediately available to search results.

We started the process of developing OpenPsa2 by visiting a partner company in Rome during early April. In addition to writing specifications, we also spent a lot of time scootering around the city and enjoying the ancient historical sites. Pope John Paul II died while we were in Rome, gathering millions of grievers to the city.

After the trip to Rome we gathered Midgard developers for a Midgard Developer Meeting in Helsinki. We amused the group with a sightseeing flight over the city, sauna and some Georgian food. The meeting resulted in some very nice new technologies, including the Query Builder database abstraction tool.

In end of April I also visited the Russian Open Source Forum to talk about the TownPortal community portal application we originally built for the town of Bælum in Denmark. Maddog told me lots of stories about free software in Brazil.

In May, MidCOM was established as the default PHP API for Midgard development. OpenPsa2 development was happening on top of MidCOM, and the Aegir2 project was started to replace the current Midgard administration interfaces.

Summer

Sometime between May and June, AJAX started to establish itself as a valid programming technique. It and Microformats enabled us to develop some very interesting UIs for the upcoming OpenPsa2 application.

In late June I joined the Shnjaka expedition to sail on a sown Viking ship on lake Onega. The trip took me to the backwoods and small villages of Carelia, and involved many different models of transportation including hitchhiking, several trains and back of a police car.

In early July, our partner Protie acquired the majority of FTC, the biggest Midgard hosting provider in Finland.

Midgard's documentation started to move to wiki format in late July, powered by a new version of the net.nemein.wiki component. The move was completed during the fall, when all old documentation was Exorcised into the wiki.

In August we got Mac OS X packages of Midgard. The packages made installation on Mac systems very easy.

Autumn

In September, Midgard got recognized in two categories of CMS Watch Vendor Kudos of 2005 list: Templating and Page Assembly.

Later in the month I flew to Tbilisi to present Midgard in Georgia. We spoke with several ISPs, the Georgian Parliament and Ministry of Education, and it will be interesting to see what will come out of that.

While in Georgia we also visited the Cave city of Varzia, and scaled the dangerous walls of the Vanis-Kvabebi cave fortress.

In October we got a new event calendar for Midgard, redesigned from ground up to support Microformats and the Pyhä skiing center activity calendar requirements.

In the last weekend of October we had another Midgard Developer Meeting in Linköping. As the AnyKey office is located in the nearby countryside, we were able to avoid the riots in the city.

During November we started fencing with Kerttu. As the only participants in the sabre course at Ylioppilasmiekkailijat, we got very good private instruction.

Tuomas Kuosmanen introduced us to the Tango Desktop Project by designing new user interfaces for both Aegir2 and OpenPsa2. Tango will play an important part in the visual identity of Midgard 2.

In late November I flew to Brazil to present Midgard and the DBE project at several conferences.

While in Brazil, I also attended the Nivea Sun Regata in Porto Alegre in the beginning of December. After brief run aground we finished fifth in the Ocean class.

In December we got the Pear packaging of MidCOM finally going. While the old PEAR versions gave us some problems, the PEAR 1.4 packager worked very well.

Conclusion of the year

During the year 2005 my blog readership rose steadily from about 500 visitors per day to over a thousand. In December I had 33,600 visitors reading the site from 10,300 IPs. Pretty satisfying growth, though I guess it will plateau now.

As for new year's resolutions, I'd like to learn sabrage, and become better at customer service.

Harpers.org has a quite different kind of summary of 2005:

It was revealed that the CIA had set up a secret system of prisons, called “black sites,” around the world; it was also revealed that the National Security Agency was spying on Americans without first obtaining warrants. Journalist Judith Miller was released from jail and said she wanted to hug her dog. U.S. Congressman Tom DeLay was arrested; U.S. Vice President Dick Cheney's Chief of Staff I. Lewis “Scooter” Libby was indicted. The Pentagon admitted to using white phosphorus during the 2004 attack on Fallujah, Iraq, and allocated $127 billion to build a robot army. The total number of American soldiers killed in the Iraq war rose to 2,174, while the total number of Iraqi civilians killed rose to 27,636. “We are all waiting for death,” said an Iraqi soldier, “like the moon waiting for sunset.” The U.S. Defense Department, in violation of the federal Privacy Act, was building a database of 30 million 16- to 25-year-olds. The Department of Homeland Security announced that it had wasted a great deal of money and needed much more. Starbucks came to Guantanamo Bay. Scientists began work on a complete, molecule-level computer simulation of the human brain. The project will take at least ten years.

Sponsored links

Microsoft Certification Exams โนเกีย Nokia มือถือ Online Project Management save money using, phone card
Reviews มือถือ Mobile All Apps

RSS and its shortcomings

Posted on 2006-01-02 17:20:01 UTC to . 0 comments.

RSS syndication is a very useful technology that helps keeping track of hundreds of changing websites. With enclosure support it also enables fetching podcasts directly into your music player or software updates into the desktop.

Lately the way applications present available RSS feeds has started to unify, and companies like Microsoft have started to support RSS in their tools.

However, not everybody loves RSS. Only 4% of web uses it at the moment, and there are detractors too.

François Joseph de Kermadec says RSS stands for Really Stressful Syndication:

To me, the root of the issue is not to be found in how the technology is presented but in the technology itself. What does RSS allow us to do? It allows us to keep current, up to the second, on many matters, ranging from the state of our firewall to world news. This, however means RSS puts constant pressure on us. If I know Mac Minute has published a news item, I have to go and read it because it is my job but if I can forget about Mac Minute for an hour so, I can entertain the obviously false notion that I am on top of my material and comfortable in my own work. As long as my router does not warn me of a DoS attack going on, I do not have to worry about my network and can go downstairs grab that doughnut I have been thinking about.

And Paul Kedrosky complains about lack of synchronization and RSS being pull, not push:

Synchronization sucks. Despite using Feeddemon, which has a built-in synch across multiple PCs via Newsgator, my machines are not in synch. There are various feeds that the synched Feeddemon insists never contain items, despite there being items visible in the raw feed every day. The items are apparently being synched right out of existence.

However, I learned about these opinions through RSS. Without NetNewsWire it is unlikely I would've ever run into them.

This is the future

Posted on 2006-01-03 17:23:26 UTC to . 0 comments.

The Cyberpunk future predicted seems to be here now:

The Treasury Department says that cyber crime has now outgrown illegal drug sales in annual proceeds, netting an estimated $105 billion in 2004, the report said.

Via Bruce Schneier.

Majority of Greater Helsinki inhabitants want to keep Malmi Airport

Posted on 2006-01-09 11:23:32 UTC to . 0 comments.

Helsingin Sanomat, which originally had a very aggressive stance against the airport, has now published its gallup results saying majority of Greater Helsinki inhabitants want to keep Malmi Airport as-is:

Malmin lentoasemasta kysyttiin, pitäisikö lentokenttä ottaa asuntorakentamiseen edellyttäen, että lentoasemarakennukset säilytetään. Vaihtoehtona oli alueen säilyminen lentokenttänä kuten nyt. Kaikissa kaupungeissa selvä enemmistö oli lentokentän säilyttämisen puolella. Helsingin, Espoon ja Vantaan asukkaiden välillä ei ollut juuri eroja.

Another victory for the The Friends of Malmi Airport Society!

I've written about the issue, and the shady tactics City of Helsinki has been employing before:

Helsinki-Malmi was rented to the Civil Aviation Administration for 99 years back in the 30s. Now the City of Helsinki wants to evict them on the clause that the airport must be used for civil aviation. For some reason City of Helsinki chooses not to recognize that private aviation and flight training are also counted as civil aviation. This is a very dubious legal standpoint.

The democratic commitment of the city must also be questioned. The decision and talks about the future of Malmi were pointedly scheduled after the recent city council elections, and all major parties declined to comment the issue. This is understandable as the city wants to close the airfield against the will of a vast majority of residents of Helsinki. This is not how democracy is supposed to work, but then again we live in another system called "representational democracy".

Midgard Wiki rewritten

Posted on 2006-01-10 22:46:33 UTC to . 0 comments.

I've spent some time yesterday and today rewriting the Midgard Wiki software to the new MidCOM architecture. Major changes include:

  • Switch to base classes and DBA for Access Control Lists support
  • Switch to Query Builder and migration away from NAP for better performance
  • Integration with the no.bergfald.rcs library to provide easy on-site revision control
  • Cleaner page creation to make unnecessary stubs more unlikely
  • Helper for making it easy to enable using the wiki as memo storage by other components. Already used for org.openpsa.calendar meeting notes
  • Switch to PHP Markdown Extra for added definition list and table support
  • Switch to the standard midcom_helper_toolbars toolbar system

There is still stuff I would like to do, given time:

I was again amazed how quick it was to implement features using the new development framework. With this work we have a quite full-featured wiki that integrates nicely with the rest of the Midgard CMS environment for templating, user permissions and other features.

The new wiki is now only available in CVS pending MidCOM's PEAR 1.4 packaging.

How OpenPsa uses DBE

Posted on 2006-01-18 16:18:13 UTC to . 0 comments.

I'm writing this in the DBE Project Review in chilly Tampere. Looking at lot of the presentations, it seems to be a common view that actual end-user businesses would be using tools like the DBE Studio to model their business and services.

However, we feel that this is quite a bit too difficult, and that the Digital Business Ecosystem should be something happening in the background instead.

The OpenPsa approach

With the DBE implementation in OpenPsa, the only point where user becomes aware of DBE being used is when they add new contacts to the registry. One of the contact editable fields is Digital Business Ecosystem ServiceID:

The ServiceID in this case is the identifier of the Sitegroup entry in the Midgard database, which means it is essentially the identifier of an OpenPsa installation. The identifiers follow the UUID spec and so should be unique across the scale-free network.

If the ServiceID has not been provided, the user is treated as a local user and there will not be a further thought about DBE. If it is inputted on the other hand, the OpenPsa DBE Service will start looking for a matching company in the DBE P2P network. If the company is found, the OpenPsa service will then replicate all tasks and hour reports related to the remote user to the other company's installation.

Remote users and local users are identified in person listings by different icons: satellite dish for remote user, and a person image for local user.

System architecture

Since OpenPsa has been implemented as set of MidCOM components written in PHP, it can't connect with DBE directly. To make the connection, Exorcist is being run as the DBE Service. It watches for changes in the Midgard database, and replicates them across the DBE network as required. Here's roughly how it works:

OpenPsa DBE connection

Security model

When the OpenPsa DBE service was developed there was no Identity System for DBE, and so at the moment the service must be run over VPN to be secure. We will look at utilizing the new DBE security module in the next project.

For us the challenge obviously is that with OpenPsa users authenticate with their Midgard accounts, and so DBE identity can only be established on per-company level. We'll have to see how well this works with the DBE security module.

In related news, Joel Spolsky talks about Micro-ISVs, one of the target markets for the networked Openpsa.

Getting Things Done with Salesforce.com

Posted on 2006-01-19 07:01:01 UTC to . 0 comments.

IT Redux has a story about managing GTD with Salesforce.com:

If the item is not actionable, I trash it, store it as a long-term goal or attach a note to an object, both using Salesforce.com as data repository. Salesforce.com does not have any standard object for goals, therefore I created a custom one. A goal has a long-range timeframe attached to it, which can either be the current year, next year, within five years, within ten years, or within one’s lifetime. A goal with a five years timeframe could be the buying of a house for example. The decision to use a note rather than a goal is based on the fact that a note does not have a timeframe. It’s a simple piece of information that I want to make sure I will be able to retrieve when looking up the object it is attached to. Using Salesforce.com’s relational model, a note can be attached to any object, such as an account, a contact, or whatever custom object you might have built to store some specific piece of information.

These kinds of ideas are important as we work towards implementing a Getting Things Done system in OpenPsa 2.

Via David Allen.

Working over the web

Posted on 2006-01-19 07:31:53 UTC to . 0 comments.

There have been some interesting posts lately about switching to use hosted "Web 2.0" applications as the main IT infrastructure. Jukka Zitting writes:

I am sick and tired of doing backups, synchronizing settings, and having trouble accessing information. These are all symptoms of keeping your data locally on multiple computers. As a new year’s resolution I have decided to get rid of all these problem[s].

And IT Redux continues about what they call Office 2.0:

No painful software upgrade. When your applications are served by online service providers, someone else is doing software upgrades for you, and if you carefully select your providers, such upgrade can be totally painless, as was related in this post.

Of course, all these benefits disappear if you cannot get access to a decent Internet connection, which is a requirement for Office 2.0, much like a desktop computer was a requirement for Office 1.0. If you need to work offline, Office 2.0 might not be the best option for you, and you should not believe people who advertise online services that can work offline as well. They do not, because they should not, so make up your mind and go with what works best for you, based on your own set of requirements.

The great thing about using Open Source applications like OpenPsa is that you can choose between having it hosted for you, and running it yourself. At first you can get the hosted version, and get all the benefits of not having to hassle with backups, installations and other things. And if you later in your company's growth path decide it is better to run the software yourself, you can easily switch to that model.

Actually you could even run a local OpenPsa installation on your Mac or Linux laptop and replicate using Exorcist to achieve Notes-like replication.

In related news, Seth Gottlieb pointed to an interesting article about the death of enterprise software by Joe Lamantia:

For enterprise software, I think organizations will turn away from monolithic and expensive systems with terrible user experiences -- and correspondingly low levels of satisfaction, quality, and efficacy -- as the best means of meeting business needs, and shift to a mixed palette of semantically integrated capabilities or services delivered via the Internet. These capabilities will originate from diverse vendors or providers, and expose customized sets of functionality and information specific to the individual enterprise. Staff will access and encounter these capabilities via a multiplicity of channels and user experiences; dashboard or portal style aggregators, RIA rich internet applications, mobile devices, interfaces for RSS and other micro-content formats.

Concerns with working over the web

Posted on 2006-01-20 07:33:06 UTC to . 0 comments.

I posted yesterday about switching to Web 2.0 business applications. However, when organizations do this they should be aware of the other side of it: privacy. Boing Boing notes:

As we move our data to the servers at Amazon.com, Hotmail.com, Yahoo.com, and Gmail.com, we are making an implicit bargain, one that the public at large is either entirely content with, or, more likely, one that most have not taken much to heart.

That bargain is this: we trust you to not do evil things with our information. We trust that you will keep it secure, free from unlawful government or private search and seizure, and under our control at all times. We understand that you might use our data in aggregate to provide us better and more useful services, but we trust that you will not identify individuals personally through our data, nor use our personal data in a manner that would violate our own sense of privacy and freedom.

Again, this is where using Open Source applications is good, as if the service provider becomes abusive you can simply switch to another provider or install the application for yourself. And with DBE you can still keep in sync with your colleagues and partners.

Updated 17:15: In addition to privacy, another major concern with using Web 2.0 services is the possibility of downtimes:

The Dec. 20, 2005, outage cut many companies off from critical data for hours on a busy, pre-holiday business day. It also called into question how well Salesforce, which stores customer and sales records for thousands of businesses, is holding up under rapid growth.

"We don't want outages and we're doing everything we can not to have them, but we'll occasionally have them," he said. "That's part of computing...nothing runs at 100 percent availability."

Via Ditherati.

MidCOM PEAR 1.4 packaging works

Posted on 2006-01-20 15:54:49 UTC to . 0 comments.

After a bit of discussion and goading from the PEAR community, we decided to package MidCOM for the package.xml 2.0 format and only support PEAR 1.4 or newer.

This decision meant a bit of extra work for me as I had to rewrite the supporting utilities that handle component packaging. However, now that work is done, and I made my first PEAR-powered MidCOM installation today. The result was a working but a bit limited MidCOM environment, as can be seen from this AIS screenshot:

Component selector in AIS

Nice points

PEAR packaging of MidCOM brings lots of benefits, including:

  • Components can have other PEAR packages, components, or even PHP extensions as dependencies that PEAR installer will handle
  • Users can install only the components that they actually need
  • MgdSchema file installation in components is much easier than it used to be
  • We can start shipping static files inside the component package and install using Role_Web

Trying it out

Since packaging is not 100% complete yet, you need an existing Midgard 1.7.x and MidCOM installation to try it out. Here are the steps to follow:

  • Upgrade PEAR to 1.4

    # pear clear-cache
    # pear upgrade PEAR
    
  • Download MidCOM PEAR packages from http://www.nehmer.net/~bergie/pear/

  • Create a new empty MidCOM site using Midgard Site Wizard

  • Log into the site as administrator and go to midcom-admin/settings

  • Set Path to Filesystem MidCOM to point to midcom/lib your PEAR directory

    • In my case the path is /usr/share/php/midcom/lib
    • You can find the directory out by running pear config-get php_dir
  • Install the packages you need. Probably at least these:

    # pear install Role_MgdSchema-1.0.0.tgz
    # pear install midcom-2.5.1cvs.tgz
    # pear install midcom_helper_datamanager-1.tgz
    # pear install de_linkm_taviewer-2.tgz
    # pear install midcom_admin_content-1.tgz
    
  • Invalidate the MidCOM cache by calling http://www.example.net/midcom-cache-invalidate

  • Enjoy! You should now have a working but limited MidCOM 2.5 installation

Note: You might have to create the database tables used by MidCOM core by importing the /usr/share/php/midcom/lib/midcom/config/mgdschema/sql/midcom_dbobjects_full.sql file

Caveats

PEAR packaging of MidCOM is still a bit unfinished. The main missing points are:

These missing pieces should be resolves quickly after the mRFC 0021 gets approved.

African miracles

Posted on 2006-01-20 17:22:27 UTC to . 0 comments.

I'm going to Cape Town next week to work on a project coordinated by the City of Tampere. The trip will be a welcome diversion from the current -22°C weather here in Finland.

The last time I was in Africa we witnessed a real miracle, or at least a very uncommon situation:

We had been climbing to the Thabana Ntlenyana mountain and were driving with Rudi's 4x4 in the mountain kingdom of Lesotho. The day was very sunny and hot in the South African summer, and we were very thirsty. The trunk was filled with beer, but all of it was hot enough to be undrinkable.

We had stopped in every village and gas station to try and buy ice, but it was not available anywhere. Finally, beaten, we stopped at the Katse Dam to take some pictures. And then it happened: the sky turned dark, and a very strong hailstorm started. The hail was the size of golf balls, and as we were driving the shepherds on the side of the roads were donning construction-style helmets.

But still, the hail melted almost as quickly as it hit the ground, and so we continued with our trunk of warm beer. Driving around another bend, we suddenly saw a pile of hail balls lying in the middle of a clearing. There was no reasonable explanation how it had ended there, as there were no cliffs nearby, and all other hail on the ground had melted. But there it was, and soon our cooler was operational:

Andrea shows the pile of ice

We decided: This is ice from heavens.

A miracle that gets you cold beer is not a bad miracle at all.

iPhoto, PhotoCasting and standards

Posted on 2006-01-20 18:14:33 UTC to . 0 comments.

I'm using Apple's iPhoto on my PowerBook to manage the thousands of travel pictures. Lately the application has become very slow and unstable, and I was already preparing mentally to switch to F-Spot. Because of this, I was happy to hear that the new iPhoto 6 supports managing over 250k photos in the archive.

The new Photocasting features also sounded interesting, but I was wondering why Apple invented their own photo-sharing features instead of implementing the Pheed syntax.

Here's what I wrote to Apple iPhoto feedback:

First of all, it is great news that the new iPhoto can manage large photo archives. My older installation croaked to halt everytime when using my 10k travel photos accumulated over the last year.

For that reason alone I'm eagerly waiting for the new iLife to hit the stores here in Finland.

However, the Photocasting features sound also very interesting. I'm publishing my pictures to my own website instead of .Mac using the Photon plugin, and obviously publishing Photocast feeds from there would be a nice way to help my friends and family watch the pictures.

My gallery already implemented a Photocasting standard: Pheed (http://www.pheed.com/pheed/) and so I was happy to hear of iPhoto's Photocasting support.

However, it seems that instead of following the RSS standard and its already available extensions you've created your own pseudo-standard for these things.

I wonder if this is just due to early development status of the project, or of it will be a permanent state of "embrace and extend".

We'll have to see what happens with this one. Apple already fixed the iTunes privacy issue, and as this RSS problem is also gathering attention, they might fix it too.

Updated 18:24: Seems that Photon still works with iPhoto 6.

Four Things

Posted on 2006-01-24 15:31:19 UTC to . 0 comments.

I'm giving over for the latest blog meme while waiting for a connection to the local Midgard server here. For some reason the firewall blocks pretty much everything...

So here are the Four Things:

Four jobs I’ve had in my life

I could summarize it like Nathan Pitman to Web developer, Web developer, Web developer, ... I'm into IT in the third generation and so somehow avoided the standard entry-level McJobs.

  • IT class administrator at Nimad, my father's company
  • Web designer at HyperHouse, a new media company
  • Project manager at Stonesoft, a security software company
  • Entrepreneur at Nemein, a content management vendor

Four movies I can watch over and over

I don't tend to watch movies more than once or twice, but these four stand out of the group:

Four places I have lived

I've actually lived in only three different cities, but I guess the summer cottage can be counted as fourth, as I spent lots of time there when I was a kid:

  • Helsinki, Finland
  • Kirkkonummi, Finland
  • Espoo, Finland
  • Sulkava, in the lake region of Finland

Four TV shows I love to watch

I don't watch TV anymore, but back in late 90's when I was living in a commune apartment, we used to watch:

  • Babylon 5
  • Dawson's Creek
  • Earthworm Jim

Four places I have been on vacation

My holiday trips tend to take me on the road to quite different kinds of places. Usually I travel by my motorbike or, in near future, a Honda Monkey

Four of my favourite dishes

I'm really into oriental dishes, and also food made out of basic ingredients like dried meat:

Four websites I visit daily

I guess this means the sites I really visit, instead of just reading them with my RSS reader:

Four places I would rather be right now

Hey, I'm in South Africa and it is 24°C outside, so why complain?

Via Drew McLellan and Visa Kopu.

In the other news, I'm now in Cape Town, South Africa. I'll spend the next two weeks here working on IDASA's new Word on the Street Portal for journalists covering local government. The project is funded by Finnish Foreign Ministry and coordinated by the City of Tampere.

Connectivity here in the office is quite slow, and allows only proxied HTTP, so I won't be able to be on IRC or access my mail too often. I'll have to see if the Townhouse hotel connection is less restricted.

Updated 2006-01-25: The four things meme is quite popular. According to Google Blog Search there are over 19,000 blog postings about it already.

And the connection problems are clear now: we have hear a 128 Mb DSL line that is shared with 100 users.

Open Source and Web 2.0

Posted on 2006-01-26 15:23:01 UTC to . 0 comments.

Dave Johnson seems concerned that Web 2.0 and Open Source seem mutually exclusive:

Web 2.0 is not about having cool software to install on your own personal web server, it's about getting locked into services provided by and trusting your data to Web sites that you do not control. It doesn't have to be that way, of course, and perhaps I'm exaggerating a bit just for fun (and hits). But maybe we need a list of "the best open source Web 2.0 software" -- and it would include things like open source blog servers, wiki servers, photo galleries, content management systems, social bookmarking clones and etc.

I was talking about the benefit of Open Source in Web 2.0 earlier in "Working over the web":

The great thing about using Open Source applications like OpenPsa is that you can choose between having it hosted for you, and running it yourself. At first you can get the hosted version, and get all the benefits of not having to hassle with backups, installations and other things. And if you later in your company's growth path decide it is better to run the software yourself, you can easily switch to that model.

Actually you could even run a local OpenPsa installation on your Mac or Linux laptop and synchronize using Exorcist to achieve Notes-like replication.

Via Sam Ruby.

The Mountains Burn

Posted on 2006-01-27 09:51:13 UTC to . 0 comments.

Slopes of the Table Mountain and Signal Hill bordering the city of Cape Town have been on fire since yesterday afternoon. Yesterday the smoke cloud covered the whole city centre, making the sun appear only as a thin red disc in the sky.

Smoke pales the sun

Water bombing helicopters have been flying over the city in a constant chain, but the 60 knot winds fan the flames, making fire fighting much more difficult.

BBC News adds:

The Table Mountain cable car has been closed and people living nearby have been fleeing their homes as the flames advance. A number of houses are reported to have caught fire.

Signal Hill inferno at night

Apparently the fires were started from a cigarette butt of a British tourist.

Today the fires seem to be mostly under control and the sky can be seen again. The hotel smelled quite strongly of smoke, but there's hope of still making the planned hike to the top of the mountain tomorrow.

At least this fire has been up on a mountain, and not inside a wall like Piotras had.

First day with Nokia 770

Posted on 2006-02-08 14:18:09 UTC to . 0 comments.

I had the Nokia 770 web browser device waiting on my desk as I returned from South Africa. 770 is a nice, small, Linux-powered internet appliance that is able to utilize either a WLAN connection, or mobile phone's connection via Bluetooth.

The device is compact and lightweight enough to be basically carried all the time. It also has a screen good enough for reading almost any websites. These two factors serve to make web and RSS feeds ubiquitously available, opening interesting possibilities:

Yesterday I had to go to a store to buy a new WiFi base station, as the previous one in my home had died. In the end the choice was between Airport Express and another one. Apple's minimalist product packaging didn't include enough specifications, so I took out the 770, and browsed to Apple's product page. There I could read the specs and make an informed buying decision.

In addition to this, I've also used it for quick net banking while on the move. Very handy!

The 770 surfing to Death Monkeys

Since the device runs Linux, I'm also looking forward to developing some Python applications to make mobile work easier. Especially I'm interested in exploring the use of position information to create the real-world Hitchhiker's Guide to the Galary. Placeopedia RSS feed will be an excellent starting point for finding "information near you".

Useful applications

The main use case for my N770 is quick checking of information using the web browser, and reading news via RSS on the road. However, it may also be handy in situations where I need to send short emails or perform some quick UNIX maintenance. To support these situations, I've installed the following add-on applications:

I'm now looking for a good Bluetooth keyboard to enable writing meeting notes on the device instead of a bulky laptop. The aviation use cases also sound interesting.

Gripes

Of course, the current 770 is just a first iteration, and there are several things that could be better. The first issues I ran into were:

  • No vi editor installed as default, despite vi being part of the POSIX standard. Of course, VIM package is available
  • Web browser doesn't support feed autodiscovery. This is a bit silly especially as the product bundles an RSS reader in the default package
  • So far I haven't figured out how to copy content from web pages on the device. The pointer scrolls instead of selects
  • There isn't a good default way to kill software that hangs up. I've had the News Reader do this quite a bit. The Load applet will eventually help here
  • There is no way to switch the browser to use handheld CSS profile, now it always shows web pages in "desktop screen" mode

Joel Spolsky on AJAX calendars

Posted on 2006-02-09 07:40:11 UTC to . 0 comments.

There is a new Joel on Software post about calendars. Lets see how the OpenPsa 2 calendar fares with his feature requirements:

Enter flights. Many of these calendars only lets me enter things that start on 15 minute intervals, and flights are just not scheduled that way. Many of these calendars insist I specify the duration, which I don't know -- I know when the flight lands, but not the duration.

In OpenPsa calendar you specifically choose start and end time, not start and duration. By default when you click the Create event button the new event will have a duration of one hour. The times can be entered either by writing, or by clicking the button next to time to open a calendar selection widget:

Event creation in OpenPsa Calendar

Understand enough about time zones so I can enter a flight. Flights from New Zealand to Los Angeles arrive before they departed.

Actually this we don't do yet. Now all times are supposed to be in the server's local timezone, meaning that you need to calculate the timezoned times into your local time. Would be a great idea and not very difficult to add optional timezone pulldown to the editor though.

Allow my assistant to enter appointments and see my schedule, although some things may be private.

The calendar events in the editor may be marked Public or Private. With private events, everybody can see the duration of the event, but only participants can see the details. Everybody can see the details of the public events.

Event access controls in OpenPsa Calendar

Notify me in advance of a meeting using some reliable mechanism. Surprisingly many of the hot new Ajax calendars omitted this basic feature because they're web apps. At the very least, I'd like something to pop up on Windows, which means a downloadable widget, and an SMS message on my cell phone. Different meetings need different advance warnings ... I need to be notified 3 hours before a flight at Kennedy but 3 minutes before a meeting in my office.

OpenPsa calendar doesn't support alerts yet. With the OpenPsa version 1 calendar you could edit the events via webcal or SyncML, and the alerts would be handled by your mobile phone, or a desktop calendar subscribed to the event feed.

We haven't ported this feature to OpenPsa 2 yet.

Print out something reasonable that I can take with me before a trip listing my complete schedule for the trip. Some of my appointments have driving directions or complicated notes attached. I just want a list of where I need to be, when, and it's surprising that very few online calendars can handle this.

Again, this was something OpenPsa 2 did well with its Week list feature. OpenPsa 2 is fully hCalendar and CSS, and so creating a suitable print CSS should be easy.

In any case, these were important points about attention to detail. On the other hand, we also have to decide what is essential for the 2.0 release.

Get MidCOM from a PEAR channel

Posted on 2006-02-09 20:47:20 UTC to . 0 comments.

Since completing MidCOM's PEAR 1.4 packaging the main remaining issue of making MidCOM installation user-friendly has been setting up a channel. This is now done, and MidCOM 2.5 can be installed in the following way:

  • Upgrade PEAR to 1.4

    # pear -f upgrade PEAR
    
  • Discover the PEAR channel

    # pear channel-discover pear.midcom-project.org
    
  • Install the MgdSchema handler role

    # pear install midcom/Role_Mgdschema
    
  • Install MidCOM core (you need to specify version as there is no
    stable 2.6 release yet)

    # pear install midcom/midcom-2.5.1cvs
    

After these you have MidCOM installed into your PEAR path. Next you will want to install some components. Here you can see how dependency handling works: I'm installing de.linkm.taviewer that requires the datamanager library.

# pear install midcom/de_linkm_taviewer
Starting to download de_linkm_taviewer-2.tgz (23,016 bytes)
........done: 23,016 bytes
downloading midcom_helper_datamanager-1.tgz ...
Starting to download midcom_helper_datamanager-1.tgz (85,651 bytes)
...done: 85,651 bytes
install ok: channel://pear.midcom-project.org/midcom_helper_datamanager-1
install ok: channel://pear.midcom-project.org/de_linkm_taviewer-2

Please let me know if you want component upload access.

Going to California and Brazil

Posted on 2006-02-10 09:38:20 UTC to . 0 comments.

With these two recent conference invitations, it looks like the spring will be extremely busy.

EclipseCon 2006

March 20th - 23rd, Santa Clara, California

In EclipseCon Midgard CMS will join the Open Source Pavilion.

7º Fórum Internacional Software Livre

April 19th - 22nd, Porto Alegre, Brazil

I will be presenting OpenPsa and the Digital Business Ecosystem

Current web design trends

Posted on 2006-02-10 16:23:20 UTC to . 0 comments.

Web Design from Scratch has a pretty good analysis of the current style in web design:

Today's web designs are so fresh, they feel like they've taken a deep breath.

Sometimes I imagine taking a page design that's too crowded and sticking it on a balloon, then blowing air in until everything on the page pulls apart to leave healthy gaps.

Your eye needs space (guttering in typo language) round stuff to help you clearly and cleanly identify things.

In general, the more white space the better. It's very rare that I look at a page and think: "Gosh, they really need to cram that page up a bit!"

Analysis on common simple 3D shapes

Via Boing Boing.

What is wrong with Mac desktop

Posted on 2006-02-12 23:05:44 UTC to . 0 comments.

Chris Shiflett has a list of Mac OS X Annoyances:

Maximizing Is Broken.

How hard can this be? Seriously. If you want to be different, that's cool, but not when it means being broken. When I maximize something, it should take up the whole screen. Get it? Leaving little gaps everywhere just means that I'll bring another app to the foreground when I accidentally click on it.

Alt-Tab to a Minimized App, and It Stays Minimized.

(Yes, I know it's really command-tab, but who says that?) There are lots of reasons why alt-tab on the Mac sucks, and this is one of them. Combine this with the fact that apps don't really close when you close them, and the result is alt-tab pollution. You switch apps, but nothing happens. Is the app closed? Is it minimized? It is just the damn Finder again?

Too Many Option Keys.

Function, control, alt, option, and command (which used to be called open apple and is sometimes referred to by its symbol). Which one do I use to right-click again? Which one makes the delete button delete? Surely we can get rid of one or two of these.

In the other news, I wanted to share this photo of Karoo sunset week ago with you. The photo is taken somewhere near Oudtshoorn on Route 62.

iSync and disappearing records

Posted on 2006-02-13 23:55:41 UTC to . 0 comments.

It seems Apple's iSync and Sony-Ericsson phones are having a severe synchronization problem this month. Rambo had an alarming story:

This morning I decided to sync my phone with my Mac again since a long time, for some reason iSync decided that it wants to delete all but 3 contacts (the ones I had most recently added to my phone) from both phone and the Contacts software.

Not being awake I allowed this to proceed...

Since both of have Sony-Ericsson phones (Rambo has a P800, and I have a K700) I wasn't particularly surprised to see this:

iSync wants to delete all my contacts

The only way to fix synchronization was to allow this operation, so I as a precaution exported my Address Book contacts as vCards. As suspected, the synchronization run wiped out my whole calendar, and modified the contacts to unrecognizable shape.

With iCal this wasn't a big deal as my calendar events were any way subscribed from OpenPsa. And with contacts I just imported to vCards again.

However, this makes me a bit scared on what will happen when we start synchronizing our phones with OpenPsa over SyncML...

EclipseCon preparations

Posted on 2006-02-17 07:24:18 UTC to . 0 comments.

Donald Smith writes:

As I previously noted, thanks to a generous sponsorship from Business Objects and the Eclipse Foundation, there will be an Open Source Pavilion at EclipseCon this year. Ten pods have been set aside to celebrate projects that exeplify the F/OSS community that represents the spirit of EclipseCon. It's a great example of an ecosystem in action.

Midgard is one of these. My session proposal can be found from EclipseZilla, the conference's Bugzilla-based program manager.

While I will be focusing on regular Midgard and MidCOM in the session, we have been talking with Jukka about trying to get Day's Eclipse plugin to work with Midgard-Java before the event.

Updated 2006-02-18: The proposal was accepted:

We are happy to accept your Demos proposal - "Midgard CMS" - for EclipseCon 2006. Within a month or so, you will receive a Speaker Agreement from us outlining all the deadlines, audio-visual, permission forms, etc. Until then, your only task is to celebrate this acceptance with your favorite beverage.

MidCOM and browser cache

Posted on 2006-02-17 11:36:52 UTC to . 0 comments.

Tarjei was experiencing problems with MidCOM's cache system:

[12:17] tarjei: I'm stuck with IE not letting users log out (seemingly) because IE doesn't refresh the pages
[12:17] tarjei: any tips ?
[12:18] bergie: use $GLOBALS['midcom']->cache->content->no_cache();
[12:19] tarjei: Hmm, I tried setting caching to NO in the settings page without any effect, but you think this will help?
[12:21] bergie: yeah, no_cache() forces browser to not cache as well
[12:21] bergie: call it before any output in style
[12:22] tarjei: bergie you are my hero.

Another good moment in community involvement...

Some notes about Placeopedia

Posted on 2006-02-17 12:44:28 UTC to . 0 comments.

I sent some notes to the Placeopedia team. Placeopedia is a service connecting Wikipedia pages with their locations on the map.

I would be a good idea to switch Placeopedia to use Google Maps hybrid mode, as there are no maps for places outside US and UK.

Try this for example http://www.placeopedia.com/?9356

Doesn't make much sense before you click "Hybrid".

It is easy to make the Google Map Hybrid Mode by default. Simply call map.setMapType(G_HYBRID_TYPE);

Anyway, thanks for making this great service! Position data really adds to the Wikipedia experience.

Since you provide nice "things near this coordinate" RSS feed I've been thinking about building a tool based on Plazes and that.

BTW, are there any plans to synchronize the Placeopedia data with Wikipedia itself?

I noticed the map mode issue when trying to place Petja's question.

Trying out Camino

Posted on 2006-02-18 21:03:01 UTC to . 0 comments.

Camino is the Mozilla family browser tailored for Mac desktop. Version 1.0 was released on Feb 14th, and I'm now trying it as a new default browser to replace Firefox:

Camino displaying OpenPsa 2 Calendar

On a quick look, Camino looks better and seems a bit faster. It also fixes a critical problem I had with Firefox 1.5, the time the software was frozen to open new windows. With Camino, pop-ups and download windows open briskly.

All the regular web features I use work with Camino: Bookmarklets, AJAX, Google Maps, HtmlArea etc. However, missing RSS auto-discovery is a bit of an issue.

I noticed the state of Camino via Mezzoblue.

Cars and commuting

Posted on 2006-02-19 02:25:34 UTC to . 0 comments.

Arttu from Protie is analyzing his car habit. Up comes the environmental aspect:

Since last summer I have been sliding more and more back to my old self. I became much less concerned of this world; started consuming more since I earned much more, bought a car and instead of using my feet, a bike or public transportation (which in capital area of Finland works extremely well), I started - again - to let myself be away of this moment in a dreamy state.

And the stress aspect:

When I am in a bus, I can meditate if I wish. I can wander in my thoughts or just be. I can fully concentrate on the moment and watch out my mind from drifting.

One more reason for me not to drive to work is that my stress level goes down this way. First of all, driving is still stressing while there is other traffic - and there always is. Second, when sitting in the bus, when waiting for the bus or when walking in between bus stops I am usually just relaxing and enjoying the moment.

I notice those beautiful icicles, I stop to enjoy the spring sun. I see the beauty of a single snow-flake, I enjoy the cold wind on my face. This is heavily connected to me being here, and me noticing all the beauty in even very unexpected places.

These reasons are quite close to why I'm also happy commuting using public transport. Of course, schedules being tight this often means a taxi but still at least the latter point is valid.

In summers I commute by motorbike, but that has nothing to do with ecology and everything to do with fun. In heavy traffic it can save much time too.

OpenPsa will have real SyncML

Posted on 2006-02-22 14:22:49 UTC to . 0 comments.

We have just contracted Yukatan to work on integrating SyncML support into OpenPsa 2. The idea is to enable users to synchronize their web-based calendar and contact registry with cell phones, PDAs and Outlook.

SyncML synchronization settings in Outlook

The SyncML implementation will be utilizing the Funambol open source SyncML server that will talk with OpenPsa through the Java Content Repository API.

Astute readers will remember that OpenPsa 1 had a PHP-based SyncML 1.0 implementation. However, this didn't work with many typical devices including Nokia handsets and so we had to look for another and more easily maintainable solution.

We should have first beta of the Funambol OpenPsa Connector in March.

Networking and microcorporations

Posted on 2006-02-22 15:14:14 UTC to . 0 comments.

Internet community specialist Petja Jäppinen is blogging about his new business venture on Bisnes.fi:

Eräs maailman menestyksekkäimmistä yrittäjistä Piero di Medici hoiti liiketoimintansa juuri verkostoitumalla. Hän oli harvoin suoraan tekemisissä loppuasiakkaansa kanssa. Hän toimi verkostonsa keskellä tiedon ja suhteiden solmuna. Hänen toiminnalleen oli tyypillistä myös se, että mikäli joku petti hänen verkostonsa luottamuksen, hän sulki tämän verkostostaan Itämereltä Aleksandriaan, eikä kukaan verkostossa enää tehnyt kauppaa luottamuksen menettäneen kanssa.

Tällä tavoin mies, joka ei koskaan allekirjoittanut sopimuksia, vaikutti suhteittensa ja verkostonsa kautta koko Eurooppaan, jopa valtionpäämiesten asemaan. Kenenkään etu ei ollut ruhtinas, jolla ei ollut luottoa Piero di Medicin verkostossa.

Updated 2006-02-27: I'm mentioned in Petja's posts:

Toinen softaongelma ratkennee vanhan tuttavani ja opettamani pojan avulla.

Olen tuntenut Henri Bergiuksen siitä asti kun hän oli 17-vuotias ja muistin, että Straturan (http://www.stratura.net/) Mikko Honkakorpi oli tyytyväinen, kun aikanaan vinkkasin että Bergius ja Nemein (http://nemein.com/fi/) voisi ratkaista heidän ongelmansa.

Nyt näyttää siltä, että vanhat suhteet pystyvät taas kerran ratkomaan uusia ongelmia.

On car crashes and responsibility

Posted on 2006-02-23 08:06:15 UTC to . 0 comments.

Boing Boing has a story about a car crash:

Yesterday, someone crashed a $1 million Ferrari crashed into a utility pole on the Pacific Coast Highway in Malibu, California. Bel-air resident Stefan Eriksson claims that he was just a passenger in the car and that the driver, who he knew only as "Dietrich," ran away from the scene. Apparently, investigators haven't yet determined who owns the car either.

Eriksson "had a .09 blood-alcohol level, but if he's a passenger, that's OK," Brooks said. "But he had a bloody lip, and only the air bag on the driver's side had blood on it. The passenger-side air bag did not. My Scooby-Doo detectives are looking closely into that.

This reminds me of the crash we encountered while driving to Murmansk couple years ago. There was a crashed car on the side of the road about 8km east of Utsjoki.

Car crash on the Utsjoki road

We of course stopped to see what was wrong. The driver's seat was empty, and there was a quite drunken and a bit bloody old guy sitting in the passenger side. We woke him up and asked if he needed any help, to which he said yes. Then we asked about calling the police and he said that no, he didn't need any help.

He told us that he had asked some "unknown man" to drive the car for him, and that the man had disappeared right after the crash. Maybe the same "Dietrich" is to blame?

We checked that there didn't seem to be any immediate risk of anything, set out the warning triangle, and drove a bit further on the road to get cell coverage and called 112. The Utsjoki police took charge of the situation, and apparently everything ended well. I was called a bit later by the police for some questions.

Updated 2006-03-09: The story gets more interesting:

According to today's Los Angeles Times, Eriksson flashed a card to deputies identifying himself as a "deputy police commissioner of the San Gabriel Transit Authority Police's anti-terrorism division."

The doubtful future of OSCOM

Posted on 2006-02-24 07:32:50 UTC to . 0 comments.

OSCOM

OSCOM's general meeting was held last night. The main issue in the stormy discussion was the question whether the association should be dissolved or not.

The OSCOM association was founded in 2002 to further collaboration and standardization between Open Source Content Management System projects.

What OSCOM did well

OSCOM was unique that in a very competitive and split field it was able to bring people together from many different projects and companies to work together. As Sandro summarized:

well, what's the reason for OSCOM? it's that we don't want to play the stupid we-are-competitors-and-we-dont-talk-but-fight- each-other game

we at least want to talk with each other, because we respect our expertise and we can learn from each other

This worked quite well, especially in the first two years. I went to OSCOM 1 expecting to only pitch Midgard against competitors, but actually ended up learning quite a bit and having lots of fun.

Things started becoming even more promising when several cross-CMS development projects were started. It was an especially nice moment when we were able to demo the Twingle offline editor editing content in three different systems at the end of the first Sprint.

But during 2004 things started to decline, and since OSCOM 4 the association has been existing mostly in an "undead" state.

And what went wrong

OSCOM's biggest problem was that it failed to recruit new active people into the association. When the CMS market started doing better most of the formerly active members became simply too busy to participate.

Several cross-CMS projects were started by people outside the OSCOM community that could've been OSCOM activities with a bit of effort. Especially the Open Source CMS Summit in Vancouver this month and the Open Source CMS site come to mind.

Discussion in the meeting was on whether the association should be dissolved or not. Sandro Groganz took the task of producing a new plan for making OSCOM work, and the discussion was suspended until March 2nd so that this plan can be presented.

I wish the best for Sandro's efforts. OSCOM has been a great initiative and it has been sad to see it decline.

Decluttering process

Posted on 2006-02-24 19:52:40 UTC to . 0 comments.

During this week we've hauled about one and half Land Rover loads of furniture and old stuff to recycling.

Decluttering in process

I have to say decluttering feels really good. Living in the western society you end up accumulating incredible amounts of unnecessary things.

Viking biathlon 2006

Posted on 2006-02-26 16:00:19 UTC to . 0 comments.

Kerttu was skiing in the Harmaasudet team, and so I went to watch the Hiidenhirven hiihto ancient biathlon contest. The tradition has been bringing together Living History groups from all over Finland every winter since 1999.

Kerttu shoots at the elk

This year the leading teams were:

  1. Viikinkiajan Laiva team 1
  2. Viikinkiajan Laiva team 2
  3. Ango
  4. Harmaasudet

Looks like sport!

The costume prize went to Hollola.

On simple business applications

Posted on 2006-02-26 21:11:28 UTC to . 0 comments.

Sproutit's Charles Jolley talks about how Web 2.0 applications make things easy for small businesses:

Here is the simple fact: business software costs too much for small business. And there is nothing the big software companies can do to fix it. They can’t drop the enough features, they can’t reduce the price enough. That’s because it’s not so much the cost of the software that is the problem—its the cost of maintenance.

And Joe Suicide talks about fixing the problem of direct marketing:

In targeting your campaign you need tools. Probably the most important is the register. In register you have all the information you can get. Problem with a register is the fast corruption of information. People move, change e-mail addresses, change jobs, retire or die. With current tools in most of the offices doing direct marketing this leads to endless loop of sending mail to places and addresses not in existence anymore. This is inevitable.

What is not inevitable is the handwork of fixing those registers one by one switching between one's e-mail and spreadsheet. This is an area where it is easy to change lives in offices little bit more bearable.

We're working on OpenPsa 2 to solve the simple, common business problems with open source software. Instead of building complex information architectures we want to make it easier to collect meeting notes, track tasks with subcontractors, keep customers up-to-date and handle incoming questions.

Ben Hammersley and iWeb

Posted on 2006-02-26 22:26:19 UTC to . 0 comments.

Ben Hammersley has gone to the iWeb side, making his blog image-only. Some commentation is available:

Why not publish in PDF if you’re going to go against the web’s grain anyway? That gets you frictionless publishing tools.

iWeb is Apple's new "every man's publishing tool" that seems to lean back to the web of the late nineties. Text is images, URLs are horrible and the HTML is messy.

The way I noticed Ben's change was that his feed became almost impossible to read in NetNewsWire, causing me to unsubscribe:

iWeb feed in NetNewsWire

Come on, Apple! First the iCal .Mac synchronization lock-in, then the PhotoCast mess, and now this. It makes me wonder if anybody at Apple gets the web at all...

At least there is a Greasemonkey plugin for making iWeb pages readable in case you ever need that.

MidCOM PEAR channel not working with PEAR 1.4.7

Posted on 2006-02-28 10:42:13 UTC to . 0 comments.

It seems the MidCOM PEAR channel is incompatible with the PEAR 1.4.7 release. When you try to discover the PEAR channel you get:

# pear channel-discover pear.midcom-project.org
Discovery of channel "pear.midcom-project.org" failed

Until this issue is resolved you can use the MidCOM channel by downgrading PEAR:

# pear upgrade -f PEAR-1.4.6

If somebody wants to help debug this, the channel server was installed using these instructions. The channel.xml is also available.

Updated 15:00: Seems we ran into a bug in PEAR 1.4.7. Bug #6960 contains a patch. Thanks to Greg Beaver for the fix!

Updated 2006-03-04: PEAR 1.4.8 is coming soon containing a probable fix to this problem.

Sown Viking ship's trip report

Posted on 2006-02-28 17:24:02 UTC to . 0 comments.

Route of the Shnjaka Mika Naimark has posted his trip report of the Shnjaka sown ship expedition last summer:

At the same time, the expedition was a good test for our newly built boat in her natural conditions and habitat. If not for this trial, our archaeological experiment would remain inconclusive, leaving the consistency of reconstructed withy-sewing technique under some doubt. So we did not take shortest rout for our voyage, on the contrary, we strived to use all available time up for more sailing. The resulting route was following: Koskosalma - Kuganavolok - [land transport] - Kashino - Povenets - Kizhi - Olen Isles - Petrozavodsk - Povenets - [towed trough Belomor canal] - Belomorsk - Solovki - Sonostrov - Krasnaya bay - Solovki.

Along Onego lake and White sea shnjaka covered some 900 km, under her own sail, moreover, part of this way (200 km) she towed another 8 meter boat. Total sailing time, with anchor hoisted, amounted to ~220 hours, which puts average travelling speed at ~ 4 km/h. Not very impressing, but this result can be stated in more optimistic fashion -- our daily average progress was 100 km (4.1km/h * 24h = 100km). Highest speed in this expedition, sustained for some 10 hours, was 6-7 knots, or 11-13km/h.

The trip was definitely an interesting one, and I'm happy to hear they were able to reach the White Sea even after the bureaucratic issues at Stalin's Channel. Time constraints forced me to leave the ship after the Onega leg.

Shnjaka sailing on the Lake Onega

Building a better mousetrap

Posted on 2006-03-01 21:39:19 UTC to . 0 comments.

Chris Glass has posted a HOWTO on a more humane mousetrap:

Humane mousetrap illustration by Chris Glass

Balance the tube precariously on the edge of a table or counter with the treat hanging directly over the tall sided receptacle. The mouse will scurry to the treat (they like tunnels) and fall into the trap.

I learned this technique from the Kapulainen kids when spending childhood summers in Turku archipelago. They were using it to catch a forest mouse to keep as a pet. It didn't work with rats, though, as they were strong enough to jump out of the bucket after capture.

I'd completely forgotten the episode until I ran into this story on Boing Boing tonight.

One Six Right on Google Video

Posted on 2006-03-05 14:32:52 UTC to . 0 comments.

One Six Right, the documentary about the Van Nuys General Aviation airport in Los Angeles is available on Google Video (Updated: not available)

One Six Right on Google Video

The documentary tells the story of this historic airport well, and outlines how important general aviation is to the whole aviation industry. It also shows several beautiful historic airplanes flying from Van Nuys.

Something similar could help the other historic and endangered airport, Helsinki-Malmi. The MIK videos are of course a good start.

Just watching the video makes me really want to go flying again. Luckily the weather is improving all the time.

Video link via Tigert.

Updated 2006-03-22: Seems that the movie isn't available any more. For some reason I'm getting nasty lawyer letters about this blog post...

Posting movies on the Internet is illegal, and promoting them or linking to them is also in violation of International copyright law and is prosecutable if no action if taken.

If your iSync ever stops working

Posted on 2006-03-06 08:52:17 UTC to . 0 comments.

Every now and then iSync simply stops working. Apart from the other problems, I'm seeing a lot of "Unable to connect".

If you get this error message, try if your Bluetooth connection to the mobile phone works otherwise. If it does, then the way to fix iSync is to reboot the Mac.

Maybe Apple should stop devising new ways to lock their customers into .Mac and make synchronization just work?

In the other news, there is a bus strike now in Helsinki. Traffic is a scary combination of lots of snow and people who usually don't drive.

Road trip preparations

Posted on 2006-03-07 08:12:17 UTC to . 0 comments.

We will have a quite interesting drive from Dallas to EclipseCon next week:

Coppell, TX to San Francisco, CA

Depending on the mileage we get, places like Grand Canyon and Monument Valley are on the way. I've done some driving in the US before, but nothing this long.

RSS being patented?

Posted on 2006-03-09 09:09:50 UTC to . 0 comments.

Looks like Apple is trying to patent RSS feeds and RSS auto-discovery:

Techniques for detecting, managing, and presenting syndication XML (feeds) are disclosed. In one embodiment, a web browser automatically determines that a web site is publishing feeds and notifies the user, who can then access the feed easily. In another embodiment, a browser determines that a web page or feed is advertising relationship XML, and displays information about the people identified in the relationship XML. In yet another embodiment, a browser determines that a file contains a feed and enables the user to view it in a user-friendly way. In yet another embodiment, feed state information is stored in a repository that is accessible by applications that are used to view the feed. In yet another embodiment, if a feed's state changes, an application notifies the repository, and the state is updated. In yet another embodiment, a feed is parsed and stored in a structured way.

Now, the RSS format and feed readers have been around for quite a while. I remember generating feeds in RSS precursor Channel Definition Format for consumption by Microsoft Active Desktop around 1997 or 1998. The Apple patent applications are from January 2005 so there is quite obvious prior art.

Apple started doing silly things with RSS with the PhotoCast mess and this is a quite logical continuation.

Via Miguel de Icaza.

Why are we going to EclipseCon

Posted on 2006-03-09 14:00:31 UTC to . 0 comments.

There is a post on Tapestry plug-in weblog analyzing the participants of the EclipseCon Open Source Pavilion. The post is a bit doubtful on Midgard's participation:

On surface this is a -1, irrelavent. But, looking deeper they are a showcase for the PHPEclipse plug-in. +1

Of course Midgard as a C and PHP project doesn't directly have anything to do with Eclipse. However, there are several points where the two connect and those are something I wish to demonstrate there:

In the other news, somebody in the event will be lucky enough to win a cool Midgard messenger bag designed by Tony Lee

Midgard messenger bag

Go West

Posted on 2006-03-17 22:45:03 UTC to . 0 comments.

2006-03-18 02:25Z: Rolling on prairie powered by beef jerky. We left Dallas in the morning and found sun after Amarillo. No tumbleweed yet.

2006-03-18 02:30Z: Stars shine above the desert as we head west on the Interstate 40 abeam Moriarty in New Mexico. Monty Python's Galaxy Song amuses.

Monumental mesas in Arizona

2006-03-18 05:20Z: We're overnighting in a motel in Grants, NM. This is indian country, the road is littered with casinos.

2006-03-18 19:00Z: We found the first patches of snow while driving towards Arizona surrounded by towering red mesas. Passed the Continental Divide at 2300m.

Looking down to Grand Canyon

2006-03-19 19:20Z: We left Las Vegas on sunny morning and headed to Mojave desert. Past are the snows of Grand Canyon.

2006-03-20 06:15Z: We arrived safely to San Francisco, and got sprayed by skunks while looking at the Golden Gate bridge. Car misfired a bit in the desert.

Las Vegas Strip at night

In EclipseCon 2006

Posted on 2006-03-21 20:04:10 UTC to . 0 comments.

The Midgard booth is now all set up in EclipseCon 2006 Open Source Pavilion. If you read this, feel free to drop in to booth 416 and enjoy an M candy and some Midgard talk.

Midgard in EclipseCon

So far the Open Source Pavilion has been quite quiet, but I already had one Midgard user to drop in and chat a bit. The conference is sold out, so we can expect the day to be busy later on.

Donald Smith is blogging the conference.

Updated 2006-03-22: I had some interesting conversations yesterday with both current and prospective Midgard users. Today I'm looking forward to catching Andi Gutmans' PHP IDE talk.

The Midgard Bag was awarded to Martin Perez from the jLibrary project:

Happy owner of a Midgard bag

jLibrary is an interesting desktop document management client that uses Java Content Repository as its back-end. Theoretically it could be made to work as an OpenPsa Documents front-end.

Updated 22:43Z: The Zend Eclipse IDE looks promising, and others seem to agree. It has very nice syntax highlighting support, and supports creating custom PHP code templates. I wonder if that feature could be used for creating a MidCOM component template.

I had some talk with Andi Gutmans about the Zend Framework. It seems they are willing to consider PEAR packaging the Framework once they get it to a more complete stage. That would be a very good step, as then other packages like Midgard could easily depend on parts of the Framework.

They're currently also looking at the different component architectures. I showed a quick demo of how MidCOM components are constructed and configured. Obviously MidCOM is quite specific to Midgard but some ideas from it might still be useful.

Generally I was a bit wary of the Zend Framework before actually meeting Andi. He got me convinced that they're actually trying to do the right things for the community, but are trying to be careful and only publish ready stuff at the same time. I have to agree that publishing running code easily beats just talking about it.

Two years of blogging

Posted on 2006-03-21 23:12:09 UTC to . 0 comments.

I started this blog on March 19th 2004. 332 entries and two years later it is time to reflect whether blogging makes sense.

I didn't want to start a blog as a personal diary, and so stayed away from the phenomenon for quite a while. But then Paul Everitt told about his way of blogging: keeping blog as a centralized place to post information people ask about. With blogs you have a URL for each post you can point people to when they ask about something.

This wasn't the first time I was blogging. I had what nowadays would be called a weblog on my site in 1997-98, and have blogged several of my motorcycle trips to Routa MC Journals. However, this was the first time I started to actively maintain a centralized weblog.

During this time the site has grown from about 50 daily visitors to over 2000. That figure is quite close to major consumer portals in Finland. The blog is featured on several Planet aggregators, and so is probably seen by even bigger number of people. This clearly shows there is demand for the blog.

On the more questionable side, the blog has also managed to annoy somebody enough to write code to censor it. I have to admit I've been posting long entries, entries with lots of pictures, and entries about very specific subjects that may not be relevant to everybody. But then again, this is my blog and I'm entitled to post whatever I want. :-)

Updated 2006-03-28: Paul Scrivens is asking whether designers can afford not to blog.

Goin' to Texas

Posted on 2006-03-24 09:40:04 UTC to . 0 comments.

2006-03-24 08:25Z: We left San Francisco in the morning and have followed the coastal US-101. Santa Barbara is now behind us as we approach LA.

Shoreline on California 1

2006-03-24 09:30Z: Rotten hamburgers on Hollywood boulevard made us happy to leave the City of Dreams. Headed south to San Diego.

2006-03-24 17:50Z: Heading east on I-8. Snow-capped mountains loom ahead as we ascend from the Pasific coast.

Huge cactuses in Arizona desert

2006-03-25 00:15Z: Huge cactuses and brown peaks dominate the view as we roll through the sands of Arizona. Soon in Tucson.

2006-03-25 18:05Z: Breakfast in El Paso and Texan soil under our feet. No Hattori Hanzo swords in pawn shops, though.

El Paso downtown

2006-03-25 22:35Z: Road is surrounded by endless roadkills and oil pumps as we approach Odessa. Pecos and Rio Grande are already behind us.

Getting my morning news

Posted on 2006-03-29 07:30:10 UTC to . 0 comments.

In order to make my news-reading process less time consuming, I've now switched from NetNewsWire running all the time on my PowerBook to the Bloglines web service primarily used through my Nokia 770 handheld browser.

Reading morning news on Nokia 770

Why use Bloglines? There are some good reasons:

  1. Bloglines centralizes RSS feed fetching, making news reading less bandwidth-intensive
  2. It centralizes information of what items I have read, meaning that I see only unread things whether I use my Mac, my 770, or some other computer at a client
  3. their subscription sharing system enables me to easily back up my subscription list as OPML. Even if Bloglines shut their service tomorrow, only thing I would lose would be information on which items I've read and which not

If the news items contain something interesting I will want to return to later or blog about, I can bookmark it using my del.icio.us account. The del.icio.us bookmarks used to be synchronized with my own site, but this isn't operational at the moment.

Making things work even better

In ideal world I would be able to do most of this offline. I would connect my 770 to the net before leaving home and synchronize the news there. Then I could read the news in bus or over breakfast, and bookmark the interesting items.

There is an offline Bloglines client for Nokia 770, but it is still at quite early staging and crashes quite often.

Similarly, there is a quite nice del.icio.us client, but as far as I know it doesn't support saving bookmarks while offline.

If these two issues would be resolved, I would have a quite perfect news-reading and research setup.

MidCOM PEAR channel upgraded

Posted on 2006-03-30 19:06:01 UTC to . 0 comments.

The MidCOM PEAR channel has now been upgraded to the Chiara_PEAR_Server version of PEAR channel serving. The upgrade went mostly painlessly following Greg Beaver's instructions.

The main change with the upgrade is that now the server uses PEAR's REST API which should make things faster and more stable. It also means that you need to upgrade the package definition on any server where you want to install MidCOM packages:

# pear channel-update pear.midcom-project.org

The other change is that we now have a nice web frontend for browsing packages powered by the Crtx_PEAR_Channel_Frontend.

Please report if you encounter any issues after this upgrade.

Updated 18:05Z: Planet Midgard is now subscribed to the PEAR channel releases feed.

Securing Instant Messaging

Posted on 2006-03-30 23:12:43 UTC to . 0 comments.

For quite a while we have been using IRC for instant messaging and company internal chat. IRC is handy for it, especially as we've been able to set up some bots to secure our own channels.

However, as we already use GNU Privacy Guard (GPG) for securing our email communications, it makes sense to also start encrypting the instant messaging conversations.

While there are several different secure IM options available ranging from Skype to Off-the-Record Messaging. These are good alternatives, but since we already have the GPG key management infrastructure set up it makes sense to utilize it. And of course Jabber and Psi are open, multi-platform and standardized.

Steps for setting up secure, encrypted instant messaging:

  1. Create Google Talk account (or some other Jabber account)
  2. Download and install Psi client, and connect to Google Talk
  3. Generate a GPG key (if you don't already have one for secure email)
  4. Set up GPG encryption for Psi

After this you can have encrypted conversations with any Jabber user whose public key you have.

Here is a screenshot of me having an IM conversation and switching encryption on and off couple times:

Encrypted Jabber chat with Psi

And here is how the raw Jabber XML output with encrypted messages looks like:

Raw encrypted XMPP messaging

The GPG encrypted Jabber conversations with Psi follow the JEP-0027: Current Jabber OpenPGP Usage specification.

Meanwhile, in Ukraine

Posted on 2006-04-03 08:18:23 UTC to . 0 comments.

Yulia Tymoshenko on a bike

It has to be said the Ukrainian political advertising scena has changed quite a bit from what I saw during the Orange Revolution.

These are allegedly real photos of the pre-election posters for Yulia Tymoshenko - nicknamed "the Orange Princess" - one of the leaders of the Orange revolution in Ukraine. Her party came in second in the recent general election with ~22.4% of votes.

Via Boing Boing.

During the revolution the streets were mostly filled with orange banners and stickers saying "Tak, Yushchenko" (Yes, Yushchenko). And Yulia's new campaign has apparently worked:

Tymoshenko re-energized her Bloc and entered the parliamentary elections of March 2006 as its leader, earning an estimated 130 seats, causing speculation that Yushchenko's Our Ukraine party and Bloc Yulia Tymoshenko may unite in coalition (with the Socialist Party of Ukraine) in order to keep the Party of Regions from gaining power. She again stated her desire to become Prime Minister in such a coalition. Her party would be the biggest party in a reformed "Orange Coalition".

Via Wikipedia.

Performance tips for MidCOM 2.5

Posted on 2006-04-04 15:17:35 UTC to . 0 comments.

We just ported a portal containing tens of thousands of documents from Abako Stato to Midgard CMS. Content conversion was done using Exorcist as usual.

Because the site included a biggish public discussion forum we decided to start right away from the current PEAR-packaged MidCOM site interface. MidCOM 2.4 had been causing severe performance issues on personalized sites, and we were a bit worried, especially as latest MidCOMs don't include the output caching system.

However, the new MidCOM 2.5 infrastructure proved to perform really well, getting us back to the MidCOM 2.2 branch performance levels where most sites really don't need any caches.

Here are the quick tips on how to make MidCOM 2.5 really fly:

  • Don't use MidCOM template, instead utilize static start-up
  • Move layout images and CSS from database to Apache DocumentRoot
  • Use only components refactored to the MidCOM 2.5 architecture. These include
    • All net.nehmer components
    • net.nemein.wiki
    • net.nemein.discussion
    • All org.openpsa components
    • ...
    • This list will grow as we keep porting things
  • Install memcached if you're using lots of ACLs

Using the upcoming Midgard 1.8 release will make MidCOM faster yet by about 5-10%.

From mailing lists to forums

Posted on 2006-04-07 09:33:36 UTC to . 0 comments.

The Midgard mailing lists have been offline for a while because their hosting provider has been having some issues. To fix the problem we decided to move from regular email lists to an online forum powered by the net.nemein.discussion component.

Currently the forums are publicly readable, but posting requires registration and logging in.

Midgard forums

Switching from mailing lists to online forums is a big cultural change for the community. To make the change easier, we will soon be adding alternative access options to the forum contents including RSS and email subscription.

In addition to the email subscription system I'm working on, new software coming from this migration was a mbox-to-forum converter to the Exorcist package.

Updated 14:14Z: There are now RSS feeds available for the user forum and the developer forum.

That time of the year

Posted on 2006-04-09 17:07:29 UTC to . 0 comments.

A couple days ago the world was full of snow, but now the weather has cleared and we can ride again!

Bergie and the Trusty Triumph

On Finnish state of living

Posted on 2006-04-09 21:34:28 UTC to . 0 comments.

Finland for Thought continues criticizing the welfare state:

After three and a half years in Finland I think I’ve finally realized the true meaning of [modern day] ’sisu’: It’s when you work 60 hour weeks, often on weekends, for little pay, and most of your earnings eventually wind up in the hands of the state, every year they take more from your pockets, you live in a little apartment, drive a little rusty car, you can barely make ends meet, your family life and personal life suffers and you get “burned out” - Yet you still trudge on. THAT’s sisu.

It has to be admitted, the Finnish system is designed for keeping everybody on relatively equal state of living. But then again, that is in any case the brand promise of the country. Even the national anthem, Maamme states so (roughly translated):

Our land is poor, and shall be left,
if you crave for gold.
Foreigners do abandon it,
but for us it is most precious,
its forests, islands and continents
for us they're golden.

And personally I buy into this idea. I feel the social stability and relative equality is much preferable over the consumeristic and cutthroat ideals of some other countries.

But still, I also have to agree with Phil that Finland is definitely spending too much money on bloated government agencies, and keeps too lax conditions for the long-term unemployed:

If you’re lazy, irresponsible, careless, incompetent, and don’t want to work - there’s no better place to be than Finland, cause if you act like that in the U.S….you’ll be out on your ass.

Thinking about GUADEC

Posted on 2006-04-11 16:38:30 UTC to . 0 comments.

GUADEC This year's GUADEC will be held in Catalonia on Jun 24th - 30th. We've left a proposal with Tuomas, so I hope I will be able to attend.

Summary: Web applications, collaboration, information accessible from different devices. How could we integrate web based tools better with our desktop?

I was talking about Open Source Content Management in the Dublin GUADEC and was already trying to get people interested in these things. If Open Source is to succeed, we need integration between collaborative server systems and desktop applications.

Updated 2006-04-19: Our talk has been scheduled for Tuesday June 27th in the preliminary schedule, but it also says:

BEING LISTED HERE DOESN'T IMPLY THAT A SESSION IS ACCEPTED, nor that it will be held the day it has been placed.

Updated 2006-05-05: Our talk has been approved!

Midgard for Mac

Posted on 2006-04-13 18:30:48 UTC to . 0 comments.

Thanks to Jyrki Wahlstedt there is now a new way to install Midgard CMS on a Mac: DarwinPorts.

I'm now testing his packages and will update the installation instructions as soon as I'm done.

DarwinPorts Mac installer

Updated 2006-04-21: I've got the DarwinPorts Midgard now running on my PowerBook G4. At first look, it is a lot faster than the Fink packages, possibly due to using MySQL 5.

Unfortunately the installation procedure is not as smooth as it could be, mostly because the PHP and Apache packages lack decent default configurations. I hope we'll be able to resolve that later.

In Brazil now

Posted on 2006-04-18 17:50:36 UTC to . 0 comments.

FISL 7After a 24 hour trip from Helsinki I arrived yesterday to Porto Alegre, where the 7th International Free Software Forum will be held. I have to say I'm happy to be again in sunny Brazil. The people are very friendly, and the Free Software community here is amazing.

My Digital Business Ecosystem talk will be tomorrow at 10am in the Babbage room and is the first talk of the day. I'll post the slides and session notes after it...


Digital Business Ecosystem in FISL

Posted on 2006-04-19 17:51:37 UTC to . 0 comments.

I just finished my Digital Business Ecosystem talk in the 7th International Free Software Forum, Porto Alegre.

Henri speaking in the FISL main hall

Here are the slides, and the transcript of the talk:

Digital Business Ecosystem

  • Good morning, everybody! I'm here to talk about Digital Business Ecosystem
  • My name is Henri Bergius, I'm from Finland and I've been a Free Software developer since 1997
    • I've been involved in several projects like the Midgard CMS and OpenPsa, a free management software suite. Before these "serious" projects I was also working on some Quake total conversions
  • In 2001 I became an entrepreneur when we started Nemein, a Free Software development consultancy
    • We've worked with both clients in Europe, and done several development aid projects in Africa and Eastern Europe

HEL/POA

  • I'm really happy to be again here in Brazil. Not only because of the reasons apparent from these two photos, but also because you have such an interesting and energetic Free Software community here
  • I have been to Brazil once before, when I attended the Forum GNOME event in Curitiba and OpenBeach in Floripa last November
  • I would like to thank the organizers of FISL, and also Izabel Valverde for letting me speak here today

DBE in a nutshell

  • Digital Business Ecosystem, or DBE in short is a huge Free Software project funded by the European Union
  • There are dozens of companies and universities participating. For example, IBM, Sun and Intel have all assigned full-time developers to work on the project
  • In addition to the big players, several small companies working on Free Software business applications have been funded to integrate their applications
  • DBE project was started couple years ago, and the first running version of the software was released in summer 2005 through Sourceforge
  • The reason why European Union started this project is to make local small business more efficient through providing tools for companies to work with each other

DBE components

  • The Digital Business Ecosystem software comes in three parts, some of which are running in the background of evere DBE installation, and some that only software developers use
  • First of all, there is the Execution Environment, the heart of every DBE installation. It provides a Java Server-Client for running the installed DBE services
  • The Execution Environment is based on the Fada network. Fada is a scale-free Peer-to-Peer network for connecting business applications that was originally developed for the tourist industry in Spain
  • In addition to the Execution Environment, there is the Evolutionary Environment which provides tools for connecting different services, and analyzing the health of the network
  • There are grand plans for the Evolutionary Environment, including automatically finding best suitable business partners and services, but much of this is still experimental artificial intelligence stuff under work
  • For developers, there is the Service Factory, a suite of tools built on top of the Eclipse IDE for building services and defining business models and terminologies

Business Ecosystem example

  • Ok, so what exactly is a business ecosystem?
  • Here I'm showing a simple example of a business ecosystem: the connections between a car rental company and its partners
  • White lines are services offered by a business, and red lines are services used by a business
  • The car rental company provides services like car rental and valet parking to hotels
  • And it consumes services like repairs from mechanics, advertising services, and accounting services
  • So as you can see, even a relatively simple small business has connections with many different services and companies

Why do we need a Digital Ecosystem?

  • So why is DBE needed. Why do we need a digital ecosystem anyway?

Connections1

  • All business is connections between people. It is connections between different companies
  • Now most of these connections happen over telephone, in meetings and especially using the big business integrator: email
  • Now, how many of you receive too much email?

Connections2

  • But the big issue is that business software doesn't connect. You can't take your CRM system and share a client contact with your partners, or automatically collect bids from ten print shops in Porto Alegre for these conference t-shirts
  • So, you're left with browsing web sites, sending lots of email, faxes and making telephone calls. This is time consuming if you're trying to find the best suitable partner from a collection of dozens of different companies
  • DBE could help here by providing a common infrastructure for different business applications to communicate with

Laptop1

  • In the past there have been several initiatives for enabling business software to connect. EDI, Web Services and BizTalk come to mind.
  • None of these have really taken off yet. The big problem is that they all rely on statically defined connections and interfaces between companies
  • Static connections work well when you're doing the same, well-defined things with same partners all the time over years
  • But they don't work so well in a constantly changing business environment where partners and procedures and terminologies change

Laptop2

  • However, most of the business done in the world is done by small businesses. These are businesses that don't have IT departments, don't have server infrastructure, and might actually be constantly on the move, changing from network to another, from supplier to another, and from business procedure to another
  • For them the statically defined world of Web Services isn't enough. They need to be able to set up connections quickly and automatically with partners using different technologies, different levels of infrastructure, and different terminology
  • Here DBE can again help. The Fada network used in DBE can set up connections between companies automatically regardless on what network they're on at the moment. And the ontology system of DBE's evolution environment helps to connect different terminologies with each other.

Free Software opportunity

  • Fixing these problems could be a major opportunity for the Free Software movement
  • The big proprietary software vendors with their established business models have hard time collaborating with each others
  • But for us, collaboration is the natural way of working. No Free Software project can be successful without collaboration
  • If we make our software talk with each other, we can easily leapfrog the competition, and provide a benefit proprietary software will have difficulties to beat. But this means different projects must talk with each other.
  • Initiatives like the Freedesktop.org project have proven cross-project collaboration is possible

The Digital Business Ecosystem talk

DBE in Brazil

  • So how can you get started with DBE here in Brazil?
  • First of all, it would be important to find the local business cases, find the "low hanging fruit" that would really benefit from more efficient connections and communications
  • Then recognize what Free Software applications they are or could be using, and find out how those could be integrated. And then simply integrate them to the DBE network
  • Of course, training would probably be needed. We've been running some training sessions for software developers interested in integrating their applications with DBE in Finland
  • In Europe the initial such efforts have been funded by the European Union to get the ball rolling.
  • Here in Brazil it could happen with regular funding from customers, or the government could get involved

Microenterprise and globalization

  • The reason for government to get involved is to support the local small business, or "microenterprise"
  • In globalizing world, huge corporations can move their operations easily to wherever it is most beneficial at the moment. To China, to India, to Vietnam, causing huge problems with unemployment.
  • But small businesses are relatively local, and loyal to the area they're working in. Their revenues stay in the local economy, boosting it, and they generate local employment

Small companies adapt faster

  • In addition to keeping the money closer to home, an ecosystem of small companies also boosts the economy by being faster to adapt to changes than big corporations can be.
  • And big number of small businesses is much safer than few huge ones. Sometimes a business fails, but if it only employs some dozen people it doesn't yet ruin an economy. And if the local business ecosystem is strong, these people will quickly find new employment or start companies of their own

WSIS 2005

  • Here's a picture I received just before my previous DBE presentation in Curitiba last November
  • It seems that the Brazilian government is at least aware of the DBE project to some degree, and seems supportive of its goals
  • So maybe government support is coming. But even then, if I were you, I'd start looking for potential applications and businesses to integrate with the Digital Business Ecosystem
  • It can be a challenging project, but it can also bring good money, and be lots of fun too

Finally

  • So, finally...

Try DBE in practice

  • If you want to try out DBE in practice, there is an application called OpenPsa
  • It is a Free Software project management and CRM suite that enables consultants to share tasks and work reports across the DBE network

Networked project management

  • With OpenPsa you can easily collaborate with your partners and subcontractors. Each can use their own servers, their own management tools, but still have access to all the status and billing information about the project
  • If you're interested in OpenPsa, you can get the latest beta release from http://www.openpsa.org

DBE resources

  • I'll be more than happy to talk more about DBE possibilities and OpenPsa after this session
  • Here are some links for finding more information about the project
  • In the bottom you'll also find my email address if you have any questions afterwards

Updated 2006-04-21: The Portland Project is another interesting example of cross-project cooperation.

Maemo and Free Software Innovation

Posted on 2006-04-21 16:02:10 UTC to . 0 comments.

Today I went to see Tim Ney's talk about Free Software Innovation in the 7th FISL conference here in Brazil. The talk started with a birthday greeting for Queen Elizabeth II.

Brazil has some connections to the Maemo development, and there is quite a bit of buzz about the Nokia 770 here. For example, the Python port to Maemo was done in a Nokia-funded research center in Recife.

Tim showing the Nokia 770

Learning the Free Software model

Nokia was a relatively late mover into the Linux space, giving them the advantage to watch how other companies were doing with their Open Source initiatives. 770 was also an excellent place to experiment with the Free Software model of working, as it is not a mobile phone, the Nokia staple.

One interesting way of working Nokia used in the Maemo project was to contract parts of the work to small consultancies abroad that were already active in their respective Open Source projects. This enabled Nokia to keep its own engineers working mainly on the device itself, and have the software infrastructure still come up.

An important difference in Free Software development is that it follows a more evolutionary model where different ideas are experimented with, and the strong ones survive, than the traditional waterfall model of software development. I'm not sure how much Nokia allows this evolution to happen purposefully, for example with the different browser alternatives.

Infrastructure is important

Of course, Free Software requires an infrastructure to work with. For a project, there must at least be:

  • A project website
  • Email lists
  • Version control repository
  • Bug tracker
  • And some kind of real-time chat

And all of these must be available to every potential contributor to the project. This is something where corporation-led projects like Maemo still have a lot to improve. Some of the lack of openness in the project probably comes from the initial secrecy of the Maemo project.

In the other news, there is a good review of 770 on Guardian. And later today Richard Stallman will be talking about GPL v3.

Motorcycles and targeted marketing

Posted on 2006-05-05 07:44:59 UTC to . 0 comments.

Last night I got SMS spam from Moto-Seinäjoki, a motorcycle dealer in the bothnia region of Finland, quite far from here. The message was advertising the possibility of test driving some of their new Honda range.

Having been in the team building a direct marketing application, org.openpsa.directmarketing, I wanted to note the couple of mistakes in this particular message:

  • Targeting: Seinäjoki is hundreds of kilometers away from where I live. This makes it quite unlikely that I would go there for a test drive, especially as there are several Honda dealerships in Helsinki

  • Targeting: I ride a Triumph Legend, a British motorcycle. Therefore it is unlikely that I would be interested in a "rice burner"

  • Timing: The message arrived during the night. If I hadn't had my mobile phone on silent I might've woken up to it, which would have made me very annoyed

  • Permission: I'm quite sure I haven't given the company permission to send me SMS messages. It is always a good idea to ask permission, as otherwise you can easily get judged to be a spammer

The targeting questions are dependent on how good information about me the company has in their CRM system. The company had gotten my number during negotiations about switching my bike to a newer Triumph year ago, and so they should have information on both the city I live in, and the bike I ride.

However, the two other points are more inexcusable. People are very skeptical about direct marketing and if you want to get through you need to:

  • Send messages that are really relevant
  • Send them to only people that have asked for them

As Joe writes:

Shoot your letters, e-mails and other crap you feel like delivering to whomever might get your message. Problems with this approach are almost so obvious it is questionable, if they should even be listed here. Messages might reach the right audience, but without any meaning to them. Those messages also get lost in masses of others attempts to get attention of the customers.

Think before you send

To make direct marketing work, you need a combination of good tools and good ideas about what to send and to who. Otherwise you will only manage to annoy potential customers.

Fellow of FSF Europe

Posted on 2006-05-05 07:54:32 UTC to . 0 comments.

I met the Free Software Foundation Europe president Georg Greve in the FISL 7.0 conference two weeks ago. Seems like the organization is doing lots of good fighting software patents and other threats here in Europe.

I've been considering it for a while, and now decided to join the organization as a fellow to support its valuable work and thus help to maintain the business environment I work in.

Sandro said it well:

Without free software, I would not have the job I have and the life I live. Long live free software!

Fellow Me - Join the Fellowship and protect your Freedom

On the burning of VR Makasiinit

Posted on 2006-05-07 10:53:30 UTC to . 0 comments.

VR Makasiinit, the old railway transfer terminal from late 19th century burned down on friday. We were on the way home from opera when the main street of Helsinki was closed and a dark plume of smoke towered above the city.

Smoke-filled center of Helsinki

The Makasiinit area was in any case destined to be demolished in a few days from the way of a new "music house". However, now it had to burn in the aftermath of a small-scale riot there during the May Day celebrations. Molotov coctails had been thrown, and so it is a little surprise somebody decided to set the buildings on fire.

I liked the Makasiinit area. It was a nice, even if quite run-down example of late 19th century industrial "red brick" architecture in the center of Helsinki. It had housed several events that I'd been to, like the Medieval Fair in 1998.

Harmaasudet fighting display in 1998. Photo by Noora Hirvonen

Makasiinit had been the subject of a long and typical political struggle. As Maud puts it, maybe it was better for the buildings "to burn out than fade away".

Quite often it is the cool buildings that must perish.

Midgard's new toolbar

Posted on 2006-05-10 08:20:37 UTC to . 0 comments.

Arttu and others at the office are now tuning the Midgard UI with these goals

  • Support the new features of MidCOM 2.5
  • Be more visible to the users
  • Add support for contextual help

Some examples of the first, Firefox-only toolbar are now available. I tested them on a Nokia 770, and they seem to be working just fine:

Midgard toolbar on Maemo

This is promising as I definitely want to be able to manage my websites using the small internet tablet.

OpenPsa2: Minor features matter

Posted on 2006-05-12 11:42:43 UTC to . 0 comments.

We're in process of making a new beta release of OpenPsa 2. While there are new major features like sales project management and phone interview support, I wanted to also mention some of the small things that are happening.

Skype integration. If your contacts are using the Skype VoIP service their presence is automatically displayed in contact listings. You can start a call by clicking the Skype name.

Skype presence in OpenPsa person records

We will later roll the Skype integration into Projects and Calendar to enable easy conference calling with the participants.

Task status history. Ever wondered when a project was started, or when a client approved it? Now Projects displays the full status history including task acceptance by resources in easy format:

Task history

If resources are remote DBE users they will be identified by a separate icon in the status history lists.

Automatic relations. If you archive email messages or other documents into OpenPsa's Wiki notes manager, they will automatically be connected to the potentially related projects, tasks and sales projects. You can confirm or remove the relation with a single click:

Confirming email relation to a sales project

The idea is to make the maintenance of a comprehensive CRM record in the system easy, but still not clutter the projects and tasks with unconnected information.

Buddy list integration. Since OpenPsa2 supports synchronizing events and contacts to mobile devices through the Funambol system we needed some way to limit which contacts to synchronize. There can be thousands of contact records in a company's CRM database and synchronizing all of those would completely overwhelm a mobile phone.

How to remove buddies

So we instead synchronize only those contacts that are in user's buddy list. The buddies can be added or removed manually, and the system also automatically adds new project participants and sales contacts to the list.

What to demand from Open Source contractors

Posted on 2006-05-12 13:32:22 UTC to . 0 comments.

We're currently struggling over contract terms related to a large outsourced Open Source development project. As the intellectual property terms seem to be difficult to many I thought to summarize the terms I feel comfortable with:

  1. The ownership of the intellectual property can remain at contractor or customer, depending on the situation
  2. The project must be made available under an OSI-approved Open Source license
  3. The code and documentation must be managed in a publicly available version control repository

The first and second term should be quite obvious. Usually the IP rights are best kept in ownership of the contractor, or given to a common governing body like Apache Software Foundation or Free Software Foundation Europe.

But what is very important for sustainability of the project is the availability of the version control repository. Third parties must be able to see what is going on with the development and be able to participate. Good options for such repositories include SourceForge and Tigris.

Maemo Mapper takes us closer to the Hitchhiker's Guide

Posted on 2006-05-16 20:00:30 UTC to . 0 comments.

I've written before how Nokia 770 is the real Hitchhiker's Guide to the Galaxy. The device already gives an ubiquitous access to the web, and now with the upcoming new OS release, to Jabber chat and VoIP calls.

However, what has been severely missing from a mobile device earlier has been information about the place the user is in. For that, the Maemo Mapper is an important first piece - maps and position.

Navigating in Eira with Maemo Mapper

The application is still new, and as it doesn't have any formal agreement with Google Maps requires a bit of manual setup, but it still is able to provide a nicer user experience than some commercial navigation packages I've seen.

Now the next obvious thing would be to enable it to use other sources for the position information besides a GPS receiver. Plazes integration would enable users to gain their position from WiFi access points without need for additional hardware.

And while we're at it, it would be very cool to be able to retrieve nearby Placeopedia spots and populate those to the calendar. And there it would be, a device that would automatically show your position on a map and show interesting things nearby (with Wikipedia links for more info), whether or not a GPS device is available. Like Nokia says:

It's where you're at.

What is remarkable about this process is that Maemo Mapper happened without any knowledge or interference from Nokia (or Google I guess). This shows the power of a free development ecosystem. I mentioned this also earlier:

Now what is especially cool about the N770 and WikiPedia combination is that there is no central authority to convince to be able to build this. WikiPedia is open content, and Nokia 770's platform is fully open, meaning that anybody can just sit down and implement this.

It remains to be seen is whether Nokia and their newfound partner Google will embrace the Hitchhiker's Guide idea and start supporting apps like Maemo Mapper.

Updated 18:07Z: On a second thought, we might be willing to sponsor Plazes integration to Nokia 770 (and Maemo Mapper) a bit. If somebody is interested in working on that, please contact me.

Midgard2 is becoming reality

Posted on 2006-05-19 14:17:46 UTC to . 0 comments.

Piotras remarked that the process started in East European Midgard Developer Meeting three years ago to build a Midgard 2 on top of the glib library is now a reality.

Alexander explains Midgard2 components

While the Ruby bindings didn't get maintained, the PHP and Java bindings are doing well, and the soon-to-be-released OpenPsa 2 is the first really legacy-free Midgard2 application.

Today is the Open Discussion Day

Posted on 2006-05-19 21:25:35 UTC to . 0 comments.

Goodbye proprietary IM

May 19th is the Open Discussion Day. The idea is to promote open instant messaging protocols over the proprietary and closed ones:

Have you ever imagined what would Internet be without an open email protocol? This is exactly the instant messaging world we are living in. This Friday, May 19, help promote open standards for IM. Don't use proprietary IM such as AIM, MSN, ICQ and Yahoo. For one day, use only IM with an open protocol such as Google Talk, which uses Jabber.

I strongly believe in Free Software and Open Standards as the building blocks of the information society, and as such embraced the Jabber network when it became relevant and secure enough for me.

Jabber works really well as an instant messaging platform. It can be used openly or in encrypted format, depending on the need. I really recommend getting rid of the proprietary networks and switching to Jabber.

Updated 19:56Z: Before anyone accuses me of hypocrisy, I have to admit that I'm a Skype user even though it is a proprietary and closed network. For now there are unfortunately no adequate open alternatives, although some might be coming.

Updated 2006-05-23: Gizmo Project's VoIP client follows the open SIP standard and still allows calling in and out with regular landline numbers. Once they have CallIn numbers to Finland it could become a real Skype contender. And Nokia 770 support is definitely a bonus:

The upgraded Internet Tablet software platform can also support SIP based VoIP solutions for broadband business benefit. Standalone software applications, like the popular Gizmo Project by SIPPhone Inc, is planned to be available for the Nokia 770 Internet Tablet. The Gizmo Project has a rich feature set including the capability to make and receive calls from public telephony networks.

Updated 2006-05-28: IM federation is a site promoting interconnected IM networks and open standards.

Maemo software idea contest

Posted on 2006-05-22 21:07:45 UTC to . 0 comments.

Open Tuesday Competition

I'm surprised nobody has mentioned Open Tuesday's Nokia 770 Application Development Competition on Planet Maemo yet.

The competition's goal is to find new applications targeted to Nokia 770 Open Source Internet tablet. There are three categories in the competition:

  1. Entertainment Applications
  2. Business Applications
  3. Vertical Solutions

The winners will receive a Nokia 770 device.

Application development competition sounds like actual app would need to be developed, but reading the rules it seems just an idea is enough.

While I already have a 770, this could still be a good opportunity to hash out my ideas for Nokia 770 as the real hitchhiker's guide.

Via Finnish Centre for Open Source Software.

Crna Gora voted for independence

Posted on 2006-05-22 22:41:51 UTC to . 0 comments.

Montenegro (Crna Gora in the slavic languages) voted for independence yesterday. Hopefully the split from Serbia happens peacefully.

Alp village in Montenegro

I rode through the country on the way home from my Black Sea motorcycle trip in 2004, and it is a complete motorcyclists' paradise. Empty, curvy roads through breathtakingly beautiful mountains, gorges and passes. And all of it a short ferry trip away from Italy.

Winding roads in Montenegro

Entry to the country from UN-administered Kosovo was interesting. No entry stamps or such, as those might make further travel in Serbia difficult. In any case, Montenegro is definitely a place worth a visit.

Bay of Kotor in Montenegro

More Montenegro pictures can be found in my To the Black Sea gallery

Notification management in OpenPsa 2

Posted on 2006-05-24 20:20:04 UTC to . 0 comments.

Another minor feature worth mentioning about: We today added a notification manager into the OpenPsa 2 system.

With the notification manager users and groups can control what things they want to be notified of and how.

The first OpenPsa component to implement notifications is OpenPsa Calendar, allowing users to choose whether they get emailed about new events or not:

OpenPsa Calendar notification settings

For now the notification manager supports only emailing or disabling notices, but other transports are being planned. For some things SMS, Jabber or even Growl could make more sense. For example, it would be nice to get a Growl notice when a client approves a completed project.

The inspiration for creating a sane way to manage notices was the silly amount of informational popups provided by the Hearts of Iron strategy game we played yesterday after sauna.

Clearing the photo backlog

Posted on 2006-05-25 16:16:00 UTC to . 0 comments.

I've been totally swamped by the number of photos taken during the last eight months of travel, and am lagging badly behind on publishing the photos. To help sort things out, I've now registered a Flickr account.

The FlickrExport tool makes it very easy to publish the pictures from iPhoto, the application which I use to manage the pictures on my laptop:

Uploading images via FlickrExport

Using Flickr for photo publishing fits well with my "IT strategy". I can have the photos available for three usage areas:

  1. Offline and desktop access: iPhoto and the Nokia 770 image viewer
  2. Sharing: Flickr
  3. Archival: Synchronizing the photos from Flickr to Midgard using PhpFlickr

I still need to implement the Flickr synchronization support into Midgard, but I trust this will be easy, especially as I already have similar thing going with bookmarks synchronization from del.icio.us and news subscription sync from Bloglines.

In any case, the first trips to end up on Flickr are:

There are also three ancient photo sets I thought to have lost posted by Henri Hovi:

If you have an RSS reader or iPhoto, you can subscribe to my picture feed as a PhotoCast.

MidCOM's new ACL editor released

Posted on 2006-05-26 17:04:41 UTC to . 0 comments.

MidCOM has had a comprehensive Access Control Lists system since last summer, but its usage has been hindered by lack of an easy management tool. That is now fixed with the first stable release of the Midgard ACL editor.

The editor supports both regular group assignees and the "magic" assignees like EVERYONE. All assignees that have a privilege to the current object are shown in the management tool, and new assignees can be added from the pulldown:

MidCOM's ACL editor

For now adding persons or virtual groups as assignees is not supported by the UI, but that will be fixed soon.

The ACL editor is already hooked into several of the main MidCOM components, and into the folder management. To add it to other components the component must use the MidCOM toolbar service, and call the following during handle phase of execution:

// Add the permission setting link for the current object
$this->_view_toolbar->bind_to($current_object);

Updated 2006-08-17: Or, even more preferably with MidCOM 2.6.0beta2 or newer:

// Register the page with metadata service and toolbars
$_MIDCOM->bind_view_to_object($current_object);

Amnesty and the Irrepressible Internet

Posted on 2006-05-28 17:08:42 UTC to . 0 comments.

Amnesty International is campaigning against Internet censorship:

Chat rooms monitored. Blogs deleted. Websites blocked. Search engines restricted. People imprisoned for simply posting and sharing information.

The Internet is a new frontier in the struggle for human rights. Governments – with the help of some of the biggest IT companies in the world – are cracking down on freedom of expression.

Amnesty International, with the support of The Observer, is launching a campaign to show that online or offline the human voice and human rights are impossible to repress.

You can sign the pledge that will be presented in an UN conference this November. You can also join to the effort by publishing irrepressible fragments of censored material on your own site.

Via Slashdot.

More on secure instant messaging

Posted on 2006-05-28 19:57:32 UTC to . 0 comments.

We have now been using Jabber and Psi for secure instant messaging with client and partners for some months. However, I haven't been completely happy with this setup for several reasons:

  • Psi's user interface feels quite clunky and "non-Mac-like"
  • If GPG encryption is configured Psi refuses to start if key isn't present
  • If you remove the USB drive containing the GPG keys Psi crashes

Jabber itself has been working just great, and as it is a federated network we've been able to talk with people on multiple IM providers. Gmail's Google Talk integration has proven to be a convenient way to chat when at a client's computer. However, I haven't been entirely happy with the client itself.

While looking for better alternatives I decided to test Adium, the native Mac instant messaging application built on top of GAIM's multi-protocol libraries. Adium uses Off-the-Record encryption for securing the conversations. OTR has several advantages over GPG for IM purposes and supports several clients including Adium, GAIM and Trillian. We'll have to see how well OTR works over some weeks of testing.

OTR encryption in Adium

Other nice things about Adium include Plazes integration, Growl notifications and support for the Gizmo VoIP network.

We haven't yet made decisions about Gizmo vs. Skype. While Skype has a much larger user base, Gizmo follows open standards and so would fit better into our open source strategy. Zfone security and the possible upcoming Nokia 770 integration would also be big bonuses.

Web goes lowercase

Posted on 2006-05-31 22:48:07 UTC to . 0 comments.

Tony Byrne of CMS Watch notes that there is nothing special about the web any more:

Forthwith, the following terms, "web, website, webcast, internet, intranet, the net" shall merit only lower-case treatment. So be it. The web has become part of the fabric of business and, increasingly, personal information exchange. It's become less of a place and more of an approach -- or put another way, more of an adjective than a noun.

About time, I think.

Email integration in OpenPsa 2

Posted on 2006-06-01 09:31:05 UTC to . 0 comments.

Seth Gottlieb has an interesting piece on email and content management:

I understand why email is such a tempting tool. That post outlines the reasons nicely: it is easy, universal, accessible, personalizable, reliable, and people just live in their email clients. Even I have to admit, the more you manage, the more you live in your email client. That is why most executives don't even need a computer anymore - just a blackberry to thumb a yes or no wirelessly.

This is exactly why we added email archiving support into OpenPsa 2. Lots of business communication happens over email, and it is important to be able to easily archive it into the CRM system.

With OpenPsa 2 the approach is that there is a shared "archiving" mailbox where all users can drag-and-drop relevant emails. OpenPsa monitors the mailbox and reads them in. Then it produces a wiki page out of them and links the message according to its time sender and receivers into the people and tasks concerned.

Imported email shown in a task

This way the important emails are stored in a secure and easy to find location, and the email client can handle its actual task, the sending and receiving of the day-by-day email.

Remembering how to fly

Posted on 2006-06-02 17:08:04 UTC to . 0 comments.


Suomenlinna island fortress

Kerttu had her entry exams to the Biological faculty of University of Helsinki yesterday, and therefore she is now free to enjoy the summer.

To mark that, we decided to go flying a bit around Espoo and Porvoo. The runway 27 was in use so we took the plane out through Nokka and returned later through Deger.

The wind was a bit bumpy, but otherwise it was nice to fly again after the long winter break, made even longer by my trips to the US and Brazil.

BTW, this is first post from my Flickr account. Flickr supports the common blogging APIs and so can communicate with Midgard without problems.

Eating our own dogfood

Posted on 2006-06-08 18:47:29 UTC to . 0 comments.

This tuesday was the "day of the beast", and we decided to finally eat our own dogfood and deploy OpenPsa 2 into production.

This brought some nice benefits immediately, including seeing one's own invoicing rate on the front page and much better calendar and scheduling. However, as expected it also brought some annoyances we would've overlooked if we didn't use the system every day for real business.

First one of these was the calendar. OpenPsa 2 has a nice automated buddy list for adding project contacts to user's address book, and we had been using the same mechanism for populating calendar views. However, when you have many projects and customers, the buddy list tends to get quite long swamping the calendar.

So what I did today was add a system for deciding which of your buddies to display in the calendar through a simple AJAX interface:

Choosing buddies to display in calendar

Expect to see many such improvements soon as we encounter things to improve in our use of the software.

Make your site Growl

Posted on 2006-06-09 11:45:52 UTC to . 0 comments.

Growl is a very nice notification system for Mac OS X. It displays bubble-styled messages on the screen about various events like new instant messages or emails. We were looking for a new user interface messaging system for the Midgard web toolkit and decided to model it based on the Growl concept:

Two protoGrowl messages

Jerry Jalava from Incognito took the task, and as result we now have the first version of the protoGrowl Javascript library. The library can be used to display user interface messages both in Midgard applications and in any Javascript-supporting web page. Enjoy!

http://www.midgard-project.org/documentation/protogrowl/

Technorati tag:

Updated 19:40: You can also Digg this or comment it on Ajaxian.

Internet Tablet OS 2006 beta is out

Posted on 2006-06-09 17:55:11 UTC to . 0 comments.

I've just downloaded the Internet Tablet OS 2006 edition Beta to my Nokia 770. The software feels a lot faster, and the new features are really cool.

I even had my first chat using the thumb keyboard, and a 15 minute VoIP call with Tigert.

Maemo OS 2006 beta

Very promising. I hope Maemo Mapper and the Plazer get ported to the new OS version soon.

The OS X flashing instructions work too, though the software needed for the GUI method isn't available and I had to use command line.

Updated 2006-06-12: Jeff Waugh said it well: Nokia 770 is ready for the enterprise.

Navigation items and redirection

Posted on 2006-06-14 15:27:13 UTC to . 0 comments.

MidCOM has a centralized system for serving navigation information called Navigation Access Point. Typically the navigation UIs on Midgard-powered sites are dynamically constructed using this information.

However, sometimes webmasters want to have items in their navigation that actually direct the user somewhere else (and external URL, or just another folder on the site).

Now there is a solution to make these redirection folders easier, net.nemein.redirector. Just create a new folder handled by this component and set the configuration:

Redirection configuration

Speaking of redirections, we're leaving tomorrow morning to Poland for the Midgard Developer Meeting. Looking forward to seeing as many of you as possible there!

Updated 2006-07-21: Henri Kaukola from Vaisala pointed out that it would be useful to support different HTTP redirection status codes in the redirector. This is now done:

Choosing HTTP status code for the redirect

Midgard Developer Meeting in Komorniki

Posted on 2006-06-17 19:49:55 UTC to . 0 comments.

We spent the last two days driving from Helsinki to Poznan, Poland for the Midgard Developer Meeting. This proved to be a good field test for Maemo 2.0 as we needed to instruct people back home about some project details using Google Talk.

Instructing office through Maemo's Google Talk

Saturday

While the trip was a long one, it has definitely been worth it. So far we've covered the following:

Exploring Poznan's night life

Sunday

We hit the old square of Poznan again on saturday night after watching the Italy-USA game with Alessio, and toured the local bars until about 4am.

In Columbus Pub

We continued the meeting around 11am, have covered the following:

Piotras explains fashionability of different Midgard releases

Soon we start the long trip back home through Germany, Denmark and Sweden, completing the circle around the Baltic Sea.

In the other news, Oskari is blogging the trip in finnish. First part, second part, third part, fourth part, fifth part, sixth part.

Changing schemas on the fly

Posted on 2006-06-20 13:03:52 UTC to . 0 comments.

MidCOM datamanager allows you to have multiple page types, or schemas used in a folder. The schemas can provide different editable fields and different styling.

However, by default datamanager doesn't allow you to change a page's schema after it has been initially set. If you want to enable this, here is a quick hack.

  • Customize the net.nehmer.static component's template admin-edit for your site

  • Add the following below $data['controller']->display_form();

    // Load schema
    eval('$schemadb = Array( ' . midcom_get_snippet_content_graceful($data['config']->get('schemadb')) . " \n);");
    
    
    // Save selected schema
    if (   array_key_exists('net_nemein_customschema_change', $_POST)
        && array_key_exists($_POST['net_nemein_customschema_change'], $schemadb))
    {
        $data['article']->parameter('midcom.helper.datamanager2', 'schema_name', $_POST['net_nemein_customschema_change']);
        // Refresh page to get the new schema's editor
        echo '<script language=\"javascript\">location.replace(window.location + "#");</script>';
    }
    
    
    // Show selection form
    $current_schema = $data['article']->parameter('midcom.helper.datamanager2', 'schema_name');
    echo "<form method=\"post\">\n";
    echo "<label>Page type\n";
    echo "<select name=\"net_nemein_customschema_change\">\n";
    foreach ($schemadb as $schema_name => $schema)
    {
        $selected = '';
        if ($schema_name == $current_schema
            || (   $schema_name == 'default' 
                && $current_schema == ''))
        {
            $selected = ' selected="selected"';
        }
        echo "    <option value=\"{$schema_name}\"{$selected}>{$schema['description']}</option>\n";
    }
    echo "</select>\n";
    echo "</label>\n";
    echo "<input type=\"submit\" value=\"Change type\" />\n";
    echo "</form>\n";
    
  • Now the page schema should be easy to change:

Changing a page schema

Note: This quick tutorial applies only to components utilizing Datamanager 2 but should be easy to adapt to also old-style components.

The Midgard Position

Posted on 2006-06-20 18:08:43 UTC to . 0 comments.

I've committed the first working version of Midgard's geopositioning system into CVS today. The library makes it really easy to add location information to users and objects, and to find things that are close to each other.

Some things I find useful:

  • Objects are positioned based on the location of the user who created them (the person who took a photo, for example)
  • User's position information is aggregated from multiple sources: manually entered data, Plazes, and eventually GPS track logs
  • Any Midgard Object can be located and queried using the positioning library

The library is relatively easy to use. For example, to get and display coordinates for an article, just run the following:

 $object_position = new org_routamc_positioning_object($article);
 $coordinates = $object_position->get_coordinates();
 if (!is_null($coordinates))
 {
     echo "<meta name=\"icbm\" value=\"{$coordinates['latitude']},{$coordinates['longitude']}\" />\n";
 }

And to find 3 closest articles to this one, run:

$closest = org_routamc_positioning_utils::get_closest('midcom_db_article', $coordinates, 3);

echo "<p>Closest articles to this article are:<br />";
echo "<ol>\n";
foreach ($closest as $article)
{
    $article_coordinates = Array(
        'latitude'  => $article->latitude,
        'longitude' => $article->longitude,
    );
    echo "<li>{$article->title} is " . round(org_routamc_positioning_utils::get_distance($coordinates, $article_coordinates)) . " kilometers " . org_routamc_positioning_utils::get_bearing($coordinates, $article_coordinates) . " from you</li>";
}
echo "</ol>\n";

The positioning library isn't yet hooked into any of the components yet, but I will do this soon, starting from the blog component. However, the library can already be experimented with using the test tools it contains. For example, I can see the following information based on my Plazes position:

Map spots closest to my home

The city database used for the example above is MaxMind's Open Sourced World Cities Database that the positioning library is able to import. Next I will start playing with the Geo-Names Data.

As soon as the library is hooked to the blog component it will replace the old location system I've been using on my site, and will start populating the Death Monkey 2006 route map with real-time data from that trip.

CMS Watch: Midgard keeps chugging along

Posted on 2006-06-22 07:55:13 UTC to . 0 comments.

Tony Byrne from CMS Watch noted the recent advances in Midgard based on yesterday's 1.7.6 release:

The latest release (1.7.6, in case you're counting) builds on some previous attempts to make the package play better in standard corporate environments, including integration with Apache Lucene for search, and JSR-170 support as well.

I agree with Tony that the recent changes like better third-party authentication make Midgard fit well in corporate networks.

His other comments are also interesting, noting the base of activity in the project:

The open-source CMS package Midgard is not very popular in North America, but it sports a wide following in Central and Eastern Europe, including a core group of developers who have slowly re-architected the package after a semi-dormant period early in the decade.

Great to see that CMS Watch is still actively monitoring Midgard. Their site has been running on it for quite a while, I believe they haven't seen much of the more modern Midgard features like MidCOM components, PEAR packaging or the AJAX UI. Hopefully these become more visible once 1.8 hits stable.

Easy midsummer and Barcelona

Posted on 2006-06-26 21:55:50 UTC to . 0 comments.

Traditionally Finns spend the Midsummer in the countryside, and we usually follow suit. However, this midsummer both of the summer cottages were booked so we decided to take the weekend easy.

On friday we visited grandmother and helped her access family pictures easier by switching from OmniWeb to Firefox on her iMac. She had made us some delicious Lappish dishes, like oven cheese. Later we watched Fritz Lang's monumental twenties film Metropolis. The soundtrack coming with the video release was horrible, but Rammstein fit there perfectly.

City scene from 1927 film Metropolis

Saturday was spent motorcycle cruising in the Porkkala penisula, and enjoying the perfect combination of sauna, barbeque, sovetskoe shampanskoe, and of course, sabrage.

On sunday I woke up in the sauna dressing room, started my bike, and rode home to fetch my conference gear. I slept most of the Blue1 flight, only waking up occasionally to watch mountains and coastlines pass by.

Towers of Sagrada Familia church

Barcelona's sights, the still-unfinished Sagrada Familia cathedral and Montjuïc hill were clearly visible already on approach. The day was easily spent strolling on the La Rambla boulevard, old town, and especially Eixample, the Art Nouveau part of the city.

Bergie and the Chimneys of La Pedreira

I arrived quite late to Vilanova, having been caught by Gaudi's amazing architecture. As Tigert and Miia already were hungry we went directly to a tapas place instead of looking for a hotel. So I ended up spending the first night of this trip sleeping on Tigert's couch.

After dinner we enjoyed excellent Italian ice-cream in Tutti Frutti, a small bar slashdotted earlier by Tigert. Ice-cream is mandatory here anyway as weather is slightly warmer than when Topi came here last Christmas.

On monday the touristic part was over and was time to concentrate on the GUADEC conference.

On a related note, I'd like to echo Andrew Bennetts's blog that it would be great if conferences submitted the travel information they gather about the venue to WikiTravel:

Lots of open source conferences are organised by volunteer work, and a lot of effort goes into doing it. Then, once the conference is over, all the research the volunteers did on mundane but extremely useful things, like accomodation and ways to get there, rots on some obsolete web page no-one ever looks at again. In my ideal world, conferences like linux.conf.au and PyCon would be contributing that research to Wikitravel, so that more people (and future conferences!) can benefit.

Synchronization and the Free Software Desktop in GUADEC

Posted on 2006-06-27 18:58:38 UTC to . 0 comments.

We held the Feeds, Synchronization and the Free Software Desktop talk with Tigert today. Despite the Fluendo party the night before, there was a quite good crowd in the old Museu Balaguer library.

Speech in the Biblioteca Museu Victor Balaguer

The key ideas from the talk were:

  • Applications should synchronize with their corresponding social web services
  • Synchronization with Web 2.0 would solve both easy information sharing and backups
  • Native apps are still more usable than web sites and provide off-line support

As a tangent we discussed also integrating "where" into the desktop:

  • Adding location information into the desktop would enable lots of new services
  • Location should be a centralized service in the desktop
  • There should be multiple sources of position: GPS, Plazes, manually entered, ...

Same ideas would also work on 770.

You can download the slides here: guadec-feeds-2006-06-27.pdf (776KB PDF)

In the other news, due to the big badge swap of last night, I'm currently carrying the identity of Chema Casanova.

Positioned cellphone as the travel guide

Posted on 2006-06-29 07:35:36 UTC to . 0 comments.

New York Times has an article about using cellphones as travel guides in Japan:

If you stand on a street corner in Tokyo today you can point a specialized cellphone at a hotel, a restaurant or a historical monument, and with the press of a button the phone will display information from the Internet describing the object you are looking at.

The new service is made possible by the efforts of three Japanese companies and GeoVector, a small American technology firm, and it represents a missing link between cyberspace and the physical world.

It is great to see some examples of positioned services such as this appearing, even if they are proprietary ones. We described a very similar scenario in our GUADEC talk this tuesday.

I still think that free software and free, wiki-like content is the right way to implement positioned services. Anybody can populate data to Geonames and Wikitravel, making the groundwork for much richer information resources than a proprietary database can be.

Via Boing Boing

When summer calls...

Posted on 2006-06-29 16:45:29 UTC to . 0 comments.

...you have to follow. Next updates from me will happen sometime in late July.

Monkey headed for the summer

If you want some summer reading in the meanwhile, go to http://www.deathmonkey.org/

Back on duty

Posted on 2006-07-22 17:23:55 UTC to . 0 comments.

Summer holiday is now over, and as Tigert put it, we made it to Gibraltar.

Skyteam Monkeys in front of Gibraltar

In addition to showing the beautiful European countryside from a worm's eye perspective of a slow-moving and small vehicle, the trip was also an excellent field test for Midgard's new positioning services, and for mobile blogging using the new Nokia N and E series phones.

All in all, a very interesting trip.

Now that I'm back on duty, the things I will focus on next are:

In addition, Kerttu just bought me a bicycle which I will be able to test on the monday commute. Will be interesting as the last time I've had a bike was some fifteen years ago...

Help GNOME choose its CMS

Posted on 2006-07-22 18:07:03 UTC to . 0 comments.

The GNOME desktop project from which Midgard also gets a bunch of libraries is now choosing a CMS for its website.

You can help out by filling a requirements list for your CMS in the wiki. For example, here is the one for Midgard. Feel free to add comments!

Big changes in the MidCOM project

Posted on 2006-07-25 18:16:45 UTC to . 0 comments.

Late July sees a lot of changes in the Midgard Components Framework project. Since its appearance in March 2003, MidCOM has established itself as the standard way of building and managing Midgard CMS sites.

There has been lots of evolution during the way, but the current set of changes is a quite major one:

In addition to actual project management and maintenance changes, there is discussion of two interesting points on the developer forum:

BTW, is there anybody from Pearified reading this? I'm wondering if we could get Icons_Tango repackaged using Role_Web so that the images would automatically go under DocumentRoot for easier serving. I could do this easily myself, but I'd rather keep the package on Pearified.

Gizmo and the new Skype UI

Posted on 2006-07-25 22:38:15 UTC to . 0 comments.

While I appreciate the fact that Gizmo uses open standards for internet telephony, and that it is available for my Nokia 770, it still has to be mentioned that its user interface has a lot to learn from the latest Skype beta. You just have to love the simple, purpose-driven UI:

Skype 1.5 beta main screen

Hopefully an updated Adium plugin would bring similar simplicity for Gizmo.

In the meanwhile, I could wonder why the VoIP vendors want to stick instant messaging into their applications. Most people already have an IM client they use, and while the one in Gizmo at least is standard Jabber client, I would still prefer to use my own servers and Jabber IDs instead.

Updated 2006-07-26: ThoughtFix has a quite favorable Gizmo-on-770 review. Sounds promising.

Floating down with beer

Posted on 2006-07-31 18:56:40 UTC to . 0 comments.

Last saturday we participated in the Kaljakellunta - beer floating event. The day was spent in perfect weather floating with hundreds of dinghies and other improvised rafts down the Keravanjoki river from Heureka science center.

Faulty oars ensured only 50% of the Death Monkey team reached the goal, but it was a really nice event in any case. Everybody was in surprisingly good mood and helpful, which is totally unheard of in typical Finnish booze-oriented events. Next year again!

AK and Janos floating down

Lots of nice Kaljakellunta photos here.

First four countries committed to One Laptop Per Child

Posted on 2006-08-01 19:08:39 UTC to . 0 comments.

According to the DesktopLinux.com article, Nigeria, Brazil, Argentina, and Thailand have each now ordered a million 100$ laptops for use in education.

The OLPC aims to distribute -- free of charge -- millions of Linux-based laptop computers, complete with their own power sources, to needy children in developing countries around the world.

One Laptop Per Child is a very interesting project aiming to use Free Software to bridge the digital divide between industrialized and third world countries.

The OLPC laptop has a turning screen

Makes me wonder though where industrialized countries stand with this. Even if the price was doubled to subsidize third world deployments, it would still be reasonably cheap compared to printing millions of textbooks every year. Ministry of Education, are you listening?

Updated 2006-08-03: Apparently the information about orders was premature. Hopefully it will still happen, though.

Web services and free software

Posted on 2006-08-03 10:10:15 UTC to . 0 comments.

It seems that OSCON 2006 has sparked discussion about the relevancy of free software in the software as service world that Web 2.0 is taking us to. If all collaboration and data is tied to remote web servers controlled by some commercial entity, where do the four freedoms fit?

We discussed this with Tuomas in our GUADEC feeds and synchronization talk and argued that as long as APIs and data are open, free software should attempt to integrate the with services.

While it means that there will be increasing reliance on proprietary services, it also means that we are not confining our users to the small box that is their desktop but instead let them collaborate and share data freely.

Later, if free peer-to-peer services for similar functionalities emerge we can easily start supporting also those, as the UIs and users are already adapted to the social way of working that Web 2.0 services can facilitate.

MidCOM on PHP5, finally

Posted on 2006-08-03 16:47:54 UTC to . 0 comments.

Thanks to the efforts by Solt and Piotras, we finally have the MidCOM, the Midgard Component Framework running on top of PHP 5.1.

Simple MidCOM site running on PHP5

While we got PHP5 support into Midgard already in August 2004, the big issue has been the tens of thousands of lines of code in the MidCOM framework that had several PHP4 constructions.

Now it is possible to run CVS version of Midgard together with Subversion checkout of MidCOM with PHP 5.1. There are still quite a few PHP Notices around, but I'm feeling optimistic that the final releases of Midgard 1.8 and MidCOM 2.6 will support PHP5. And if that happens we can then drop PHP4 support with clear conscience in the 1.9 series.

OpenPsa sources moved to Subversion

Posted on 2006-08-04 09:52:48 UTC to . 0 comments.

OpenPsa2 source code has now been moved to the Subversion repository used by MidCOM. Since OpenPsa is now a pure MidCOM component system this should aid in cross-project collaboration.

This should also make it easier for MidCOM developers to utilize some of the useful OpenPsa libraries, including:

To run OpenPsa2 from the Subversion checkout, follow these instructions.

Updated: Obviously the OpenPsa 2 beta is also available via PEAR installation.

Switching to Intel MacBook

Posted on 2006-08-07 20:35:24 UTC to . 0 comments.

Since we have some new members in the team, it was time to grab some new Intel MacBooks. I also decided to switch and recycle my 12" PowerBook to another team member.

The white MacBook

As usual the switch between Macs was reasonably painless - just connect the two laptops with a FireWire cable and wait. However, after the switch my DarwinPorts-built Midgard ceased to work.

I suspect this is because it was built on a PPC box and I'm now on Intel, but unfortunately today is not the best day for downloading Xcode as Apple servers are probably getting hammered during the WWDC keynote. I'll make the recompile tomorrow and report how my development environment runs here.

As a summary, the development tools I use daily are:

In the other news, the GPGreasemonkey Summer of Code project sounds interesting. The aim there is to build a Firefox extension that would enable encrypting and decrypting parts of web pages using GPG. This would be very useful for Wikis and CMSs...

When you view a PGP encrypted message via your webmail account, GPGreasemonkey would detect the encrypted text, prompt for passphrases as needed, decrypt the message, and automagically display the unencrypted text.

Updated 2006-08-10: The MacBook was slightly painful to use with the default 512MB of RAM. Luckily GNT was able to deliver new 2GBs of memory ahead of schedule. Now the Mac feels like a completely different machine...

iCal is adding CalDAV support

Posted on 2006-08-07 21:34:15 UTC to . 0 comments.

The mysterious collaborative feature of iCal hinted at the WWDC keynote seems to actually be CalDAV:

Simply posting your group’s calendar to the Internet is a one-way transaction. Turn it into a conversation with iCal sharing in Leopard. Whether you’ve got an activities calendar or a work schedule, your friends, family, and colleagues can participate in managing the group’s events, thanks to support for the CalDAV standard in iCal. And don’t worry about prying eyes: Security features built into iCal let you control who has access to your calendars.

If this is true, it will be a complete change from the earlier iCal synchronization problems that resulted from Apple trying to push .Mac lock-in. CalDAV is an open standard that any groupware package, OpenPsa included can implement. Let us hope the iCal implementation of it will be open as well...

Updated: OpenPsa already includes a quite competent vCal parser, and using PEAR's HTTP_WebDAV_Server it is easy to develop DAV features so supporting CalDAV quickly should be feasible. Especially as while we wait for Leopard we can test the calendar sharing features with Chandler.

Updated 2006-08-08: Apple has open sourced their CalDAV server so this really looks like a move to the right direction.

Benefiting from the GLib core

Posted on 2006-08-12 15:24:45 UTC to . 0 comments.

Midgard CMS differs architecturally quite much from the typical open source CMSs in that its core is written in C on top of the GLib library.

The C core means that potential users need to have superuser privileges on their server in order to install Midgard. This is obviously a major obstacle to people running smaller sites, but it also carries quite cool benefits, as Piotras points our in his recent blog post:

First. Midgard core is not a CMS core, it's just database abstracion layer with authentication mechanism and some built in additional features. Thus , core is not your ideas aware. That's good , because its generic purpose doesn't limit your ideas. So together with other components ,( like midgard-apache module or midgard-php ) it turns into powerfull CMS framework which can be written in any language , like MidCOM is written in PHP.

Second. Just imagine that your favourive PHP ( only PHP ) based CMS which has been developed for last three years begins to be interesting for java community. Imagine that CMS contains 50 000 lines of code. 20 000 is database releated code, another 20 000 creates logic and only 10 000 defines user interface. What java community should do in such case? Write 50 000 lines of java code and be in sync with PHP based development branch. Sounds good? No. Now imagine that you want to build Your new project with python and Midgard as basement. It's enough then to write python language bindings ( which is done only once ) and focus on Your application. Amount of code which must be written depends on project only. You do not have to worry about anything else.

Now most Midgard functionality still resides in PHP space, but Java is already being used much for data migration and application integration. Piotras is also working a new GNOME desktop application, Magni that can manage Midgard's data repository.

Updated: We're trying to highlight some of this on the new Midgard 1.8 release page. If you have any ideas on how to communicate Midgard's uniqueness better, drop me a line.

Page styling and Datamanager schemas

Posted on 2006-08-15 08:13:31 UTC to . 0 comments.

Most Midgard components use a tool called Datamanager to abstract data storage and content editing. With Datamanager, site builders can define multiple schemas to be used at different areas or for different page types, each with a different set of content and editing fields.

With some recent commits coming to the next MidCOM 2.6 beta, Datamanager schemas can also be used for controlling the site layout. Each schema can have its own name, and this can be used for two things:

Defining page types

Schema can be chosen either on page creation, or with slight modifications, when editing the page. You can have multiple schemas available in same folder, each of them with a unique schema name.

With the new Metadata Service in MidCOM 2.6, the schema name is now available through an API, which means you can easily set the class of the HTML body element or some div with it:

<body class="<?php echo $_MIDCOM->metadata->get_page_class(); ?>">

After this changing layouts per schema is a simple CSS exercise.

Changing style templates

In addition to changing HTML classes used for CSS purposes, schema names can also be used automatically in defining which MidCOM style templates to use for the component's output.

When a component registers its Datamanager schema name to MidCOM, the name will also be automatically appended into the style path used (unless it is default).

This means that if my site uses style called /bergie-2006, and I create a page with schema blogentry, MidCOM will automatically look if a style with path /bergie-2006/blogentry exists and use that instead of the default style for displaying component output elements like <(feeds)> and <(archive-list-start)>.

Registering the schema name

Registering the name of schema used by component is optional, and so far only the three most common CMS components: net.nehmer.static, net.nehmer.blog and net.nemein.calendar utilize it. I'll try to get support for this into most of the components soon, though, as it is a simple one-liner to register this information with the metadata service:

$_MIDCOM->bind_view_to_object($this->_article, $this->_datamanager->schema->name);

(this example is from net.nehmer.static view handler class)

Midgard needs a Jabber plan

Posted on 2006-08-15 08:39:11 UTC to . 0 comments.

I love the things LiveJournal is doing with Jabber:

  • Posting to LiveJournal: (Partly done) You can post to your LiveJournal account using Jabber. Just look for Frank the robot goat on your buddy list. Fleshing this out more later. Also, we'll let you post to your LiveJournal from a non-LJ JID in the future. That means you can post from GMail/GTalk, once you prove your gmail address (or any other Jabber address) is yours.

  • Alerts: (Mostly done, not enabled) Get alerts of new posts, comments, replies (anything you want to subscribe to) over Jabber. Even if you're using a Jabber address that isn't our Jabber. Want IM alerts to GTalk/GMail? We want you to too.

Lots of good ideas in there. With Google Talk, LiveJournal, Gizmo Project and others gathering behind the Jabber protocol, it looks like it will become the default instant messaging system.

In addition to becoming popular, Jabber has other advantages: it is open, standardized, easy to integrate with (even with PHP), and reasonably easy to secure. This all means we should definitely plan how to integrate instant messaging with the Midgard framework.

Lots of plumbing is already in place, including a buddy list manager and a centralized notification service. We just needs to ensure these communicate with the Jabber world.

Return of the Moblog

Posted on 2006-08-18 16:17:57 UTC to . 0 comments.

My moblog hasn't been updated since GUADEC last July, and some relatives have already been asking about it. The reason why I haven't updated is that I switched to the Nokia N90 camera phone, and the email format it uses makes Mail_mimeDecode fail.

We encountered this earlier on the Death Monkey trip, where Rambo debugged it and committed a workaround to the org.openpsa.mail library. Now I've installed the same workaround to my blog and parsing the emails works again. Looking forward to being able to moblog again!

My moblog

Note: Would be great if Rambo could get the same fix into the PEAR package as well.

Plazes is now mobile

Posted on 2006-08-19 07:01:00 UTC to . 0 comments.

Plazes is a service for connecting wireless access points into physical locations. Previously this has only worked with Wi-FI networks, but now they have launched a mobile version that uses the cell phone network base station identifiers for the same thing.

I'm using Plazes as a way to collect locations I've been in to provide position metadata into all information I produce. This like: Where was this blog posted? What photos were taken near that photo? This data is then fed to the Midgard positioning service which does all the necessary calculations and metadata handling.

Having a mobile version of Plazes that doesn't require me to carry a computer or find a Wi-Fi hotspot is cool. It means I don't need to carry a GPS receiver to accurately (within cell phone base station area) position photos I take. It also means I have an easy way of querying the Plazes database for open Wi-Fi access points on the go.

Good work, Plazes team!

Seeking Wi-Fi access points with the Mobile Plazer

In the other news, Geominder uses the cell phone base station identifiers for connecting TODO items into different locations.

Updated 2006-08-20: Andrew Turner wrote:

Geolocation by mobile without a GPS system is key to Location-Based technologies to take off and be generally accepted. Plazes is leading the edge of the community-based geolocated networks. Now time to build some services on top of their framework.

Fully agreed. Plazes position is already fully integrated into the Midgard Framework making it easy to build position-based web services.

We need public access to Geodata in Europe

Posted on 2006-08-20 19:49:32 UTC to . 0 comments.

Public Geo Data is sending an open letter to the European council of environment ministers to request that the access to geographical databases would be opened to the public. While some data is open and available, we're still far behind the US in this issue.

If we want to support European tourism and software industries, we must open the geographical databases. This would enable new types of innovative services and business models to emerge.

Vote for Public Maps - Reject INSPIRE!

Via Mapping Hacks.

Fifteen years of Linux

Posted on 2006-08-27 08:24:20 UTC to . 0 comments.

Two days and fifteen years ago, Linus Torvalds posted a message on comp.os.minix:

I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things).

The operating system he was talking about became Linux, a major operating system that now runs on everything from cell phones to supercomputers.

Computer Science department of the University of Helsinki (where Linux was invented), and the Finnish Centre for Open Source Software will be celebrating the event on September 4th.

A Motorcycle Update

Posted on 2006-08-28 21:13:44 UTC to . 0 comments.

While I was riding with the Monkeys, my Triumph Legend TT left a friend on the road with a broken engine. As the number of motorcycles in Finland has grown drastically in last few years, but the number of repair shops hasn't, the bike has since been waiting for diagnosis.

Today the garage finally was able to open the engine and discover the issue. After 80,000 kilometers, the bearings of the central cylinder had failed, fouling the crankshaft. Now we'll have to wait for new parts before the engine can be fixed and rebuilt.

In any case, I'm relieved to hear of progress in the case. Hopefully we can again head for new adventures soon...

My Triumph on the Georgian Military Highway

What has surprised me, though, is how little spending the summer bikeless has stressed me. Probably the 5,000 kilometers on a moped had something to do with it, as did the company going slightly greener by subsidizing public transport...

Updated 2006-09-03: Got some bad news about the bike. If the crankshaft has to be replaced, it may cost thousands of Euros to get running. In that case buying an used Triumph from Germany would be already cheaper.

New login screen for Midgard

Posted on 2006-08-29 17:30:04 UTC to . 0 comments.

I've just committed the new login screen styling for Midgard CMS into the SVN repository.

MidCOM 2.6 login screen

The login screen was designed by Piippunaakka with CSS by Joonas Bergius. It will ship in MidCOM 2.6.0beta3 for testing purposes, and will be bundled into Midgard 1.8 final release.

Going underground

Posted on 2006-08-31 21:45:50 UTC to . 0 comments.

The latest blog meme is listing metro lines you've used. Here's mine, although Tbilisi Metro wasn't listed:

helsinki.giflondon-1.gifstockholm.gifwarsaw.gifberlin-u.gifparis.gifatlanta.gifcopenhagen.gifmadrid.gifprague.gifsan-francisco.gifhanover.gifberlin-u.gifberlin-s.gifboston.gifst-petersburg.gifmoscow.gifkiev.gifchicago-l.gifchicago.gifrome.gifsao-paulo.gifbarcelona.gifbarcelona-s.gif

Via Jordi Mallach and Luis Villa.

Regarding Tbilisi Metro, I have to note that traveling on it is not exactly easy. In past times the station maps had both Cyrillic and Georgian alphabets, but now only Georgian remains. Take a look at the characters before you go!

Clearing the photo backlog

Posted on 2006-09-02 23:14:01 UTC to . 0 comments.

I've again gotten quite backlogged with publishing photos from various adventures. Today I fortunately had time to push tree sets on Flickr:

231727544_dc4c74b75f_s.jpg 231731916_b8f743631d_s.jpg 231730253_a10d2e32ea_s.jpg 231733992_a2334a4b18_s.jpg

Midgard developer meeting in Komorniki, Poland

231776020_7d43c9318d_s.jpg 231777566_1d9759459b_s.jpg 231779185_0d00c0c1dc_s.jpg 231780456_c13f4046d3_s.jpg

GUADEC 2006 in Vilanova i Geltru, Catalonia

231692442_04d0bfd899_s.jpg 231702452_7ac1d71061_s.jpg 231705665_03dee57ef3_s.jpg 231709489_b921d8c745_s.jpg

Death Monkey 2006 rally from Helsinki to Gibraltar

Enjoy!

Three points for creating a successful free software project

Posted on 2006-09-04 15:52:33 UTC to . 0 comments.

This should be obvious to most dealing with open source, but the example of Linux and others outlines three points for creating a successful free software project:

  1. First version must already do something useful
  2. Licensing must allow people to do whatever they wish with it
  3. Maintainer must accept patches, and it must be easy to see how the code is changing

Firefox extension for Microformat utilization

Posted on 2006-09-05 13:45:58 UTC to . 0 comments.

I'm now running Tails, a Firefox extension that recognizes and handles Microformats embedded in web pages. This means that if I browse to a compliant event calendar I can add an event there to my calendar with single click, or add contacts from a web page into my address book.

It seems to like at least the Microformats embedded in various Midgard applications. For example, OpenPsa Calendar:

Tails displaying hCalendar entries in OpenPsa Calendar

and OpenPsa Contacts:

Tails displaying hCars entries in OpenPsa Contacts

The Tails extension is also scriptable, allowing developers to build their own actions to be made available for Microformats. For example, if I wanted my browser to support adding events directly to OpenPsa Calendar instead of the desktop calendar, I could write a Tails Script for it.

I've been a Microformats supporter for a while already. However, tools like this can really increase the adoption rates for the standard as more and more people will find it useful.

Updated: There is a Midgard documentation page about Microformat usage in MidCOM.

What should happen after OSCOM?

Posted on 2006-09-05 17:35:26 UTC to . 0 comments.

OSCOM

OSCOM, the central organization for Open Source Content Management has been having organizational problems for last couple of years. Latest setback was Sandro Groganz setting down today from being the OSCOM chairman.

We founded the organization originally for two purposes:

  1. Fostering cooperation and standardization between OS CMS projects
  2. Bringing publicity to the whole OS CMS scene, instead of to the hundreds of splintered projects

And the problem clearly has been that the point 2 has simply been too successful. Everybody in the Open Source CMS scene is simply too busy with client projects to participate, much less to organize.

I believe strongly that OSCOM was a good idea, and could still be, if it had a dedicated organizer employed to make the initiatives happen. But lacking that, we should definitely consider disbanding the organization and follow the good ideas Seth Gottlieb gave:

  • Get involved with some general content management organizations such as AIIM and CM Professionals.

  • Submit standards to existing standards bodies. For example there was a lot of open source input into the JCR standard.

  • Attend each others conferences. By attending another project's conference, an open source developer can get new ideas and also build professional relationships with other developers that he can potentially collaborate with on shared components.

  • Establish joint projects for share components.

Will be interesting to see what happens. There are lots of promising communities, like Microformats dealing with some parts of CMS-related standardization. A domain-specific cross-project roof organization like OSCOM could also be made to work, as the example of Freedesktop.org has shown us.

In any case, I had a good time with OSCOM. It is a shame to see its demise.

New component selection view for MidCOM

Posted on 2006-09-11 14:01:41 UTC to . 0 comments.

MidCOM, the component framework used in Midgard CMS is rapidly approaching 2.6 stable, and a lot of minor improvements are trickling in. These include a drag-and-drop way to reorganize navigation items and a new view listing MidCOM contributors.

We had a mini Midgard developer meeting over the weekend, with sauna and an archipelago cruise. In addition to lots of talk about multilingual sites and replication, this also resulted in a slightly clarified folder creation screen:

MidCOM 2.6 folder creation screen

The main point in this change is to make it easier to understand the different components available, and to tell the admin that more components can be installed easily.

Once the Tango icons are properly packaged, we will also include nice descriptive icons on the various components into the view.

Updated: Here is a screenshot of the credits screen. The data there is generated from the manifest files of installed components, so it is the same as used on the PEAR packages:

MidCOM 2.6 credits screen

Autumn cleaning for your contacts database

Posted on 2006-09-12 16:14:42 UTC to . 0 comments.

I've just uploaded Rambo's latest improvement to OpenPsa Contacts: The ability to find and merge duplicate contact persons.

OpenPsa Contacts merge tool

There are several ways you might end up having duplicates in the database, especially if you have been importing contacts from multiple sources like Excel registries and vCards.

The OpenPsa duplicate checker runs an analysis of the database every night and marks possible duplicates as such. You can then decide what to do about them, either merging the duplicates or keeping both. Dependencies like calendar events and buddy list markings are handled automatically.

Grab the package from our PEAR repository to start the autumn cleaning!

New feed aggregator for Midgard

Posted on 2006-09-13 23:44:14 UTC to . 0 comments.

Midgard CMS has had an integrated RSS and Atom aggregator for several years. It has been used for both bringing simple news feeds to portal sites, and for Planet-like large-scale blog aggregation.

For MidCOM 2.6 I decided to overhaul the system, and implement some new ideas. Now instead of being cached by Magpie RSS, the news items are stored locally into the Midgard database and displayed by the regular news-handling component. This gives flexibility in presentation and better performance.

Feed management view

Feeds are now refreshed from hourly MidCOM cron, or manually. For Planet usage I'm also planning to add support for refreshing feeds based on weblog pings.

To get started with the aggregator, install both net.nehmer.blog and net.nemein.rss, change the Enable creating news items from remote RSS and Atom feeds setting in net.nehmer.blog configuration screen and start subscribing to feeds.

Today is the OneWebDay

Posted on 2006-09-22 11:40:18 UTC to . 0 comments.

September 22nd is the OneWebDay. It is a day when users of the World Wide Web are encouraged to show how the Internet affects their lives. The purpose of the event is to globally celebrate online life.

One Web Day

While there are no OneWebDay events in Helsinki, I've noted the day by publishing a bunch of new packages for Midgard CMS, a tool designed to improve the web.

More information about OneWebDay in http://www.onewebday.org/

Top ten Unix shell commands

Posted on 2006-09-23 13:17:49 UTC to . 0 comments.

Continuing with another blog meme, here is the list of top ten Unix shell commands from my MacBook development box

Octant:~ bergie$ history|awk '{print $2}'|awk 'BEGIN {FS="|"} {print $1}'|sort|uniq -c | sort -nr |head -n 10
 138 svn
  98 cd
  37 sudo
  35 phing
  34 ls
  20 rm
  19 chmod
  18 vi
  11 php
   8 mv

Midgard development ranks quite high on the list, especially usage of the MidCOM SVN repository, and the Phing build system, used for packaging components.

No idea why the history lists so few runs of them, though. Maybe OS X clears bash history on reboot?

Optimizing the latest MidCOM

Posted on 2006-09-25 23:07:36 UTC to . 0 comments.

I drove from Turku to Helsinki early in the morning with a Land Rover that didn't have headlights. Since then have been hunting performance issues in latest beta of MidCOM - the component architecture used by Midgard CMS.

MidCOM is a powerful PHP framework providing functionalities like data abstraction, access control lists, templating and revision control. Unfortunately with such power also comes the risk of developers losing track of how much data is getting queried and used in their application.

In this case I was working with a customer that has over two hundred thousand articles in their Midgard installation - the same one Piotras talked about earlier. Midgard generally is considered as a mid-range CMS, and so most sites have a lot less data than this one, but still higher-end performance is also important.

So after turning off caches and turned all the debugging output up to maximum, Piotras and I started going over the logs and finding places where queries were being duplicated needlessly. Attention quickly shifted to the usual suspects, ACL and navigational abstraction, with quite impressive results:

Sep 25th Sep 26th
2pm 5pm 9pm 4pm
Log lines 12,501 1,377 738 387
SELECTs ~5,000 1,385 642 542
Time 32s 3s 2s <1s

Now, the end result of 640 queries per page view may sound like a lot, but I have to note that the particular page we're viewing includes some 150-200 content objects, each with metadata, ACLs and parameters.

In a regular situation on a site of this scale we would obviously turn down the logging level, deploy memcached for ACL caching, and possibly run a Squid reverse proxy. With those set up, Midgard really flies.

Now memcached is only being used for ACL and parent hierarchy caching, but in near future we may implement also things like NAP caching with it.

In the other news

Polish translation of MidCOM 2.6 is just off the press, courtesy of Solt:

MidCOM 2.6 metadata editor in polish

In addition to user interface localization, I've been working on multilingual content in MidCOM. At the moment the situation looks really promising...

Exploring the paths of Wikipedia with Pathway

Posted on 2006-09-27 07:32:31 UTC to . 0 comments.

Pathway is an OS X desktop client for the Wikipedia, the free encyclopedia. It keeps track of relations between pages you read using a handy network map, and makes them searchable via Spotlight. It is also able to save the researched network of pages for later use.

Researching with Pathway

Via TUAW.

On a related note: While there are all these applications available make the Mac OS X platform cool, I would still wish Apple would become a more responsible company by producing greener products.

Midgard's new tagging library

Posted on 2006-10-04 22:23:01 UTC to . 0 comments.

I'm spending some time this week on a specification workshop in the countryside. Mostly we're looking at integration points between Midgard, Gforge and Doxygen to provide a complete open source project collaboration environment.

However, as a side result Midgard also has now a new tagging library: net.nemein.tag. This library is aimed at centralizing how tags are handled in various MidCOM components.

Adding tagging interface is as simple as including the following into a Datamanager 2 schema:

'tags' => Array
(
    'title' => 'tags',
    'type' => 'tags',
    'widget' => 'text',
),

Tags may be entered into this field, separated by spaces. In addition to regular simple tags, like midgard, the tagging library also supports multi-word tags surrounded by quotes, like "This is a long tag".

Another feature with tags in the concept of contexts. Context is something that describes the tag you apply. For example, if you are tagging a wiki page that describes a new feature in Midgard 1.8, you might tag it as "new-feature:Midgard 1.8". This way the site builder knows more about the relation and can display it differently.

Displaying tags is reasonably easy. For example, Midgard Wiki displays tags on a page in the following way:

// List tags used in this wiki page    
$tags_by_context = net_nemein_tag_handler::get_object_tags_by_contexts($request_data['wikipage']);
if (count($tags_by_context) > 0)
{
    echo "<dl class=\"tags\">\n";
    foreach ($tags_by_context as $context => $tags)
    {
        if (!$context)
        {
            $context = $_MIDCOM->i18n->get_string('tagged', 'net.nemein.tag');
        }
        echo "    <dt>{$context}</dt>\n";
        foreach ($tags as $tag => $url)
        {
            echo "        <dd class=\"tag\">{$tag}</dd>\n";
        }
    }
    echo "</dl>\n";
}

Talk about response times

Posted on 2006-10-05 21:08:11 UTC to . 0 comments.

net.nemein.ping was the original experimentation ground for MidCOM's content update notifications support. However, it had since fallen into disuse as it waited re-implementation using MidCOM's at service to ensure pings are run asynchronously.

Then I saw this blog post in my RSS reader:

Today we're launching the Google Blog Search Pinging Service, which is a way for individual bloggers and blog platform providers to inform us of content changes. Blogging providers who syndicate RSS/Atom/XML and want to be included in our Blog Search index can now ping us directly.

I immediately saw the opportunity to refactor some old code, and so now net.nemein.ping 1.0.0 is out and available. It supports several blog directories including Google and Technorati, and runs the pings in at service registered for next minute after an article is published or modified.

Note: Even thought Google announced their service, it doesn't seem to be working yet. From MidCOM's debug log:

Oct 05 21:57:13 [debug] net_nemein_ping_pinger::ping: Successfully pinged rpc.pingomatic.com
Oct 05 21:57:14 [debug] net_nemein_ping_pinger::ping: Successfully pinged rpc.technorati.com
Oct 05 21:57:15 [warn] net_nemein_ping_pinger::extended_ping: Error pinging blogsearch.google.com:\
5 Didn't receive 200 OK from remote server.\
(HTTP/1.0 404 Not Found)

Updated 2006-10-06: Google has now fixed their ping interface:

Oct 06 07:54:16 [debug] net_nemein_ping_pinger::extended_ping: Successfully pinged blogsearch.google.com

In somewhat related news, Alexander Schuster has just released beta release of Aegir 1.0.4, the first update to the legendary Aegir administrative interface of Midgard since July 2004. Cool!

Watching movies on the Nokia 770

Posted on 2006-10-19 21:21:08 UTC to . 0 comments.

I returned from a trip to Lapland and Russia today, and noticed that the battery of my Macbook had somehow died while I was away. Now the computer doesn't recognize it at all.

This means I have no possibilities for using the laptop while traveling to Turku for the weekend and to Tampere next week for the OpenMind conference, unless the Mac store is able to replace the battery tomorrow morning.

Since the fate of the computer is uncertain I decided to secure at least some entertainment for the trips in form of watching movies on my Nokia 770. The conversion procedure from DVDs to the format supported by the tiny device is fairly easy using the HandBrake movie converter.

So far the results look quite promising:

Porco Rosso on the Nokia 770

Now what remains to be seen is how long the battery of the Nokia device lasts when watching movies.

Updated 2006-10-22: I watched the 30s classic aviation film Hell's Angels on a train ride from Helsinki to Turku yesterday. The movie was definitely watchable on the 770 screen, and the 2 hour trip used one fourth of the battery (as shown by the indicator).

Managing Changes in Collaborative Innovation Networks

Posted on 2006-10-22 14:42:00 UTC to . 0 comments.

I was one of the people interviewed for Jyrki Wahlstedt's essay Managing Changes in Collaborative Innovation Networks. It deals with how innovation networks like free software projects communicate:

As the project matures, things change. The initial ideas are accepted (otherwise there would be no project), and something has been built. That something has been downloadable for some time, and the software produced in project gets users. The number of users may be very large, for some projects in sourceforge.net, for instance, the number of downloads may be in hundreds of thousands during one day. This leads to a situation, in which defects and enhancement requests surface. When there is pressure to modify the software, change and add features, remove defects, it will be interesting to see, how change management works and is reflected in communication networks.

Midgard, like many other open source projects, is experiencing challenges with the communication infrastructure. We have several different, and partially overlapping channels for communications and change management. This leads to confusion and duplicated information, and is definitely an area where we could do better,

How much is your Midgard worth?

Posted on 2006-10-23 20:13:35 UTC to . 0 comments.

Inspired by the PHP Eats Rails for Breakfast report, I've registered Midgard CMS at Ohloh, a service tracking code contributions in various free software projects.

Even though it only covers the post-filesystem transition MidCOM and not whole Midgard, the Midgard Ohloh report has interesting things to tell:

  • Codebase: 235,264 lines of code
  • Estimated effort to produce: 62 man years
  • Cost to produce: 3,4 million USD
  • Programming languages:
    • PHP: 61%
    • Javascript: 27%
    • HTML: 10%

We'll have to see how the numbers change once I add the main Midgard repository with its accumulated history since 1999.

Tobias Schlitt has more detailed analysis of a MidCOM competitor, eZ components on Ohloh.

Midgard 2 time

Posted on 2006-10-24 13:09:43 UTC to . 0 comments.

Midgard 1.8.0 is out, and so according to the roadmap we can finally start getting rid of legacy Midgard1 features to get into the nice, clean slate of Midgard2.

First casualty of the cleanups is the old MidgardArticle object, which Piotras just removed with the following commit message:

Midgard community says bye.
We spent so long time together.

From now on, MgdSchema and Query Builder will be the only supported ways to access data in Midgard. About time, too:

Midgard is an IT project so we can expect delays. Seven years sounds rather long, but Rome wasn't built in a day and conquerring the world is even more difficult.

Maemo is migrating to Midgard

Posted on 2006-10-24 14:42:12 UTC to . 0 comments.

Maemo, the open source mobile device platform developed by Nokia is switching its web infrastructure to Midgard CMS. Ferenc Szekely writes:

We have conducted a study on migrating/integrating all existing services of maemo.org with the Midgard CMS framework. Based on the study we have decided to go ahead and setup the new environment.

The highlights of the project are:

  • centralized account management using Garage
  • on-line documentation authoring using Midgard
  • proper and robust access control
  • automated API generating/publishing
  • database based Application Catalogue ;)

Nemein is participating in the project as the Midgard expert organization.

Updated 2006-10-26: The project is now well under way. The Midgard layout templates for Maemo and original specifications are available.

Updated 2006-10-29: Tuomas Kuosmanen has a good summary of the project too.

View Source

Posted on 2006-10-29 21:11:05 UTC to . 0 comments.

I love the idea of including a "View Source" key into the OLPC keyboard:

Having "the freedom to view the source" can seem very abstract, and having a "View Source" key makes this feature of the machines clear to the users. Imagine one of these kids visiting an Apple Store1 sometime in the future and innocently asking where the "View Source" key is. "Let you view the source? But that's our property, it belongs to us, you can't have it."

gnome.org will run Plone

Posted on 2006-10-30 17:57:36 UTC to . 0 comments.

The GNOME desktop community has been evaluating different CMS options since July. TikiWiki, Drupal and eZpublish were eliminated because of missing features, and the final was between Plone and Midgard CMS.

The reason for favoring Plone over Midgard was apparently the number of Python developers in the GNOME community over the number of PHP coders:

The reasons for choosing Plone rely more on people than code, since both tools could reach all the requirements with hacking and good will.

Of course, there have been strong opinions about this:

Please, please do not run GNOME.org on Plone. I cannot stress this enough. Not only is Plone remarkably slow (it brought a dual Pentium 3 to its knees), it's hard to hack on and hard to understand, it behaves more like a document management system than an exciting website and is unstable to boot.

From what I've seen, Plone is a quite nice system. But the big question is whether you want the Zope infrastructure or something else.

In any case, while I'm a bit disappointed on the decision, I will watch the deployment project with interest. Especially the concept of using PO files for site content localization is something that could be worthwhile to implement if the process actually works as well as the GNOME i18n guys claim.

Contact management in semantic web

Posted on 2006-10-30 18:38:03 UTC to . 0 comments.

One big idea we've had with OpenPsa has been supporting various standards and Microformats to make the user experience richer.

Today I finally had the chance to take the first step at this direction by adding web site probing support into the OpenPsa Contacts CRM component. Now when you enter a new person or company it does:

  • Check if the contact has a homepage set
  • Register an "at" entry for Midgard
  • Next minute the homepage will be fetched
  • If there is a <link /> to RSS feed that feed will be fetched
  • If the feed includes ICBM metadata the position will be stored accordingly
  • If the feed includes GeoRSS info then the a subscription will be registered
  • ...and at every subscription run the person's position will be updated according to the time of latest RSS entry

End result is that if the contact has a geocoded website (like many do nowadays), the position will be available for the CRM system.

It is of course only the first step. When finally I upgrade my local development box to run PHP5 I can start reading Microformats in via hKit and do cool things like automatically populating employees and contact information.

Be liberal with input, strict with output

Posted on 2006-10-30 22:28:41 UTC to . 0 comments.

Midgard's support for GeoRSS is solidifying with the auto-probing system in OpenPsa and the latest release of org.routamc.positioning.

After a brief consultation with the Andrew Turner from GeoClue I decided to skip the confusing jungle of GeoRSS specifications and follow the good old principle of being liberal with input, strict with output.

This means that now Midgard can import position data from HTML ICBM meta tags, W3C Geo RSS and Simple GeoRSS formats but only outputs it in GeoRSS Simple format. And here's one of the results:

DeathMonkey's GeoRSS-driven position map

Note: This change of approach also means that Midgard can communicate with GeoPress quite easily.

The trip to Murmansk

Posted on 2006-11-02 21:35:01 UTC to . 0 comments.

Pjotr has just posted the video from our Murmansk trip to Google Video:

Pictures will hit Flickr a bit later.

Re-posted 2006-11-02: Better quality video now available.

Finding resources automatically in OpenPsa

Posted on 2006-11-07 08:08:59 UTC to . 0 comments.

We rolled the initial Project Broker user interface into OpenPsa 2 with Rambo yesterday. Since we were on schedule we went to work in the countryside where we wouldn't be disturbed. Fireplace, a bit of snow, and no Internet connection make it a perfect place for a coding sprint.

Ingels covered in early snow

The idea of the Project Broker is to be a DBE service that automatically looks for potential subcontractors in the Fada P2P network. Matching criteria include competence tags, schedule and endorsements given by other members of the network. In addition to DBE, the same searches also work inside a single OpenPsa installation enabling automatic scheduling and resourcing of tasks:

Selecting project schedule from available time slots

Another change we rolled in was a reworked hour reporting system to the OpenPsa front page. There are now two ways to report hours: by manually entering them using a composite widget, or by letting OpenPsa keep the time for you selecting what you are working on:

Hour reporting on the front page

Court rules against Helsinki's disastrous Malmi plans

Posted on 2006-11-07 15:49:27 UTC to . 0 comments.

The Supreme Administrative Court has ruled that Lord Mayor Jussi Pajunen was disqualified to decide the fate of the historic Helsinki-Malmi airport. Helsingin Sanomat reports:

Pajunen participated in the preparation of Helsinki's general land use plan 2002 in the Helsinki city council. At the same time he was also the president of the Malmin Nova company. The company had business in the Malmi shopping center. In addition the company was preparing an enlargement of the shopping center synchronized with the land use plan.

... The Administrative Court sees that the company's fortunes were closely tied to how the land of the Malmi Airport was utilized.

The part on destroying the Helsinki-Malmi airport has now been removed from the land use plan. Another win for The Friends of Malmi Airport Society!

Landing to Helsinki-Malmi, March 2005

Updated 2006-11-08: I have to agree with Phil that Mr. Pajunen's behavior is definitely corruption.

Trying out Maemo Blog

Posted on 2006-11-08 12:07:29 UTC to . 0 comments.

As reported by Inz, Maemo Blog seems to work properly with Midgard CMS now. Cool!

<

p> maemo-blog-test-small.jpg

Updated 11:09Z: Edited via MarsEdit as Maemo Blog doesn't do links and categories yet. Hopefully Tigert's UI sketches get implemented soon.

State of the art

Posted on 2006-11-08 22:48:19 UTC to . 0 comments.

I've today upgraded the Midgard development environment on my MacBook to a more reasonable software setup:

  • Midgard 1.8
  • PHP 5.1
  • MySQL 5
  • Apache 2.2

So far things look quite good. I found and fixed some PHP5-related notices in MidCOM, but apart from those it runs really nicely.

This means I get to work on MultiLang and things like Microformat parsing. Midgard 1.8 may not be the jazzy thing, but at least it means my devel environment is trendy and not passé. :-)

Going to LatinoWare

Posted on 2006-11-13 16:56:46 UTC to . 0 comments.

I will be flying to Foz do Iguacu tomorrow for the LatinoWare 2006 conference. My talk on Digital Business Ecosystem is scheduled at 2pm on thursday the 16th.

As I've already given two earlier talks on DBE in Brazil, I will this time skip most of the politics and focus on how DBE can make everybody in the business of free software happier.

In the other news, here is the first look at the new version of the Maemo application catalog:

Maemo app catalog screenshot

Notable changes include switching to a more easily browse-able format from the old giant wiki page, using the new single-click install format and automatically linking all wiki pages tagged with application's name to the application page.

Updated 2006-11-15: My talk has been rescheduled to 3pm.

British RFID passports cracked

Posted on 2006-11-17 20:20:42 UTC to . 0 comments.

Guardian reports that the British RFID passports are now cracked, meaning that their information can be remotely read, and the passport copied:

"If you can read the chip, then you can clone it," he says. "You could use this to clone a passport that would exploit the system to illegally enter another country."

Finnish e-Passport

I unfortunately was forced to get this new "mark of the beast" last month when my previous 10 year passport had again been mutilated by some border guards, breaking off the information page. So now I lost couple years of passport validity (RFID passports are valid only for 5 years), and have a passport that most likely contains similar security holes as the passports used in USA, UK, Germany and The Netherlands.

Until the silly idea that EU for some reason needs remotely readable passports passes I'll keep mine in a RFID blocking passport case.

Update 2006-11-20: Comments from an Estonian correspondent

This arrived via email as the blog entry had already been locked from comments. The author wishes to remain anonymous.

I wouldn't call the referred attack cracking the passport. If you read the specs it's easy to see that the security measures used aren't meant to deter copying the passports. The security experts are breaking through an open door. (this is just my opinion, but it somewhat looks as a desperate way to gather attention to themselver and not the issues) The basic access control (BAC) was meant to protect against skimming (i.e. finding out someones identity without their consent) and eavesdropping. It doesn't take a security guru to figure out that the 35 or so bits of entropy in the encryption key (document no, birthdate, expiry date) thats directly used for session encryption isn't very secure against bruteforcing. Fortunately eavesdropping from a distance of more than a couple of meters takes some pretty complicated and bulky equipment. When fingerprints are added to passports an advanced extend access control comes into use, mandating strong session encryption and PKI certified passport readers. Against skimming the 35 bits is good enough. It's extremely unlikely that someone could get hold of your passport number, expiry date and birthdate and not find out your name at the same time. And if they do, there's not much else in the chip to constitute a privacy risk. That said, I would still be much happier if they had increased entropy by atleast 20 bits by incorporating the MRZ name line in the authentication key.

If copying is to be avoided, the spec has a provision for active authentication (AA) - i.e. a private key on the chip that is verified against a public key signed by document issuer. I don't know if Finland has implemented active authentication in their e-passports. England and Germany obvously have not, but I know for certain that Estonian e-passports will contain active authentication when we're going to start issuing them in the first half of next year.Even if your passport doesn't contain AA, you shouldn't worry too much about cloned passports, the new passports still contain other security measures so making a cloned passport is no easier now than it was before e-passports. On the contrary, e-passports most likely contain new revised security measures making them harder to clone.

Anyway, I'm just trying to clear up some FUD about the e-passports. Whether wirelessly readable passports are useful, practical or necessary is a whole another debate that I'd rather not go into. But I hope that you atleast see that they're not horribly insecure.

Thanks for the comments! This definitely helps to clarify the issue.

It also has to be noted that Electronic Frontier Finland was satisfied with the security clarifications they received from interior ministry in October.

Digital Business Ecosystem in LatinoWare 2006

Posted on 2006-11-17 22:40:59 UTC to . 0 comments.

Like last year and FISL, I'm again representing DBE in LatinoWare. My talk was yesterday, and this time I focused a bit more on the practical applications of DBE instead of the politics.

Speaking in LatinoWare, photo by Fernando da Rosa Morena

My slides are now available in PDF format (6MB). I also have most of the talk in cell phone video format that I will try to process and YouTube at some point.

After the talk I've been mostly hanging out in the conference cafeteria, discussing free software with other speakers and participants.

The conference is held in the technology center of Itaipu, world's largest hydroelectric plant. On thursday evening we went to see the light show on the massive dam wall, and after that to a Open Bar student party.

Lights of the Itaipu dam

Friday morning, slightly hung over, we crossed the Friendship Bridge to Ciudad del Este, Paraguay. The city had the strongly commercialized feeling of a border town, closely resembling Vyborg for example. But that was quickly forgotten by getting to try a motorcycle taxi on the way back.

Updated 2006-11-20: Dave Neary has a good write-up on the conference.

Nokia 770 navigation kit

Posted on 2006-11-20 17:34:05 UTC to . 0 comments.

Navicore Personal on 770, image from Nokia.com Nokia has released a Navigation kit for 770, providing GPS navigation capabilities to this Linux device. The navigation software used is Navicore Personal which application requires Tablet OS 2006. The announcement says:

One of the most wanted features for the Nokia 770 Internet Tablet has been navigation. Now we have good news for those of you who have been waiting for it. The Navigation Kit for Nokia 770 is now available for purchase through nokia.com, now with free shipping.

Featuring Navicore Personal 2007 Europe software, the Navigation Kit helps you in finding destinations and interesting locations conveniently. While traveling, you can easily search for information on your destinations from the web using your Nokia 770.

No comments on this 199 EUR package on Planet Maemo yet. I'll try to get hold of the package when back in Finland in order to review it and study compatibility options with the GeoClue stuff we're working on.

Hopefully the availability of a real navigation package will not hurt the promising Maemo Mapper project, as having a free alternative is important.

Updated 2006-11-27: Navigation kit review by pycage, via Andrew Turner.

Solving logistics of Mamona

Posted on 2006-11-20 21:46:20 UTC to . 0 comments.

I was discussing this IT problem at ESEEI today:

Mamona, or Castor oil plant is an oil-producing plant that can be grown in relatively dry areas. Farmers of dry areas in the state of Paraná, Brazil are generally relatively poor. Petrobras has a process where Mamona seeds can be used to produce biodiesel fuel.

The IT problem related to this is that the farmers in poor areas that plant Mamona are not very well connected, and so it is difficult for Petrobras to know how many crops have been planted, and the farmers to know when and where to deliver their produce.

A farm in Paraná, Brazil

A quick solution would be something like the following:

Petrobras could build a simple web-based database of Mamona producers, collection points and logistical companies using a Geospatial Content Management System like Midgard. Here farmers would be guided through a process of registering their farm, positioning it on a Google Map, and reporting the number of their planted crops.

Since the farmers do not have IT infrastructure available, Petrobras could distribute a set of Nokia 770 Internet Tablets and GPRS-enabled cell phones for them. Compared to a regular PC, the 770 has advantages of relatively low cost, low power consumption, support for using cell phone network for connectivity and support for any regular Nokia phone charger, including solar and hand cranked chargers. Since the 770 platform is open the software setup could also be tailored for the specific needs of the Mamona program.

Map browsing on Nokia 770, photo by Tuomas Kuosmanen

When a Mamona harvest happens the farmers would again log into the website and report the number of crops produced. This information would be produced as a GeoRSS feed to the logistical companies whose 770s could automatically find loads to pick up from their vicinity. The feed would contain the farmer's contact information so that they could contact the farmer, and since it is geotagged would also automatically appear as a Point of Interest in the 770 map application. Farmers could similarly get a feed of nearby logistical companies.

Clicking on a POI the logistics company would be directed to the website where they could make the agreement on where to deliver the stock.

This way Petrobras would constantly know how much is being produced and where, farmers would know who can carry their goods to the refineries, and logistics companies could monitor new available loads.

The setup would have several advantages:

  • Software required for this solution would not be complex to make
  • Fully open, and free software environment could be used, including Maemo and GeoClue
  • Reliance on open standards like HTTP and GeoRSS make future integration easy
  • HTTP makes the system also easy to secure via regular SSL encryption
  • There is good knowledge of the Nokia 770 platform in Brazil already
  • Only cell phone network would be needed, and the system would work also in areas where electricity is not easily available
  • Most or all of the deployment could be handled using local IT resources
  • Equipment needed is relatively inexpensive. At retail prices the whole stack per farm costs about 500 USD, but Petrobras could most likely get a lot better deal

Disclaimer: I'm not sure if this would really work in the Brazilian reality, but the thought play was definitely interesting.

Updated 2007-01-10: A bicycle-powered charger, as shown by Motorola could help this kind of deployments in rural areas.

FON for free in Finland

Posted on 2006-11-27 18:38:04 UTC to . 0 comments.

Join the FON movement!

The FON WiFi community is now offering free Fonera access points in Finland. FON allows you to share internet access with all other community members:

FON is the largest WiFi community in the world. Our members share their wireless Internet access at home and, in return, enjoy free WiFi wherever they find another Fonero's Access Point.

It all started as a simple idea. Why should you pay for Internet access on the go when you have already paid for it at home? Exactly, you shouldn't. So we decided to help create a community of people who get more out of their connection through sharing.

The concept sounds very promising. I've already ordered my access point, so later on this network will be part of the movement.

Updated 2006-11-29: There is a FON-compatible autologin applet for GNOME that might be a useful thing to port to Maemo. This would be good not only for FON but also for other WiFi networks that require a web-based login like TeliaSonera HomeRun that we use.

Also, FON and Plazes are planning to collaborate. The ideas sound interesting...

When Stefan and I were first thinking about Plazes it was clear to us, that networks are social entities. That people being connected to the same LAN or Hotspot not only share a common geography at a point in time but most likely also similar interests and ideas. Or put differently: A network is more than access, it´s a cristallisation point for sociality. (Check out Project Placesite which pretty much does what we initially came up with.)

Democracy Player brings YouTube to desktop

Posted on 2006-11-29 18:06:27 UTC to . 0 comments.

I've just upgraded to the latest Democracy Player "Internet TV" version:

It's pretty simple. You get a better internet video experience with Democracy Player because you can do more and you can do it more easily. Some people call it a 'TiVo for the internet' or a 'Firefox for videos'.

Democracy Player is free, open source, and built by a non-profit organization. Our goal isn't to make money off of you. Our goal is to give you the best possible video experience.

In addition to being able to subscribe to PodCasts, it can also perform searches on YouTube and Google Video, and subscribe to the search results. This way I get automatically all new Haidong Gumdo videos to my desktop for example.

YouTube search with the Democracy Player

Now, if only it was also available for my 770...

Updated: Lifehacker has a nice short review on Democracy Player.

What is happening in MidCOM 2.7

Posted on 2006-12-07 15:03:24 UTC to . 0 comments.

MidCOM 2.6.0 has been out for a while, with 2.6.1 scheduled for today. While that branch has now been stabilized for bug fixes and small tweaks only, there is work going on in the SVN trunk, or what is to become MidCOM 2.7.

Here's a quick list of what has happened so far:

To summarize, 2.7 is much faster than 2.6 and handles its metadata and multilingual content much better. It also requires Midgard 1.8.1, due to be released soon.

Slight pause in development

Posted on 2006-12-14 10:57:14 UTC to . 0 comments.

The hard drive of my MacBook died today, meaning that I will be without a development box for at least some days.

In the meanwhile my 770 will act as the main computer making me at least available via Jabber. Will be interesting experiment on the capabilities of the little handheld.

Accordingly, this entry was written with Maemo Blog. Time to buy a bluetooth keyboard, I suppose...

Updated 2006-12-20: I got my Mac back today with a fresh hard drive. Time to start the long re-install process...

Midgard in 2007: the year of the web developer

Posted on 2006-12-28 09:24:07 UTC to . 0 comments.

2006 is about to end and the blogosphere is filling up with wish lists and plans for the coming year. Before I go to Saint Petersburg for the new year celebrations I wanted to write something about how I see 2007 for the Midgard CMS project.

Software-wise, 2005 and 2006 have been good years for Midgard. MidCOM established itself as the default way of building things and became a lot faster and user-friendly. Developers got cool new tools like Query Builder, Collector and MgdSchema. We also integrated with external packages like Squid for content caching, Lucene for full-text search and Funambol for mobile device synchronization. Geographic awareness and Microformats integration also add interesting possibilities to the system.

However, community-wise I feel we also lost something. These new functionalities have mostly been gained at the expense of the installation becoming more difficult and the system harder to understand. And as the learning curve becomes steeper, new users and developers may pick some less powerful CMS instead of Midgard as their choice.

In 2007 I think we should focus on this problem: Making Midgard more accessible to the normal web developer.

The way I see it, there are four areas to put effort into:

Installation. This is the part where we can make most impact. Currently Midgard installation is a difficult process that takes a lot of time even from a seasoned user of the software.

If we want to make it more "just running apt-get", we must rethink the whole database and site initialization concept. Datagard must go and be replaced with a PHP-CLI tool that is smart enough to probe and guess most details, and which will not only generate required configuration files, but also populate all data needed into the database.

Now Midgard's default install is geared for setting up a hosting server, and I believe this to be a faulty assumption. Instead of focusing on hosting setups as the easiest and initial install we should focus on single-organization setups. This means creating a sitegroup and an initial site there automatically instead of creating a Site Wizard host.

Templating. Midgard has a very powerful site templating system, but it is very difficult to understand for new people. Element inheritance, style inheritance, style-init elements, semiautomatic substyling, manual substyling and other concepts are difficult to "get". Similarly, the default contents of an element are difficult to get to.

To expose the full power of the templating system to developers we need to write a new kind of style editor for Midgard. The new style editor must work within the site context and tell the site builder what elements are available for customization and where.

Arttu already did some sketches for this new editor, so this might actually be reasonably quick to implement.

Once editing of style templates has been made easier, the next thing to expose to our users should be Datamanager schemas.

Demo. While Midgard will never be featured on demo sites like OpenSourceCMS, we would be able to run our own demo setup quite easily. A company like Nemein or Anykey could donate the needed server resources and we could set up a system where people could gain access to a Midgard setup that would be automatically cleaned at some interval.

As the replication system in Midgard matures we could even allow people to start building their site at the demo server and then copy the contents to their own install if they like the system.

Community resources. Now there is a serious disconnect between the community resources used by various Midgard subprojects. Midgard and Aegir use CVS while MidCOM uses Subversion. Midgard uses web-based forums while MidCOM has a mailing list. And bug tracking is spread all over Tigris and Gforge.

This is another thing we must consolidate in 2007, especially since repository formats matter. So far I see three options:

The Midgard developer meeting in Sweden on January 19th - 21st will provide a good chance to discuss and work on these.

Tank surfing on Flickr

Posted on 2006-12-30 07:10:16 UTC to . 0 comments.

This picture from the Midgard developer meeting trip to Komorniki, Poland was chosen as one of the top tank pictures of the year in Flickr. The guy on the top of the T-34/85 tank is Arttu Manninen

Very nice way to end the year 2006! Now on to St. Petersburg...

While my moblog is temporarily disabled from new posts, I have to note that my Flickr photostream has a lot of pictures form this year.

Back