Software as means of changing the world

This is a thought piece as part of the Mozilla Learning strategy project. In particular it’s a contribution to the Advocacy Working Group who are looking at how we design a programme to have impact at a significant global scale as one part of an organisational mission to create Universal Web Literacy.

To be clear, this is an input into the strategy project, not an output. This may or may not be something Mozilla Learning chooses for it’s strategy, but I put my name down to write this piece as it’s something I’ve been thinking about.

I agreed to write ‘a paragraph or two’. It turns out I have more thoughts on this.

So I’ll start with the summary:

Point 1. We could choose to build software as a deliberate means of creating change
Mozilla is known for changing the world by building software. We have precedent for taking this approach and exceptionally talented engineers around the world want to play a part in this story (both as staff and volunteers). Building new software products is hard, but if successful can scale to have a disproportionate impact in relation to investment.

Point 2. We can create change via software without writing any code
Through partnership with existing consumer software products, we could deliver web literacy content/training/engagement independently of any software we build. This approach can also have a disproportionate impact to investment return. Can we be there to greet the next billion as they come online and create their first accounts / profiles / digital identities? What would that look like? Is that something we want to work on?

Both approaches are valid options for a strategy, but require very different execution. They are not mutually exclusive.

Longer Brain Dump

This rest of this isn’t entirely coherent, but I can’t spend longer on it right now…

Software as a means of changing the world

What is the role of software in an Advocacy strategy?

I’m going to argue that choosing software as a method for creating deliberate change in the world is potentially the most cost effective route to large scale impact.

Assumption: Software already changes the world

I’ve been thinking about this topic for a while, and want to start by directing you to a short post I wrote three years ago – Interwoven with bits – it distills a topic I could write about for days on end. We shape software, and software shapes us.

The software that changes the world takes many forms. A list of examples could technically include all software that continues to be used by any human being (directly and indirectly). But I’ll call out a few categories:

  1. Software as a direct and targeted solution to a specific problem
  2. Software as a delivery mechanism for ‘traditional’ advocacy and communications
    • Like this game from WWF whose pirate distribution through file-sharing networks actually generated much greater reach in target markets than a paid communications channel could have hoped for – while paid downloads in other markets generated funds
  3. Software designed as a ‘neutral’ utility but which has unplanned side-effects (good and bad)
    • This is pretty much all commercial software. Those that reach the biggest percentage of the global population likely have the most impact on the world. These are the systems we are addicted to, which change our behaviour through the creation of new habits and interactions with technology, society, and even with ourselves.
  4. Software as an ethical, political, or other deliberate consumer choice
    • Like choosing a freely editable wiki to power a website
    • Or choosing Linux over Windows
    • Or using software to hide your identity online
  5. Building software as an act of advocacy
    • By building it’s products in the way that it did, Mozilla changed the world directly and indirectly as an advocate for the open web. While the success of Firefox as a consumer product gave Mozilla a louder voice in many important forums, even the ‘smaller’ stories like the organising principles of community participation had an impact by changing public understanding of how an organisation could be run in a networked world.

Mass adoption

In general, when I’m thinking about how software changes the world, I’m thinking about how the mass adoption of a piece of software creates a shift in behavioural norms. The more successful and/or popular a piece of software is, the more likely it is to have more impact on the world.

For people who want to fix the world with software, it’s easy to look at ‘Silicon Valley’ success stories and get excited about building the next big thing. But in a sensible planning process these inspiring stories need the context of survivor bias.

Most software will go to market and die. The same is true of most inventions and artistic creations. The majority who try to build something and ‘fail’ are known as the “optimistic martyrs“. Most software dies in the market because the formula for winning is elusive, and even a well defined target market is actually a collection of complex busy human beings.

People who build software with purely good intentions about making the world a better place face an even bigger challenge – they don’t have the forcing function of the market to keep them focused. That’s not to say it can’t be done (see Firefox), but as someone who uses numbers to influence decision making, numbers with currency symbols next to them always get a more direct response.

Is software too big of a bet?

