Kelly: In addition to Loki, companies like Oracle, Corel, and MetroWerks were
early to decide to port applications from other platforms to Linux. As far
as I know, most of them do this work in-house. Meanwhile, Sendmail has
decided to port their traditionally Unix product to NT. To do so, they
acquired a company which had been developing a Sendmail-like program for
NT, and if I am not mistaken is currently working to merge the code base
for the two [Unix and NT] versions. They are also working in-house, but
with code they acquired from somewhere else. Your company seems to follow
a different model still -- I know that you work very closely with ie
Activision when porting a game, but in a way they are outsourcing their
porting to Loki instead of doing it themselves. In your opinion, what are
the pluses and minuses of these different ways of porting applications?
Draeker: I think the different models you describe are driven by the economies of
the particular market. Porting itself just takes takes the proper
developer talent. But how many times has a developer wound up with cool
code that he or she can't get to market?
Our model addresses the biggest reason why game companies don't port to
Linux -- the QA, distribution, and end-user support. Game companies are
set up to do these things for Windows, not Linux. A great example is
Quake III Arena for Linux. We didn't do the port, but we are publishing
it.
Kelly: I see on your web site that you are supporting several open source
projects, like SDL Motion JPEG Library (SMJPEG). How valuable is this kind
of activity for you in advancing the overall ease and/or quality of your
porting efforts?
Draeker: SMPEG, SMJEP, Setup, and others are required pieces for games to run on
Linux. We had to create them in order to develop our products. The
questions was whether we would give them away as open source. Releasing
the source code can be a scary thing. We spent nearly a year figuring
out
the "right" way to do full screen support for non-root users. Once we
had
it down, the code was on our web site within days, and any fool could
download it and compete with us if they chose.
Of course, people could also use our code to create new games and other
applications for Linux -- and that's a good thing. In addition, we've
received numerous patches and suggestions from the community. One of the
enhancements I'm most proud of is the upcoming hardware MPEG playback
for
SMPEG. We're working with ATI to add this functionality for ATI's Rage
128 and Rage 128 Pro video cards. In the future this could lead to full
DVD support under Linux using SMPEG, ATI hardware, and third-party drivers.
I believe all of this is a direct benefit from our releasing the source.
Kelly: I've heard from Corel that they are cooperating closely with the WINE
project. As far as I know, they started out thinking they'd have to port
all of their code by hand, then found out that they could run their
applications on top of WINE, then changed their tactics again and are now
compiling their applications to link in to WINE as a library. Are there
other possibilities to find synergy between independent projects -- like
WINE, FreeMWare, Samba, etc. -- or other tools and porting efforts? What
are the pluses and minuses of each of these?
Related Resources
Other press coverage of Loki
Recent Slashdot interview with Scott Draeker
Recent Game Daily interview with Scott Draeker
The Hacking Contest Nobody Tried to Win
Draeker: I view applications such as VMWare and WINE as sort of a "spare tire"
for
people leaving Windows in favor of Linux. Porting legacy code and even
running Windows apps is nice to have available, as you don't have to
wait
as long to make the transition. On the other hand, Linux won't be
successful in the long term if it's just another way to run Windows
apps.
That's why we don't use emulation or take other shortcuts. By creating a
Linux application, we are able to show off the advantages Linux has as
an
OS, something which even perfect emulation can never do.
Kelly: Is there anything that I forgot to ask about which I should have asked,
or any piece of advice that you'd like to give to developers who are just
starting out on the porting path?
Draeker: I would recommend that developers looking at creating Linux apps think
first about their market. Linux users are very well informed,
technically
savvy, and have high expectations. Just slamming out a Linux version of
your failed Windows application won't cut it. Set your standards higher.
I would also recommend that you keep in mind the things that have made
Linux successful commercially and in the development community. If your
business model doesn't take into account the things that make Linux
successful, if you pretend this is the Windows or Mac market, then you
are in for a tough time.
Discuss this article in the O'Reilly Network Linux Forum.
Return to the Linux DevCenter.
Related articles:
Interview: Mendel Rosenblum of VMware - VMWare's Chief Scientist explains the virtual machine that runs multiple operating systems on your desktop.
VMware and My Alien Dream - Years ago, I dreamed an alien tinkered under the hood of my computer, leaving it running Unix, Windows, OS/2, MacOS...