An article (which this isn’t) shouldn’t be judged on the slang (if any) the author uses. If we’re going to worry about using “official english” then many of the forums users (including myself) need to go back to school to learn grammar and spelling.
Totally agreed, however the point is that Cas is looking at games market, because he is selling a game, and that the linux game market is small and, in my opinion, won’t grow much. One of the major reasons alot of people use Linux (apart from it being a great operating systems for some types of users) is that its free. You don’t have to pay for it or most of the software that runs on it. Once you have some free software you think it all should be free. Hence GPL.
In addition, its all very well saying Linux is getting better every iteration and AWT the same but for folks trying to make money right now that doesn’t help much.
Maybe its an British thing, but no, I don’t find this offensive since its not aimed at anyone in particular, its just a turn of phrase describing something that the writer is obviously fairly irritated by.
Nice post. I kinda agree. However, AWT is faster than GDI since it uses DirectDraw (DDraw doesn’t support alpha - just bitmasked[color key] transparency afaik).
Hurrah for flames and ignorance! It’s been a while since I managed to start off a good old trouser-burning scorcher of a thread, which is why I deliberately picked a lovely inflammable topic, uttered profanity, and dissed Linux. Just be thankful I didn’t bring religion into the debate!*
To those offended by the word shit: it would appear that we have encountered a cultural difference here. Shit is one of the most commonly used expressions in the English language and rightly so, because it is used in a surprisingly consistent and specific way for a suprisingly consistent and specific effect. When we say shit in a particular context, we mean shit, and not “rubbish” or “useless”, nor even “execrable” or “fecal”. That’s why the word exists. Historically we find that in meetings between two invidivuals with slightly different cultural values, there are usually two options available when there is a clash of culture: one party becomes offended and begins an unnecessary offence towards the (entirely unsuspecting) perpetrator of the faux pas; or one party becomes offended but then resolves to understand the cultural position of the other party and deal with them in their own framework, removing the offence. If both parties work on this principle, then no-one becomes offended, and everybody learns something about someone else. Jens, for example, in Swahili, means “irreverent turd-toucher”, but we don’t see any Swahilis in here yelling about his choice of nick because they understand that outside of their own cultural context Jens is probably a very normal word.**
Now back on thread - Toby has brought up a good argument for the reasons of AWT’s failings but I don’t entirely agree with him on all counts. The first and most important problem I have with this excuse for AWT is that the Java developer had no choice but to use AWT and Java2D. Things would be very different if there was a framework for plugging in alternative rendering contexts. AWT as it stands is perfectly well suited for what it can do - which is an abstract windowing toolkit - but it’s very short of easily enabling high-performance graphics, and it’s exceedingly complicated to bolt on high-performance graphics as it is.
Cas
ps. Satan uses .net these days
** Ok, I made that up for illustrative purposes! Don’t take it personally
Comparing AWT to GDI does seem somewhat harsh, GDI really doesn’t do much in terms of graphics short of text and simple shapes. A fairer comparison would be GDI+ which actually has exotic features like gradient fills. It does however introduce a slight snafu - it doesn’t work on NT, so you end up messing with function pointers and alternate code paths just to get a freaking gradient filled button to work.
I didn’t corroborate my Linux comment just now either (oops) - basically, my experiences are this: that a) the existing Linux gaming market is irrelevant, both in terms of actual numbers, and in terms of realizable capital. In short, the vast majority of Linux users just don’t want to buy games. You must understand just how tongue-in-cheek the whole Linux comment was when I’ve worked so closely with Elias with the LWJGL
Something else to bring to bear on the Linux issue is the “failure rate”. Alien Flux for example is itself a rock-solid piece of engineering, based on some very well written code in the LWJGL and then refined over months and months to iron out the wrinkles. The end result is a game that won’t run on Windows only when GL drivers are not present (or just plain broken), and a game that runs on nearly any MacOS X 10.2.x machine. But Linux is a different story - a full 50% of Linux users fail to run the game. And that’s just the Linux users who manage to figure out how to install a JVM and launch the game. I spent 2 whole days on my laptop just last week with a clean RH9 install to see how hard it was to get AF to run on it. It was, in short, so difficult even I nearly gave up. And when it did run, the sound was all b0rked, so I reformatted it and put XP back on the thing. YMMV.
I don’t know about you, but a mainstream market is probably one which includes “just about anyone who wants to be in it” and I can’t ever, ever see my mum getting a Linux machine to work on her own if this is the current state of affairs. It’s probably got a lot more chance of working out in a corporate environment, but I fully never expect it to get anywhere in the next 5-6 years or so on the desktop for the mainstream gamer.
[quote]To those offended by the word shit: it would appear that we have encountered a cultural difference here. Shit is one of the most commonly used expressions in the English language […]
[/quote]
This is probably true for the spoken language, but I rarely see words like shit, arse and whatever your favourites are in these forums or anywhere else on the net (especially not from moderators). I’m not highly sensitive, but (despite all cultural differences) it would still be very nice not to use these words too often in these forums. Believe me, this helps a lot to improve multicultural communication.
[quote]Something else to bring to bear on the Linux issue is the “failure rate”. Alien Flux for example is itself a rock-solid piece of engineering, based on some very well written code in the LWJGL and then refined over months and months to iron out the wrinkles. The end result is a game that won’t run on Windows only when GL drivers are not present (or just plain broken), and a game that runs on nearly any MacOS X 10.2.x machine. But Linux is a different story - a full 50% of Linux users fail to run the game. And that’s just the Linux users who manage to figure out how to install a JVM and launch the game. I spent 2 whole days on my laptop just last week with a clean RH9 install to see how hard it was to get AF to run on it.
[/quote]
I can’t say that I like Redhat, but it should still be possible to run your game. To brighten your day a bit, I can tell you that it runs on my machine without problems. What were the problems you encountered? I’m very interested to know this.
[quote]I don’t know about you, but a mainstream market is probably one which includes “just about anyone who wants to be in it”
[/quote]
If you use this definition Linux is “more mainstream” than Windows, because it’s free for everyone.
[quote]and I can’t ever, ever see my mum getting a Linux machine to work on her own if this is the current state of affairs.
[/quote]
Why not?
[quote]It’s probably got a lot more chance of working out in a corporate environment, but I fully never expect it to get anywhere in the next 5-6 years or so on the desktop for the mainstream gamer.
[/quote]
Gaming is a different topic than using a computer for working on it. There are already a number of games running on Linux, but you’re right to say that the primary audience of games is Windows.
Well, I hate to fan the flames, but I have to agree with Cas 100% on the Linux issue. Linux HAS come a long way… but it is still entirely not practical to actually use on a daily basis by anyone other than a linux expert.
I realize that some people manage to do it. They are the lucky ones.
I have a degree in computer engineering, and in general have no problems with computers. Except for Linux. I find the failure rate for ALL applications in the linux space extremely high. This is both a fault of the applications themselves - in that it seems the bulk of linux apps have an unusually large number of bugs, and in the fact that configuring a linux system to do what you want is next to impossible most of the time. Typical instructions for configuring something on linux even involves downloading source code, configuring it for your specific linux box, because they are all different, compiling it, and then swearing a lot because: 1) you ran ./configure and it bailed out with an error, 2) it complained about missing packages of which there are many missing dependencies such that the problem is magnified to an extreme, 3) it just doesn’t compile, 4) it just doesn’t run.
Having attempted to run a linux box on several occasions up till just a couple months ago I can say that the above has been my experience EVERY time with EVERY distribution I’ve tried.
Note that the installers for linux are getting very good. RH9 and SuSe 9 install fine and support more hardware than Windows does… and in some cases when you run the apps that get installed they don’t crash, if you are lucky. If you want to install anything else - good luck. My success rate is about 50%. Linux still has a LONG way to go before I consider it usable. I’m convinced the only reason Sun supports it is for the server side where things seem to crash less. Well, that and for the buzzword compliance and to say that Java runs on more platforms.
Mind you I’m not anti-linux in any way, anti-MS if anything, (so far Mac is my favourite, even though it has it’s issues too).
I think Linux folks are used to getting stuff for ‘free’ and as such are looking for ‘free’ games. Mac guys are used to paying too much, and so are fine with paying for games. Windows people are the rest of the world…
Language: According to my british dictionaries and the online translator Babylon, Cas’ favourite words aren’t “normal language” but vulgar ones or sometimes slang. When participating on several international forums with a bunch of native English speakers these words usually aren’t being used. Our recent US-american trainee at work didn’t use any a*, s* or f* words in any spoken conversation, let alone written ones.
Well, everyone wishing to use these words here will do so. Still they offend me (and a few more). More I won’t say to that topic.
Linux: The debating point hasn’t been whether Linux is being usable by Cas’ mother or Swpalmer. The debating point has been that it’s not OK to “ignore Linux” when it comes to Java and that the Linux users don’t have their heads in their … backside!
In particular this applies to SUN: why should we blame SUN for implementing AWT so that it runs well on all major platforms (which includes Linux) ? After all Java isn’t just a game API.
There’s an interesting interview with Brian Hook, independent game developer. The article has been posted here recently, too. http://curmudgeongamer.com/article.php?story=20030317123706258&mode=print
Some Linux related snippets:[quote]
All combined platforms other than Windows maybe account for 5% of our sales, if that. Part of that is simply because we have much broader distribution of Candy Cruncher on Windows via RealArcade and GameHouse.
(…)
The Linux and OS X ports are successful for different reasons. The Linux version really got us some mindshare with people who would normally never even think of buying this kind of game.
Supporting Linux is a “right” thing to do technically, and I think the Linux crowd respects that. We even price it a little lower for Linux. Another thing we like is that we’ve partnered with Linux Game Publishing, and they’re doing actual physical copies of our games – a feature that isn’t even available on our Windows versions! This is a nice feeling because we have a DVD case version of Candy Cruncher, which is cool.
(…)
I think that the characterization that Linux users are “cheap” isn’t very fair to them, although that’s the easy way out for big companies that don’t want to support that market. Not all Linux users are card carrying members of the FSF, and not all of them are “free or die!”. The “problem” for a commercial developer is that they have to compete against something that is free a lot of the times, so if your product sucks, you’re in trouble. Which is fine by me.
(…)
I was talking to another developer recently, and one of the things that came up is “how big is the Linux games market, really?” I think it’s much bigger than people realize. The problem is that most Linux ports are done as an afterthought, and with almost no marketing. The running assumption is that anyone that wants to play a Linux game will eventually learn that the game is available on Linux, but that’s simply not true.
Using my friends as an example, and many are hardcore Linux freaks, almost none of them knew that big games like Unreal Tournament 2003 and Serious Sam: The First Encounter were available for Linux. They had never heard of TuxGames or LGP. And they rarely even read Slash Dot, they just spend most of their time “doing real stuff” (i.e. using their Linux boxes instead of playing on their Linux boxes).
I think if we (developers) could reach that market we’d find that games would sell much better on Linux than people expect. We have to stop taking awareness for granted.
[/quote]
AFAIK, Brian Hook’s new games company hasn’t exactly gone anywhere. In black and white, for me, I could totally have ignored Linux, and I’d have lost <1% of my profits. If it weren’t for Elias’ tireless devotion to his black arts, I’d have lost out on a takeaway curry. So basically the only reason to support Linux, for us games developers, is if it’s totally, completely free to do so as it’s barely worth lifting finger to keyboard otherwise. You can always ask the Loki management if you need this one clarifying.
Now to digress the thread once more and go back to feckin’ swearin’. Anyone actually offended by swearing needn’t read the rest of the post - thereby saving you any grief, for you have been forewarned!
One interesting point about the language used in the original post is it does seem to have confused the issues people’s mind.
The original issue appeared to be whether the Linux games market is worth writing for. Being that the writer is Cas is fairly safe to assume he meant in a finacial sense
However, it seems to have morphed into:
Whether linux should be ignored in Java?
And whether linux users should get their heads out of their a***s?
It would appear that the linux paying games market is fairly small and hence finacially it isn’t worth spending too much time getting a version working there (not that this should be an issue with Java really, but heh).
Of course linux shouldn’t be ignored in Java, that simply doesn’t make sense. It doesn’t however make much sense spending alot of time developing software for an OS that majority of people find hard to use.
As to linux users getting their heads out of their a***s, I think this comment was slightly mis-interpreted. It was targeted at the developers and designers of linux. While there seem to be alot of people adding new things to linux constantly (which is great, don’t get me wrong) there doesn’t seem to be many people focusing on refining on what they already have and hence bringing linux to the mass market. There of course many linux users/developers who don’t want it to reach the mass market, which of course means it won’t ever be significant as a games platform.
This doesn’t rule out of course that there arn’t people (operating system independant) that shouldn’t get their heads out of their bottoms.
I’ve always liked the insult “coprophagic priapism” which as you’ll note is wonderful english.
Kev
~ Just cause its written on the web, doesn’t make it true ~
[quote]Well, I hate to fan the flames, but I have to agree with Cas 100% on the Linux issue. Linux HAS come a long way… but it is still entirely not practical to actually use on a daily basis by anyone other than a linux expert.
[/quote]
That’s not true. Quite a number of non-experts (no matter how you define expert) are using Linux.
[quote]I have a degree in computer engineering, and in general have no problems with computers. Except for Linux. I find the failure rate for ALL applications in the linux space extremely high.
[/quote]
I doubt you had the time to test them all.
[quote]This is both a fault of the applications themselves - in that it seems the bulk of linux apps have an unusually large number of bugs,
[/quote]
Studies show that OpenSource-projects tend to have less bugs. Of course this is highly depending on the project itself.
[quote]and in the fact that configuring a linux system to do what you want is next to impossible most of the time.
[/quote]
That’s exactly what I feel about Windows. Configuring a Linux system to fit your needs is really a strength of Linux, especially for experts (full scripting support and tons of usuful tools).
[quote]Typical instructions for configuring something on linux even involves downloading source code, configuring it for your specific linux box, because they are all different, compiling it, and then swearing a lot because: 1) you ran ./configure and it bailed out with an error, 2) it complained about missing packages of which there are many missing dependencies such that the problem is magnified to an extreme, 3) it just doesn’t compile, 4) it just doesn’t run.
[/quote]
You rarely have to use make and configure. I have more than thousand packages installed, but no program, which required make and configure (this is because Debian offers so many packages). At least it should be possible on every distribution to run a base system without having to compile your own stuff. (Gentoo like distros excluded of course. )
[quote]Having attempted to run a linux box on several occasions up till just a couple months ago I can say that the above has been my experience EVERY time with EVERY distribution I’ve tried.
[/quote]
I can feel your pain, although I think this is not the usual experience of new Linux users, especially if they are computer experts. I can imagine that it’s frustrating to try several times without success. The only thing I can advice you (in case you’ll give Linux another chance some day) is to use newsgroup/mailinglists for getting help and telling the community what your problems are. This works well in most cases.
[quote]As to linux users getting their heads out of their a***s, I think this comment was slightly mis-interpreted. It was targeted at the developers and designers of linux. While there seem to be alot of people adding new things to linux constantly (which is great, don’t get me wrong) there doesn’t seem to be many people focusing on refining on what they already have and hence bringing linux to the mass market. There of course many linux users/developers who don’t want it to reach the mass market, which of course means it won’t ever be significant as a games platform.
[/quote]
Of course Linux developers are spending time to refine their products. (How can you be so sure of the opposite?) They often get quite a lot of feedback from the community, which gives them the chance to do so. Most Linux developers want their products to reach the mass market and in my opinion it’s already there, because it has millions of desktop users.
This is very distribution specific though. Example - trying to install a TeX system on Mandrake involved downloading source, reading extensive install docs, and watching the compiler churn away for about 45 minutes before failing in a cryptic manner. On the other hand, installing TeX on Mepis (which is Debian based), involved “apt-get install tetex-bin”, and It Just Worked.
It’s unfortunate that the distibution with the easiest package management (Debian) has the most god-awful installation process, while the easier installations (Mandrake et al) have the user messing around with make and configure.
I use Linux almost exclusively, and i like it a lot, but it just isn’t ready for use by non-computer-experts.
And now the real reason for the post:
For all your coarse language needs: The Profanisaurus. An indispensable guide to sweary words and phrases. Available in an updated hardback book form, it is a tome that no smallest room should be without. Oh, and you probably shouldn’t follow the link if you’re easily offended.
One of the biggest problems, as I see it, is that the user interface to Linux is basically appalling. It’s not even a patch on Windows 3.11 in terms of consistency and usability.
How do you install an application on Linux? Where do the icons go when you’ve installed the application? Can you get Linux to auto-update with drivers and such? Why do windows not pop to the front when I click on them? Why is it that when I go to try and use someone else’s Linux machine it behaves so radically differently that it’s like another operating system?
The motor car industry settled on a standard formula for operating cars. Steering wheel, 2 or 3 pedals, optional gearshift, all in a fairly limited number of configurations. The motorcycle industry has done the same. These are true mass market appliances. The reason by they all work the same way is because people get used to things working the same way and they really appreciate it when they do (BMW get a hell of a lot of flack about their strange indicator buttons on their bikes in the bike press, because they’re different to everyone else’s indicator buttons).
Windows has done wonders for standardizing the way user interfaces should work. It’s a triumph in usability. When you click on a control, it behaves like you expect it to. The windows move like you want them to. Ctrl-X always does a Cut operation. And so on.
What I would like to see is the Linux community abandoning X and Gnome completely and moving towards a proper client desktop that behaves in a single, consistent fashion, and this needs to go in the very core of the kernel. The reason Windows took the world by storm was precisely because Gates et al had the wisdom to make the GUI a part of the core operating system and under his control. And of course, the Mac people even have it the other way round - a truly wonderful user experience sitting atop a nightmare operating system.
BeOS was perhaps the very best thing that could have happened to the world but alas it was destroyed by anticompetitive practises. Linux had no chance against BeOS on virtually every respect except for the one thing that keeps it alive - it’s “free”. But as often is the case in the world, you get what you pay for.
We’re now very far from the original thread topic which wasn’t about Linux at all It was about how AWT’s image blitting performance is still utterly dire, on all platforms, and that if you’re serious about doing any kind of x-plat high performance rendering, you need to use GL: so why isn’t GL more easily integrated into Java? Or indeed, already integrated into the core libraries? I see several hundred absolutely useless CORBA classes in j2se1.5. Can’t we have them thrown out and replaced with LWJGL? Can’t I distribute a VM that chucks out the bits I don’t need etc. whine whinge moan blah.
[quote]Well, I hate to fan the flames, but I have to agree with Cas 100% on the Linux issue. Linux HAS come a long way… but it is still entirely not practical to actually use on a daily basis by anyone other than a linux expert.
[/quote]
Although I roughly agree, that isn’t really fair.
As a long time user (and, in the past for my sins, a systems admin) of both OS’s, IMHO they are approximately equal. I wrote a long post showing how everything one does well it makes up for by doing something associated attrociously that the OTHER does well, but I decided it was a bit too dull and OT ;).
This is certainly true; my favourite summary is “With open source software, most of the time you get exactly what you pay for; sometimes you are unlucky and get even less”. (NB: I’ve seen several different organizations that have found installing / using linux apps was a net loss to productivity - they lost more time and money (!) than they saved).
It used to be that most open source programmers don’t know how to program; they were generally incompetent (this seems to be improving, slightly) and should do the world a favour and - like all the gimps who make “my personal webpage” which just has links and text that cause it to appear on Google and obscure the genuine sites you want - get out of the way and take the signal-to-noise ratio back to a decent level…
Nothing personal, they’re free to program/learn/etc whatever they want, but they DO obscure (and hence damage) more worthwhile open source projects with competent people - if they could just be more quiet about it the world would be a better place :(.
RH installers have historically (in the last 5 years) been the cause of a large percentage of the problems with linux; c.f. below, but note also that RH’s FTP install wouldn’t work until you looked at the source (!) up until RH8 (bugs in the parsing of hostnames!), and even now RH’s RPM can (and does!) break any application you ever install :(. Whether this is because the apps were packaged with a broken version, or the user installed them with a broken version, I have no idea…
You can install 95% of things OK. The other 5% require simultaneously two different versions of the same library, or have circular compile dependencies that can’t be fulfilled without bootstrapping, or other crazy crazy ****. But then you might find you’ve disabled your ability to upgrade your apps:
Sadly, the linux kernel (which, on the whole, works very well) is abominably badly packaged - everyone from Linus downwards has a share in the blame that the linux kernel is great, but many people can’t use it. E.g. You usually need to upgrade your kernel on your local machine, and upgrades are desirable / needed every 6 months or so - but ANY crap app you’ve EVER installed on your machine can prevent the kernel from compiling. !!!
OK, so MS forces you to upgrade, and charges you through the nose, whereas linux doesn’t force you to, but you don’t get new features without doing so. But how many versions of windows refuse to install depending on what software you ever downloaded over the net and installed?
Basically, neither windows nor linux is any better than the other - they’re both bad in different ways. Sadly, linux loses out mainly in that the user has to do a lot of extra work (e.g. sifting through the crud on the net to find apps that actually work, or having to learn to read source code because of bone-idle programmers who feel “the source code IS the documentation, and the manual, and the install guide”).
OTOH, linux has a good chance of becoming very important to games studios for a really silly reason :). Vendors/integrators (Dell, HP, Gateway, Viglen, etc etc etc) have such small margins on hardware that saving $50 on NOT including windows with each PC sold is a major major profit boost to them. These guys are the main distribution channel for PC’s used for games (IIRC…), and they are just waiting for an opportunity to jump. (NB for most that means “when linux runs MS Office apps as well as MS Office”, which isn’t true yet, but OpenOffice 1.2 might achieve it (still too many show-stopping bugs and file-format incompatibilities - I say this having used OO for years!)). They tried support contracts as a way of increasing profit margins, but there are signs this is being reduced again (e.g. moves in the UK to reduce profiteering via evilly bad value support contracts, and widespread attempts by vendors to break the consumer protection laws).
Back on topic, as a java developer I know that it costs me nothing to run on linux so long as I use standard libs, and until that decision alone starts costing me sales every linux purchase is a freebie. Fortunately, I don’t need to deliver an OpenGL-based game in the next few months, so “standard libs only” isn’t a problem; I fully appreciate that for many java devs linux is NOT free to support right now (but then, as Cas has proved, just using OGL alone costs you a lot in support anyway, regardless of OS?).
I believe that’s generally due to one of two things:
[] They only included decent OS-projects, which account for about 5% or less of available apps
[] …or because most OS projects never get past version 0.2 (i.e. they never achieve a full release, so of course they have fewer bugs) and / or most OS projects are so rubbish they are missing half the essential features. Fewer features = less source = fewer bugs != better code.
…until you tell the authors it doesn’t work, whereupon you are often told “what happened when you compiled it? … you didn’t compile it? Well, I’m not going to fix your bug (or even talk to you) until you compile it yourself; if you can’t be bothered to learn how to compile and link C, I see no reason to tell you how to use my app / workaround bugs”.
PS I’ve had this same response from some of the biggest, best-known OS projects, not just the fly-by-nights. For this class of people the “head up backside” comment is depressingly accurate.
Cas, I think you’re just being impatient here. Fullscreen isn’t even a genuine + official part of java (e.g. isn’t even implemented in all of sun’s VM’s yet!). Ditto, J2D/AWT/etc doesn’t support/provide transparency etc yet - we’re just seeing early access.
AFAICS, you should be saying “why is Sun so incredibly slow to add new features / correct old mistakes in java?” (since this seems to be fundamentally what you’re getting at). There are many topics to debate on that issue… :). I got equally frustrated at things like IO being dragged so slowly into the 21st century; waiting until 1.4.x to get regular expressions (!!!); etc.
Yeah, keep saying it, keep up the pressure ;). I’d be a bit more careful with such comments, since they can sound - out of context - whiney and pathetic (and not a little stupid), but I agree that on the whole your real point here would probably be a major improvement to java. Fingers crossed…