Marco's Blog

All content personal opinions or work.
en eo

How “China” Is Missing the Open Source Evolution

2013-09-18 6 min read Electronics Anonymous marco

Pebble Smart WatchThree independent events came together last night to give me one of those rare flashes of insight.** There is a radically better way of doing business, and everyone is missing out.** Best, still, this radically new way of doing business is completely free, both as in beer and in speech.

So, this is what happened. Yesterday, I was perusing Amazon product pages for solar charges. I stumbled upon one (and I will not mention which one) that had the worst product description I have ever read in years of amazoning. It was strangely ungrammatical, using words entirely out of place, presenting the product in a flowery language that was so far off the mark, it made me smile, then laugh out loud.

Better still were the product reviews. They talked about how the manual/instructions were so horrible, you couldn’t really understand how to use the product at all. Given that it’s not a ICBM launcher but a solar charger, the charge itself was somewhat outlandish (and punny, but that’s my fault).

Secondly, I went over the stats for this site, trying to weed out more forum hackers (it’s been quiet ever since I forced Admin approval of registrations). I noticed that the old review I had up of the waterproof watch phone had received a number of hits. That got me thinking about the review itself.

Quick summary: the watch was fine. It didn’t do what I wanted, as it was only IP67 (what we’d call water resistant) and wouldn’t make it through a single surf session. But it was barely useable, in any case. The software was so horrible and ill-thought through that even the simplest tasks became a chore.

Thirdly, I finally took the new wireless router out of beta and made it the main home router. I used to use a Netgear, now I am using a Cisco/Linksys. The reason:** the old Cisco running dd-wrt, an open source firmware, is faster, more reliable, easier to customize, and more customizable than the Netgear.** Better still, it has a killer feature I’ve always craved: it DNSes the machines on my network, so that I can call the computers and phones attached to it by name, instead of figuring out the dynamic IP address.

I realized that I started doing that more and more. I am used to replacing the firmware on my SanDisk Clips with Rockbox out of the box, just because there is nothing the stock firmware can do that Rockbox can’t, but Rockbox can do a lot more. Of course, every computer I buy (and I buy a lot of them) gets Windows replaced by Linux before I even Start Me Up (I would like refunds for all the useless Windows licenses I paid for over the years). I won’t even mention how Android has changed my life for the better. Oops, I just did!

The three ideas came together in a flash, and I realized: what if the open source community had access to the firmware of the stupid watch phone and could make it better? What if the strange deficiencies of the watch phone – like the fact it stores text messages only in main memory, not taking advantage of the memory card and so limiting yourself to 300 messages – were just gone, fixed by some unknown person in the open source community?

What if open source did what Google and Apple have done, and created a standardized product centered around existing hardware?

It is a win-win-win-win. The manufacturer gets better software to run on their hardware, with no downside to them. The consumer gets a better product – even better: a product that improves over time. The hardware industry benefits from reduced development time. The open source community benefits from a strong product that doesn’t have to conform to a company’s idea of what is good hardware.

The only losers in this game would be firmware development companies (and firmware developers), who would potentially see decreased contracts; and the giant software companies (Google and Apple, but also Samsung) that provide the firmware (and specs) that hardware manufacturers use in high end products.

Of course, the problem is getting started. To do that, some manufacturer would have to release the details of the firmware, plus offer the ability to reflash it. Actually, in many cases, the firmware may not be replaceable, at all, and only a new generation of hardware might have the ability and flexibility to make it.

But** it’s a problem that is causing “China” a loss**. When you go to Amazon, say, there are lots of importers that sell the same wares as Chinese sites, but with a markup between 50% and 100%. The only thing they provide is local support (as it were) and potentially better manuals. The manufacturers have a hard time selling their merchandise because they have little knowledge of the market, but also because they are spec-driven and not capabilities-driven. They have no feedback loop that tells them how they should change their product, and they have no realistic way to create one.

An open source community built around the firmware would change that. As long as the product is useful and you can rely on supply, there will be developers willing to work on improving the software. Just look at venerable Rockbox.

Now, one might argue that what I am proposing is exactly what Nokia tried with Maemo. They failed. Hence the idea is doomed to fail.

But the problem with Nokia was not that the Maemo strategy was wrong. The problem was that they relied on the open source community to fix problems, while they retained control of the software. The issue became that patches were not applied, improvements not released, and generally input not taken seriously. I recall in particular when we complained about the fact the Bluetooth stack on the N900 didn’t accept normal Bluetooth keyboards, but only a weird variant mini-keyboard offered by Nokia. The company simply ignored the problem. I don’t know if it was because they wanted to sell more mini-keyboards, or because they didn’t understand how important it was. In any case, the problem was the ownership of the code.

Additionally, Maemo had always been a toy for the Nokia developers. I mean that in a good sense: they loved it to play, to develop new ideas, to let their minds roam. The problem was that they tended to re-invent the wheel many times over, replacing Linux standard software stacks with their own. That brought new bugs, missing features, and other weirdness that was totally unnecessary (the example of the network connection manager is particularly griping).

Here, we are talking about companies that want to sell things. Clearly, the software (firmware) and documentation (manuals) are not what they want to sell, because that stuff is terrible. Make it truly open, and you’ll see quick improvements. Why not publish your manuals as WikiBooks, for instance? Host your firmware on SourceForge. Make more money and give me a product I can use!!!

(In the case of the watch phone, I would so love it if I could tether the network connection via BT, or have a decent input method (two rows of five for numbers???), or get a bulk modify option for text, or change the display format of text messages to give me the text instead of the metadata, or…)