Canonical has recently announced the creation of the Ubuntu Developer Portal. The portal’s goal is fairly straight forward: it's basically been designed to get more mainstream developers creating software for Ubuntu.
In this article, I'll look at the motivation, tools and resources that will be made available to those using the Ubuntu Developer Portal. I'll also look at whether this is an effort that is going to be a "game changer" for Ubuntu or merely a weak publicity stunt that backfires on everyone involved.
Developers, apps and applications
When comparing the Linux desktop with operating systems like OS X or Windows, it's worth noting that Linux software fragmentation is a real problem. Some Linux enthusiasts have mentioned that the diverse nature of free and open source (FOSS) software is a strength for Linux. To a certain degree, there's truth in that belief.
Yet despite the strength coming from FOSS software, the problem of software fragmentation remains and isn't showing signs of getting better. Much of the problem is that too many FOSS software titles are just copies of one another to be applied to different ways of seeing the same task.
To make matters worse, any proprietary software alternatives that are available come across as poorly done in Linux. Those proprietary applications that are considered worth using require you to "cross your fingers" in hope that there will be continued development as time goes on.
I realize that duplication also happens within the proprietary software space as well. But one must remember that it's the Linux desktop that is coming under scrutiny when being tried for the first time. So why not leave the software duplication issue with the previous platform and free Linux from this problem altogether?
Well, the opportunity for a positive change is here, thanks to the launch of the Ubuntu App Developer Portal. With the right decisions being made early on, it's entirely possible that the Ubuntu Developer Portal could be a smashing success.
But simply catering to anyone that wants to be a developer isn't enough. There must be a real benefit not just for the developer, but an opportunity for giving the end-user a great experience as well.
Ubuntu App Developer Portal as a solution
Another benefit to the Ubuntu Developer Portal could be the ability to sync up the software the user has already installed, then allow them to replicate this software list on another PC.
While there are software tools that allow us to do this now, none of them are web-based. This web-based option would make bug tracking much cleaner, in addition to allowing beta testers to try the latest "in-development" apps without having to bounce from site to site.
The current Ubuntu bug tracking tools are beyond useless for the casual user. Visiting the dentist is more pleasant than the "circus act" that mirrors what most users face when reporting bugs. With any luck, this new app portal can help change this. Common sense bug reporting shouldn't be so difficult.
Making development accessible
One area I was impressed with is how the Ubuntu Developer Portal is working with its developers to create new cross-platform software. Using a simple command line application creator called Quickly, developers can use their existing skills to create software that is compatible with Ubuntu. Quickly even makes short work of any perceived packaging headaches, which is definitely a pleasant surprise.
The provided developer tutorials on the Ubuntu Developer Portal are also impressive. They range from simple videos to get you started down to fairly extensive explanations on how to get things setup successfully.
Everything with the Ubuntu Developer Portal is laid out in such a way that you don't need to have experience developing for Linux to create software for Ubuntu users. Because of this smart design, I'm inclined to give the Ubuntu Developer Portal creators a big thumbs up in the area of design.
In addition to addressing many of the big programing languages used today, the portal highlights the use of what's called the Ubuntu developer stack. This is what makes notifications, widgets and other integrated aspects of Ubuntu software development possible.
Where I became disappointed, however, is with the focus on more "light-weight experiences" than anything of real merit to the end-user. Much of the documentation highlights supporting multimedia, social networking, multi-touch, widgets and so on. My grievance with this is that it merely encourages amateurs to create overly simple software which further feeds the issue of fragmentation I mentioned before.
How many media players, social media gadgets and widget-like clocks do we really need? I'm all for making Linux application development accessible, but how about we support a focus on software that others would actually like to use? Maybe even applications that offer solutions to problems not being addressed currently?
We've been very lucky to have access to LibreOffice, GIMP, Firefox, among others. However, filling up our software repositories with software developed by newbies isn't going to make Ubuntu more attractive to anyone.
The right idea done the wrong way
At its core, the Ubuntu App Developer Portal is a tremendous opportunity. The portal itself is done well, considering how new it is.
But considering the flood of newbie software making it into the Ubuntu repositories, I hope this project considers making a special sub-section for applications that aren't really up to par.
By taking a newbie sub-section approach, it will keep the existing applications free from the flood of "learning to program" applications that are sure to come otherwise. If this simple measure were added, new Ubuntu users wouldn’t blame Ubuntu as a whole for one or two bad experiences with those poorly created applications.
A game changer or a publicity stunt?
With my above concerns addressed, it's possible that the Ubuntu App Developer Portal could be a real "game changer" for the Ubuntu desktop. Perhaps we'd even see Adobe looking to bring over some of their missing applications, ranging from Photoshop to After Effects!
As good as many open source applications are, we still need certain proprietary software titles to attract die-hard users from other operating systems. Since this kind of adoption is a goal for the Ubuntu team, it must be addressed properly.
I do realize that for Linux purists, none of this sounds very attractive. But that's the wonderful thing about using Linux. Even if we disagree with the direction Ubuntu is heading in, we can always switch to something we like better.
Speaking for myself, I find I have mixed feelings. Even though I do just fine being free from the world of proprietary software, I must admit that not having to wonder if the software my wife wants to use is compatible does have a certain appeal to it. She has said on many occasions that if Photoshop was available on Linux (not using Wine), she would drop OS X like a brick. Sounds like a challenge to me!
What do you think? How important is using name brand software to you on the Linux desktop? Would having access to Microsoft Office or Photoshop (among other proprietary software titles) add value or instead, create frustration for you?