Month: April 2009

An essential part of lean code is lean browsing. Web browsers are often the most resource hungry program running on a personal computer, and a leaner web browser will mean less power used, less heat, less greenhouse gases produced, less crashes, and less need for CPU speed, RAM, and cooling.

Flyweights

There are a bunch of very lightweight browsers for Linux, such as Midori, Dillo, Hv3 and w3m. These prove that a browser can be well under 1 MB, be lightning fast to load, and still successfully browse. Unfortunately they are seriously lacking in features.

W3m is the most basic of these – it’s a text browser (and there are others to choose from, if you’re in the market). Text browsers are not something most users ever need to know about, but they do have niche uses. On to more practical choices (for most of us).

Midori, at about 350 kb, seems to do the best job of displaying pages the same way Firefox does – but it doesn’t seem to save any cookies, and doesn’t offer to remember passwords. You’ll be logging in to your favorite sites every time you start Midori.

Nice idea, but not very usable, in my view. You can try them out if you’re keen – if you run a mainstream Linux distro, they should be in your distro’s repositories (except maybe Hv3).

Lightweights

There’s a big jump here – the code for one these browsers is roughly 20 to 50 or more times the size of the flyweights.

Opera is an established, full-featured browser. It’s claimed to be lighter than the mainstream browsers such as Firefox, and it might be, but to be honest I don’t notice a huge difference – I can easily get it to 90 MB once I have a good number of tabs open.

It’s not open source, and it doesn’t quite manage everything as nicely as Firefox. I use this as a backup browser, e.g for checking secondary accounts without logging out of my main account.

Then there are browsers based on the same technology as Firefox, e.g. Kazehakase and Epiphany – again, they’re likely to be in your Linux distro’s repositories. But I wonder if the reason that these are faster is mainly that they don’t have all the addons that we’ve installed on our Firefox?

I still find these to be a compromise – you’re definitely giving up a fair bit in usability to have a lighter browsing experience – though Opera comes pretty close to Firefox in usability and fancy features.

If Midori would just save cookies, I’d say Midori was a much better trade-off than most or all of these.

Middleweights

SwiftFox and SwiftWeasel are two tweaked versions of Firefox, to improve speed and reduce memory usage. I haven’t noticed a huge difference in speed, but there’s a significant reduction in the RAM used by both of these, and that’s A Good Thing. They’re also very compatible with Firefox – I find I can install the same addons, and have had no problems with them at all. This is lighter browsing without compromising usability.

The main difference between these two projects is that SwiftFox is trademarked and the binaries are proprietary. If I’ve got it right, then in theory, the guy who packages SwiftFox might be doing something sinister. That’s unlikely, but since I use this for my internet banking, I’m going with the security of a fully open source package, which means SwiftWeasel.

Unfortunately, they’re only in Linux, and they’re not in the repositories of most Linux distros. Installation can be confusing for a newbie, especially for SwiftWeasel (in brief: ignore the “source” packages, and install the latest “non-source” package, which is a compressed binary. Unpack into your home directory, and run the “swiftweasel” shell script. It needs an installation guide like the one for Flock.)

Light heavyweight

Firefox – the premier browser on all mainstream operating systems today. If you’ve got the resources, and/or don’t share my bad habit of having way too many tabs open, this is a practical option. The only serious contenders for a better all-round browser, in my view, are those in the previous section, tweaked versions of Firefox.

Version 3 is a big improvement, and memory management was one of the areas they worked hard on. I still find it suffers from inflation of the amount of RAM used when it’s been open a long time, but nowhere as badly as version 2 did.

But Mozilla people, please – could you please make it easier for us to tweak our installation of Firefox to make it less resource hungry? There are instructions out there, but relying on random blog posts and forums for instructions is dangerous. I broke my installation of Firefox that way, which is when I gave up on Firefox and tried SwiftFox, then SwiftWeasel. Really, I’d rather be able to keep using Firefox, and supporting the Mozilla Foundation for all your good work. So – could you please make it easier for us to be light and green in our browsing?