As an advocacy strategy, choosing software as a means of changing the world would be a gamble. Even with the best people working on it.

But software is interesting because of its relatively low cost of development and distribution. These costs don’t need to scale with success – they become negligible if a product reaches a mass consumer market. I.e. the cost to impact an extra person beyond a critical mass approaches zero.

Therefore, the potential ROI on software is enormous (thanks Internet!). But potential is a word that optimistically wraps up unknown odds.

There’s a good reason that successful start-ups that scale are called ‘unicorns’.

A Mozilla bias

At this point I want to reflect on a Mozilla bias.

I was drawn into the org through experiencing this bias at my first Mozfest – hacking on software in my free time as a way to try and change the world.

Many people work at Mozilla because they believe building great software makes the world a better place; myself included. This is Mozilla’s heritage and origin story. But it might not always be the best or only solution to a given problem.

Changing the world through software, without building software

This next piece is not to exclude the option of building software. But I’d like to approach this section as though Mozilla didn’t have its history of building products and as though it was a new org setting out to advocate for Universal Web Literacy using software as a means of creating change.

If you pick a particular goal, like helping the next billion new users of the internet who come online in a mobile-first capacity to understand the full scope of the web, what is the most effective route to success?

We’ve already been exploring how to build learning opportunities into Firefox, but what about partnering with the organisations who own many other front doors to ‘the web’. For example, if you create a Twitter/WhatsApp/Telegram/Other account in Bangladesh, can we work with owners of those products to offer a locally relevant and meaningful crash course to the web – covering everything from privacy to economic opportunity? Something that delivers on our mission, but also adds real value to the end-user and the product owner. How much effort would be required to make that happen? How many people could we reach?

Though I noted the example of the WWF Rhino Raid game in the list above, many well intentioned orgs have tried to create software like apps and games as a way to change the world without understanding the real nuances of product (games are possibly the hardest to get right). As an example of using the partnership approach, WWF have also run campaigns in existing successful consumer products via partnerships, like these in game experiences.

When I talked about this concept briefly on our last working group call, Laura flagged up that Tumblr directs users who explore their theme editor to online training courses run by General Assembly. This is the kind of partnership that adds value in both directions. Tumblr want users to build higher quality sites, and General Assembly want to educate people who have an active interest in learning about these topics.

Investment to Impact Ratio

After thinking through the points above, I’d advocate for ‘advocating’ with software; some of which we build, some of which we don’t.

The potential investment to impact ratio for a software product that scales is immense. But it requires a long-term product strategy.

I’d argue that good products typically last longer than good campaigns, and my view is that the most meaningful change comes from what we help people do repeatedly.

Software also offers a degree of measurability and accountability hard to match in any other line of work. If I were an impact investor, that’s where I’d put my money, for that reason. Though I definitely have a bias here.

This isn’t to say what software we should build.

Image source.

KNIME UK meetup at Mozilla London

On my very first day at Mozilla there was an email to all staff in the London office looking for someone to sponsor an evening event in the (amazing) community space.

The Mozilla London Community Space
The Mozilla London Community Space

It was a meetup being planned for users of an open source tool for data analysis, KNIME.

I don’t know much about KNIME, and had no idea what ‘sponsoring’ the event would actually entail, so it seemed like a good idea to say ‘yes’ and find out more about both.

I’m thinking the worst that can happen is I learn some new things and meet some new people who like working with data.

If you’re interested in coming to a free event, including free beer and pizza, and a useful ‘New to KNIME’ talk, join the meetup group and RSVP here:


Remembering maps from memory

Today, I found this awesome post on Uncertain Cartographies (via Flowing Data), and it immediately took me back to something I made when I was in college and studying fine art.

So check out that link first, as this post will make more sense in relation to it, and it’s pretty fascinating anyway.

Then I’ll continue my reminiscence… ūüôā

I used to have a framed print of a map I’d drawn on the wall at home, though when I say “print” it was ~10 bits of A4 photo paper I had carefully cut and glued together. It lasted about 6 years on the wall before the ink faded and the paper peeled and I had to take it down. And I hadn’t thought about this map again until today.

