Linux Expectation Management
by Jeff Tunnell · 11/23/2005 (1:14 pm) · 78 comments
I hope this post does not turn into a huge flame war, but it is time to address some of the issues surrounding Linux, and GarageGames' future support of this operating system. Before causing too much panic, we are not dropping support, but we need to manage expectations.
First off. We love Linux, and hope we have done more, percentage wise, than nearly any other company on the planet to support it (other than those whose business model revolves around it, of course).
Secondly. Most of the heavy lifting for originally getting TGE running on Linux and keeping it up to date fell to John Quigley (later hired by Bravetree, and now an employee of GarageGames), but John no longer wishes to work on TGE Linux.
Third. Linux does not love back. Too many distros. Much incompatibility. Moving target. Not much community support from Linux users coming back to Torque. Little to no revenue (less than 3% of what we do). Little to no love from the Linux community for our efforts.
These are simply facts. I'm sure there will be some questioning of my statements, but they are true from our point of view, and they are causing enough pressure that we need to do something about it.
I would like to start a dialog about solutions to the problems. In the meantime, my suggestions are as follows:
1. Torque is cross platform, but Linux support will lag behind a point release or two. We can manage expectations by saying this upfront in our product pages.
2. In all product pages we should say that using Linux on Torque requires an advanced programmer that understands Linux and the build process in depth, i.e. the build process is unsupported.
3. If members of the community feel that Linux Torque needs to be at the latest point release, and run across a broad spectrum of distros, we would be happy to set up secure SVN, allow them to do the work and roll the changes back into the main code tree.
For the far future, some of the development of our technologies are being developed on Linux boxes. Additionally, the distros get better all the time, so the problem set may get smaller. Cross platform is a religion for us, and we like the idea of supporting Linux, so we hope to bring Linux everything out in a timely manner and up to our quality standards.
What do you think? Please be gentle.
-Jeff Tunnell, GG
First off. We love Linux, and hope we have done more, percentage wise, than nearly any other company on the planet to support it (other than those whose business model revolves around it, of course).
Secondly. Most of the heavy lifting for originally getting TGE running on Linux and keeping it up to date fell to John Quigley (later hired by Bravetree, and now an employee of GarageGames), but John no longer wishes to work on TGE Linux.
Third. Linux does not love back. Too many distros. Much incompatibility. Moving target. Not much community support from Linux users coming back to Torque. Little to no revenue (less than 3% of what we do). Little to no love from the Linux community for our efforts.
These are simply facts. I'm sure there will be some questioning of my statements, but they are true from our point of view, and they are causing enough pressure that we need to do something about it.
I would like to start a dialog about solutions to the problems. In the meantime, my suggestions are as follows:
1. Torque is cross platform, but Linux support will lag behind a point release or two. We can manage expectations by saying this upfront in our product pages.
2. In all product pages we should say that using Linux on Torque requires an advanced programmer that understands Linux and the build process in depth, i.e. the build process is unsupported.
3. If members of the community feel that Linux Torque needs to be at the latest point release, and run across a broad spectrum of distros, we would be happy to set up secure SVN, allow them to do the work and roll the changes back into the main code tree.
For the far future, some of the development of our technologies are being developed on Linux boxes. Additionally, the distros get better all the time, so the problem set may get smaller. Cross platform is a religion for us, and we like the idea of supporting Linux, so we hope to bring Linux everything out in a timely manner and up to our quality standards.
What do you think? Please be gentle.
-Jeff Tunnell, GG
About the author
#22
11/23/2005 (5:12 pm)
Exodus -- I use CygWin occassionally for Linux apps... otherwise, it is a major hassle managing two codebases that are supposed to do the same things. Perhaps if greater priority were put forth towards implementing true GL support in TSE and perhaps even fixed-function, so non-shader folk and non-DX folk can use it...
#23
I would love to help out as well, but I'm not up to speed yet on C++ or the engine itself (I hope someday I will be). Until that happens, I try to help out in other areas where I can like community support in games like Orbz.
As for Linux not being for games.... come into Lore sometime & I can show you otherwise. ;-)
Simon Love mentions focusing on a specific distro (yes, I know this in itself can start all kinds of holy wars in Linux), but one decent option already out there would be Linspire. Its the complete opposite of the distro I use myself (Slackware), but the user base there is probably a different breed than many other distros. CNR alone makes it rather simple to install software. I think more users would be likely to buy games there. Just my two cents Canadian worth. :-)
One last thing.... GG has done more as far as I'm concerned for the Linux gaming/developemnt market than any other company out there. I just want to thank you guys for doing this. If not for the Linux support you have shown it, I never would have come across this good community, nor be involved with the projects I am presently working on.
11/23/2005 (6:41 pm)
Let me chime in as well & say that option three would be fantastic. I would prefer to see the release as close as it can be with its Windows/Mac counterparts (particularly for Torque 2D). For the game I'm working on (Twin Distress with MGT), my coding at home is done on Linux (as is my gaming... I'm a Linux only gamer). I have to rely on others to compile a Windows build for me if I need it.I would love to help out as well, but I'm not up to speed yet on C++ or the engine itself (I hope someday I will be). Until that happens, I try to help out in other areas where I can like community support in games like Orbz.
As for Linux not being for games.... come into Lore sometime & I can show you otherwise. ;-)
Simon Love mentions focusing on a specific distro (yes, I know this in itself can start all kinds of holy wars in Linux), but one decent option already out there would be Linspire. Its the complete opposite of the distro I use myself (Slackware), but the user base there is probably a different breed than many other distros. CNR alone makes it rather simple to install software. I think more users would be likely to buy games there. Just my two cents Canadian worth. :-)
One last thing.... GG has done more as far as I'm concerned for the Linux gaming/developemnt market than any other company out there. I just want to thank you guys for doing this. If not for the Linux support you have shown it, I never would have come across this good community, nor be involved with the projects I am presently working on.
#24
dont drop linux support (now or future), Torque is a such
nice product, i believe "suport linux" is a investment, just the word
"cross platform support" is worth the investment, maybe the
major part of your revenue are relate to that, look what google
(their thousands servers running on linux) did. NASA is good
example, they dont bring much of revenue, but they do make
Torque looks good, and i dont think NASA is going to run Torque's
dedicated server on Win servers. All i am saying(just a suggestion)
is that it is worth to have a dedicated programmer to do the linux support.
11/23/2005 (6:43 pm)
Totally agree with Xavier "eXoDuS" Amado and Thijs Sloesen.dont drop linux support (now or future), Torque is a such
nice product, i believe "suport linux" is a investment, just the word
"cross platform support" is worth the investment, maybe the
major part of your revenue are relate to that, look what google
(their thousands servers running on linux) did. NASA is good
example, they dont bring much of revenue, but they do make
Torque looks good, and i dont think NASA is going to run Torque's
dedicated server on Win servers. All i am saying(just a suggestion)
is that it is worth to have a dedicated programmer to do the linux support.
#25
11/23/2005 (8:21 pm)
I have very little Linux experience but... what is so difficult? Has anyone considered the SDL library?
#26
I too would like linux versions in step with to those other oses.
>> Not much community support from Linux users coming back to Torque.
People can't even compile it the way it is now in 1.3 on recent distros.
What kind of community do you expect when it's not easy to use?
>> Little to no revenue (less than 3% of what we do).
How many GG people are paid to work linux?
If you work in a soup kitchen you could say that there's little to no revenue so then should you stop doing it?
So wait, indie gaming, but only on platforms that have large user bases. nice.
That's like the indie film festival requiring all films be shot with digital imax cameras.
>>Little to no love from the Linux community for our efforts
I have bought as much as I can.
I'm still waiting for show tools - show me the tool I'll show u the money.
What else can I do?
Can I mark my money to only go for linux development costs?
11/23/2005 (10:02 pm)
You only got my money because there was linux "support".I too would like linux versions in step with to those other oses.
>> Not much community support from Linux users coming back to Torque.
People can't even compile it the way it is now in 1.3 on recent distros.
What kind of community do you expect when it's not easy to use?
>> Little to no revenue (less than 3% of what we do).
How many GG people are paid to work linux?
If you work in a soup kitchen you could say that there's little to no revenue so then should you stop doing it?
So wait, indie gaming, but only on platforms that have large user bases. nice.
That's like the indie film festival requiring all films be shot with digital imax cameras.
>>Little to no love from the Linux community for our efforts
I have bought as much as I can.
I'm still waiting for show tools - show me the tool I'll show u the money.
What else can I do?
Can I mark my money to only go for linux development costs?
#27
For anyone that says to "just use WINE" for running games in Linux, I respond by saying that Linux needs to run NATIVE Linux binaries. While Windows "emulation" is a very great effort and a complicated technology which deserves its credit, it is actually very damaging to native Linux application/game development (IMO). I would see no point in having let's say an XBox running a PS2 emulator, no point relating to boosting the XBox games market (eg. people may buy more XBoxes, but it wouldn't help the sale of XBox games). In order for any platform or OS to become more successful, it needs its own games or applications.
For nearly every Linux application I have developed, I have ported to a native Windows application, and vice versa (even if it means a complete rewrite). And all this I've done for FREE. Of course I don't expect companies to do this because time is money, and businesses are not charities and I realize that. But when you say "Linux does not love back", remember this: Any GG computer that even has Linux, is running an OS and applications made from millions of hours from thousands of people (including myself) who have put their blood, sweat and tears into it while they could be spending time with their friends or families, and they ask for nothing in return. This OS is made from love for technology. Whether it's platonic love, or the kind that throbs underneath its pants, Linux loves you for every byte it takes up on your hard drive. ;)
Whatever happens, I am very grateful for GarageGames to have Linux compatibility to begin with (you guys ROCK!!!), as most companies wouldn't even make an effort to put their games on Linux or even think twice about it. I just hope that efforts in Linux support will be continued for a long time to come. :)
Cheers.
11/23/2005 (11:32 pm)
This is not very good news for me or other Linux developers, but I can see your point of view. It's true, Linux isn't quite for the game market, which is one of the only reasons why I don't use Linux exclusively (although I have before), but I think this needs to change. In the future I'd love to see more and more popular titles on Linux and I know that your past and present efforts have been making this possible for game developers. This is one of the main selling points which made me choose Torque in the first place.For anyone that says to "just use WINE" for running games in Linux, I respond by saying that Linux needs to run NATIVE Linux binaries. While Windows "emulation" is a very great effort and a complicated technology which deserves its credit, it is actually very damaging to native Linux application/game development (IMO). I would see no point in having let's say an XBox running a PS2 emulator, no point relating to boosting the XBox games market (eg. people may buy more XBoxes, but it wouldn't help the sale of XBox games). In order for any platform or OS to become more successful, it needs its own games or applications.
For nearly every Linux application I have developed, I have ported to a native Windows application, and vice versa (even if it means a complete rewrite). And all this I've done for FREE. Of course I don't expect companies to do this because time is money, and businesses are not charities and I realize that. But when you say "Linux does not love back", remember this: Any GG computer that even has Linux, is running an OS and applications made from millions of hours from thousands of people (including myself) who have put their blood, sweat and tears into it while they could be spending time with their friends or families, and they ask for nothing in return. This OS is made from love for technology. Whether it's platonic love, or the kind that throbs underneath its pants, Linux loves you for every byte it takes up on your hard drive. ;)
Whatever happens, I am very grateful for GarageGames to have Linux compatibility to begin with (you guys ROCK!!!), as most companies wouldn't even make an effort to put their games on Linux or even think twice about it. I just hope that efforts in Linux support will be continued for a long time to come. :)
Cheers.
#28
Will try to post something a little more coherent next time.
11/24/2005 (12:32 am)
*Not retracted, but I decided it was too rambling*Will try to post something a little more coherent next time.
#29
>>So wait, indie gaming, but only on platforms that have large user bases. nice.
GG is not a charity, and the overwhelming majority of indie game developers develop on platforms with large user bases. Not all of them do, so GG isn't putting all of their resources into those platforms, but they're going to get the bulk of the support; to do otherwise would not be benificial to indie gaming.
11/24/2005 (1:06 am)
>>If you work in a soup kitchen you could say that there's little to no revenue so then should you stop doing it?>>So wait, indie gaming, but only on platforms that have large user bases. nice.
GG is not a charity, and the overwhelming majority of indie game developers develop on platforms with large user bases. Not all of them do, so GG isn't putting all of their resources into those platforms, but they're going to get the bulk of the support; to do otherwise would not be benificial to indie gaming.
#30
For the most part, upgrading a video driver for Windows these days involves downloading a file, clicking 'Open' when it's done downloading, clicking Next Next Next, then OK to reboot.
11/24/2005 (1:17 am)
>>But then again so do windows users, and the process for a newbie windows user to upgrade a Video driver is a far more harrowing experience than even recompiling the kernel for a person who has taken the Linux plunge.For the most part, upgrading a video driver for Windows these days involves downloading a file, clicking 'Open' when it's done downloading, clicking Next Next Next, then OK to reboot.
#31
Most of the really cool projects going on that GG is involved in have a strong community component. Constructor is with several awesome community members. Torque2D started out as something Melv was working on. Lighting Kit started out as just John and now represents a collaboration, especially on the marketing side. (John you rock! ;) Same with the TST Pro. Ed Maurina's book has had input from us as well as tons of hard work from Ed.
Linux support above everything else is a prime target for community involvement. Linux itself was made possible through open collaboration! We just want to make it clear to the community ie, you guys, that if Linux support is a priority, then you need to step up and work with us to make it happen. We definitely want to enable Linux support. But we just can't justify dedicating a developer internally to the task. Generous folk like John Quigley, Ron, Xavier, Greg, and others have stepped up in the past to make this happen, and I am confident that people will continue to contribute to make this happen... But it won't magically happen on its own if no one lends a hand. :)
I guess what I'm getting is that while we _are_ a business, we also recognize that a lot of important things don't have dollar amounts attached to them. And because we have a good rapport with you guys, we can help you do things that it wouldn't necessarily make sense for us to do at a given moment. Like writing fancified model viewing tools, or new lighting models, or resources to integrate with your VR helmet/driving simulator/chia pet, or improving Linux support. And _that_ is something that does make good business sense.
So let's make this happen. :)
In that vein, I've started a thread here, in the private SDK linux forums, to see what sort of options for collaboration there are. If you're a linux dev and want to see Torque more strongly on that platform, drop in. Meanwhile, I'm sure a lot of good discussion on things other than the nitty gritty "let's make it hapen" conversation will continue to happen here. :)
11/24/2005 (1:18 am)
We're always going to be open to supporting Linux - the question is more how many resources can we justify putting on it, and who from the community is going to step up and make it really rock?Most of the really cool projects going on that GG is involved in have a strong community component. Constructor is with several awesome community members. Torque2D started out as something Melv was working on. Lighting Kit started out as just John and now represents a collaboration, especially on the marketing side. (John you rock! ;) Same with the TST Pro. Ed Maurina's book has had input from us as well as tons of hard work from Ed.
Linux support above everything else is a prime target for community involvement. Linux itself was made possible through open collaboration! We just want to make it clear to the community ie, you guys, that if Linux support is a priority, then you need to step up and work with us to make it happen. We definitely want to enable Linux support. But we just can't justify dedicating a developer internally to the task. Generous folk like John Quigley, Ron, Xavier, Greg, and others have stepped up in the past to make this happen, and I am confident that people will continue to contribute to make this happen... But it won't magically happen on its own if no one lends a hand. :)
I guess what I'm getting is that while we _are_ a business, we also recognize that a lot of important things don't have dollar amounts attached to them. And because we have a good rapport with you guys, we can help you do things that it wouldn't necessarily make sense for us to do at a given moment. Like writing fancified model viewing tools, or new lighting models, or resources to integrate with your VR helmet/driving simulator/chia pet, or improving Linux support. And _that_ is something that does make good business sense.
So let's make this happen. :)
In that vein, I've started a thread here, in the private SDK linux forums, to see what sort of options for collaboration there are. If you're a linux dev and want to see Torque more strongly on that platform, drop in. Meanwhile, I'm sure a lot of good discussion on things other than the nitty gritty "let's make it hapen" conversation will continue to happen here. :)
#32
11/24/2005 (2:18 am)
Wow this community is cool...
#33
As to point #3 (Too many distros. Much incompatibility. Moving target.) The best way to handle this would probably be to pick say, http://www.linuxbase.org/, as the base os specification and let the distro's worry about making the distro compliant. As to the moving target, the only real _big_ pieces that are a moving target are gcc and the ever changing c++ madness and glibc with the treading stuff. Using SDL to manage the glibc issues mitigates the issue with glibc changes. And well I dunno what to do about gcc.
I'm all for managing expectations.
11/24/2005 (5:28 am)
@Jeff,As to point #3 (Too many distros. Much incompatibility. Moving target.) The best way to handle this would probably be to pick say, http://www.linuxbase.org/, as the base os specification and let the distro's worry about making the distro compliant. As to the moving target, the only real _big_ pieces that are a moving target are gcc and the ever changing c++ madness and glibc with the treading stuff. Using SDL to manage the glibc issues mitigates the issue with glibc changes. And well I dunno what to do about gcc.
I'm all for managing expectations.
#34
I would never (cost reasons, maintainability and ease of hardening) run my public game servers on anything but Linux.
I can live without a desktop Linux for the obvious reasons listed by Jeff - how sad they may be. Market penetration vs. effort is simply at the moment not worth it.
So if at all possible - please please make the server side run on Linux.
Sidenote:
I'm impressed by the good and mature answers in this potential flame thread. Great community
11/24/2005 (12:30 pm)
As said by someone else - a Linux server version would be a must for me and most likely a lot of others.I would never (cost reasons, maintainability and ease of hardening) run my public game servers on anything but Linux.
I can live without a desktop Linux for the obvious reasons listed by Jeff - how sad they may be. Market penetration vs. effort is simply at the moment not worth it.
So if at all possible - please please make the server side run on Linux.
Sidenote:
I'm impressed by the good and mature answers in this potential flame thread. Great community
#35
Just something that I thought of this morning. What are your thoughts on this?
Regards,
Thijs
11/24/2005 (12:45 pm)
I would like to add one more thing that we should be on the lookout for. Say we will have a lagged Linux version of Torque. Some point releases which have seen the Windows light but not yet the Linux light may be so impressive that developers will jump right into it because they don't want to miss out on the features. But what if the Linux version does not progress as fast as we'd like and that developers will be at the point of shipping before the Linux version has caught up with the current Windows version. Chances are that the developer will drop the Linux version (at least for a while) so they can ship the Windows version of their game. But if that happens a lot, or even for a long time, developers might stop planning Linux versions of their games simply because they need to make money themselves as well. Will this not effectively render the Linux version of Torque out of service because interest will fade away, and with it, community contributions? This might not be true for Linux-only developers, but it could be more that true for cross-platform developers.Just something that I thought of this morning. What are your thoughts on this?
Regards,
Thijs
#36
1. Dedicated server on Linux will always happen. It's a great server platform. Good linux-specific tools/docs/fancy X11 integration may not happen quickly or at all, depending on who steps up to the plate.
2. You can ALWAYS take a code dump from windows/mac and port it over. 80% of our effort goes into core code that runs on all platforms... Not just on Mac/Win32/Linux, but also more exotic platforms like Solaris, PS2, Xbox, and XBox360. Unless we change the platform layer and use that change in a specific piece of code, porting something over to Linux is mostly a matter of copying a file, and perhaps tweaking compiler settings a bit. And while there's lots of room for improvement in the Mac & Linux platform layers (just look at how much better Mac is now... and wait till you see how far Paul is gonna take it.), that all lives behind the interface.
Even if the community never contributes (which I doubt - you guys are way too awesome for that :) and we never put any time into it, Torque is never going to be very far from working on Linux. It is designed for portability, and getting a portable app to run on POSIX and OpenGL isn't all that tough. ;) Just takes time and love.
11/24/2005 (2:53 pm)
Two further points:1. Dedicated server on Linux will always happen. It's a great server platform. Good linux-specific tools/docs/fancy X11 integration may not happen quickly or at all, depending on who steps up to the plate.
2. You can ALWAYS take a code dump from windows/mac and port it over. 80% of our effort goes into core code that runs on all platforms... Not just on Mac/Win32/Linux, but also more exotic platforms like Solaris, PS2, Xbox, and XBox360. Unless we change the platform layer and use that change in a specific piece of code, porting something over to Linux is mostly a matter of copying a file, and perhaps tweaking compiler settings a bit. And while there's lots of room for improvement in the Mac & Linux platform layers (just look at how much better Mac is now... and wait till you see how far Paul is gonna take it.), that all lives behind the interface.
Even if the community never contributes (which I doubt - you guys are way too awesome for that :) and we never put any time into it, Torque is never going to be very far from working on Linux. It is designed for portability, and getting a portable app to run on POSIX and OpenGL isn't all that tough. ;) Just takes time and love.
#37
11/24/2005 (4:13 pm)
Gotta have linux for dedicated servers, period.
#38
11/24/2005 (4:51 pm)
Definitely.
#39
Will some of the publishing requirements be changing due to so many changes in Torque technology?
11/24/2005 (5:13 pm)
This is from the publishing FAQQuote:
9. Are there any other requirements?
Your game must run on MAC and WIN. We have found that the Mac market is very receptive to indie games and 65% of our game sales are for the MAC. Linux is a little more of a labor of love, with only 7% of our sales coming from that market. Unless your WIN game is extremely hot or it has the capability of being ported to the Mac or Linux, GarageGames is not the right place to have it published.
Will some of the publishing requirements be changing due to so many changes in Torque technology?
#40
11/24/2005 (5:46 pm)
Why would they need to change? The FAQ seems to reflect our current state of affairs (more or less) pretty accurately. 
Torque Owner Jeremy Noetzelman