Monthly Archives: January 2005

My Life In Film

From BBC3 comes My Life in Film, a great little comedy that will hopefully go beyond the 6 episodes already shot. Here’s a review of it. You can watch clips on the BBC website linked above.
It looks like there’s one more episode so make sure to set it up in your Sky personal planner, or set all your alarm clocks to go off at 9.30pm next Sunday night and tune in to BBC2!

A9.com -Yellow Pages – Copyrighted Buildings?

Nice, the Yellow Pages on a9.com have photos of the places you’re looking for, as long as you live in the good ol’ US of A!
I wonder if they got the permission of all building owners to take their photos. The images of all buildings built after 19xx are proteced by copyright.
Ah, here’s the details. It’s all buildings built after December 1st, 1990. In general any building viewable from a public place is ok to photograph.
The a9 search engine is nice too!

Can I run Windows viruses in Linux?

It’s almost possible, but the results in this article on running Windows viruses with Wine are disappointing. There are problems but things are improving so Linux users can enjoy all the benefits of Windows!

It just isn’t fair that Windows users get all the viruses. I mean really, shouldn’t Linux users be in on the fun as well? Well… thanks to the folks running the Wine project, Linux users can “catch the virus bug” too — sort of.

Creating Panoramic Photos with the GIMP

Caoimhe asked me to elaborate on how I created the panoramic photo that currently appears at the top of this page. Here’s how. You can download all the images I used (although they’re much smaller than the originals!) but the techniques described will be useful for other photos too.

  • Load dsc06627.jpg, dsc06628.jpg and dsc06629.jpg into the GIMP.
  • Create a new 1920×640 RGB image.
  • Copy/paste dsc06629.jpg into the new image and move it to the left of the frame.
  • Look at the layers dialog and right click on “Pasted Layer” and select “New layer”.
  • Do the same for dsc06628.jpg and dsc06627.jpg moving them over to the right before making them into new layers. No need to line them up right away.
  • Now line up “Pasted Layer#1″ with “Pasted Layer” as best you can. It helps if you select “Pasted Layer#1″ and move the Opacity slider to about 50%. Concentrate on getting the right side of the layer lined up with the bottom layer. The left side is always overlapped by the layer above.
  • Now set the opacity to 100% again! You’ll hopefully see the mountains in the background join up nicely!
  • You’ll have to adjust the colour of “Pasted Layer#1″ – Use Layers->Colours->Colour Balance, and Hue-Saturation. Don’t worry if the colours don’t match exactly.
  • Do the same with “Pasted Layer#2″. Getting the trees lined up is a bit of a pain because of the branches, but if you clone out the branch tops after aligning it helps.
  • When that’s done, you need to match up the layers using a layer mask and a gradient: select “Pasted Layer#1″, right click, and click “Add Layer Mask”, and click “OK”. Select the gradient tool (press “L” if you can’t find it) and draw a gradient from the top-left corner to the center of the layer. Click on the layers dialog again and “Apply Layer Mask” and then use another gradient on “Pasted Layer#1″ to match up the right of that layer with “Pasted Layer#2″.
  • Crop the image, remove the white background and get rid of the rough edges!

You can look at sneem-panorama.xcf to see the layers and effects I used.
As part of your digital workflow you should also use the Layers->Colours->Curves, Hue-Saturation and Levels tools, and Filters->Enhance->Unsharp Mask plugin to improve the final image.

Sneem Sunset – 3 photo panorama

The picture above is a panorama made up of 3 hand-held shots taken in Sneem, Co. Kerry.

Stitching them together in the GIMP was fairly easy – adjust colours and brightness, line them up using semi-transparent layers and then use a layer mask and a gradient to make the joins mostly invisible. The tree branches were a bother though – I had to clone out some of them!

I really should document some of this stuff as this was a good example – because of the sunset each photo had very different light qualities and it was important to fine tune and match those colours.

F-Spot mini review

I like F-Spot. It’s useful, it does tagging that no gqview and gthumb don’t. It has organisation features that they don’t have either, but it’s a little too buggy for widespread use yet.
It was really easy to use however. Just “import” a few directories of photos, create a few tags, and then select a few photos, right click and add a tag to those photos.
Unfortunately it crashed a few times after an import, and exif reading seemed to be completely broken but then I never checked if the proper library was installed. Except for rotating, I *never* use a simple photo viewer to manipulate images so I didn’t try out those features of the app. IMO that’s a job for the GIMP and I save modified files to a new directory.
I’m going to keep a close eye on it to track how it progresses. It’s shaping up to be a great desktop application!
A hint for Gnome users – if you haven’t got much room in your home directory move the “~/.thumbnails” folder out of the way somewhere else with plenty of space and symlink it back. Mine’s at 171MB and growing fast!

While we’re on the mono theme, a mono developer, zbowlin1 on #wordpress attracted my attention when he said..

<zbowlin1> I just did something really really cool. I have a much better version of php+gtk by calling the GTK and System.Windows.Forms (SWF/MWF) classes using PHP as a runtime and using the .NET/Mono invoking classes in PHP :-)
<zbowlin1> I just made php as runtime and used GTK# like a runtime, and used my Gecko# port and opened a stream and used PHP methods like calendar and Smarty and stuff to generate the content for the page.. most php scripts should work and you can run them and render tables and stuff in gecko#/gtkhtml windows and the rest in lables and menus
<zbowlin1> its like a much much better, cross platform (thanks to mono), PHP+GTK that kills the crap out of the need to make stubs and makes it gtk2 compatible and opens up billions and billions of possibilities for people who only write PHP or people who want to code one set of common functions for like an application version and web page version.. and it can work on the fly
<zbowlin1> humm… i’m on the mono team and i’ve working on my C# based offline wordpress blog writer with a WYSIWYG interface and spell check.. this just made that idea like 3923501235 * better
<zbowlin1> i don’t have to rewrite interfaces. I can use built in php xml-rpc support. AAAAH man it boggles the mind the amount of possiblities..
<zbowlin1> you can gain access to xpcom in mozilla so you can automate XUL with PHP… you could write Mozilla extensions php.. you can call anything, or do anything, on mac, windows, linux, freebsd, etc..
<zbowlin1> holly crap
<zbowlin1> i’m mind boggled
<Firas> XUL and GTK are pretty different toolkits?
<Firas> * aren’t
<zbowlin1> they are very different
<zbowlin1> but xul will render with gtk and gtk2 if you have them
<Firas> oh, right
<zbowlin1> but it also render with QT, Win32, Cocoa, BeOS, etc
<Navid> XUL is nuts. I need to pick up on that.
<zbowlin1> you write everything mostly in javascript and xml
<zbowlin1> you could write the blogging interfaces and menus into my interfaces… if you have local access to the database it should work that way but you could automate it with some work and make it work with XML-RPC

zbowlin1 is at zacbowling.com and go-mono.net
I always want to create cross-platform applications, if .net and mono can do that I need to look more closely at them!