Planet maemo: category "feed:f37232ce73d3b53f5ae8169b333a7127"

Ian Lawrence

Where are the things we were promised?

2008-11-15 07:04 UTC  by  Ian Lawrence
Education used to be an end in itself, not a means. It wasn't about
having a high-paying career. It was about knowing the world, about
having knowledge and wisdom for its own sake. It was, quite bluntly,
the accumulation of useless knowledge by the elite -- those that could
afford to spend time on such things, knowing that useless knowledge has
a way of becoming useful in the most unexpected of ways. How fortunate
we are to live in an age where the accumulation of useless knowledge is
available to so many, and how sad it is that so few take advantage of

So this came from Planet  Debian and it sort of fits with some things that I have been worrying about recently. We need to solve some big problems in the world and urgently  (global warming, population control, cancer etc) but the innovation which I see around is about putting some beeer on a beer wall or BuddyPoking someone with a ninja kick .

Click to read 802 more words
Categories: I
Ian Lawrence

A story about e-waste

2008-10-23 16:31 UTC  by  Ian Lawrence

Thousands of tons of e-waste – such as discarded PCs, mobile phones and TVs - are dumped in Africa and Asia every year. Some of this waste is exported to Pakistan..

In the Karachi district of Lyari, hundreds of workers, including teenage children, earn their livelihoods by dismantling the electronic scrap and extracting valuable components such as copper to sell.

The photo story below by Robert Knoth reveals what happens to that e-waste and the people who try to scrape a living from it. This is an insight into the personal cost of e-waste.

It is good to know that Nokia is innovating in this area. It does quite well on e-waste issues with a comprehensive take-back programme that spans 85 countries providing almost 5000 collection points for end-of-life mobile phones (it has one of the best take-back programmes in India for example) However, its overall recycling rate of 3-5% is relatively poor and needs to be focused on.

Other pluses for Nokia are that it does very well on toxic chemical issues, launching new models free of PVC since the end of 2005 and aiming to have all new models free of brominated flame retardants and antimony trioxide by the end of 2009. Nokia’s overall energy score is boosted by sourcing 25% of its total energy needs from renewable sources in 2007 and a target to increase use of renewables to 50% by 2010. Nokia also scores top marks (doubled) for all its mobile phone chargers meeting Energy Star and exceeding the Energy Star requirements by 30-90%.

Categories: Nokia
Ian Lawrence

Debian Amazonas - Hackfest

2008-10-23 02:01 UTC  by  Ian Lawrence


Saturday 25th - Sunday 26th October 2008 17:00 - 17:00


'casa do fedoraeiro'


Some of the FUCAPI Linux Lab students joined our local Debian Users Group and one of them, Henry Bilby, posted this a while back

Estou achando um pouco parado o grupo, em questão de contribuição para a comunidade. Minha sugestão é que, seja marcado pelo menos um encontro por mês, em um final de semana (local a ser definido), para desenvolvermos algum projeto parado, retirar bugs do gnome, desenvolvermos nossas próprias idéias


Using Python GASP, PyGame and a git repo develop a game. Put a simple QT User Interface onto it and package it for Debian


Get a good start by checking out the existing GASP games which give an idea of what is possible
bzr branch lp:gasp-games
Python QT documentation is here and a quick Hello World PyQT app is below
import sys
from qt import *

class HelloButton(QPushButton):

def __init__(self, *args):
apply(QPushButton.__init__, (self,) + args)
self.setText("Hello World")

class HelloWindow(QMainWindow):

def __init__(self, *args):
apply(QMainWindow.__init__, (self,) + args)

def main(args):
app.connect(app, SIGNAL("lastWindowClosed()"),
app, SLOT("quit()"))

if __name__=="__main__":

Extra Info

If any graphic artists are reading this and are available to help design a UI for the game you are encouraged to come along

Final Note

This is a technical event. This means it is a chance for developers who normally collaborate online to meet up in person to gain creative synergy through peer interaction and source code. It is *not* an install fest or a chance to clear any doubts about whether you want to install Linux on your computer or not. If the internet connection stays up and there are no power failures we should have have a productive event. Thanks

Categories: Amazon
Ian Lawrence

I asked Marcello a.k.a Rapadura to create an Ubuntu Theme for Canola.

He was up for it and set to work with Inkscape, GIMP and Debian.

Check it out The deb is available here

Categories: Canola
Ian Lawrence

Packaging Web Applications in Debian

2008-08-14 19:53 UTC  by  Ian Lawrence

Modern apps are web based but we have no real standardized way to package them. Partly this is because Javascript is still in the 'vote with your feet' stage of standardization but also because of the complexity involved in the client/server exchange (i.e sorry dude, the code runs where again?)
So what best practices do we currently have in Debian?


