Motorcycle Adventures and Free Software

Weblog: Archive

2006-08-01 - 2006-08-31

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.

Sponsored links

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

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!

Back