AlanHorkan is currently certified at Master level.

Name: Alan Horkan
Member since: 2002-09-14 15:39:05
Last Login: 2011-07-18 01:29:52

FOAF RDF Share This



Code may not be my main contribution to Open Source but I make myself useful with a little bit of everything (usability, bugfinding, general helpful encouragement).
Alan particularly likes cross platform software like AbiWord, Mozilla, OpenOffice, and projects like Inkscape, Dia> and the GNU Image Manipulation Program.

Alan is moderator of the Gnome Usability Mailing list.
Alan can often be found on usually on the channel #abiword.
Alan's email address is horkan a at maths dot tcd dot ie
Alternatively you can try contacting alanhorkan at Gmail or Yahoo! although these addresses get checked far less often.

LiveJournal for Alan Horkan
Technorati Profile for Alan Horkan


Articles Posted by AlanHorkan

Recent blog entries by AlanHorkan

Syndication: RSS 2.0

SK1 Print Design adding support for Palettes (Colour Swatches)

SK1 Print Design is an interesting project. They found the vector graphics program Sketch was useful to their business, and maintained their own customized version, eventually becoming a project all of their own. I'm not involved with SK1 Print Design myself but I do follow their newsfeed on Facebook, where they regularly post information about their work.

They have added import and export support for a variety of Colour Palettes, including SOC (StarOffice Colours, i.e. the OpenDocument standard used by and LibreOffice) and CorelDraw XML Palettes and more. For users who already have CorelDraw this should allow them to reuse their existing Pantone palettes.

They are also continuing their work to merge their SK1 and PrintDesign branches. The next release seems very promising.

Syndicated 2015-05-27 14:01:55 from Alan Horkan

How to open .pdn files? or: Things I wish I'd known earlier. is a graphics program uses its own binary file format .pdn that almost no other program can open. has a large community and many plugins are available including a third part plugin that adds support for OpenRaster. is written in C# and requires the Microsoft .Net runtime, meaning current versions work only on Windows Vista or later.

If you need to open PDN files without using there is an answer! Lazpaint can open .pdn files and also natively supports OpenRaster.

In hindsight using Lazpaint would have been easier than taking a flat image and editing it to recreate the layer information I wanted. Although I respect the work done by it is yet another example of time wasted and hassle caused by proprietary file formats and vendor lock-in.

Syndicated 2015-05-15 15:51:24 from Alan Horkan

Usability and Playability

I could be programming but instead today I am playing games and watching television and films. I have always been a fan of Tetris which is a classic, but I am continuing to play an annoyingly difficult game, that to be honest, I am not sure I even enjoy all that much, but it is strangely compelling. My interest in usability coincides with my interest in playability. Each area has their own jargon but are very similar, the biggest difference is that games will intentionally make things difficult. Better games go to great lengths to make the difficulties challenging without being frustrating, gradually increasing the difficulty as they progress, and engaging the user without punishing them for mistakes. (Providing save points in a game game is similar to providing an undo system in an application, both make the system more forgiving and the users allow users to recover from mistakes, rather than punishing and them and forcing them to do things all over again.)

There is a great presentation about making games more juicy (short article including video) which I think most developers will find interesting. Essentially the presentation explains that a game can be improved significantly without adding any core features. The game functionality remains simple but the usability and playability is improved, providing a fuller more immersive experience. The animation added to the game is not merely about showing off, but provides a great level of feedback and interactivity. Theme music and sound effects also add to the experience, and again provide greater feedback to the user. The difference between the game at the start and at the end of the presentation is striking, stunning even.

I am not suggesting that flashy animation or theme music is a good idea for every application but (if the toolkit and infrastructure already provided is good enough) it is worth reconsidering that a small bit of "juice" like animations or sounds effect could be useful, not just in games, in any program. There are annoying bad examples too but when done correctly it is all about providing more feedback for users, and helping make applications feel more interactive and responsive.
For a very simple example I have seen a many users accidentally switch from Insert to Overwrite mode and not know how not get out of it, and unfortunately many things must be learned by trial and error. Abiword changes the shape and colour of the cursor (from a vertical line to a red block) and it could potentially also provide a sound effect when switching modes. Food for thought (alternative video link at Youtube).

Syndicated 2015-05-03 22:38:18 from Alan Horkan

OpenRaster with JPEG and SVG

OpenRaster is a file format for layered images, essentially each layer is a PNG file, there is some XML glue and it is all contained in a Zip file.

In addition to PNG some programs allow layers in other formats. MyPaint is able to import JPG and SVG layers. Drawpile has also added SVG import.

After a small change to the OpenRaster plugin for The GNU Image Manipulation Program, it will also allow non-PNG layers. The code had to be changed in any case, it needed to at least give a warning that non-PNG layers were not being loaded, instead of quietly dropping them. Allowing other layer types was more useful and easier too.
(This change only means that other file types with be imported, they will not be passed through and will be stored as PNG when the file is exported.)

Syndicated 2015-04-12 18:08:16 from Alan Horkan

OpenRaster Paths (or Vectors)

Summary: plugin updated to allow round-trip of paths.

