Use The Source!
When I first let the world in on our "little" project to create an open tablet there were some who wondered openly about the licensing of the software. It's an important question that deserves a clarifying answer:
We are not using the OS (Android, in this case) provided by the hardware manufacturer. We are also well aware that some of the people in the hardware supply chain are violating the terms of the GPL. This was amazingly frustrating for us and caused significant delays as we went in search of GPL friendly vendors. We found that in the market of affordable device makers in China, they just don't exist. There's a cultural as well as legal hurdles that have led to this unfortunate situation, and I personally think Google has a lot to answer for when they allow such companies open access to their app store while they must be aware of the license violations that are going on. So it's an unfortunate situation, but we're problem solvers, we're bad-ass Free software developers who see a problem and bang on it until it falls over, right?
We decided to go with Mer, the community continuation of MeeGo, as our base OSS. With the amazing help of the Mer community, we have been able to bring up a non-Android, built-from-source kernel on the device and even boot into Plasma Active. There is still work left, and we still do have some binary drivers, but this progress is already one massive crowbar that's prying open the doors that have been shut on the world of ARM based devices.
We're not the only ones working towards such a brighter future: there is Luc Verhaegen's work sponsored by CodeThink on the Mali 400/200 GPU driver being announced as FOSDEM; there is the Rhombus-Tech project that is working on a GPL kernel with Allwinner for their products such as the A10 (a chipset we'd already been looking at for (near) future devices). These are all awesome projects, and I'm happy to be a small part of this growing wave of effort. Simply put: we need open devices, and this is how we're most likely to get them. Hopefully in the future it will become "the way it is done" by all vendors out there, but it takes some early movers to take the first steps and force change.
Since we're using Mer for the user space and Plasma Active for the user experience, all the code above the kernel and most of the kernel itself is already open and available for download right now.
Full disclosure: right now we're still stuck with a few binary drivers which is not a perfect situation. With time I'm confident we'll get the binary drivers out of the picture, one by one, even if it takes time, effort and some pain. We've already managed to get source for some drivers that were not previously available so the trajectory is right. If we wait for perfection, however, we'll never get anywhere because we need to release and push the status quo level of openness further inch my inch by making releases. It'll be incremental, but we're already further than others have gotten. It's been hard but rewarding work, and I hope we can all work together to make it go faster, bigger and further!
Open Beyond Licensing
I do think it is unfortunate that when I wrote about an open and unlocked device, so many people jumped straight to the topic of source code licensing. Free software is not about licensing. Let me pause while the shock of that idea sinks in for a moment. ;)
Free software is about freedoms. Licensing is an important part of the toolbox to ensure those freedoms are available, but they are only tools not the actual product being aimed for.
This is important to keep in mind because openness and freedom goes a lot deeper in Spark than just using GPL and BSD licensed code. For instance, the boot loader isn't locked so you can boot your own OS if you wish. You can install your own apps, you can even provide your own app delivery system. You can use the Open Build Service to deliver software on top of the Mer core. That is not a property of the open licensing, but of our desire to deliver devices that you not only purchase but wish you own.
The content store is also going to be interesting. On release, the client will be Free software and the APIs openly documented so others can write front-ends. Most interestingly, however, is the server side. It has been designed in such a way that other people with other devices or concepts can use that same back end to make their own stores. It supports the idea of a single, large set of content which can then be curated into any number of different stores with different focuses and delivery targets.
Think about the possibilities: a school district or educational board could decide to set up a "store" with learning materials and content with access granted to their students. They could offer both "free" and "pay for each download" content, even if only for bookkeeping purposes. Much like the wildly successful video game markets for gaming consoles, the Make Play Live content store uses a points system for transactions, so in such a scenario points could be handed out to students, schools and/or entire districts.
On release, we will be providing a guarantee that if the project dies or we all fall over, the back-end code for the store will be made immediately available for download under a Free software license. Hopefully it doesn't come to that, of course. Once we are happy with the implementation and scalability of it, we will be making the back-end open as well. We have chosen to delay that release as we don't want others setting up their own hosted stores before we are confident in the internal design ourselves.
Even Activities themselves, the core interaction concept in Plasma Active, embody the philosophies of freedom and openness. This is your device and it should become your personal thing reflecting you. You are not treated as a mere consumer for an app store, but given a tool to help you live your life in some small way.
I really urge people to think about openness and freedom, two amazingly important concepts, beyond the boundaries of simple software licensing. Licensing is important, and we take it pretty damn seriously .. but we ought to look at bigger picture and really think about how to make our digital tools open and free in all sorts of ways.
Tomorrow I Answer Questions
There were tons of really good questions asked on my blog, on tech news sites that carried it as well as by private messages. Tomorrow I will do my best to go through answer as many of them as I can with short, to-the-point answers. I will be covering information ranging from release time lines to pre-orders to more hardware details to .. well .. visit tomorrow to find out!
When I first let the world in on our "little" project to create an open tablet there were some who wondered openly about the licensing of the software. It's an important question that deserves a clarifying answer:
We are not using the OS (Android, in this case) provided by the hardware manufacturer. We are also well aware that some of the people in the hardware supply chain are violating the terms of the GPL. This was amazingly frustrating for us and caused significant delays as we went in search of GPL friendly vendors. We found that in the market of affordable device makers in China, they just don't exist. There's a cultural as well as legal hurdles that have led to this unfortunate situation, and I personally think Google has a lot to answer for when they allow such companies open access to their app store while they must be aware of the license violations that are going on. So it's an unfortunate situation, but we're problem solvers, we're bad-ass Free software developers who see a problem and bang on it until it falls over, right?
We decided to go with Mer, the community continuation of MeeGo, as our base OSS. With the amazing help of the Mer community, we have been able to bring up a non-Android, built-from-source kernel on the device and even boot into Plasma Active. There is still work left, and we still do have some binary drivers, but this progress is already one massive crowbar that's prying open the doors that have been shut on the world of ARM based devices.
We're not the only ones working towards such a brighter future: there is Luc Verhaegen's work sponsored by CodeThink on the Mali 400/200 GPU driver being announced as FOSDEM; there is the Rhombus-Tech project that is working on a GPL kernel with Allwinner for their products such as the A10 (a chipset we'd already been looking at for (near) future devices). These are all awesome projects, and I'm happy to be a small part of this growing wave of effort. Simply put: we need open devices, and this is how we're most likely to get them. Hopefully in the future it will become "the way it is done" by all vendors out there, but it takes some early movers to take the first steps and force change.
Since we're using Mer for the user space and Plasma Active for the user experience, all the code above the kernel and most of the kernel itself is already open and available for download right now.
Full disclosure: right now we're still stuck with a few binary drivers which is not a perfect situation. With time I'm confident we'll get the binary drivers out of the picture, one by one, even if it takes time, effort and some pain. We've already managed to get source for some drivers that were not previously available so the trajectory is right. If we wait for perfection, however, we'll never get anywhere because we need to release and push the status quo level of openness further inch my inch by making releases. It'll be incremental, but we're already further than others have gotten. It's been hard but rewarding work, and I hope we can all work together to make it go faster, bigger and further!
Open Beyond Licensing
I do think it is unfortunate that when I wrote about an open and unlocked device, so many people jumped straight to the topic of source code licensing. Free software is not about licensing. Let me pause while the shock of that idea sinks in for a moment. ;)
Free software is about freedoms. Licensing is an important part of the toolbox to ensure those freedoms are available, but they are only tools not the actual product being aimed for.
This is important to keep in mind because openness and freedom goes a lot deeper in Spark than just using GPL and BSD licensed code. For instance, the boot loader isn't locked so you can boot your own OS if you wish. You can install your own apps, you can even provide your own app delivery system. You can use the Open Build Service to deliver software on top of the Mer core. That is not a property of the open licensing, but of our desire to deliver devices that you not only purchase but wish you own.
The content store is also going to be interesting. On release, the client will be Free software and the APIs openly documented so others can write front-ends. Most interestingly, however, is the server side. It has been designed in such a way that other people with other devices or concepts can use that same back end to make their own stores. It supports the idea of a single, large set of content which can then be curated into any number of different stores with different focuses and delivery targets.
Think about the possibilities: a school district or educational board could decide to set up a "store" with learning materials and content with access granted to their students. They could offer both "free" and "pay for each download" content, even if only for bookkeeping purposes. Much like the wildly successful video game markets for gaming consoles, the Make Play Live content store uses a points system for transactions, so in such a scenario points could be handed out to students, schools and/or entire districts.
On release, we will be providing a guarantee that if the project dies or we all fall over, the back-end code for the store will be made immediately available for download under a Free software license. Hopefully it doesn't come to that, of course. Once we are happy with the implementation and scalability of it, we will be making the back-end open as well. We have chosen to delay that release as we don't want others setting up their own hosted stores before we are confident in the internal design ourselves.
Even Activities themselves, the core interaction concept in Plasma Active, embody the philosophies of freedom and openness. This is your device and it should become your personal thing reflecting you. You are not treated as a mere consumer for an app store, but given a tool to help you live your life in some small way.
I really urge people to think about openness and freedom, two amazingly important concepts, beyond the boundaries of simple software licensing. Licensing is important, and we take it pretty damn seriously .. but we ought to look at bigger picture and really think about how to make our digital tools open and free in all sorts of ways.
Tomorrow I Answer Questions
There were tons of really good questions asked on my blog, on tech news sites that carried it as well as by private messages. Tomorrow I will do my best to go through answer as many of them as I can with short, to-the-point answers. I will be covering information ranging from release time lines to pre-orders to more hardware details to .. well .. visit tomorrow to find out!