Then after reading this paragraph in particular, I really wanted to find my old map:

“Places where I once lived are deeply etched in my mind. Given a blank sheet of paper, and a little lenience, I can draw a respectable map of Murrays Bay, Mount Eden, Kingsland, Longburn, Summer Hill or Mana from memory. Yet most New Zealand localities are at once familiar and largely unknown to me.”

I went searching for my old map.

Amazingly (to me at least) I managed to find a copy of my original Photoshop artwork file on an old archive CD-R that’s followed me from desk to desk, between many house moves and a couple of countries and that I’ve not had any cause to look at until today.

I’ve posted the map below, but first here’s some context:

This was something I created 10 years ago when I was 18 and I’d been driving for less than a year. I didn’t really use maps for directions, but I drove quite a lot to play gigs with my band, and to visit my girlfriend (now wife) who was studying in Exeter. I knew my way around by which junctions led to where, but I’d never had to ‘map’ these places in a proper geographic context in my mind. This is pre-Google Maps/Earth (hence the AA roadmap styling) and it’s interesting now to think how the ability to browse maps so quickly and fluidly online shapes the way we visualize the abstraction of location in our minds. Even more so when you factor in navigation aids.

To create the map, I sat down with a pen and a large piece of paper and drew the roads leading out around me to all the places I had traveled in recent months. I didn’t allow edits or corrections, and there was no advanced sketching of where places were located. I drew the roads and made the links between places in one go. I did this until I ran out of roads I could meaningfully label. Scanned the whole thing in and traced the lines in Photoshop (no fixes allowed). I recall this “giant” file crashing my computer on a regular basis, though looking at it now, it’s only 50mb.

Anyway, that’s getting a bit nostalgic and I don’t mean it to. What I meant to do was post this map as a response to the thought provoking piece I read today.

A little insight into my earlier years
A little insight into my earlier years



For a free and open internet, be quick

“On December 3rd, the world‚Äôs governments will meet to update a key treaty of a UN agency called the International Telecommunication Union (ITU). Some governments are proposing to extend ITU authority to Internet governance in ways that could threaten Internet openness and innovation, increase access costs, and erode human rights online.” – src:¬†

Here are a couple of places you can show your support for a free and open web right away:

If you have a bit more time, you can get creative with Mozilla’s Webmaker kit

You can see who is speaking on your behalf here:

And this article sums up the transparency issues:

Learning Backbone.js and Single Page Applications

Following up my post about the backbone.js book I downloaded, I’ve been playing, testing and learning as much as I can. So much so that I’ve neglected my Coursera design course, though I think this is a better use of my time in the long run. This particular Coursera course was mainly to test out the MOOC process first-hand, and it’s pretty cool on the whole. I’ll still be taking part in the Game Theory course that’s coming up, and I’d give Coursera a big thumbs up overall.

I’ve studied design previously, so the content in the course (while very good) was mostly a re-hashing of old stuff for me, whereas delving into the world of Backbone.js and Single Page Applications¬†has been a great way to challenge my existing approach to web design and development. It’s been a real brain stretch at times, but every new step in the learning process is rewarding, and you can never afford to stop learning if you work with the internet.

I’ve hacked about with Backbone enough now, that I’m starting to apply the learnings to Done by When, and though this equates to almost an entire re-write of the website front-end it’s going to make the app so much more responsive that I’m desperate to get it live. The demos I’ve put together already feel like so much more like software than web pages.

I’m not making any promises for a release date at this point as client work takes priority but I may be able to share something within a couple of weeks.

Also, though I’ve bailed on the Coursera course, I won’t give up on the menu planner, or my intentions to open source this.

I’ll keep you posted.

On aiming high

Testing, testing… This little chunk of the internet is coming at you via space.

Sure, lots of our data and information bounces around satellites these days, but this is the first time I’ve personally aimed a big metal dish at an object ‘floating’ thousands of miles above the Earth.

This also means we’re ready for winter, when the wind and the storms tend to knock out the phone lines around here for a few days at a time.¬†Back up connectivity like this makes my little web business a bit more resilient.

