Friday, March 20, 2009

New Job

So, tomorrow I finish my current job and move onto new things on Monday. I'm joining Canonical as a GNOME Desktop Engineer to work alongside well-known GNOMEers like Martin Pitt and Sebastien Bacher. A few years ago I hadn't seriously considered I could spend my day job working open-source so am very excited to get stuck in. Watch this space...

Tuesday, July 29, 2008

I'm Going To Scale My Foot Up Your Ass

A workmate pointed me to an article on the Register by Ted Dziuba about threads (one of my personal hates) which made me laugh out loud. This guy can really poke some fun at the buzzwords that float around the blogosphere.

So if you're not afraid of some fairly strong languange then check out his abuse against threading, scalability and serialization.

Sunday, May 18, 2008

Gcalctool 5.23.2

The GCalctool team is proud to announce the second release in the
unstable GNOME series.

The following changes have been made from 5.23.1:

  • The cursor now behaves correctly when editing numbers with thousands separators (Bug #527669)

  • Structural changes in preperation for full unicode support (Bug #530532)

  • Updated translations: es (Jorge González), gl (Ignacio Casal
    Quinteiro), nb (Kjartan Maraas), nl (Tino Meinen), pt_BR (Leonardo Ferreira Fontenelle), sl (Matej Urbančič)


The release is available from:
http://ftp.gnome.org/pub/GNOME/sources/gcalctool/5.23/

Wednesday, May 14, 2008

glChess on Win32

After a bit of hacking glChess can run on Windows. The only thing that would take major work is the AIs as they are forked off the main process (fork() is not supported in Windows). But aside from that with a few minor changes and running directly from the source leads to this:



I was very impressed with the quality of the Windows packages for the dependencies. When I tried this about a year ago it didn't appear they were all supported. They are now:

Python
* python-2.5.2.msi

Setuptools
* setuptools-0.6c8.win32-py2.5.exe

GTK
* gtk-2.12.9-win32-2.exe

PyGTK
* gtk-2.12.9-win32-2.exe
* pygobject-2.14.1-1.win32-py2.5.exe
* pycairo-1.4.12-1.win32-py2.5.exe
* pygtk-2.12.1-2.win32-py2.5.exe

Python Imaging Library
* PIL-1.1.6.win32-py2.5.exe

PyOpenGL
* PyOpenGL-3.0.0b1.win32.exe

PyGtkGLExt
* pygtkglext-1.1.0.win32-py2.5.exe

Gnome Games
* gnome-games-2.23.1.tar.bz2

Friday, May 09, 2008

Hello Planet

Since my posts are now being amplified by Planet Gnome I should take this time to introduce myself... Hi, my name is Robert Ancell and I am an open-source developer currently active in Gnome Games (particularly the chess game which I started many years ago and was merged into Gnome in 2.18) and I am the maintainer of GCalctool having taken over from Rich Burridge for the 2.22 release (I swear he sneaked that over to me when I wasn't watching ;) ).

In my more pays-the-rent side of life I am a software engineer having come from an embedded background and now working for a large financial organisation in Sydney, Australia. I get into open-source code when I have some spare time which leads to fairly unpredictable progress on projects (actually I normally find I have time after a release so I get a release worth of duplicates before the change is released - now that's Murphey's law!).

My goals for Gnome currently is to get the code I'm working on simpler and more reliable. This goal will inevitable slip when I find some flashy feature to introduce :).

p.s. I don't actually play chess so fear ye all who left me writing the Gnome version!

Apport/Bug Buddy disabled in Ubuntu 8.04?

After upgrading to Ubuntu 8.04 it appears my automatic bug reporting is disabled. Due to the number of Ubuntu sourced reports coming in for Gnome Games it can't be disabled on everyone's system... So a bit of investigation showed it might be apport. Looking in /etc/init.d/apport showed this was disabled so I enabled that by editing /etc/default/apport and set enabled=1. After /etc/init.d/apport restart I could happily file away a nautilus bug.

But wait a minute... That report went to Launchpad, not Gnome Bugzilla! (Wouldn't it be a nice world in which Ubuntu got the flood of duplicates for the things we fix but they never update </gripe>). It appears apport is only enabled during development so I shouldn't have had to enable it. I figure it is bug-buddy that normally catches bugs and sends to Gnome; is anyone else getting this/know how to tell if the crash catcher is running?

Sunday, April 20, 2008

Gcalctool 5.23.1

The Gcalctool team is proud to annouce the release of Gcalctool 5.23.1.
This release contains a number of bugfixes:
* Fixes a number of compiler warnings (Bugs #526976, #526702, #527318)
* Fixes incorrect negation precedence (Bug #526094)
* Fixes issues with thousands seperators and radix in non-english
locales (Bug #527669)
* Fixes regression in constant and function menus (Bug #527545)
* Fixes problem where display is invisible after solving equation
(Bug #524602)

Get it from:
http://ftp.gnome.org/pub/GNOME/sources/gcalctool/5.23/

Tuesday, April 08, 2008

Gcalctool 5.22.1

I was flicking through the GNOME reminders for the 2.22.1 release not really thinking then I realised for Gcalctool that means me... So on the last day I ran through the release instructions (very well written). Got through all the steps except make distcheck isn't working and I didn't have the permissions to upload (got the outgoing maintainer Rich to do that step).

Anyway; let the announcing begin!

The Gcalctool team is proud to annouce the release of Gcalctool 5.22.1.
This release contains the following changes:

  • Fix for bug where the initial zero in the display was not cleared (bug #520525)

  • Support bracket and multiply keys on non-english keyboards (bugs
    #521620 and #526671)

  • The replacement of sprintf() and strcpy() with the safer snprintf()
    and strncpy() (bug #520769)

  • Remove a .svn directory from the release tarball (bug #524025)

  • Updated translations bg(Yavor Doganov), en_GB(Philip Withnall),
    et(Ivar Smolin), pl(GNOME PL), sk(Marcel Telka).

  • New maintainer; Robert Ancell takes the reins from Rich Burridge.


Get it from:
http://ftp.gnome.org/pub/GNOME/sources/gcalctool/5.22/

Thursday, January 24, 2008

Wednesday, January 23, 2008

Linux is just great

Got this email from my father the other day:

Just to let you know that I think Linux is just great. I plugged in the old Cannon Printer and the HP 3300C Scanjet and they both worked without a hitch.

I think I installed 5.04 on my fathers laptop a few years ago. I upgraded him to 7.10 the other month (he would have been able to do it himself but I had to flash the bios to get rid of a password and enable CD-ROM booting). The only additional application he needs to add is Gramps (Genealogy). From the perspective of someone wanting things to "just work" each release has been definitely been getting better.

Saturday, January 19, 2008

The Gnome Foundation

Well I'm now a member of the Gnome Foundation and I'm about to take over maintainership of gcalctool. Looks like my plans to become more involved in Gnome is coming along nicely...

Wednesday, December 19, 2007

Sharing media with Xbox 360

My flatmate has an Xbox 360 so I thought I should I should work out how to share my media from my Ubuntu laptop...

Turns out to be pretty simple.

  1. Install ushare. There is a ushare and libdlna package to install

  2. Edit the config file in /etc/ushare.conf. Set USHARE_ENABLE_XBOX, USHARE_DIR and USHARE_IFACE

  3. Restart with /etc/init.d/ushare restart



Notes:

You don't need to add any routes that they recommend (as long as your default route is OK and you're only using one network interface). Remember to set the appropriate interface (in my case my wireless is eth1) as the USHARE_IFACE option.

The default config file in 1.1a had invalid config item names. All config items should start with USHARE_. The Xbox one did not in my default config file.

Sunday, December 09, 2007

Ubuntu Python Upgrading

The other day I went to a SyPy. One interesting thing I learnt from a Canonical employee I was talking to there is what caused a much duplicated glChess bug. The symptoms of the bug are basically glChess crashes on startup while upgrading due to not being able to import the glchess module. Unfortunately as an Ubuntu upgrade can take some time users tend to be looking for some small task to amuse themselves; say, playing a game :)

I'm not 100% sure of all the details but essential the following occurs when python files are upgraded in Ubuntu:
At some point in the upgrade the site-packages Python directory (which contains all the python modules to import) is moved/symlinked out of the way. This is done to avoid binary incompatibilities between .pyc files between Python versions. The .pycs are rebuilt and then the directory returns.

What this means for application developers like me... Files installed into bin/ directories remain so a user can launch the application but the libraries have dissappeared so the application will fail with an ImportError exception.

I'm not convinced the upgrade needs to be this dramatic as .pyc files are only a load optimisation but this means that the ImportError should be caught at the top level and the user warned they have an invalid install (a good thing to report anyway) or they are upgrading and must wait for the upgrade to complete.

Monday, November 19, 2007

Confused about sound on Linux?

I know I am... With the arrival of PulseAudio to join OSS, ALSA, GStreamer, aRts, ESOUND, NAS, Phonon etc etc it's a bit hard to see any clarity. A linux.com article clears up things a bit.

I seems to me the "standard" way for Gnome will probably be:
- Applications decode/generate audio using GStreamer
- GStreamer sends the audio to PulseAudio which performs volume control and routing
- ALSA drivers play the routed audio onto physical cards

All three projects have some overlap and do not require any of the others to work. OSS was replaced by ALSA. ESOUND was replaced by PulseAudio.

KDE is also using Phonon as a fourth layer for API stability and to allow applications an easy way to play sounds.

OpenGL 2.0



I noticed that since upgrading to Gutsy I appear to have OpenGL 2.0 support callable from Python... Since I've never done any OpenGL 2.0 and I have the Orange Book sitting beside my I should give it a try.

After hacking the installed libraries I got the early result of the shaders in the picture which shows hemispherical lighting (not possible in OpenGL 1).

It all seems to work quite well. I was working on some cell shading but changing shaders while drawing the scene makes everything go black. I hope it's not a driver/binding issue but something I'm doing wrong (can't work it out yet though). Hopefully sometime in the future there will be fluffy chess pieces too :)

As for putting this into glChess I think this one will have to be handled very carefully. There is enough bugs from differing OpenGL setups (and broken drivers) that the code will have to be very robust. When things start working better I'll add a secret gconf key that turns on the shaders for those in the know...

Tuesday, October 30, 2007

No more glchess.sourceforge.net

Well I finally got around to it and have removes glchess.sourceforge.net and the glChess launchpad account. They were very neglected and no longer appropriate with the work in Gnome. The sourceforge page now points to live.gnome.

That is all; move along.

Is Gnome for the 80%?

I work with Engineers with most of us running Ubuntu for day to day work. I however seem to be the only vocal supporter of Gnome. The loudest bunch of GUI users seem to be the KDE (Kubuntu) camp with the general complaint being "it's too simple/dumbed down" (also heard outside of work). My complaint with KDE is "it's too complex". :) The question is:

Is Gnome for the 80% of users like subversion?

I think that is the direction Gnome has been going in for some time and I think this is the direction Gnome should be going. In saying that I don't think Gnome leaves a power user like me high and dry. I like how Gnome keeps my day to day problems simple and for power tasks I stay in Gnome Terminal and use the odd app like Firefox, Gedit, Gimp, Inkscape, Glade and Meld.

Wednesday, October 17, 2007

Moving gcalctool UI to Glade

The another night the Gnome Calculator (another "core" open-source project without a website) was annoying me in how it has a separate memory register window. I'm a big fan of reducing the number of floating dialogs (unless there is a good reason to have them) so I made a patch to move this window inside the main window (Bug 485398). I blind tested this on Henry and he agreed it was better. Unfortunately it doesn't work when the numbers in the registers are huge (can't think of a good UI workaround) so it hasn't been accepted.

However I was foolishly tempted to convert the ~3500 line gtk.c into using Glade (Bug 485919). Which has been taking up all my glChess/GGZ development time but is nearly finished. But I think it's a useful addition for the future of gcalctool.

Saturday, August 25, 2007

Seam Carving for Content-Aware Image Resizing

This is a very cool algorithm. Makes me a little keen to go back to and do a signal processing post-graduate degree at Uni...



Researchers are Shai Avidan and Ariel Shamir.

Friday, August 03, 2007

Got a spare computer lying around?

Quite a cool idea; load a display driver onto a spare computer and use it as more screen real estate for another. The video showing it in action is quite impressive.