Looking back in time
Jason just pointed out in this email that the fact that we had a window of opportunity during the netbook boom that was lost was a failure of GNOME as a project. I'd like to point out that first of all, I think that if an ISV and an OEM failed to use GNOME and engage with our community to affect change so that they could build their own product, it's their failure, not ours. Nonetheless he has a point.
It's worth noting that people buying netbooks just wanted more portable and cheaper version of the traditional Windows desktop, and that's why demand for netbooks shrunken after a while. It failed to match the expectation of the user, and no matter how good and perfect GNOME was back then, we would have failed to match that expectation.
However we can learn a few things about what's been happening since then.
I think that the reason we didn't make it during the netbook boom has more to do with developer experience. It had nothing to do on how usable our desktop is, we were usable enough back then. If we want to reach for adoption, we need to focus on other aspects.
I think we succeeded long ago in the goal of making Unix usable enough for most people. What we are missing now is a system, that is, a complete OS that is capable of holding a complete ecosystem around him. OS+OEM+User is not the whole story, ISVs and the relationship between them and the user is a huge piece of the success of a product.
Partially, because we relied on the distros to do that job for us lies the reason for our struggle in this regard, the problem is, Linux has historically only made bucks on the large IT deployments and not much more consumer oriented segments of the market, so that's where the focus has been.
People were fine with Windows 2000 and XP and they still are fine with it, more usability won't bring any more meaningful value to the user, it's the applications and games, and in that regard, I think we have a huge room for improvement. Developing, shipping and making money out of writing apps for GNOME or the traditional Linux desktop in general is really hard compared to other options. Specially when you compare it to the modern mobile options.
For most developers, there are actually very few reasons at all to write apps for GNOME these days other than trying to help the open source ecosystem. Which is a valid and noble reason to write apps, but it won't bring Photoshop, or Autocad, or iTunes, or Starcraft II into our platform. Back in the early 00s it wasn't as crazy to think about us as a community being able to catch up and rewrite the Windows 98 essential application collection for the average user at some point. I think we are stuck in that thought that if we replicate every single application the Windows users have we will at some point get the users. I think we need to run away from that notion, because we are a small community after all, we cannot write every single app from scratch. Focusing on helping others on creating, building and delivering their apps to the users, and having fun while doing so, and making a profit while doing so as well is a much more productive use of our limited efforts.
This is why OEMs find it really easy to work with Microsoft and Android, they get an OS and an ecosystem as a commodity. They can do what they do best, engage with some ISVs to ship some extra stuff it on their product and ship it to retail, hopefully building some momentum with some new piece of software.
Look at every single product launch or OS release at Apple for example, Adobe and Epic Games are examples of companies that develop apps during the product development phase so that on launch date a set of interesting and useful apps are available for the platform.
We are trapped in an chicken and egg situation, OEMs that do not build a healthy ISV ecosystem upon their GNOME successful products will not ship (or will ship and step back afterwards), and we can't build an ISV ecosystem because we have no devices in the shelves of Best Buys and MediaMarkts of the world.
Usability has nothing to do with this. It's the lack of apps, and how hard it is to create and ship them what prevents us from being ready to have an ecosystem, and that's pushing OEMs away.
A positive prospect for the future
Now, this is just a review of one thing we haven't quite focused on, we've achieved great many things, GNOME 3 being one of them, I'm proud of being part of even a tiny fraction of such effort.
The good news is that we've learnt a lot about usability and user experience over the past 12 years, we can easily apply those lessons to improve our developer experience and the relationship between those developers and their users. If GNOME Shell is the vehicle for users to use their computers and applications, then let GNOME OS be the vehicle for developers to reach those users and establish a relationship with them.
I strongly think we can achieve this goal.
We just need to focus on allowing anyone to be able to write awesome, powerful, useful, both simple and complex, beautiful applications. Without having to interact with us in our mailing list because some piece of documentation is not clear, or because they cannot find the right API to achieve something because it's in some repo somewhere with or because it has a weird non descriptive name. Without having to learn three or four packaging mechanisms to reach every single GNOME user.
We also need to understand to engage with key players of the ecosystem, sometimes even with people that produce closed source, the news of Valve working on a Linux version of Steam is really good news, and whatever we do to help them will only render into a mutually benefitial outcome.
I am not saying that we are not making steps towards this goal at all, a lot of work is being done, but if we could concentrate the same amount of energy that we did for the 3.0 release on this goal, the possibilities are pretty encouraging.