On the future of publising, today

I’ve had a couple of interactions with non-traditional publishing of traditional books in the last week, so thought I’d make a note of them as a way to digest the experience.

First, I wanted to learn Backbone.js, as it (or something like it) will likely be the basis of front-end web based software interaction for the next few years at least. My usual method for learning a new web technology/language/process is a to get a decent book with functional examples and read it quickly cover to cover. This is how I survey the landscape; like taking a helicopter ride over a national park before setting out to explore it on foot. The real learning happens on foot, but it’s useful to know where the lakes, rivers and mountains are before you head into the jungle.

You know you’re exploring the edge of current tech when the only book on the subject listed on Amazon won’t be published for another four months. So I dug around the Internet and came across a long and decent looking article ‘Developing Backbone.js Applications‘.

Using Instapaper, with one click on my bookmarks bar, and one click in my Instapaper account page I had the web-page converted into a Kindle friendly .MOBI formatted file. I emailed that to my secret Kindle email address and within a few seconds I was ready to start reading this article in book format on a screen designed specifically for this kind of job.

The process of getting this article to my Kindle is so easy that I didn’t actually spend any time reading the article before deciding if the effort was worthwhile. So when I started reading, I was pleasantly surprised with what I found. This ‘article’ was in fact a book; the very same book that won’t be published in a traditional format and available on Amazon for another four months. It’s shared under a Creative Commons license on the source code repository and social coding website, GitHub. An environment where if I find errors in the book, I can edit the text directly and post the update back to the original author, and if my changes are accepted, my contribution is attributed precisely to my GitHub account.

The second example was The Moneyless Manifesto, also shared freely online under a Creative Commons license. In this case the online version of the book has been split into chapters and subsections so it’s not quite a single click to get the book into Instapaper. Not one to be deterred, or to miss a chance to learn something, I knocked up a Python script to fetch each of the pages, pick out the relevant content and stitch this together as a single web page. Which I then sent through Instapaper and on to my Kindle, and my wife’s Kindle.

All of the above is perfectly legit. This isn’t like people who download music illegally, but it’s a challenge to publishers all the same. Most end users won’t be writing Python scripts to format online books in such a convenient way, or using Instapaper as a document converter, but in time more and more will and all of the processes will get easier.

The two publishers involved here are embracing the new world, but that doesn’t make it easy for them. I’m only a couple of chapters in, but The Moneyless Manifesto is full of interesting and challenging questions, and may have some ideas related to this future publishing conundrum.

On stealing my ideas

So, as part of this Coursera design course, I’m learning a lot about how people value their own ideas. One of the discussions among the students is about “how to avoid people stealing your ideas”.

Firstly, I should point out that each discreet chunk of your work is reviewed by five of your peers and you review the work of five random peers, meaning you don’t actually see the whole of someone’s project, just random bits of random projects. And with over 30,000 people taking the course, ¬†the risk of someone nicking your idea, if you’re really worried about it, is limited.

But some of the discussions are entertaining. Including a few people who are “only going to design something a bit rubbish so they don’t give away their really good ideas”.

This all seems to overlook the fact that nothing is truly original and we always build on the work of those who come before us.

So rather than worry that someone will steal my ideas, I thought it better to take a leaf out of the open source book and publish my work on this blog as I go. Then, not only can people steal it, they can improve on it, or join me in making things better.

The best online page turning book/magazine

I’ve seen a lot a shiny, fancy and useless online page turner book things, and typically hate them for their reliance on flash, the difficulty of reading them and the fact that we’re combining the worst of digital and non-digital technologies mainly to impress the people responsible for publishing the content rather than the people who are meant to read it.

This one was great though:

The key difference being the link on the left: “Download the MOBI file directly”.

I can flick through the book as I would at a shop, get a feel for the content, and then if it’s worth it, email the file straight to my Kindle for a proper reading experience.

That’s more like it now.

On 3D printing, and a world unready

