|
|
2003/01/02 - Julian Smart
wxWindows
An interview conducted by Alain Buret
Alain Buret - Please present yourself.
Julian Smart - Thank you for giving me a chance to speak at FOSDEM ! I'm Julian Smart, a 38-year-old open source enthusiast and independent software developer. I live with my wife (novelist) and daughter (singer, dancer, artist and Al Stewart fan) in an old stone cottage in a sleepy English market town called Stamford. Thankfully, Stamford isn't just quaint, it's also broadband-connected, pizza-ready and mocha-enabled.
For the last year I've enjoyed being self-employed, developing cross-platform software for writers (see www.storylinescentral.com) and for programmers (see www.helpblocks.com). I'm not sure what I'm going to do with the red fedora I acquired in my previous job !
Alain Buret - How did it all start?
Julian Smart - When I was working for the University of Edinburgh in the Artificial Intelligence Applications Institute, I wanted to write a diagramming application that worked on both Suns and PCs. My department was very Unix-oriented, and - slightly sceptical of the future of Unix at the time ! I wanted to make sure my app had a foot in both camps. So I started the wxWindows library to insulate the application from platform specifics, and in 1992 my bosses permitted me to put it on the department's ftp site. I hoped that maybe a few hundred people would find my code useful, but I had little idea it would prove as popular and enduring as it has turned out to be.
Alain Buret - wxWindows is already years old, but still very active with new ports appearing. What's the reason of that success ?
Julian Smart - It's extraordinary to think that it's ten years old, and attracting more interest than ever. I think there are two main reasons for its success: firstly, that some very talented developers adopted it and made it far better than I could have made it on my own. Secondly, the main value of wxWindows is its API - each port is 'merely' an implementation of the API, and when a new GUI comes along, wxWindows transfers to it like some alien parasitical life form. So by its very nature it adapts and survives, as different widget sets and operating systems come and go.
Of course, there are many other contributory factors, such as the enabling infrastructure of the Internet, the fact that people love to be involved in this kind of project, the existence of slightly better documentation than some of the competition, the fully open source licence, and the fact that a good choice was made in implementing ports using native widget sets.
Alain Buret - If I'm correct, wxWindows has other toolkits as its base for each platform it wants to work on (WIN32 on windows, GTK+ on GNU/Linux, etc). There is even an embedded port! What about a port to QT/Qtopia? Is the fact that QT is far more than a widget toolkit (and already cross-platform) a reason why it has not been used as a base ?
Julian Smart - As you say, wxWindows sits on top of other widget sets - in most cases. However there are some platforms that simply don't have a standard widget set, and for the embedded ports - wxX11 and wxMGL - we've used our own widget set, dubbed 'wxUniversal'.
Ah, wxQt - the case of the missing port. It comes up from time to time on the mailing list but no-one has yet been sufficiently motivated to start the port. The fact that it would be a fully-featured C++ toolkit on top of another fully-featured C++ toolkit could indeed be a disadvantage but there's another problem: legality. TrollTech have never clarified whether they would permit a wxQt port, despite a fair number of emails. I can't imagine they'd be wild about it!
While a wxQt port would have the advantage of making wxWindows apps look native under KDE (and allow them to run under Qtopia), I don't think these are sufficient advantages to justify the port. Linux fans are used to a certain amount of GUI inconsistency by now. We'll see to what extent we can make the wxX11 port blend into a KDE environment by suitable use of wxUniversal themes.
Alain Buret - How would you compare wxWindows to GTK+ and Qt? What would you give as main advantage/disadvantage of wxWindows compared to native toolkits like Qt, GTK+?
Julian Smart - To my mind, GTK+ is not really a contender in the cross-platform toolkit arena, even with a WIN32 port. It's still not going to feel truly native on non-Gnome environments. However it's a fantastic widget set for us to target with wxGTK, and for people who are writing Linux-only or Unix-only apps, there may be some advantage to using the underlying widget set directly. On the other hand, I'd want to take advantage of the wxWindows framework even if writing for a single platform.
Again, Qt does not adapt itself perfectly to all its platforms, although the Qt 'plugin style' feature is commendable. Also many people are concerned about the Qt license; and wxWindows is a project you can really participate in.
Fortunately, I think the market is going to be big enough that all these solutions will thrive!
Alain Buret - What do you think is still missing in the toolkits world under GNU/Linux ?
Julian Smart - As far as wxWindows goes, we need more multimedia support, particularly fast bitmap rendering, and we need better vector graphics support. Both of these issues are being worked on by contributors, though.
wxWindows lacks a decent free dialog editor and RAD tool, but in the meantime, most developers are very happy to purchase Robert Roebling's excellent wxDesigner.
Alain Buret - What's the event you enjoyed the most in the wxWindows development ?
Julian Smart - I don't think there's an event I would single out, but I still get a huge kick out of announcements for products based on wxWindows; and when people say nice things about wxWindows and how it's helped even more than they had hoped, it makes the ten years of development all worthwhile! For example, the news that Mitch Kapor's Open Source Applications Foundation is using wxWindows and wxPython is very significant for us.
As a programmer I've improved enormously from contact with my fellow wxWindows developers, so I'm very grateful for that.
Alain Buret - What do you expect from your FOSDEM presentation ?
Julian Smart - I hope I can impart some of the excitement I feel about the project, and point out how easy it is to migrate applications from Windows (if indeed there are any Windows developers at FOSDEM!). With luck I'll persuade a few more people to try out wxWindows, and help the snowball effect along. The more users wxWindows has, the more enhancements and ports it gets, and the more users it attracts? and that's good for existing users, new wxWindows developers, and - in a small way at least - the producers and consumers of our increasingly heterogeneous industry.
|
|
|
Special announcement |
|
FOSDEM 2003 will take place on February 8 - 9 2003 in Brussels... |
|
|
FOSDEM search |
|
|
Contest |
|
Best background:
|
|
Create the coolest Fosdem background design and win cool stuffs... More info |
|
|
Sponsors corner |
|
|