For now – SwiftWeasel is my recommendation for the average Linux user. But if you’re a newbie or semi-newbie, make sure you’ve got support, from a Linux User Group or a geek friend – that might save you some hassles in installation.

Browsers for Windows

This is outside my experience (I used Firefox when I was last a Windows user, and it was all-round a better browser than Internet Explorer), but there seems to be talk on the web about lightweight browser for windows.

We’re thinking about how to support projects in Appropedia. If a team of people (students, professionals, non-profit sector workers or volunteers) is looking for a place to organize a project on community development, sustainable technology or related subject, it makes sense to do it on the one site where they can also document their work, share and get input from an active community. I.e. it’s a key feature in a platform for collaboration.

While simple open-edit pages are very useful for organizing projects, they’re not enough to effectively handle certain tasks, such as task tracking and calendars are also essential. But it turns out that our MediaWiki can do task tracking, once we have Semantic MediaWiki installed, as shown in this slideshow:

The calendars that are central to this task tracking will be an important feature. Once we can sync them with our personal calendars (Google Calendar or elsewhere) that will be a big jump in usefulness.

Of course, plenty of other platforms have task management features. The big news here is that it’s integrated with a wiki, which is the most powerful, proven and flexible platform in existence for the collaborative creation of a knowledge resource. (Leave a comment if you think there’s another contender.)

Feedback please:

Have you used this? How does it compare with other task management and project management packages?

What other features do we need for effective project management on Appropedia?

What’s the real state of the world? This is the brilliance of Gapminder – it takes us beyond platitudes and generalizations about poverty and abundance, and shows us the state of the world in terms we understand.

I apologize if you’ve already seen the video below, but there are still many who haven’t. It’s an enlightening and funny presentation, and a must-see for all who care about the state of the world.

There is a lot of good news, but:

“This really shows you – we have not seen good economic and health progress anywhere in the world, without destroying the climate, and this is really what has to be changed.”

That’s Hans Rosling at TED 2007, a moment of warning in a positive talk where he argues that “the seemingly impossible is possible” and demonstrates it in an unexpected way in his finale:

As for how to have economic and health progress without destroying the climate – that’s what we’re about at Appropedia. Watch this space.

A fellow Appropedian asked me about options for lightweight Linux distros, for using on old hardware. Thought I’d share my response here.

My knowledge is limited, but what I’ve learnt:

Join a local LUG – look out for days when they help people install Linux. Beware of installing Linux when you won’t be face-to-face with Linux geeks for a long time, especially if you’re doing something more problematic like installing on a laptop – I made this mistake, and it was a horrible time sink. Online support doesn’t cut it.

Vector & other Slackware distros don’t seem user friendly, and neither does DSL (Damn Small Linux) – I looked into it, but with only about 2 years experience in Linux, I didn’t feel up to any of these choices. With more experience, and the backing of geek friends, it may be an option for you. (DSL is also a much older distro, with much older packages a.k.a. program versions, but it works on very limited hardware, and is possibly more reliable than other ultralight distros such as Puppy Linux).

I recommend Openbox (window manager) and LXDE (desktop environment using Openbox – meaning Openbox is the lighter of these two light options). These are really nice and lean – lighter than XFCE, but nicer to use. Expect to see these become more popular. You can add them to any distro, but where they’re not one of the standard options, in some cases there can be clashes (probably a bigger problem on a laptop).

I like to find a distro where it’s set up to be lean, but it’s easy to use.

I’m not hung up on installing “free” (open source) only – I want Skype and I want video codecs. (I install Linux firstly because I want an operating system that does what I need, not to make a statement.) Ubuntu makes for a little hassle with this – you have to add repositories and certain packages (programs and codecs), and the new user doesn’t know this – they just wonder why things don’t work. Debian makes it really hard work for a newbie, especially if any of your hardware doesn’t have a perfectly free (open source) driver.

I strongly prefer something that is at least based on a major distro, and uses the package repositories of that distro. There’s the potential for better support and in theory for bug fixing (Ubuntu is buggy anyway, in my experience, but it does have good support). It also means far more software choice. This, with the previous points, leaves me with one distro:

