Beyond PCs: Thin Client Computing with Ndiyo
During a recent visit to OpenTech ’09 in London, I had the pleasure of meeting Dr. Quentin Stafford-Fraser who together with self-described übergeek Dr. Michael Dales form the engineering might behind the not-for-profit, Cambridge-based Ndiyo (the Swahili word for “yes”).
We had a lengthy chat with Quentin and Michael following their presentation, where I learned that Quentin—who, incidentally, was born in Kenya—has devoted much of his time to finding new ways of networking computers so they can be provided for the billions of people who are unable to afford a PC. He’s also famous for a piece of web history involving a coffee pot and a camera. More on that later.
A Radically Different Approach
The motivation behind Ndiyo, says Quentin, “came out of an awareness that the traditional way that we’ve done networked computing—of having one computer per person connected by a bit of network cable—is never going to be a viable way to provide IT to the world.” This model of providing networked computing, he points out, is over a quarter century old and has remained fundamentally unchanged.
Meanwhile, PCs, after Moore’s Law, have followed a pattern of geometric growth in processing capabilities. Today’s desktop PC is easily capable of hosting a multi-user system, yet sits idle most of the time. In theory, there should be enough surplus computing power available to provide access to the billions of people who could benefit from ICT—if it could be distributed equitably, that is.
Quentin saw that the “one user, one PC” paradigm just didn’t make economic or functional sense for the developing world. The conventional PC-based networking model is so intrinsically wasteful and expensive in terms of energy, resource and time inputs that it has effectively blocked access to ICT in poorer nations.
Moreover, networked computing should be easier to manage and support, especially for small organizations, cybercafés and schools. Another grounding principle of Ndiyo is to ensure that the world’s IT infrastructure remains open and is not captured by proprietary hardware and software, or dependent on a small number of Western companies.
It is with this philosophy, driven by a passion for social justice, technical challenges and a commitment to using Open Source software and open standards wherever possible, that Ndiyo was founded.

Instead of making PCs cheaper, Ndiyo makes them easier to share. It’s a radical approach based on an old idea that makes good sense: thin client computing. Ndiyo provides a new model—another form of “plumbing” if you will—based on a novel piece of open hardware called a Nivo.
From Coffee Pots to Nivos
To grasp the elegance of the Ndiyo system, it’s worth revisiting a Cambridge coffee pot in the early 1990’s. Quentin is widely credited as the inventor of the world’s first webcam, which pushed pictures of the departmental coffee pot over a network so his fellow engineers could see when it was fresh. Later, as an AT&T researcher, he became one of the original developers of VNC, a free and extremely useful protocol that lets you operate another PC remotely. Descendents of this protocol are now built-in to the Windows and Mac operating systems.
VNC remains an invaluable tool today, but there’s a noticeable difference between sitting in front of a PC and operating one over a VNC connection. For Ndiyo, the thin-client had to function exactly like a normal PC. The problem required a unique piece of hardware, a specialized “frame buffer” as Michael Dales describes it, to push pixels fast down a network cable.