With the recent release of the Makerbot Replicator 2, 3D printing tipped into the real world. It moved from a conceptual idea that geeks and tinkerers would try and explain to their doubtful loved ones into something you can have delivered to your door in a matter of working days.

It changes everything, and I think the world will be caught off guard.

Even now, the ~$2,000 price tag isn’t crazy. It’s more than I would pay, but plenty can afford it. And this time next year the price will halve, the resolution will double and it will print slightly bigger things. Same again the following year. In four or five years’ time, almost anyone who wants one will be able to justify the cost of a 3D printer to¬†themselves.

I always imagined playing with Lego with my son when he’s older, but it might be we’re printing our own Lego-esque blocks too.

I can only begin to imagine what this will do to a business like Lego. Sure, it costs you more to print a block than it costs Lego to print a block, but when you pay ¬£10 for a box of 25 Lego pieces you’re not paying for material; you’re paying for branding, marketing, packaging, tax, distribution and their profit. Printing your own blocks will¬†definitely¬†be cheaper for the end consumer and anyone could learn to model a number of Lego blocks in a 3D modelling tool like Sketchup in less than 4 hours.

I had a quick think about the kinds of businesses who sell cheap-to-make, but expensive-to-sell plastic products whose profit margin is primarily the relationship between their business running costs and the perceived value of the end product. I’m not saying there is no merit to the price we pay for these products today, but we’re¬†definitely not paying manufacturing cost plus ~20%.

3D printing changes everything for businesses like these:

  • Lego
  • Tupperware
  • Airfix
  • People who sell spare parts for things like old washing machines
  • Games Workshop
  • People like Shapeways who sell 3D printing as a service (they’ll soon start to look like photocopying shops do today)
  • And there will be many more

Broke your ladle while cooking? Don’t worry, you can print a new one before you need to serve dinner.

It will almost always be cheaper to ship a solid reel of plastic in it’s compact form than the same amount of plastic in its final product form full of holes and empty spaces.


Gorilla Pod and Similar MakerBot tripod

In a few years time, will you buy a Gorilla Pod and wait the tedious ~18hrs for Amazon Prime next day delivery (how slow and old fashioned!) or will you print one out right then and there?

While business is a start, a lens through which we think about the future, 3D printing has implications everywhere in this world.

There’s already been plenty of coverage about the ability to print your own weapons. While you can take the plans off of public websites, the digital files are so easy to share that you can’t take them out of circulation. Weapons may well become less regulated (and¬†regulate-able) then they are today.

In politics, what good are trade sanctions when you can move goods digitally across borders for production locally? Hyper-locally even. This is now impossible to stop. We have to re-think international trade.

In development, what does this mean for people who live in rural Kenya. Do aid organizations deliver end products they think will be useful, or spools of printing plastic to people in need?

Maybe we’ll print our own artificial limbs?

So what skills do we need to be developing? 

I don’t think we all need to be taking a course in CAD, because¬†it’s so easy to share 3D files. They’re smaller than MP3s and much smaller than videos and we don’t seem to have any trouble moving these around the world. A few thousand skilled contributors will produce the bulk of the designs used by the billions of people around the planet. Look at all things you can already download and print today.

What’s the future for the businesses affected?

If I ran Lego, I’d be thinking about how to phase out manufacturing while retaining brand and thought leadership. Not immediately, but probably within five years, ten at most. I’d focus on selling amazing plans for kits and give up on trying to own the right to the blocks themselves.¬†The overall size of the business would shrink, but it might be possible to maintain the profits. Selling plans digitally would hugely cut costs and by¬†embracing¬†this new world, Lego can be a relevant and meaningful part of it. Most likely though, they’ll¬†unleash¬†a team of lawyers on any website that offers 3D models of anything that looks like Lego. People will print their own blocks anyway, sales will decline and there will be plenty of negative press coverage about the company who tries to sue the 10 year old girl who made her own Lego-like designs for her friends birthday. I don’t say this because I think that’s a Lego like trait, but because it’s the way all large corporations today tend to behave when they come under threat.

In many ways, the future will be more different than we can possibly imagine.