CrunchBang Linux: it’s based on Ubuntu, but uses Openbox, but with some very cool usability tweaks, including partial use of LXDE. It also comes with Skype and video codecs installed. This is the only distro I know that comes with Openbox by default (excluding Debian and Knoppix which I don’t recommend – see below). I’m not usually a fan of Ubuntu, for several reasons including bugginess when I used it in the past – but in spite of that, it’s working quite well for me at the moment, and it has an active and helpful community. This is the most promising distro I’ve used.

Debian 5.0 comes with with LXDE as one of its standard options, which means it has Openbox – but Debian was unnecessarily difficult for me. When it didn’t even recognize the hard disk on my ThinkPad, I thought: if this is a sign of how things work in Debian, I’m trying something else.

And Knoppix also comes with LXDE standard. It’s not designed for installation to hard disk though, unless you really know Linux. However, it’s apparently a great rescue disk, with a reputation for hardware recognition – the MacGyver of Linux distros – so I keep a Knoppix LiveCD handy, just in case. (I’d try the CrunchBang LiveCD first, but if things are really screwed up and that doesn’t work, I’ll try Knoppix.)

I’ve heard good things about Puppy Linux – it was flaky when I tried it ~2006, but may have improved. It’s also kind of a backwater in Linux development – a lot of non-standard stuff, running as root by default (which sounds like a bad idea to me and to many Linux people), with its own kind of installation, and far fewer packages than a major distro. So unless you need to go super-light (even lighter than Crunchbang) I wouldn’t recommend it.

I just discovered boxpup – looks like Puppy with Openbox. I’m guessing it’s a bit harder than CrunchBang, with less package choices, but probably even lighter than CrunchBang. I would still have some concerns about bugginess, security, package choice and maybe usability, but if you’re keen, you could try it out with some help from your LUG.

Anything I’ve said related to something being hard to use (e.g. Debian) becomes much less of an issue if you have geeky friends close by and/or belong to a LUG. My preference though: Get something you can mostly handle yourself. You’ll still need help, but there’s no need to make it harder than necessary.

A wiki is a database for creating, browsing, and searching through information. It enables documents to be written collaboratively, and has these essential features:

A user can edit any page and create new pages within the wiki, with a standard browser.

Page link creation as almost intuitively easy, and it’s easy to see whether a target page exists yet or not.

Rather than being a carefully crafted site, it seeks to involve the visitor in a process of creation and collaboration that constantly changes the site.

