Runtime Revolution
 
Articles Other News

New Development Team Member Boosts Linux

Tim Shields is interviewed by Heather Nagey

I'm delighted to introduce to the Revolution community, Tim Shields, our latest addition to the development team. Today I caught up with him at the Runrev offices, and interrupted his work to ask him how he's finding working for Runtime Revolution and what he's been doing.

So, tell us a bit about yourself. What's your background?

I graduated from St. Andrews university with a degree in IT. I spent the next 7 years working for the Ministry of Defence, mostly on simulations and synthetic environments. Most of the work was using Unix and VMS boxes. VMS is an old operating system, somewhat like Unix. Most people think its now extinct, but its still quite widely used in highly secure environments.

That sounds interesting, why did you leave the Ministry of Defence to work for Revolution?

I hated living in London, so I moved to Scotland to work on call centre software. After a while I became bored with this, so I started to look for something more challenging. I wanted to get über geeky...

Well you certainly have your wish with Revolution! What is your role with us?

My job title is Senior Software Engineer in the technical division.

And what does that actually mean?

Well, at the moment it means working on the Linux port.

How does working with Revolution compare with your previous programming languages?

Well, so far I haven't done any programming in Revolution! I've been working on the engine, in C++, which is one of the languages I've used previously, so that has been a very smooth transition.

How do you find working here?

I like it. Its a small company, everyone is very dedicated and very technical - its exactly what I was looking for.

So, tell us about the Linux port, how is that going?

Its going very well. Its a big task because there have been many changes between version 2.8.1 and the last shipping Linux version, which is 2.6.1. Some of these changes include alpha blending and anti aliased graphics, for which a whole new graphics engine was written. I've been implementing this on X11.

Can you tell us a little more detail about this project?

Well, let's see, we've updated the externals interface to use shared libraries, implemented the new date/time protocols, updated the graphics architecture to support alpha-blending/inks and got native GTK file dialogs working. We're about to start on updating the old GTK theming implementation.

We've also got zip and xml externals up and running as shared libraries, and revdb is making good progress. There's still a few other things to be done such as drag/drop support, alpha-blended windows and better font handling but we do now have a pretty stable engine capable of most of the 2.8.1 feature set. Indeed, I've been working in it myself lately and been successfully running our Runrev office Revolution applications.

Do you have any screenshots you could share with us?

Sure.

This shows Revolution running on Ubuntu linux using native X11 controls. The user interface is open, with a tutorial stack showing alpha blending. You will notice that the "Open" dialog is the native GTK open dialog box rather than the older Rev "Open dialog" stack
Here's another screenshot just showing some Alpha blending stuff more clearly:


That looks really promising, when do you think you might have a beta for Linux?

You'll have to ask Mark Waddingham about that... I'm told its company policy never to give release dates in advance...

What has been your biggest programming challenge to date?

That would be doing the new graphics for X11. Its client/server architecture doesn't lend itself well to this as the display on screen is actually stored on a server, and has to be fetched for the application. The application itself doesn't have direct access, we have to pull the data to the client side, then put it back, and this can be rather slow. We've done a lot of work on optimising this in various ways.

I hear that Mark Waddingham is a hard taskmaster, is this true?

Well, not since I've worked here, but he might just be letting me settle in! The hardest part is that he seems to have memorised every single line in the Revolution code base and quotes it copiously, so just understanding what comes out of his mouth can be quite challenging.

Thank you very much for your time! I'll let you get back to work now, and we're all looking forward very much to seeing this Linux port come to fruition.

 
©2005 Runtime Revolution Ltd, 15-19 York Place, Edinburgh, Scotland, UK, EH1 3EB.
Questions? Email info@runrev.com for answers.