The solution is a small widgetized device called a Nivo (for “Network In, Video Out”) with ports for a mouse and keyboard, VGA video and an Ethernet connection centered around a custom chip developed by DisplayLink, a company created by Quentin in 2003.
Instead of starting with a PC and seeing what we could take out, we began with a monitor and asked what was the minimum we had to add to give a workstation fully capable of typical ‘office’ use. Some of the original VNC team were involved in the design of the new software and protocol, which combines lessons learned from VNC with the need for a very fast, simple device optimised for high-speed networks.
The Nivo is an “ultra-thin client,” allowing the power of a PC to be shared between several users at once simply by plugging in a network cable. The Ndiyo system takes advantage of a key feature of every Linux distribution—support for multiple user sessions out-of-the-box. An arbitrary number of Nivo boxes can be connected to a single PC, with between five and ten clients as a reasonable load.
The Ndiyo System in Action
Ndiyo’s founders like to point out that their system isn’t vaporware—it’s a real solution that works today. The “Internet Cafe in a Box” is a concept they designed to illustrate the affordability and simplicity of a typical cybercafé using an Ndiyo system. It could equally be used for a school computer lab or a small office. All that’s required is a PC to act as the server, the Ubuntu Linux Ndiyo Edition CD-ROM (which installs in half an hour), six Nivos, six flat-panel screens, a few network cables and an inexpensive network switch to connect them together.
The system is easy to set up, affordable, open, robust, is less harmful to the environment and less dependent upon technical support than a conventional PC-based network. With a power draw of just 3 watts for each Nivo (or about 5 if you connect a mouse and keyboard) the energy cost savings alone are substantial.
Ndiyo systems have been successfully piloted in partnership with the GSM Association and mobile network operators in parts of the world which have typically had poor Internet connectivity; Bangladesh and South Africa.
The trials involved both Edge and 3G mobile networks to provide broadband Internet connections to servers, each of which runs a number of local Ndiyo workstations. The Ndiyo architecture enables many users to share not just the cost of the computer, but also of the internet connectivity. Here’s a video of the trial in South Africa:
The Ndiyo Starter Kit is available to people interested in building their own projects with Ndiyo technology.
Final Thoughts
The Ndiyo model and the philosophy behind it are very compelling, for several reasons.
On a practical level, the environmental benefits and energy cost savings of an Ndiyo-type system are obvious. A client which consumes 5 watts verses 300 or more is clearly advantageous. I imagine it would be possible to provide backup power to an entire Ndiyo cluster with a single UPS device, or even to supply constant power using a renewable energy source. This is a big consideration for developing countries where power infrastructure is often less than reliable or nonexistent.
Ndiyo also provides an alternative to traditional Western notions of how technologies should be deployed, used and paid for in developing countries. Negroponte’s One Laptop Per Child (OLPC) and refurbished PCs are two different approaches that spring to mind. Refurbished PCs are potentially transformative, but have a lot of hidden costs including power consumption, spare parts, support and maintenance. Perhaps instead of unloading tons of obsolete PCs on developing countries, a market-oriented solution with new or refurbished flat panel monitors could be tried instead, used with Nivo clients to build robust clusters.
The Ndiyo cluster also leverages ideas from mobile phone sharing—a concept which needs no introduction to Africans, and takes greater account of conditions on the ground where these systems will be used.
Find out more about Ndiyo. Listen to an interview with Stafford-Fraser. Read their executive summary, check out their FAQ and follow Quentin Stafford-Fraser and Michael Dales on twitter.
If you’d like updates on more stories like this, you can follow me on twitter here.
8 Responses
to “Beyond PCs: Thin Client Computing with Ndiyo”
1 Trackback(s)
- Jul 20, 2009: My Favorite African Tech Blog Reads of the Week — WhiteAfrican









NIVO and Ndiyo
Very interesting, but the economics are the important thing, and not a word about them. Please expand article and detail present costs and projected costs with mass production. And really, internet enabled gsm smartphones for less than US$ 70-00 are the way forward – they should be selling for about US$ 30-00 very soon…. Mr Alex Weir, Harare, Zimbabwe
@Alex, I felt this post was running long so excluded a detailed economic analysis of the Ndiyo model. However, I gave a link with pricing info for the starter kit so readers could draw their own conclusions.
Re: GSM smartphones, it’s a question of choosing the right tool for the job. I agree that smartphones are a viable option for mobile internet and/or SMS-based info services, but no one would use one to create a spreadsheet or do software development. We’re interested in an Ndiyo cluster to support six software engineers in our office. Here’s a rough costing (in GBP):
6 screens ~600
6 keyboards 60
6 mice 60
1 PC server ~1000 incl vat
1 starter kit 1200 incl vat
————————————–
Total: £2920 or £500/developer
A cluster of robust, low-power workstations with Ndiyo gives us substantially lower TCO than a conventional networked PC setup, which I’d put at around £1100/developer.
What about this?
http://www.ncomputing.com, take a look at this.
Thanks!
Ndiyo looks great. I like the concept.
For Cameroonian cyber cafés, the initial startup cost will be less.
IT maintenance might even be easier with just one server.
However, adoption of Ndiyo here in our local cyber cafés will be hampered by one factor. Most of the time tracking software being used presently will have to be rewritten. The current time tracking systems are IP based, not session based.
I think this is a bit misleading… The concept of Thin Clients, or what you call “Ultra Thin Clients” is not new, nor is using Linux as a server to host multiple thin clients off of one PC.
The problem has been that most people haven’t been using actual Thin Clients, but full fledged computers instead. That and the belief that we must have Microsoft Windows (and the associated CAL costs) with each client/server.
I think what is important is to draw attention to the fact that using “free/cheep” old hand me down computers as thin clients is often neither cheep OR free…or easy. And while initially more expensive, in the long run using technology designed to do the job will be easier and cheaper.
Couple that with people getting over what constitutes a “server” and realizing that modern desktop computers are perfectly capable to act as servers in a lot of situations where redundancy is not that critical is the real shift… and not the act of setting up true thin clients.
That said, it’s awesome to see someone actively putting trials in place of true Thin Client solutions, and taking the steps to make a basic setup easy to use and acquire.
Hi,
I have been trying to build a computer lab for an upcountry school in Kenya. The biggest problem we have is that there is no mains power. We have solar to charge batteries and so need to have a 12v system. Can Ndiyo work on 12v?
Please which timer software is compatible with your thin client