Easy creation and updating of pages is key. Wikis don’t always live up to this goal as well as we would like – many people who might become valuable contributors are put off by “wiki markup”, the “==”, “[[” and “{{” scattered through the text. (Actually, it’s safe for a new contributor to just ignore such marks left by other editors, and edit only the text, but it’s still very offputting to a newbie and there are efforts underway to dramatically improve this, and keep these hidden unless you want to see them.)

Another characteristic of wikis is that they are very much a blank slate – when you create a page in a standard wiki, there are no fields to fill in, no boxes to check – you just have a blank edit box to enter your text. Structure is often valuable though, and what happens is that keen users build a structure using:

templates, e.g. {{unreferenced}} to flag an unsupported claim, or the infobox you find on any Wikipedia page about a plant, animal or location.

special tags, e.g. <ref></ref> for inserting footnotes,

parser functions to allow logical operations

magic words, to return data from the software such as pagename and date,

…and no doubt other tools I’ve missed. These help to create a structure that maintains consistency between pages, and guides editors in contributing to a page. These structures are never binding, however – content can be added outside the structure, and the structure itself is built within the wiki, and is open to editing.

Another approach to structure is through the use of extensions – Semantic MediaWiki, UniWiki, page comment extensions and others – that allow information to be entered or displayed in different ways. Again, these generally don’t remove the basic freedom of a wiki page – in most cases the editor can choose to use or not use them, as they wish.

So is a wiki “The Answer” for collaborative projects? In areas such as sustainable design, aid and development methodologies, appropriate technology, and related areas, some people have concluded that their collaborative project needs more structure than a wiki provides, and have come up with other models. In coming posts, I’ll be looking at specific approaches to these tasks, using wiki and non-wiki platforms.

The open license we use is central to what we do. Open knowledge can empower development, sustainability, appropriate technology, emergency management and all manner of progress. This means understanding what an open license is – giving freedom for all kinds of reuse and remixing, not restricting commercial use. This is the kind of license we have always used, as have Wikipedia, other Wikimedia projects and many other wikis – and the particular license that we have used is the GFDL, or GNU Free Document License, managed by the pioneering organization (some might say radical) the Free Software Foundation.

However, the GFDL was intended for software manuals, not for wikis – it’s good, but not quite the right tool for the job. The good news is that it’s now possible for a wiki site to convert its license from GFDL to a more suitable license – the Creative Commons Attribution-Share Alike 3.0. This has essentially the same freedoms is the GFDL, but also:

Is more practical for making printed works (you can reference the license rather than printing the whole thing);

Has a useful “human readable” summary (at the page linked above);

Has a “mark”, a linked image such as the one you see at the bottom of this page, which helps readers know what permissions they’ve been given, and helps search engines to index pages by permissions;

Is used by many bloggers and other creators of online works, meaning we can share with these more easily.

We in the Appropedia Foundation have been reading, weighing our options, asking questions and listening. It seems clear that the best course is licence migration to CC-BY-SA-3.0, so we are not delaying any longer. We’ve set the 21st of April as the day to convert to the Creative Commons License. This final week is your opportunity to give feedback and insights. We strongly believe this is the right course of action, but you can consider this as a case of “Speak now or forever hold your peace.”

(Okay – we wouldn’t tell someone to keep their mouth shut forever, but this really is a major decision, and it’s hard to imagine turning back once we’ve switched.)

– – – –

Btw, if you have a WordPress blog, like we do, there’s an easy way to add a Creative Commons mark in the footer: the creative commons license widget – that page says it’s only tested up to WordPress 2.5, but it seems to be working on version 2.71 without problems.

…with industrial ecology & renewable energy.

The 20th century saw an enormous increase in the abundance available to much of the world’s population. Yes, poverty continues and our task remains, as long as children die needless by the thousands each day. Yet the desperation and squalor that much of the world lived in at the end of the 19th century is no longer the norm. If you doubt this, check out GapMinder’s statistics, presented in this TED talk.

How was this transformation fueled?

Partly by innovation and knowledge – global health improved enormously and lifespans increased, thanks to the innovations of antibiotics and many other medicines, that allowed people to live where otherwise they would have died (and I certainly appreciated heavy duty antibiotics when I was in hospital with typhoid!) Even more importantly, health has improved through sanitation, spurred by the scientific knowledge of diseases such as cholera and how they spread.

Partly by the efficiency of modern industry. For all its faults and pollution, one thing industry has done very well is to produce enormous amounts of Stuff. From pharmaceuticals to building materials, most of the world’s population has benefited from this.

Partly by cheap energy – and though oil prices are rising and carbon trading and taxes are looming, most of us still treat energy like it’s cheap. Improved efficiency has helped make it easier to keep doing this – innovation again, making somewhat more efficient cars, planes, heaters and air-con, easing the burden on our pockets and meaning that even the recent oil price spike caused no revolution in our behavior – the efficiency has reduced our costs, but our growing appetite means it hasn’t reduced our impact.

All of these will continue. Innovation and knowledge will provide solutions to climate change – the only question being whether they will do it in time. A transformed industry (see industrial ecology) will continue to produce, but more intelligently.

The only major hiccup is in cheap energy. Rising fossil fuel costs are inevitable, and probably sooner rather than later. We can sit back and demand action by our governments, or we can take things into our own hands. Because cheap energy isn’t going to disappear. Today, the alternative to cheap oil and dirt cheap coal isn’t unaffordable solar and wind. Prices for renewables are coming down. It’s now a matter of paying a modest premium, not even double the super-cheap prices we’re used to, and certainly affordable for the biggest users in the developed world. Combined with some intelligent choices, continued innovation and some belt tightening when it comes to our wasteful habits, we can get through this, possibly with some temporary hardship, but without a peak oil apocalypse.

The trajectories of clean and dirty energy will cross, possibly very soon, as work accelerates on new solar technologies and other renewables, as well as on energy transport and storage technologies. Fossil fuels will never be as abundant as they were, but renewable energies will continue to get cheaper, through the power of innovation. Wondering how to slash or even eliminate our greenhouse gas emissions by 2050 will look entirely different when solar power is cheaper than coal. Allowing everyone on the planet to have a decent standard of living, and access to the best things about the modern world – this will be an entirely different task as solar panels get cheaper.

But it still needs to happen – we’re still dominated by the old ways, the old habits and interests, still risking the planet as we know it, still risking our future. We need concerted action, to push forward the technologies and the policies that we need. We need to pull together, to pool our knowledge, to share and build our knowledge banks from the individual level to the corporate and government levels.

Let’s not underestimate how much we can achieve when we put our hearts and minds into it. With action and determination, we can do amazing things. An abundant world is within sight.

I think there’s a lot of potential in… FrontlineSMS – mainly because it’s a platform. Like any good platform, it’s up to the end user (in this case, grassroots NGOs) to work out how they want to use it, and how they want to incorporate it into their organisation and activities.

A platform might be simply defined as ‘a place to launch software’. It is an agreement that the platform provider gave to the software developer that logic code will interpret consistently…

This sounds a lot like the strengths of a wiki – it’s a blank slate in many ways. People use Appropedia and other wikis in many ways. They create structures to use on certain types of pages, and are free to adapt or ignore those structures, as they innovate. And in a growing wiki with a very broad scope, there is a lot of room for innovation.

A topic that has come up repeatedly in conversations is whether a wiki is a good way to share designs and ideas for development, sustainability, open manufacturing etc, or whether a more structured approach is needed. I’ll look at some of those approaches in coming posts (filed under platforms for collaboration).

If you make technology appropriate and you make the how-tos accessible, you can get people to solve the problems themselves. They don’t need aid agencies any more. That’s the dichotomy, that’s the problem that the aid sector’s got to face, with this knowledge. It’s got to try and release it, to achieve their mission, but it also means that a lot of their revenue streams, a lot of their purpose will become redundant. And this is generated by people themselves.” Andrew Lamb, CEO, EWB-UK and director of the Appropedia Foundation.

America, Europe and Japan have been working their butts off trying to get a high mileage car on the roads, and the only way they’ve done it is with magnificent technology that costs far more than traditional cars. India did it for $2,000. We should be ashamed.

That’s how my inner engineer responds to the $2,000, 56 mpg (US)* Tata Nano. EcoGeek also suggests other ways of responding, and they all have some validity:

“I’m having nightmares” – the chief scientist of the IPCC.

The lack of good mass transit around the world is a disgrace and private vehicles are never going to be a solution for urban areas.

The developed world can’t hold back the developing world in ways they were never held back. The criticisms made sometimes look like fear of what will happen when swarms of poor people want to live like us. While suggestions of good transit and cycling options are spot on, I personally don’t feel I have any right to bemoan relatively poor people getting better transportation.

Also see a Bangalore resident’s intelligent responses to some of the criticisms, at People are missing the point (a comment on the EcoGeek post).

There are many ways of reducing our impact on the climate, starting with energy efficiency in our houses as well as our own transport choices. Denying transport options to the poor is not only unjust – it has little prospect of working.

*56mpg (US), 67 mpg (imperial), 4.2 L/100 km, average. Your mileage may vary – and it won’t use any fuel if you leave it at home and walk/cycle/bus.

Photo credit: ~FreeBirD®~ (CC-BY-NC-ND). Chosen because: Who the hell can tell these people they shouldn’t have a car to carry their children more safely?