The one thing that, for me, makes the biggest difference in the apparent quality of a desktop is how the redraw scheme works. In Mac OS X, Quartz buffers the contents of every window and takes care of redrawing the window when it is exposed. The result is that there are NEVER any redraw issues when an application is busy doing something - when a window is exposed, it looks like it is already drawn. Even a completely frozen application still gets redrawn properly.
The lack of this is always the first thing I notice when using an X-based desktop (Windows has this problem too - OS X seems to be the only desktop to actually get it right, which makes sense, since it is only recently that memory has become plentiful enough that this makes sense). It is very distracting to, for example, drag an xterm window across a Mozilla window and have the xterm leave a nasty little trail across the Mozilla window where the redraw hasn't caught up yet.
So I hope that anybody who is working on an X11 replacement keeps this in mind - when you're working on a brand new system, you should take advantage of the fact that you're already breaking compatibility - might as well do what Apple did and go all out in creating the best system possible.
As for software, I use OmniGraffle and OmniOutliner from OmniGroup. OmniOutliner is especially simple, yet unique. I wonder why no one else has an idea organizer that is so incredible? I couldn't do my job without it.
I'll second this. I don't actually shell out for software very often, but I paid for OmniOutliner. It's a terrific program. I'd pay for OmniGraffle, too, but I'm on a tight budget these days and can't justify spending the $69.95 they want for it. That's not to say it's not worth it, just that I can't afford it at the moment.
I wish there were more companies like OmniGroup out there. They write some good stuff. Now if they'd just add tabs to OmniWeb!
I wonder if there are good books on math and physics for game developers?
O'Reilly publishes a book called "Physics for Game Developers" and Charles River Media publishes a book called "Mathematics for 3D Game Programming and Computer Graphics." Both are quite good.
...and the HLSL (which can be processed in software). OpenGL is too vendor specific (read: Cg)...
You realize, of course, that HLSL and Cg are the exact same language, right? Microsoft helped nVidia develop Cg, and then renamed it to HLSL for the DX9 implementation.
You want us to buy full albums? So make an album that doesn't suck, from start to finish. You know, like Outkast's first three albums, Dark Side of the Moon, Jar of Flies, 36 Chambers, or Lateralus. Albums that don't suck for 60% of the time.
If I only want to listen to 40% of your music, much less pay for it, I'm not going to buy the whole album. I'll settle for hearing your shit from time to time when I'm radio surfing in traffic. Make an album that doesn't suck, and I'll buy it. Otherwise, you can take either nothing, or $0.99/~3 minutes that don't suck.
No, it's certainly doable, and has been done in the past. It's actually quite easy to make it look convincingly accurate as long as the position of the viewer doesn't change (rotation is fine, just no movement). It's still possible if the viewer moves, but it requires many more images of the object from many more angles.
Tell that to the people whose genuine addresses have been used as return addresses by spammers.
That's an entirely different thing, and I have no problems with identity theft crimes being illegal. But making spam illegal because some spammers use other people's email addresses to do it is like making drugs illegal because some people steal to pay for their habit. We need to focus on the problem at hand, not some side issue related to the problem.
It is not the government's place to tackle the spam problem. If they try, they'll just fuck it up, like they've fucked up so many other things in the past. Spam has all the telltale signs of a problem that legislation won't help. It's a relatively victimless crime (or rather, its victims, with the exception of those companies who run the huge backbones, are at most marginally impacted by the problem), it can be done in a relatively anonymous fashion, and any laws banning or regulating it will be very difficult to enforce. Problems like that (drug abuse and so on) are never helped by laws, and instead just get worse with each additional crackdown.
The problem can never be fully solved by technical means, being a sociological problem, but technical solutions can do a much more effective job in curbing the problem than any legislative solution, and cause fewer additional problems in the process. Rather than try to get the government to pass ineffective feel-good laws, let's fix the problem from our end. It's time to replace SMTP with a less trusting protocol - the Internet is clearly a very different place than it was when SMTP was originally created, and we need a new mail protocol to match the times.
Keep the government's laws off my Internet, people. It is a medium that spans the entire globe and is not under the jurisdiction of any one government anyway, so laws will never do the job. They'll just cause more problems and never solve anything.
What you're looking for, my friend, is Maya 4.5 Personal Learning Edition. Can't use it for commercial work, and it puts a (rather obtrusive, unfortunately) watermark in renderings and hardware-rendered viewports (i.e. anything but wireframe), and it's purposely gimped to disallow importing/exporting between itself and the real Maya or MEL scripts, but hell if it isn't the whole damn Maya Complete package.
Enjoy - Maya blows the competition out of the water. Also the prices have dropped down to reasonable levels, with Maya Complete for $1,999, so once you get to the point that you need to buy a real copy, your family won't have to starve for more than a week or so.
Re:I can't see why portable code is so fscking har
on
WineX 3.0 Examined
·
· Score: 2, Insightful
I mean, how hard is it to use portable libraries and code from the beginning?
It's not hard, obviously. But just as 90% of people are morons, 90% of game developers are morons.
Why do companies choose to use DirectX instead of OpenGL?
Because it's better. DirectX 9 is simply a better graphics API than OpenGL at this point, which is just an unfortunate fact of life. If you're developing for Windows, using DirectX will get cut down your workload tremendously, simply because so much more is already done for you.
Even if you use DirectX, how hard is it to make that choice irrelevant to the rest of the implementation, and the switch to OpenGL transparent?
That's the correct solution, and it's what I do (I am a game developer). It does take some real thinking to come up with a good abstraction which will take advantage of the power of each API while dealing with its limitations as well, but it's not impossible.
It must be possible for eevry company to build portable games and engines when they build them from scratch, shouldn't it?
Most companies are just trying to get the damn game finished and shipped.
Check out "Real-Time Rendering" by Tomas Akenine-Moller and Eric Haines. It's extremely math-intensive, but that's an inherent fact of 3D graphics in general anyway, and if you know the math behind it well, you can write a much better engine. It also only assumes you know the very basics of matrix and vector math, which you can learn online in an afternoon if you don't already know it. From there it goes into extreme detail on damn near everything relating to realtime rendering (as the title indicates:), including polygonal techniques, visibility/occlusion algorithms, shadows, lighting, collision detection, texturing, pixel/vertex shaders, curved surfaces, and a hell of a lot more. If you're going to buy one book on the topic, buy this one.
It's a very recent book (published in 2002), and includes relevent information on OpenGL and DirectX 8 as well as recent hardware (there is a case study on the Xbox near the end of the book). It also includes excellent information on optimizing the graphics pipeline and taking advantage of its inherent parallelism.
After this book, if you're looking for more game-related material as opposed to hardcore graphics and math, check out the Game Programming Gems series from Charles River Media. Some fantastic stuff in there (they even show up in the bibliography and footnotes in "Real-Time Rendering"!)
Re:Cg for NVIDIA only?
on
The Cg Tutorial
·
· Score: 4, Informative
orgive my ignorance, but is Cg made for NVIDIA only? Or is it even optimized for NVIDIA chips?
It's not optimized for anything. When you compile a Cg program (either offline or at runtime - the Cg compiler is very fast!) you specify a "profile" for it to use. Some of the currently-supported profiles are arbvp1 (which outputs code for OpenGL's ARB_vertex_program extension), vs_1_1 (DirectX 8 vertex shader), vp20 (NVIDIA's NV_vertex_program OpenGL extension), vp_2_0/vp_2_x (DirectX 9 vertex shader), vp30 (NVIDIA's NV_vertex_program2 OpenGL extension), ps_1_1/ps_1_2/ps_1_3 (DirectX 8 pixel shader), fp20 (OpenGL NV_texture_shader and NV_register_combiners extensions), arbfp1 (OpenGL's ARB_fragment_program extension - vendor-independent for older cards), ps_2_0/ps_2_x (DirectX 9 pixel shader, vendor-independent for 4th generation GPUs), and fp30 (NV_fragment_program OpenGL extension, for 4th-gen NVIDIA GPUs).
So these profiles are optimized for their target platforms, and yes, currently NVIDIA chips are better supported. However, vendors can write profiles for their chips without NVIDIA's support, so for example, ATI could write a profile for the Radeon 9800 and it would work fine. However, ATI has already written support for DX9 shaders, so the vs_2_x/ps_2_x targets would work fine for that (or vs_1_x/ps_1_x for the 8500 generation).
Don't listen to the Slashbots here - I am a professional game developer, and Cg is a godsend (and I'm even developing mostly using ATI cards). Since runtime compilation is so fast, Cg programs can be compiled when the game is played and the exact hardware being used is known. I don't imagine I have to go into more detail as to why that's a fantastic thing.
Cg was developed, designed, and created by nvidia.
Together with Microsoft, who then took the result and renamed it HLSL. That should answer the rest of your questions (of course, reading the article would have done that too).
If you get a T68i with Bluetooth, and a Bluetooth adaptor for your Powerbook, you can get online that way (no wires at all!) You don't even have to take your phone out of your pocket, since Bluetooth reaches up to 30 feet or so. Once you have all the PPP settings set up, just hit "Connect" from OS X's Internet Connect to get connected, it's pretty slick.
Kinda pricey, though, they start charging by the K after 8MB/month (IIRC), and not the biggest speed demon at 19.2 max, but better than nothing.
The Intel compiler has better error reporting than MSVC++. I use it when I don't understand why MSVC++ is barfing on my template code.
MSVC++'s problem with templates goes far beyond simply not reporting the error well - its template support is crappy, and just plain does not follow the C++ specifications. VC++ 6 doesn't even support partial specialization, which are somewhat of a key feature of templates (supposedly VS.NET is better but still not quite there).
If you'll excuse me, I have some things to get off my chest.
Christ, I just don't understand you people sometimes. You pay good money for a Mac and a copy of OS X, and then you cheer for a half-assed port of GTK+, the most horrible toolkit ever conceived? I mean, come on, at least put the fucking menubar on top of the screen where it belongs!
I'm not a Mac zealot. I love my Mac, but I'm also a fan of Windows XP (from a useability, if not technological, standpoint), and have been using Linux since before the kernel hit the big 1.0 (although, since the train wreck that has been kernel 2.4 hit the world, I've moved everything important over to FreeBSD). I spent years championing free software, but one can only take so much of "that'll be fixed soon, we promise," before the idea of a free desktop stops being attractive.
I cannot stand to use a GTK+-based application without cringing - applying a skin-deep theme doesn't fix the useability and design problems, which go straight to the core (granted, a lot of this stems from the "evil robot" UI designer another posted in this thread pointed out, and there's not much a toolkit can do about that, but the problem seems worse for most GTK+ apps than, say, Qt). GTK+ apps, without a SINGLE EXCEPTION that I have seen, just scream "AMATEUR!" The GIMP is the only GTK+ application I have seen which comes even close to feeling professional, and it's still got a long way to go. Qt apps are much better in the respect, and that probably stems from the fact that programmers who use Qt (at least in the context of KDE applications) tend to pay more attention to KDE's UI guidelines than GTK+ programmers do to Gnome's guidelines. But they both have the same problem in the end - without somebody to have the final say in the user interface area, a coherent desktop is impossible, because anybody who has other ideas is free to implement them. That may work fine in other areas of software development (and indeed, has, as free software spanks the competition in most other areas), but on the desktop, it just can't fly.
I, for one, will stay the hell away from this port, even if they fix the menubar issues and make a convincing Aqua theme (which, to this point, has not been done by anybody, so I'm not counting on colorblind, aesthetically-challenged free software types to pull it off). Even if the widgets manage to blend in with the native ones, GTK+ applications will always stick out like a sore thumb. The Mac interface is about much more than blue, pulsating buttons - interfaces are DESIGNED, not HACKED TOGETHER.
The only thing this port will be good for is a temporary stepping stone from X11 to Aqua - and not a very good one, at that. I wish free software people would drop GTK+ for a more reasonable toolkit, like Qt, which doesn't actively try to drive the programmer to drink. The best case would be if the GNUStep people would 1) finish up their god damned project, and 2) make it less ugly. That way native OS X applications could be written the way God intended (in Cocoa), and easily ported to other operating systems. As the author of several programs using GTK+, Qt, and Cocoa, I can honestly say that I would sooner work for minimum wage flipping burgers at McDonalds than ever write another line of code using GTK+. Qt is decent, and Cocoa is by far the best. But GTK+... ugh, there is just not a single redeeming feature to this entire toolkit.
Then again, I'm even picky when it comes to Carbon vs. Cocoa - even Carbon applications don't feel right on OS X (especially the Carbon port of Vim, which makes me cry). Give me native Cocoa apps, or give me death.
I'm happy to be an Apple fan, but it's more like being a Packers fan. They don't generally win, but here's the thing; sometimes they do. And, they're innovators too (only community-owned team in the NFL).
Eh? You don't follow football, do you? The Packers are tied for first in the NFC at the moment with a record of 11-3 (with the Eagles, who seem to be able to win no matter who their QB is, and the Buccaneers), which means first in the NFL since nobody in the AFC is doing better than 9-5.
Anyway, I'm not a big Packers fan, being from New England and all, but I have to agree with you that the community-owned thing is very cool.
While I really like GAIM for its all-in-one approach to messenging protocols, the authors deserve a kick in the balls for having windows that constantly raise to the front, every time someone sends you a message. The result is, you are typing an e-mail or programming and, all of a sudden, what you typed ends up in the wrong window, simply because GAIM is receiving an incoming message for you. Bad, Bad, Bad GAIM..
Got an extra 10 seconds? Take a peek in the preferences dialog, and turn that behavior off.
Packaging applications in a single directory is good, but drag-and-drop installation is not. When I download the latest version of Mozilla, I don't want to have to hunt down the old version and delete it by hand. Nor do I want to have to hunt down the shortcuts to the old version and replace them with new ones. Upgrading application software should be automatic and centralized. The answer is a real packaging system, not Windows installers, and not drag-and-drop installation.
You don't have to. Just drag the new version to you Applications folder, and you'll get a dialog box asking if you want to replace the old version. Click Yes, and you're done.
Re:Here's a real "what's the point" question:
on
Men vs. Machines
·
· Score: 3, Informative
So why would you want to actually buy one of these programs? They aren't teaching programs. They aren't for a friendly game against the computer. They aren't open sourced (that I could see) so you can't study the algorithms. They are meant to destroy every human they come in contact with.
Well, Fritz (and other programs) have "analysis" modes, where you can load up a game you played against another person, and it can analyze the game in depth and point out any mistakes or missed opportunities for you. This feature alone makes it worth the $50 they charge you for it.
True, very few people can beat Fritz head-to-head, but it is a good way to strengthen yourself tactically - you make even a small tactical error, and Fritz will exploit it.
Does anyone outside of chess grand masters use these things?
Yes, I do (and I'm a 1200-level player, only been really playing for a few months now). Almost everybody else at my club who uses any sort of computer program (which is the majority or people there) uses Fritz too.
(How many grand masters are there, anyway?)
Several hundred worldwide AFAIK.
I'm a very mediocre chess player myself, and if I want my ass handed to me in chess I'll go down to the local high school club and call them all smelly virgins before starting a game. At least I'll have some face-to-face interaction.
Yeah, well. Computer chess is no substitute for the real thing. Of course, lack of smelly virgins (with the possible exception of yourself) is definitely a benefit.
The one thing that, for me, makes the biggest difference in the apparent quality of a desktop is how the redraw scheme works. In Mac OS X, Quartz buffers the contents of every window and takes care of redrawing the window when it is exposed. The result is that there are NEVER any redraw issues when an application is busy doing something - when a window is exposed, it looks like it is already drawn. Even a completely frozen application still gets redrawn properly.
The lack of this is always the first thing I notice when using an X-based desktop (Windows has this problem too - OS X seems to be the only desktop to actually get it right, which makes sense, since it is only recently that memory has become plentiful enough that this makes sense). It is very distracting to, for example, drag an xterm window across a Mozilla window and have the xterm leave a nasty little trail across the Mozilla window where the redraw hasn't caught up yet.
So I hope that anybody who is working on an X11 replacement keeps this in mind - when you're working on a brand new system, you should take advantage of the fact that you're already breaking compatibility - might as well do what Apple did and go all out in creating the best system possible.
As for software, I use OmniGraffle and OmniOutliner from OmniGroup. OmniOutliner is especially simple, yet unique. I wonder why no one else has an idea organizer that is so incredible? I couldn't do my job without it.
I'll second this. I don't actually shell out for software very often, but I paid for OmniOutliner. It's a terrific program. I'd pay for OmniGraffle, too, but I'm on a tight budget these days and can't justify spending the $69.95 they want for it. That's not to say it's not worth it, just that I can't afford it at the moment.
I wish there were more companies like OmniGroup out there. They write some good stuff. Now if they'd just add tabs to OmniWeb!
Ooops, my mistake -- I've never used BeOS :)
Well, it was quite overrated. But it did beat Windows to the punch on this particular feature.
On the volume control dialog, they have per-application volume settings.
What innovation? BeOS had that a long time ago.
That's a legal political movement, instead of something like a cu.
Coup, not cu. For cryin' out loud.
I wonder if there are good books on math and physics for game developers?
O'Reilly publishes a book called "Physics for Game Developers" and Charles River Media publishes a book called "Mathematics for 3D Game Programming and Computer Graphics." Both are quite good.
...and the HLSL (which can be processed in software). OpenGL is too vendor specific (read: Cg)...
You realize, of course, that HLSL and Cg are the exact same language, right? Microsoft helped nVidia develop Cg, and then renamed it to HLSL for the DX9 implementation.
You want us to buy full albums? So make an album that doesn't suck, from start to finish. You know, like Outkast's first three albums, Dark Side of the Moon, Jar of Flies, 36 Chambers, or Lateralus. Albums that don't suck for 60% of the time.
If I only want to listen to 40% of your music, much less pay for it, I'm not going to buy the whole album. I'll settle for hearing your shit from time to time when I'm radio surfing in traffic. Make an album that doesn't suck, and I'll buy it. Otherwise, you can take either nothing, or $0.99/~3 minutes that don't suck.
No, it's certainly doable, and has been done in the past. It's actually quite easy to make it look convincingly accurate as long as the position of the viewer doesn't change (rotation is fine, just no movement). It's still possible if the viewer moves, but it requires many more images of the object from many more angles.
Tell that to the people whose genuine addresses have been used as return addresses by spammers.
That's an entirely different thing, and I have no problems with identity theft crimes being illegal. But making spam illegal because some spammers use other people's email addresses to do it is like making drugs illegal because some people steal to pay for their habit. We need to focus on the problem at hand, not some side issue related to the problem.
It is not the government's place to tackle the spam problem. If they try, they'll just fuck it up, like they've fucked up so many other things in the past. Spam has all the telltale signs of a problem that legislation won't help. It's a relatively victimless crime (or rather, its victims, with the exception of those companies who run the huge backbones, are at most marginally impacted by the problem), it can be done in a relatively anonymous fashion, and any laws banning or regulating it will be very difficult to enforce. Problems like that (drug abuse and so on) are never helped by laws, and instead just get worse with each additional crackdown.
The problem can never be fully solved by technical means, being a sociological problem, but technical solutions can do a much more effective job in curbing the problem than any legislative solution, and cause fewer additional problems in the process. Rather than try to get the government to pass ineffective feel-good laws, let's fix the problem from our end. It's time to replace SMTP with a less trusting protocol - the Internet is clearly a very different place than it was when SMTP was originally created, and we need a new mail protocol to match the times.
Keep the government's laws off my Internet, people. It is a medium that spans the entire globe and is not under the jurisdiction of any one government anyway, so laws will never do the job. They'll just cause more problems and never solve anything.
What you're looking for, my friend, is Maya 4.5 Personal Learning Edition. Can't use it for commercial work, and it puts a (rather obtrusive, unfortunately) watermark in renderings and hardware-rendered viewports (i.e. anything but wireframe), and it's purposely gimped to disallow importing/exporting between itself and the real Maya or MEL scripts, but hell if it isn't the whole damn Maya Complete package.
Enjoy - Maya blows the competition out of the water. Also the prices have dropped down to reasonable levels, with Maya Complete for $1,999, so once you get to the point that you need to buy a real copy, your family won't have to starve for more than a week or so.
I mean, how hard is it to use portable libraries and code from the beginning?
It's not hard, obviously. But just as 90% of people are morons, 90% of game developers are morons.
Why do companies choose to use DirectX instead of OpenGL?
Because it's better. DirectX 9 is simply a better graphics API than OpenGL at this point, which is just an unfortunate fact of life. If you're developing for Windows, using DirectX will get cut down your workload tremendously, simply because so much more is already done for you.
Even if you use DirectX, how hard is it to make that choice irrelevant to the rest of the implementation, and the switch to OpenGL transparent?
That's the correct solution, and it's what I do (I am a game developer). It does take some real thinking to come up with a good abstraction which will take advantage of the power of each API while dealing with its limitations as well, but it's not impossible.
It must be possible for eevry company to build portable games and engines when they build them from scratch, shouldn't it?
Most companies are just trying to get the damn game finished and shipped.
Check out "Real-Time Rendering" by Tomas Akenine-Moller and Eric Haines. It's extremely math-intensive, but that's an inherent fact of 3D graphics in general anyway, and if you know the math behind it well, you can write a much better engine. It also only assumes you know the very basics of matrix and vector math, which you can learn online in an afternoon if you don't already know it. From there it goes into extreme detail on damn near everything relating to realtime rendering (as the title indicates :), including polygonal techniques, visibility/occlusion algorithms, shadows, lighting, collision detection, texturing, pixel/vertex shaders, curved surfaces, and a hell of a lot more. If you're going to buy one book on the topic, buy this one.
It's a very recent book (published in 2002), and includes relevent information on OpenGL and DirectX 8 as well as recent hardware (there is a case study on the Xbox near the end of the book). It also includes excellent information on optimizing the graphics pipeline and taking advantage of its inherent parallelism.
After this book, if you're looking for more game-related material as opposed to hardcore graphics and math, check out the Game Programming Gems series from Charles River Media. Some fantastic stuff in there (they even show up in the bibliography and footnotes in "Real-Time Rendering"!)
orgive my ignorance, but is Cg made for NVIDIA only? Or is it even optimized for NVIDIA chips?
It's not optimized for anything. When you compile a Cg program (either offline or at runtime - the Cg compiler is very fast!) you specify a "profile" for it to use. Some of the currently-supported profiles are arbvp1 (which outputs code for OpenGL's ARB_vertex_program extension), vs_1_1 (DirectX 8 vertex shader), vp20 (NVIDIA's NV_vertex_program OpenGL extension), vp_2_0/vp_2_x (DirectX 9 vertex shader), vp30 (NVIDIA's NV_vertex_program2 OpenGL extension), ps_1_1/ps_1_2/ps_1_3 (DirectX 8 pixel shader), fp20 (OpenGL NV_texture_shader and NV_register_combiners extensions), arbfp1 (OpenGL's ARB_fragment_program extension - vendor-independent for older cards), ps_2_0/ps_2_x (DirectX 9 pixel shader, vendor-independent for 4th generation GPUs), and fp30 (NV_fragment_program OpenGL extension, for 4th-gen NVIDIA GPUs).
So these profiles are optimized for their target platforms, and yes, currently NVIDIA chips are better supported. However, vendors can write profiles for their chips without NVIDIA's support, so for example, ATI could write a profile for the Radeon 9800 and it would work fine. However, ATI has already written support for DX9 shaders, so the vs_2_x/ps_2_x targets would work fine for that (or vs_1_x/ps_1_x for the 8500 generation).
Don't listen to the Slashbots here - I am a professional game developer, and Cg is a godsend (and I'm even developing mostly using ATI cards). Since runtime compilation is so fast, Cg programs can be compiled when the game is played and the exact hardware being used is known. I don't imagine I have to go into more detail as to why that's a fantastic thing.
Cg was developed, designed, and created by nvidia.
Together with Microsoft, who then took the result and renamed it HLSL. That should answer the rest of your questions (of course, reading the article would have done that too).
If you get a T68i with Bluetooth, and a Bluetooth adaptor for your Powerbook, you can get online that way (no wires at all!) You don't even have to take your phone out of your pocket, since Bluetooth reaches up to 30 feet or so. Once you have all the PPP settings set up, just hit "Connect" from OS X's Internet Connect to get connected, it's pretty slick.
Kinda pricey, though, they start charging by the K after 8MB/month (IIRC), and not the biggest speed demon at 19.2 max, but better than nothing.
The Intel compiler has better error reporting than MSVC++. I use it when I don't understand why MSVC++ is barfing on my template code.
MSVC++'s problem with templates goes far beyond simply not reporting the error well - its template support is crappy, and just plain does not follow the C++ specifications. VC++ 6 doesn't even support partial specialization, which are somewhat of a key feature of templates (supposedly VS.NET is better but still not quite there).
If you'll excuse me, I have some things to get off my chest.
Christ, I just don't understand you people sometimes. You pay good money for a Mac and a copy of OS X, and then you cheer for a half-assed port of GTK+, the most horrible toolkit ever conceived? I mean, come on, at least put the fucking menubar on top of the screen where it belongs!
I'm not a Mac zealot. I love my Mac, but I'm also a fan of Windows XP (from a useability, if not technological, standpoint), and have been using Linux since before the kernel hit the big 1.0 (although, since the train wreck that has been kernel 2.4 hit the world, I've moved everything important over to FreeBSD). I spent years championing free software, but one can only take so much of "that'll be fixed soon, we promise," before the idea of a free desktop stops being attractive.
I cannot stand to use a GTK+-based application without cringing - applying a skin-deep theme doesn't fix the useability and design problems, which go straight to the core (granted, a lot of this stems from the "evil robot" UI designer another posted in this thread pointed out, and there's not much a toolkit can do about that, but the problem seems worse for most GTK+ apps than, say, Qt). GTK+ apps, without a SINGLE EXCEPTION that I have seen, just scream "AMATEUR!" The GIMP is the only GTK+ application I have seen which comes even close to feeling professional, and it's still got a long way to go. Qt apps are much better in the respect, and that probably stems from the fact that programmers who use Qt (at least in the context of KDE applications) tend to pay more attention to KDE's UI guidelines than GTK+ programmers do to Gnome's guidelines. But they both have the same problem in the end - without somebody to have the final say in the user interface area, a coherent desktop is impossible, because anybody who has other ideas is free to implement them. That may work fine in other areas of software development (and indeed, has, as free software spanks the competition in most other areas), but on the desktop, it just can't fly.
I, for one, will stay the hell away from this port, even if they fix the menubar issues and make a convincing Aqua theme (which, to this point, has not been done by anybody, so I'm not counting on colorblind, aesthetically-challenged free software types to pull it off). Even if the widgets manage to blend in with the native ones, GTK+ applications will always stick out like a sore thumb. The Mac interface is about much more than blue, pulsating buttons - interfaces are DESIGNED, not HACKED TOGETHER.
The only thing this port will be good for is a temporary stepping stone from X11 to Aqua - and not a very good one, at that. I wish free software people would drop GTK+ for a more reasonable toolkit, like Qt, which doesn't actively try to drive the programmer to drink. The best case would be if the GNUStep people would 1) finish up their god damned project, and 2) make it less ugly. That way native OS X applications could be written the way God intended (in Cocoa), and easily ported to other operating systems. As the author of several programs using GTK+, Qt, and Cocoa, I can honestly say that I would sooner work for minimum wage flipping burgers at McDonalds than ever write another line of code using GTK+. Qt is decent, and Cocoa is by far the best. But GTK+... ugh, there is just not a single redeeming feature to this entire toolkit.
Then again, I'm even picky when it comes to Carbon vs. Cocoa - even Carbon applications don't feel right on OS X (especially the Carbon port of Vim, which makes me cry). Give me native Cocoa apps, or give me death.
i'm not saying that they aren't winning now... but remember the dry spell they had before Favre came along?
:)
Heh, well. Favre has been around for awhile. You can't complain about a team because they sucked 10 years ago
It was like rooting for the Cubs, without Harry Caray to laught at.
I don't know who Harry Caray is... baseball makes my eyes bleed.
I'm happy to be an Apple fan, but it's more like being a Packers fan. They don't generally win, but here's the thing; sometimes they do. And, they're innovators too (only community-owned team in the NFL).
Eh? You don't follow football, do you? The Packers are tied for first in the NFC at the moment with a record of 11-3 (with the Eagles, who seem to be able to win no matter who their QB is, and the Buccaneers), which means first in the NFL since nobody in the AFC is doing better than 9-5.
Anyway, I'm not a big Packers fan, being from New England and all, but I have to agree with you that the community-owned thing is very cool.
While I really like GAIM for its all-in-one approach to messenging protocols, the authors deserve a kick in the balls for having windows that constantly raise to the front, every time someone sends you a message. The result is, you are typing an e-mail or programming and, all of a sudden, what you typed ends up in the wrong window, simply because GAIM is receiving an incoming message for you. Bad, Bad, Bad GAIM..
Got an extra 10 seconds? Take a peek in the preferences dialog, and turn that behavior off.
So why would you want to actually buy one of these programs? They aren't teaching programs. They aren't for a friendly game against the computer. They aren't open sourced (that I could see) so you can't study the algorithms. They are meant to destroy every human they come in contact with.
Well, Fritz (and other programs) have "analysis" modes, where you can load up a game you played against another person, and it can analyze the game in depth and point out any mistakes or missed opportunities for you. This feature alone makes it worth the $50 they charge you for it.
True, very few people can beat Fritz head-to-head, but it is a good way to strengthen yourself tactically - you make even a small tactical error, and Fritz will exploit it.
Does anyone outside of chess grand masters use these things?
Yes, I do (and I'm a 1200-level player, only been really playing for a few months now). Almost everybody else at my club who uses any sort of computer program (which is the majority or people there) uses Fritz too.
(How many grand masters are there, anyway?)
Several hundred worldwide AFAIK.
I'm a very mediocre chess player myself, and if I want my ass handed to me in chess I'll go down to the local high school club and call them all smelly virgins before starting a game. At least I'll have some face-to-face interaction.
Yeah, well. Computer chess is no substitute for the real thing. Of course, lack of smelly virgins (with the possible exception of yourself) is definitely a benefit.