Open sourcing proprietary software projects

In Ireland we have a special relationship with software we see the goodness but politicians dont have a clue how to make sure they get delivery on the sanctioned software systems. There have been a few systems an e-voting system and PPARS(its a payroll system for the medical service) both cost a half a billion to develop and neither are being used.
This is where proprietary software failed badly so why not open source the software (for PPARS not the e-voting) and let the community fix the problem? No matter how complex the system needs to be I cant see how any company can get away with nearly €200 million and not deliver on a product.
Why not open source all failed software projects that wont see the light of day? How many games a year get cut half way through development and never get played? The answer is lots and lots of them. How about really old games (around 15-20+ years old) and open sourcing them? No one makes money on them so who is it harming? In fact we can give a new lease on life for lots of projects and I think its sad that we the community arent being considered at all. A game I would love to have a crack at porting to linux is the original Fallout game.

Indicator and me menu, lucid looking awesome

Ive been testing out lucid since a little before alpha 1 and all is well from what I can see. What landed recently was the me menu and I have say that its cool.

I love the idea of posting to twitter on the fly from the desktop rather than waiting for Gwibber to load up(which takes a good 20 secs ish on my machine). Oh and the new version of Gwibber from the daily ppa looks awesome.
Some extra things to look forward to is the new indicators, an improved software center, Pitivi and the music store. I cant wait to try out the music store which should land alpha 3(ish) but what songs should I buy…? And will Severed Fifth’s album be available? (kidding its free go get it if you want) :)

iPad and the FSF

Oh FSF why do you make me embarrassed? Really I saw the article on ars about them protesting and I just said to myself “they have protested yourselves into obsolescence”. The flaw is they are protesting for something free and extremely positive but how they go about it is the opposite.
Do apple care its non free software included on most of their products, of course not. The FSF should simply shut up before they give all of us a bad name. They are the definition of great idea bad execution.
Oh and in the interest of funniness put your jokes about the iPad’s name below. My first thought when I heard it was that sounds like an Apple apartment.

The importance of awesome

Im going to plug a bunch of projects and stuff I like in this post so I hope you guys like it.

Shot of jaq is bloody awesome. Well us ubuntu people are a little bit biased here because its done by two people who make ubuntu awesome but still it is very cool. Not only is it nice and interesting(kinda like my blog :) ) but it gives a nice view on things. The two guys have a good back and forth and the show in general has a good feeling and a nice tone. Plus its short enough to keep my attention which is very limited but long enough to take a dump while its on. Whats also great is the talk that gos on in the comments. People air their views and its nice to see such friendly conversation going on.The show rocks go on and listen :)

Zeitgeist, ive blogged a lot about zeitgeist so ill just post a few links to what I said previously. They also had a new release (along with gnome activity journal) so id like to congratulate them on that.
http://shanefagan.com/2010/01/15/debunking-the-gnome-3-myths/
http://shanefagan.com/2010/01/10/gnome-activity-journal/

Gnome Do or well Docky, I love Docky its nice to look at. It does the window management which I like. Plus you can store application shortcuts in it for added ease of use. Gnome Do is cool too, I love the plugin system and the way applications are easy to open. Its one of those things that shortens the time to get things done.

Tracker, I love tracker too. The way it gets all the files, emails, everything. The thing that always made me love it was it isnt slow. It has so many things to look through and it still isnt slow. Id love for it to be included by default again in ubuntu. For Gnome 3 if we had Zeitgeist and tracker included we would be able to get a lot of info and have a complete use history for each file (with zeitgeist) and have the metadata and cool stuff that tracker has. Exciting stuff (well for me who is interested in somewhat boring stuff)

Vala, my first programming language is Java. Then I went on and learned VB and assembly as part of my college course. Then I learned python and a few other languages(most of the main ones). The problem was that im most familiar with Java and im getting better at the others but I still wanted to find an alternative. So then I gave Vala a try and its really fast and all the Gnome stuff (GTK…etc) have bindings for it so I love it.

Quickly, Python-Snippets, Acire and Lernid. All of these projects are awesome in their own way. Quickly makes it easy to do the hard stuff in programming, starting, packaging and distributing and lets you get down to the fun bit making a project do awesome things. Python-Snippets and Acire help you do the programming. The snippets show you what to do and you can copy them into your own projects. It contains code from the simple to slightly more advanced stuff. The whole point is learning. Acire is the viewer for the Snippets and allows you to view the code but also execute it too which is cool.
Lernid is a project to make it easy to contribute to IRC events like ubuntu open wee, ubuntu user days, bug jams..etc. It has some awesome features other than simply viewing the IRC event you can also view information posted by the event host, which is really cool.

