GStreamer SDK – Android and more

About a year ago, Collabora and Fluendo started discussing the idea of having a commercially supported version of GStreamer. One year later, we are proud to announce the second release of the GStreamer SDK that you can download over at In addition to supporting Linux, Windows (XP, Vista, 7 and 8) and MacOSX (10.6+), The GStreamer SDK now supports the ever so popular Open Source based Android mobile platform (Gingerbread and higher).

The GStreamer SDK aims to bring the powerful multimedia framework to the masses of multimedia developers out there by providing stable, documented, multi-OS, cross-platform (hardware) and commercially supported releases of GStreamer. As our efforts on the GStreamer SDK continue and we make new releases, we will provide support for more software and hardware platforms until there are none left!

Will Microsoft prove me wrong about GNOME 3?

In October 2008, the GNOME UX hackfest at the Boston summit became the place of birth of GNOME 3. The seeds were planted out of a will to induce a more design-centric mentality in the GNOME project. As the GNOME shell was being designed and implemented, the computer world was changing under it’s feet. The touch-screen revolution was under way, starting with smartphones in 2007 followed by the introduction of tablets in 2010. This caused dramatic changes to the way we consume information on our computers. A large chunk of users and use-case that GNOME 3 was trying to cater to started to convert over to iOS and Android running on tablets for most of their tasks, leaving their laptops behind for those times when they needed to produce information. As the whole industry was transforming, discussion amongst GNOME shell designers about addressing the change naturally ensued. But this was not a small change, it meant having to rethink and redesign the shell to cater for touch-screens. In order to keep the momentum going, it was agreed that GNOME 3 is being designed for desktops/laptops but that touch-screens would be kept in mind for later. As we stand today, there is a list of items and planned design specs for making GNOME shell more “touch friendly”, but those are still mostly for the future and application developers are still confused as to what that means exactly for them.

I argued, mostly internally here at Collabora, that GNOME shell needs a clear and definitive answer to this question and that taking a design decision to aim somewhere in the middle between desktops and touchscreens was a recipe to fail at both. Writing a shell that can work for both is one thing, but what about applications? I couldn’t see how one solution could fit both form factors and input methods. Little did I realized that on the other side of the fence, Microsoft was facing the same dilemma with the next release of their famed Windows operating system. Microsoft Windows was king of the desktop; a mouse, a keyboard and a congenitally insensitive screen was their playground. But now, the rules had changed and a new plan of action was required.

Introducing the Microsoft Surface. Hardware was nothing new to Microsoft, but this was a radical step since it could be interpreted as direct infringement on the business of their OEM partners, which historically have been key to Window’s success. So what is this Surface? At first glance, it looks like a tablet, but hook it up to it’s keyboard and it becomes a laptop with a track pad and a touch-screen?! It seems to be both a laptop and a tablet, or at least it’s trying to be. This sounds exactly like what I argued was impossible to get right from a UX point of view. But wait, we are talking about Microsoft here, a company that has been writing and designing UX for as long as I can remember… and they are good at it. So what is this magic UI that is running on these monstrous hybrids? It’s Windows 8, the same UI that will drive your laptop, will also run on your tablet, or will power one of those new convertibles. OK, so maybe they managed to make a shell that works well across the board, but what about the applications? The Surface comes with Office, a primary tool for producing information. Looking at the screenshots, it seems obvious that this was not designed to be driven through the touchscreen but rather the more traditional keyboard/pointer inputs. So Microsoft’s strategy seems to be that some applications will be driven with the keyboard/touchpad, whilst others will be more touch friendly. Basically, there is no reason why each application needs to do both simultaneously. This is reinforced by the fact that Windows 8 runs both traditional desktop applications and applications written using their new UI toolkit named Metro.

I’m willing to acknowledge that Microsoft can pull this off as I personally like the idea of being able to have my tablet and laptop packed into one slim, lightweight device. Nonetheless, my instinct tells me Microsoft is in trouble, that this is Microsoft’s fumbled attempt at making Windows 8 relevant in a world that changed too fast for them. Most critics agree that Windows 8 running on the Surface is either confusing or just plain bad. I guess time will tell, but in today’s world, things happen fast, so I doubt we will have to wait long to see the unravelling of Microsoft’s wager. Either way, I think GNOME shell designers should be watching Windows 8 very closely, as the results of this experiment could be very useful for the future direction of GNOME 3. Should it stick with the desktop and focus on content creation such as suggested by Eitan? Or are some of the currently proposed touch-friendly work items enough to make it a viable UI for tablet based consumption?

A new battle in the war of the mobile

In mid 2007, the release of the iPhone catalysed the long overdue transition from desktop to mobile. Mobile quickly became the holy grail resulting in a mobile platform war with iOS leading the charge. Out of all the platforms that fought it out over the next 3 years, all but iOS and Blackberry OS carried the Open Source badge. MeeGo, WebOS, Qtopia, OpenMoko, Android, Bada, Limo and even Symbian OS all tried to capitalize on the many advantages of pre-existing Open Source assets, methodology or brand. Even though iOS is the anti-thesis of Open Source, it is nonetheless based on the BSD kernel.

By 2010, the tablet form factor was introduced to the mobile world with the release of the iPad and two clear victors began to emerge from the battlefield, iOS and Android. Through its use of an Open Source license, closed governance model and strong service offering, Google was able to take a dominant position in this space as OEMs rushed to integrate Android into their latest mobile and tablet offerings. By Q3 2012, 73% of smartphones sold are running Android whilst 14% are iOS based, the tablet market is split halfway between the two and Samsung dethroned Nokia to emerge as new king of the mobile world (thanks Android). The first battle of the war has ended and the winners are reaping the rewards.

Looking back, it is clear that Android was a success because it was adopted by every single OEM out there. The OEMs jumped all over Android because it was free, competitive and most importantly, wasn’t owned or controlled by a competitor. It didn’t bother the OEMs that Google controlled Android and they cheerfully ignored the fact that they became a conduit for Google services, as that doesn’t constitute their core business anyway. They needed Android to fight Apple and Google gave it to them.

Looking forward, what future do Android OEMs have? By using Android, they have consciously forfeit their right to sell their own services. This obviously doesn’t bode well with the operators or for those more ambitious OEMs. On the software and user experience side, as demonstrated by HTC, the closed governance model of Android makes it extremely difficult and expensive to differentiate. So what’s left for the OEMs? Hardware. Unfortunately, with the recent release of the Nexus 10, Google now has a full product offering that competes directly with the OEM’s brands, sells cheaper, has hardware value-add and runs the latest and greatest Android release (which Google gleefully keeps for itself). Ironically, even Amazon, a service company that competes directly with Google, is using Android. But that has been a difficult and treacherous path for them, how long can they keep it up? I bet not long.

For these reason, a new battle in the war of the mobile world is looming in the horizon. New players are already making an entrance; Microsoft is on the attack with Windows 8, its deal with Nokia and the release of its very confused Surface tablet. RIM are soon unveiling their new QNX based BlackBerry platform with talks of potentially offering to license it out to OEMs. Samsung’s first true Tizen product is long overdue. Mozilla are running full steam ahead with FirefoxOS. ChromeOS is starting to mature. Will WebOS make a come back through HP’s new strategy? Will Amazon reveal a new platform, fork Android or keep using it as is? Will new Open Source based platforms be revealed?

I believe there is a demand for a new platform; something neutral, customizable and free. I believe there is a good opportunity ahead for GNOME. Can it finally become a relevant platform in the mobile space? I think now is an interesting time to ask and come up with answers to that question…