Archive for June, 2005

Apple Hate

Friday, June 10th, 2005

Apple has been a popular subject lately, and the fall out of the Intel switch has been flooding the Net with tons of crap. So, I’m here in my yellow rubber dingy, floating down an overflowing river of Apple Hate™. And I quote, “I didn’t waste six years writing code for a dead-end platform.

And Kennedye (the poster of that comment) has got a point: hand tuned PPC and Altivec may have not been the best idea, the compiler should be smart enough to auto-vectorize my code and get some decent performance out of it. Hell, GCC should learn to just read my mind; or maybe not, it’d explode from my semi-sarcastic realistic outlook on life.

Now, everyone is thinking Steve Jobs made a mistake, but I’m thinking this may be a brilliant move. See, Steve has something called the Reality Distortion Field™. This field is a documented phenomenon of quantum physics that causes Steve to just think about something, and make it a reality. He can convince anyone of anything, and if he can’t, he can just take your side of the argument up as if that was his side all along, and you’d never know otherwise. This field is so powerful, that even if you know about it ahead of time, you’re still affected.

So, I think Steve watched X-Men (the movie), and saw Magneto’s Spinning Mutant Generator, and thought to himself, “Hmm, wouldn’t it be nice if I could build something like that to project my Reality Distortion Field™ all over the world and convince everyone that my new Mactel machines really are something awesome.

Although I may be under the effects of his hideous yet elegant and wonderful machine, I think he may be partially right. Due to his reliance on Altivec to close the gap between G4 processors and x86, he got screwed. An ounce of garden variety speed is worth a pound of special case optimization, and the PPC was far overweight in this respect.

Sure, I may have gotten a 25-500% improvement in code that was SIMD-friendly; but using a (at that time) fast Pentium 4 vs the (at that time) new G4, I could easily see a 25-100% improvement in programs that weren’t SIMD-friendly. And seeing as the overwhelmingly vast majority of code isn’t SIMD-able, I’d gladly trade Altivec for raw speed.

Take into the fact that the Athlon was beating the pants off the Pentium 4, the G4 was a really bad deal for Apple users. Sure, it was elegant (and Apple thrives on elegance), but you paid for that by having slower processors.

Of course, if you actually had said special case, PPC was the winner. Take a look at the Cell processor in the Playstation 3. Cell* is a derivative of the PPC meant for machines that need high performance and repetitive (but complex) calculations, such as games, or certain scientific applications. It simply performs better than x86 would in that situation, and Sony knows it.

So, Apple now has effectively traded the rarely used Altivec for lots of generic speed, and got cheaper and more readily available CPUs to boot. So, Steve, what is your next move? A mouse with zero buttons?

* I’m not factoring in Cell’s 8 special use vector units. With those included, it unfairly destroys any competition. Without the vector units, its still a high performance 3.2 GHz PPC-like core.

Really Small Must Be Even Bigger

Thursday, June 9th, 2005

Seth Godin talks about how smaller buisnesses are trumping larger ones by not being unwieldy beasts and giant conflicts of egos. I’ve been saying this for awhile, that smaller companies have been producing better products cheaper for awhile now. Take a look at the software industry, id Software’s Doom was written and designed by around a dozen people, and ended up being an incredibly huge seller and kick-started the next PC gaming revolution.

However, this rule applies to FOSS development as well. The smaller projects are producing the better software, and the larger projects are doing all the wrong things. GNOME has literally a hundred developers, and its one of the worst products (or, really, a group of products ‘sold’ under one suite) I’ve seen FOSS produce in a long time.

But the Apache HTTP Server, on the other hand, has less than a dozen active developers and is ran on the majority of web servers on the Internet. KDE has issues due to size as well (but has a smaller number of active developers than GNOME and has more users to boot), but the Simple DirectMedia Layer is widely used, and has only one official developer.

In FOSS, if small really is bigger, then really small is ginormous.

Apple, Intel, and Microsoft

Saturday, June 4th, 2005

So, everyone has noticed the CNET rumor mill bullshitting about Apple ditching IBM for Intel.

You can all stop laughing now; and for those that didn’t get the joke: Apple and IBM are an item. Apple has been using IBM processors since the switch to PowerPC all those years ago, and Apple will continue to be making Macs with PPCs in them until the end of the universe.

However, lets say Apple does get in bed with Intel, we have two choices. (I’m doubting this will happen, but lets humor the idea)

Behind door number one: Apple is secretly working on a new Newton handheld PDA, and wants to use Intel’s half-way decent XScale embedded CPU series, but continuing to use PPC on their desktops, workstations, servers, and laptops.

Behind door number two: Apple is secretly working on reviving Yellow Box (OpenStep for Windows), and wants to produce really cheap Yellow Box+Windows machines, and wants to use Intel x86 on the equivalent of an x86 Mac.

Now, I doubt number two will ever happen. Yellow Box/Windows is a very bad idea, and runs in the opposite direction OSX is going in; however, if Apple were to get their tendrils into Microsoft, Longhorn (often quoted as being Microsoft’s clone of OSX) might actually get released in my lifetime, and actually rock to boot. And if Windows would quit sucking, and inherit Yellow Box functionality, I’d quit hating Windows.

This, however, brings up GNUstep for Windows. If Windows ends up getting an up-to-date version of Yellow Box from Apple, GNUstep for Windows would not be required anymore as we would have OpenStep on Windows provided by the company who bought out NeXT; but it would also become a threat to Yellow Box.

Of course, being able to build OpenStep apps as native Windows ones is not something GNUstep can do, but Yellow Box will be able to do (and will have to do to avoid rejection and failure); this said, I’d even switch to Yellow Box (for building OpenStep apps on Windows) due to its superior integration efforts by the alternate reality Apple (led by Steve Jobs in a beard).

… So, wait, would that mean the alternate reality me runs Windows, because Linux is under a draconian license, and the Overlords Torvald and Stallman are trying to sue Microsoft (the last bastion of freedom in the world) into the ground?