Ok so I talked a lot there so ill just give a quick list of some more cool stuff I like. Liferea, Gwibber and Inkscape check all those out too.

Gnome 3 world wide release parties

GNOME2

At the last Gnome marketing meeting an interesting idea came up. That was to have a ubuntu loco style release party for Gnome 3 this fall. The proposal is here, im sure sponsors are welcome.
I have to stress its a cross community effort so Ubuntu, Fedora, Open Suse, Open Solaris, Mint, Debian….etc everyone who uses Gnome, develops Gnome, free and open source software lovers or people just wants to party all are welcome. I have emailed or pinged the community managers of a few distros but we need everyones help to make it happen.

Lets make it awesome :)

Debunking Gnome 3 myths

Some people are slightly confused about what Gnome 3 actually is. The biggest myth is

Gnome Shell == Gnome 3

Actually its very far from the truth, in fact there is a lot of work that has nothing to do with user interface.

The second biggest myth is

Gnome will drop all support for Gnome-Panel

Actually it will be fairly easy to go back to Panel if you dont like Gnome-Shell its just “gnome-panel –replace” in command line.

Here is a list of some of whats going on (If I forget some please feel free to comment and add them).

You can see the release announcement here. For one its a redefining of the user experience with Gnome-Shell. Its also Gnome activity journal which will bring a new level of convenience to the desktop. There will be a lot of integrating of web technologies like webkit and javascript(which is what gnome shell is written in). A lot of outdated technologies will be deprecated and new technologies introduced. A new Gnome website too.

Gnome-Shell
There is some cool mockups and info about shell here.
This is the one huge change, removing the old gnome panel written back eight years ago and replacing it with a new fresh user interface. It is written in Javascript and uses CSS for theming. Gnome Shell uses Clutter for the display and it is very exciting looking at the beauty of Moblin which uses Clutter already. It features a simple desktop and an activities area that gives and overview of workspaces and allows the user to do all of what it does currently. It also has a built in notifications system and will soon get its own applcation indicators. Its not a huge change but it adds some new eye candy to the Gnome experience.

Gnome Shell activities with 2 workspaces

Gnome Shell Activities

Gnome Shell desktop

Gnome Activity Journal and Zeitgeist
This is very cool and has a load of awesome applications throughout the desktop. Zeitgeist is an engine which simply gets your activity from the programs you use, files you open, pages you open, code you view or edit and so on. Gnome Activity Journal uses Zeitgeist, tracker and telepathy to offer a complete timeline of your activities and the history of your files. Telepathy integration is also coming for to the journal for added collaboration.
What Zeitgeist offers is that it replaces GTK recently used and it can show you what activities you do most for each program. Zeitgeist and tracker will have all the information about you and your files and will add a never before seen level of information and relevance. Here is a nice video of Gnome Activity Journal in action.

Use of web technologies
The use of web technologies is very important, it enables developers from the single largest area of development to contribute. It also leverages all the goodness being done in this area. So we can use webkit to make a really cool program made using HTML, CSS, XHTML, Javascript, Ajax… Also as I mentioned above Gnome Shell is being written in Javascript to lower the barrier for new developers coming from other platforms.

Deprecation of old technologies and increasing use of new ones
Cleaning up is awesome, the Gnome platform hasnt had a big clean up in a long time and its starting to get crowded. The main changes are moving fully over to the dbus and moving to dconf. This will streamline the platform substantially.

The new Gnome Website
This looks really awesome.

Screenshot-About GNOME
So whats coming is a clean up, a new user experience, new technology and a new website. I hope this post clarifies Gnome 3 for people and I hope you are as excited as I am :)

The next Kernel Bug Day

Passing on a message from Leann on the Kernel team.

Hi All,

This is a friendly reminder that we’re starting up Kernel Bug Day’s
again for the new year. Don’t know what a Kernel Bug Day is [1]?
This is the perfect opportunity to find out what it’s all about.