The MyPaint team are doing great work, making progress towards MyPaint 1.2, I encourage you to give it a try, build it from source or check out the nightly builds. (Recent windows build Note: the filename mypaint-1.1.1a.7z may stay the same but the date of build does change.)
The Vector Layers feature in MyPaint is particularly interesting. One downside though is that the resulting OpenRaster files with vector layers are incompatible with most existing programs. MyPaint 1.0 was one of the few programs that managed to open the file at all, presenting an error message only for the layer it was not able to import. The other programs I tested, failed to import the file at all. It would be great if OpenRaster could be extended to include vector layers and more features but it will take some careful thought and planning.

It can be challenging enough to create a new and useful feature, planning ahead or trying to keep backwards compatibility makes matters even more complicated. With that in mind I wanted to add some support for vectors to the OpenRaster plugin. Similar to my previous work to round-trip metadata in OpenRaster I found a way to round-trip Paths/Vectors that is "good enough" and that I hope will benefit users. The GNU Image Manipulation Program already allows paths to be exported in Scalable Vector Graphics (SVG) format. All paths are exported to a single file, paths.svg and are imported back from that same file. It is not ideal, but it is simple and it works.

Users can get the updated plugin immediately from the OpenRaster plugin gitorious project page. There is lots more that could be done behind the scenes, but for ordinary users I do expect any changes as noticeable as these for a while.

Back to the code. I considered (and implemented) a more complicated approach that included changes to stack.xml, where raster layers were stored as one group, and
paths (vectors layers) as another group. This approach was better for exporting information that was compatible with MyPaint but as previously mentioned, the files were not compatible with any other existing programs.

To ensure OpenRaster files that are back compatibility it might be better to always include a PNG file as the source for every layer, and to find another way to link to other types of content, such as text or vectors, or at some distant point in the future even video. A more complicated fallback system might be useful in the long run. For example the EPUB format reuses the Open Packaging Framework (OPF) standard, any pages can be stored in multiple formats, so long as it includes a fallback to another format, ending with a fallback to a few standard baseline formats (i.e. XHTML). The OpenRaster standard has an elegant simplicity, but there is so much more it could do.

Syndicated 2015-04-06 22:00:30 from Alan Horkan

372 older entries...


AlanHorkan certified others as follows:

  • AlanHorkan certified cinamod as Master
  • AlanHorkan certified alan as Master
  • AlanHorkan certified AlanHorkan as Master
  • AlanHorkan certified hub as Master
  • AlanHorkan certified larsrc as Journeyer
  • AlanHorkan certified Uraeus as Master
  • AlanHorkan certified gman as Master
  • AlanHorkan certified bradyn as Apprentice
  • AlanHorkan certified sisob as Master
  • AlanHorkan certified wlach as Master
  • AlanHorkan certified caolan as Master
  • AlanHorkan certified Telsa as Master
  • AlanHorkan certified jdub as Master
  • AlanHorkan certified glasseyes as Master
  • AlanHorkan certified Adrian as Journeyer
  • AlanHorkan certified tml as Master
  • AlanHorkan certified RyanPavlik as Master
  • AlanHorkan certified joncruz as Apprentice
  • AlanHorkan certified louie as Master
  • AlanHorkan certified miguel as Master
  • AlanHorkan certified robsta as Journeyer
  • AlanHorkan certified msevior as Master
  • AlanHorkan certified bwh as Master
  • AlanHorkan certified Spooky as Master

Others have certified AlanHorkan as follows:

  • AlanHorkan certified AlanHorkan as Master
  • hub certified AlanHorkan as Journeyer
  • larsrc certified AlanHorkan as Apprentice
  • mhatta certified AlanHorkan as Apprentice
  • sisob certified AlanHorkan as Journeyer
  • voltron certified AlanHorkan as Apprentice
  • Uraeus certified AlanHorkan as Journeyer
  • ariya certified AlanHorkan as Journeyer
  • Perrin certified AlanHorkan as Journeyer
  • wlach certified AlanHorkan as Apprentice
  • strider certified AlanHorkan as Journeyer
  • fxn certified AlanHorkan as Journeyer
  • ladis certified AlanHorkan as Journeyer
  • mdupont certified AlanHorkan as Apprentice
  • byte certified AlanHorkan as Journeyer
  • glasseyes certified AlanHorkan as Apprentice
  • RyanPavlik certified AlanHorkan as Journeyer
  • bolsh certified AlanHorkan as Apprentice
  • mikeycooper certified AlanHorkan as Journeyer
  • chrisime certified AlanHorkan as Journeyer
  • Lobster certified AlanHorkan as Journeyer
  • mirwin certified AlanHorkan as Apprentice
  • wspace certified AlanHorkan as Journeyer
  • zbowling certified AlanHorkan as Journeyer
  • pvanhoof certified AlanHorkan as Master
  • superant certified AlanHorkan as Journeyer
  • dragotown certified AlanHorkan as Journeyer
  • lucasr certified AlanHorkan as Journeyer
  • shlomif certified AlanHorkan as Master

[ Certification disabled because you're not logged in. ]

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

Share this page