This package presents a policy and implementation for managing various databases used by applications included in Debian packages. I have just proposed an integration of django evolution into this package. This will allow us to track changes in our Django models over time, and to update the database to reflect those changes.

Javascript Packaging

This is provided in Debian by the package javascript-common and it allows javascript libraries to be installed in

and makes them automatically available in Apache at

The Debian Webapps Policy Document

This was first drafted in 2005 and is undergoing revision here @ Debconf.
Web applications should not make any assumption about how the administrator has arranged the file hierarchy on the target machine.

The suggested guidelines for the layout of an application are:

  • Static and dynamically interpreted content
  • /usr/share/PACKAGE/www
  • Dynamically executed content
  •     A unique subdirectory of either
    /usr/lib/PACKAGE (architecture-dependant)
    or A unique subdirectory of
    /usr/share/PACKAGE (architecture-independant)
  • Application-specific include files
  • A unique subdirectory of
  • Other static data, and helper scripts that don't belong in users' paths
  • A unique subdirectory of
  • Site configuration (settings/passwords)
  • /etc/PACKAGE
  • Modifiable and overridable content
  • A subdirectory of

    Specific Requirements for Programming Languages

    The web application policy divides includable files into two distinct categories:
    application-specific and site-wide.

    The former includes files not intended for use outside of the particular application in question, and the latter addresses files intended for more general use. As previously mentioned, application-specific include files should exist in a unique subdirectory of /usr/share/PACKAGE. This subdirectory should exist outside of any web-accessible directory, as many security-related problems in poorly written web applications are the direct result of not doing so.

    Whilst the Policy Manual has specific requirements for PHP and Perl there is nothing yet for Python. I am currently working on this and it will likely be based closely on the Perl Policy document. Comments and suggestions are welcome.

    Categories: Conferences
    Ian Lawrence

    Information Architecture for Designers

    2008-08-12 20:38 UTC  by  Ian Lawrence

    Creating a web application involves HTML, CSS, images and usually some type of dynamic scripting language. Occasionally, one person will fulfill all these roles, however once an application reaches a certain scale, the question arises of how best to divide these skills between the people involved in the project.
    It is a fairly common workflow for the programmer to be given some mock ups from the designer or even some HTML/CSS and he/she is then tasked with implementing the site functionality. Another question then arises of how the designer can best structure this HTML/CSS for the workflow of the programmer.
    Django has a philosophy of loose coupling between objects and this is applied equally to the HTML output. To achieve this Django uses the concept of template inheritance. Template inheritance allows you to build a base 'skeleton' template that contains all the common elements of the site and defines blocks that child templates can override. This means you can literally design an entire site by creating only one HTML file. For example look at the maemo site:

    Click to read 772 more words
    Categories: Architecture
    Ian Lawrence

    Debconf Day 2

    2008-08-11 22:07 UTC  by  Ian Lawrence
    I spent some time today talking with Junichi Uekawa about how he runs Japanese TV on Debian (the same technology is used in Brazil for digital TV) and the solution seems to be some buggy driver on the MonsterTV HDTV card which we maybe can hack to make work.
    I also talked some with Joachim Breitner about his work with Debian on the OpenMoko Neo phone. There is a repository which contains the packages until they are included in Debian proper, both for armel and desktop architectures. Add these apt lines:
    deb unstable main
    deb-src unstable main

    A merge of this repository, Debian experimental and Debian unstable can be used for debootstrap as follows.

    Please note that this is a hack and might not work properly

     cdebootstrap --allow-unauthenticated -d sid /mnt/target

    You may need to activate experimental in your sources.list

    The packages in this repo include:

    • zhone: The demo UI
    • zhone-session: Init scripts to start zhone on system start.
    • frameworkd: System daemon providing most phone features via dbus. 
    • gsm0710muxd: GSM multiplexer daemon

    Categories: Conferences
    Ian Lawrence

    Debconf Update

    2008-08-11 03:52 UTC  by  Ian Lawrence

    I arrived at Manaus airport feeling pretty groggy after I fell asleep listening to some old Bossa Nova music on the radio. I was also *still* feeling the effects of some virus I picked up last week which was unfortunately just like Malaria (thankfully this time however without the hallucinations).

    After waiting (and waiting) in the queue to check in, when I arrived at the counter I saw that they were writing the tickets out by hand. Apparently the system was 'in maintenance' although this could just have meant that it had crashed given the amount of head shaking and so on which was going on and it left me feeling a bit nervous about the flight to be honest.

    The chaos with the airlines in South America shows no signs of improvement and so all the Brazilian flights into Buenos Aires were delayed. This was OK though. Me and Bdale stood around holding a Debian sign and waited for the rest of the developers to show up. We got talking about his hobby of rocket flying and apparently he has launched one up to 14,000 feet which is pretty impressive I reckon. His latest project will use a different fuel mixture based in part on sugar and he hopes he can get to 18000 feet. Good luck with that.

    After Uncle Steve's excellent keynote speech (I found out that all of Debian Lenny will be available on a single Blue Ray disk!!) I bumped into Jacob at lunch. The conversation inevitably moved onto Tor and anonymity online and told me about a book that he is reading. Tales of Hacking, Madness and Obsession on the Electronic Frontier by Julian Assange is about the WANK worm crisis in NASA.

    Next to the RTM worm, WANK is the most famous worm in the history of computer networks. And it is the first major worm bearing a political message, in this case against nuclear power (WORMS AGAINST NUCLEAR KILLERS).It was a worm that attacked DEC VMS computers over the DECnet in 1989 and written into the source code were instructions not to propagate in DEC area 48 which is New Zealand (at that time New Zealand was a nuclear free zone). It also greeted NASA's Galileo flight engineers with the words "You talk of times of peace for all, and then prepare for war." as they logged in. (Galileo controversially used 24 kg of plutonium as an energy source)
    With WANK, life imitated art, since the term computer 'worm' came from John Brunner's sci-fi novel, The Shockwave Rider, which is about a politically motivated worm.

    Can't wait for tomorrow!

    Categories: Art
    Ian Lawrence

    Manaus on the March

    2008-08-03 15:13 UTC  by  Ian Lawrence

    It came as no shock (to me at least) that a Brazilian has won the Maemo logo competition. What is really cool is that Glauber works with us in Manaus
    Designers and programmers are now working closely together @ openbossa and it looks like this approach is starting to pay off here in Manaus. Well done, Glauber.

    Also in Manaus we have been running some training courses recently at Fucapi, a sort of Educational Institute like a University. I was asked to run a Python course and as part of it I came across a python library called GASP (Graphics API for Students of Python). This *rocks* !. By the end of the lesson all the students (with little or no python experience) had created and customized a Pong game.

    I could not believe how easy it was to explain the graphics API to them. It is a easy step from GASP to Pygame and to the creation of games for mobile devices.

    So the seed has been planted and things grow rapidly here in the forest!

    Categories: Amazon
    Ian Lawrence

    Debconf 8 - Mar del Plata - Argentina

    2008-07-28 00:38 UTC  by  Ian Lawrence

    Thanks to an awesome travel deal I struck with Marcelo I am now for sure able to make it to Argentina. I am totally over excited about going to my third Debconf. I am also pleased to see that Nokia are Platinum sponsors this year

    Debian Conference is the annual Debian developers meeting, an event filled with coding parties, discussions and workshops - all of them highly technical in nature
    There is also the usual day trip and a chance to play the Assassins game apparently!

    While I am there I hope to do some work on the Debian Eee Project stuff which is about making Debian work optimally on the Eee including support for the later 901 and other Intel Atom-based models (1000 and 1000H).

    This is gonna rock...or rather tango so hard.

    Categories: Conferences
    Ian Lawrence

    Work in Manaus

    2008-06-30 16:21 UTC  by  Ian Lawrence

    INdT need to hire professionals passionate by mobile, internet and technology, with excellent team work spirit.

    Resumés shall be sent to the e-mail: rh_seleciona 'at', with “DesLinux” in the subject field.

    *DO NOT* send me CV's.

    If you want information about what it is like working in Manaus or what to expect if you are selected (from a foreigners perspective) I will help with that, no problem.

    Linux INdT

    Linux Developer

    Academic Background:
    Bachelor in Computer Science
    Computer Engineering or
    Data Processing

    Language skills:
    Intermediate English.

    Solid knowledge in:
    - GNU/Linux (Use and development)
    - C/C++
    - Python

    Categories: Developer
    Ian Lawrence

    Code Swarm

    2008-06-25 18:49 UTC  by  Ian Lawrence

    I got totally into visualizing commit histories during the holidays of the Festa of São João in the North East of Brazil

    I chose a cool free software project I am involved with and watched it evolving organically over time.

    Here is the code swarm for the Autotest project. Autotest is a test framework written in python which I have started using to do some testing on mobile devices.

    It starts off with just one or two developers 'mbligh' and 'apw' and over time the role of the central node is taken over by others notably 'showard', who wrote the Django frontend.
    These patterns are also observed in other key open source projects like python and django where developers cluster around a central developer or team of developers whose quality attracts other developers and so the ball starts rolling

    . It also shows the qualities needed in a lead developer i.e the ability to love your creation so much that you can let it go.
    The fireworks on the project are really starting to pick up as we reach the explosions of the last month. Its one project to watch, that is for sure. :)
    Categories: Art