The next Kernel Bug Day will be held Tues. 19 Jan, 2010 [2]. We’ll be
focusing on bugs with a closed upstream bug watch. These would be good
targets in Launchpad to overlook and possibly close as well. Please
join us Tuesday in the #ubuntu-kernel IRC channel on FreeNode as
we tackle this list of bugs together.

Thanks in advance,
Leann

[1] https://wiki.ubuntu.com/KernelTeam/BugDay
[2] https://wiki.ubuntu.com/KernelTeam/BugDay/20100119

Gnome activity journal

I blogged about zeitgeist a lot back last year so I thought id give a little blog post about gnome activity journal(formally gnome-zeitgeist) the old version looked a little bad but seif and the guys have done an awesome job with the new version. Ive been following the progress of the project and the code closely and its a real testament to the open source movement how quickly both zeitgeist and gnome activity journal are being developed. Oh and dont mind that my screens are a little empty I removed some files so they were removed from the journal.
I helped make the read code thing originally but since they changed up the engine its a lot different from what I did but still works well :)
Anyway if it gets any more awesome ill want it in ubuntu for lucid+1 because it will(more than likely be Gnome 3)
Screenshot
Screenshot-1

Simply better collaboration

Ive noticed over the ~2 years ive been contributing that we are big on collaboration but one thing I noticed was a slight lack in communication between the technical contributors and the non-technical contributers. Its not too bad but it could be a lot better in my opinion. Other than the report a bug option and the translate this application buttons in the help of most programs we dont advertise the areas that people could help out with.

Ubuntu documentation has loads of problems with lack of collaboration. The problems are very simple developers change stuff(as they should) but ubuntu documenters generally dont hear about the changes till late in the release because a lot of the writers are non-technical. GRUB 2 was introduced in karmic and it wasnt documented which got a few bug reports that could have been avoided with people testing earlier in the cycle and picking up on the mistake or the developer asking someone to document the changes.

Also in help and support we could have a make this page better button maybe. Id love if we could add a button to help and support to open empathy on #ubuntu on freenode so people can ask questions if they are really confused.

On a wider scale we need to have better QA involvement with the users at earlier stages in the release cycles. Also if people could help out with the testcases page and fill it with easy tests that people can do to test functionality of programs in the base install, this will help users by letting them know what to test and how to do it.

Does anyone else have any ideas to improve collaboration? I think that with some small improvements we can improve a lot.

Lowering the programming barrier

I love quickly and quidgets just for the simple reason they lower the barrier for potential programmers to join in and start easily. But it makes me think that gtk is getting old and its showing its oldness by not being too friendly to write using. This is a major problem because lets say you want to do hello world in java its two lines of code (I cant remember it off hand but ill dig it out if anyone cares). Here is the pygtk example I found for hello world http://www.pygtk.org/pygtk2tutorial/ch-GettingStarted.html#sec-HelloWorld. Maybe im a little lazy when it comes to the boring stuff in programming but I really think we should have a nice group of one liners to…
A. print a message
B. ask a yes or no question
The main reason im saying all this is the same reason Microsoft created VB (and VB is very very simple). VB is the perfect example of lowering the barrier. We have glade and its ok but there are some problems and we have pygtk if you dont like using point and click ui drawing. The problems with glade are very simple, it needs grids to layout everything and the UI of the designer sucks. The problem with pygtk and gtk in any language is that its a big hassle.
What VB does right is its a very simple language and a very simple interface. Ok your not going to do any great programs written in it because it would drive you mental and if you are an experienced programmer you will be annoyed by how rigid it is. The main thing is it lowers the barrier, anyone can use it.
What java does right is that it has UI designers and it has one liner code to handle small stuff.
I think the problem stems from how, when and who developed gtk and glade. They were both made by very smart people and it works perfect for them and most other people but it isnt made to be easy, its made to be functional. Im not saying scrap everything im saying look again and see what can be simplified and what can be nicer. The when is simple it was designed back in 1998-2000 so its at least 9 years out of date in terms of style. How is also simple it gtk was made as a big functional tool kit that works because thats all they wanted and needed at the time. They more than likely didnt think of a wider audience using it.
And all projects from time to time need to have a long hard look at themselves and see what needs changing. Firefox is changing itself open office is doing it too why not gtk? why not every old project in gnome? I think what is needed is competition to drive the need for change otherwise we just put up with the good and the bad.
Oh and sorry to all the kde folks I dont have a clue about the state of your GUI programming but it looks nice :)