Rhapsody in Yellow (Redux)

Sooo... been an interesting couple of days.

The weekend started out innocently enough, I just happened to notice I hadn't touched the blog in awhile & the front page was looking kind of empty... so I threw together Rhapsody in Yellow to assuage the guilt and posted it in a hurry on Friday afternoon before I headed out the door.

Cool evening ensued, which consisted of (in order):


So, decent Friday. Got home well after midnight and decided to check the computer for messages before I crashed, and even in my altered state it was obvious something was wrong. Gyazmail was taking forever to pull in my mail, and AdiumX was telling me there were messages from 20+ people I'd never heard from left while I was away.

My mail came in, and I thought I'd been mail-bombed for a second there.

It took way longer than it should have for me to realize that drunkenblog was being passed around more than Aguilera backstage and that the reason my mail was so slow was due to the server running at an average load of 7. As a quick aside: CLIs just suck when you're inebriated. Trying to grep a log file, or type in a long password for an ssh session and then comprehending the results becomes... comical. There are some initial wtf & omfg emails and IM conversations that I really hope weren't saved out there. Considering necessity is the mother of all invention, if one had the time, one might find it interesting to research whether or not the creators of the GUI had a penchant for throwing back a few.

As I wasn't really sure what to expect I made some changes to some of the services that would hopefully allow it to handle the load, threw in a script to restart apache every 20 minutes and roll over the log files every two hours just in case. No amount of caffeine or nicotine was going to keep me up at this point, so an executive decision was made to crash and deal with it in the morning.

Saturday morning wasn't really pretty. Unfortunately the peeps who pushed it to other sites seemed to pull out the parts that seemed relevant to their circles' priorities, and didn't seem to take into account that I'd done the same when bashing it out. As an example, this is what was posted on /.:

Apple and Independent Developers
Corleone writes "We've seen a realization recently that Microsoft isn't standing still with Longhorn, and countering Longhorn has been pushed to the forefront. That is why I found the concept of Apple being the larger danger in Rhapsody in Yellow so ironic. The author skirts the scary question: would Apple porting their frameworks to Linux give them undue influence over the direction of the free operating system movement? This is after recent reports saying missing programs are the biggest thing holding Linux back on the desktop. Macromedia has interest in their tools on Linux, surely many others are too. This would seem to allow thousands of companies a simple path to the Linux market but with Apple as the gateway. If not Apple, what of Microsoft porting their engine?"

In other words, people hit the post with an entirely different mindset than was expected. This was an article about the mac market and Apple devs, and things were glossed over in that context. If I'm banging something out of decent detail for the mac-mindset, I'm not going to go into a bunch of detail on the ins & outs of KDE licensing, or the differences between KDE & Qt. If I was banging something out that I assumed lots of Linux people were coming to, I wouldn't necessarily go into the differences between Mac OSX & Darwin & freeBSD versus freeBSD+Mach unless it was pertinent to the discussion at hand. Ah well, bygones, but hopefully we can set some of that straight.

Errata

I'm not going to correct these in the original post, as I'm a big fan of being reminded of your mistakes. Although I've linked to this from the bottom & if I ever redo it I'll be sure to note them.

  • I said: "Why, exactly, do you think KDE is working so hard to port their frameworks over to OSX? Do you think they have a completely altruistic reason (well, not saying they're doing it for a bad reason) for KOffice running on OSX?" Really bad example to grab on my part. I was just using KOffice as an example of KDE apps moving to Mac OSX to make the point that Trolltech was releasing the native Qt libraries for a reason. That's prolly probably what I should have mentioned, but didn't want to have to get into a big Qt/GTK explanation when it was only somewhat relevant. Bad call, and either way it's good to note that the KDE environment and apps are independent of Trolltech (more on that later) and that in this case it really is altruistic. Benjamin Meyer, one of the developers working on it, was kind enough to inform me of such. There's more information from our email exchange which is posted with permission here.
  • I said that MS has not included the Java syntax in .NET yet, which was incorrect. Someone in the comments was kind out to point me to their J# site.
  • I said that .NET wasn't emulated, so the .NET CLR would have better performance than the Java VM. That was just stupid, and I know better. Still thinking in old knowledge. They both use a JIT compiler (just-in-time), which means it gets compiled into native code when it's run, and it's prolly probably fair to say that's not really emulation. Surfing around seems to show that .NET does have better performance than Java and uses less code, but I really don't have enough variables and would have to spend more time than I have looking around. Hopefully someone can clarify.

Since we have that out of the way, I got a ton of questions. I learned the hard way with the G5 post that it's just way too crazy to respond to everyone directly when they're often a variations. Doesn't mean I don't appreciate them though, I really do.

Questions & Answers

  • "Why didn't you mention GNUStep?"
There were generally 3 variations of this: those that wondered why I chose not to mention it, those that thought I was uninformed because I didn't mention it, and those that considered the entire post to be garbage due to its omission. It was intentionally not mentioned. It really didn't seem to be a factor for what I was actually proposing. Many seemed to think that Apple would need to port their changes over to GNUStep, or that you'd be able to develop OSX stuff on Linux/Windows/etc.

That isn't what I was proposing. Apple still has Yellow Box around, and they're even using it for products (webobjects uses it for windows), they just don't let anyone else use it... like 3rd party developers. That's what I was proposing, among other things. What may be a wrench in letting others use it at this point would be the heavy blending of Carbon & Cocoa for the desktop, which was why I mentioned the Carbon/CFM issue. I have nothing but respect for the guys working on GNUStep, it just didn't really seem to be a factor unless your agenda was pro-GNUStep or wanting Linux to have that advantage, and not Apple.

  • "Why are you spreading FUD that Gnome is free as in beer but KDE isn't?"
Wasn't my intention, and I do think it works for the posts purposes unless you're getting there from slashdot. I just spent all of a small paragraph on the entire subject of the top choices for Linux desktop development. To do it justice I would have had to go into a lot greater detail than was necessary to give a synopsis, and used KDE as a label instead of KDE/Qt or Gnome/GTK. That's it. No slight was meant to be implied. Just to set the record straight: KDE is the desktop, and is licensed under the GPL (well, now).

However the frameworks, or at least the most popular tools (Qt) aren't. There are limitations and differences in the licensing that you aren't faced with with other options as a developer. The long and short is that if you release your software for Mac/Qt or X11/Qt under the GPL, you can do it for free. If you don't want to give away the source, or you want to develop for windows, you have to pay. It isn't an "option" where if a company requires the support they can purchase it. Saying that doesn't mean I have a problem with it, or that I'm bringing up the old feuds that caused Gnome to be started in the first place. KDE has value, I like it, and I've often gone back and forth between which I prefer for actual use. I could very well be wrong in what I think is going to happen, but that doesn't mean it's FUD.

  • "Do you know Linux at all?!?!"
Well, not in the biblical sense, but I have a passing familiarity. A quick search of my blog for "Linux" or BSD should turn up enough to give you an idea, or hit the archives of some of the lists I'm on. As for specifics, for x86 I've used Red Hat, Mandrake and Gentoo. For PPC I've used Yellow Dog. However my skillz have pretty concrete upper bounds.
  • "It's obvious you are scared to death of Linux. Why?"
Egh, scared... um, hrm. Linux is a disruptive force in the marketplace. I like those, and hope Linux does great. I also happen to like Apple and Mac OSX, and would like to see Apple step in at the right time to take full advantage of that wave. One of the things you may have picked up on, which wasn't something I explicitly said, but rather tried to infer: if Apple doesn't have users to offer developers, they need to offer a hell of a lot of other things, or someone like KDE sure as hell will.

Does that scare me? Yeah, I really don't like the idea of someone like Adobe starting to use Qt in order to support Windows/Mac/Linux with the same codebase. Consider it a warning of how things could play out if KDE plays its cards right and others don't. Or just a mental what-if excercise. I can understand how someone who used Linux wouldn't necessarily like the idea of all their major software being created on a mac and ported, either, and find what I said offensive. Bygones.

  • "Why didn't you break it up? It's so long!"
One of my main general motivators is laziness. In this case, I was slapping things together and adding glue, and realized I had something really, really big. I worried about the length some, and even asked a pal: "Um, how long is too long for a blog post?" "Two pages." "Um, this is at least 23." "Wtf?". But really, breaking that thing up and giving it proper titles, linking back and forth between them... I had about 20 minutes before leaving, which meant it wouldn't get done, and the front page of my blog woulda looked empty, which woulda bugged me.

Outside of readability, the length turned out to be a problem technically. I threw it into Kung-Log and tried to post it, which promptly went absolutely apeshit and was pinging just about every site I've ever pinged randomly (sorry!). So I tried posting directly through the web interface (I use movabletype) which did post it, however it cut off the text. A quick google turned up that movabletype uses a text field instead of a longtext field for mysql which limited your posting size to about 65k of text. But I really wanted to avoid that work, so I backed up the database and changed several of the related fields to longtext, made sure there were no obvious ill effects, posted and was out the door.

  • "Since it's become so linked to, will you clean it up and separate it out with proper titles and chapters?"
It's a blog.
  • "Why do you make me give my email to post a comment?"
Inertia. I hadn't realized it was a problem to people, and anon comments are allowed now. If it causes a problem in the future, I do reserve the right to turn it off.
  • "Why the hell does everyone want every project to adopt Mono? You want Apple to transition to Mono too"
I'm not sure how I gave this impression. I mentioned Mono in the context of the big transition point going on in the Windows world, and how that there are a ton of people learning C#. I admit I like .NET, because it seems like a very elegant system that offers a huge array of syntaxes without being unwieldy. I was looking at ways of capitalizing on that transition, and one of the ways of doing that would be to allow a windows developer to buy a mac, and code to the cocoa frameworks using C# and supporting windows/mac/linux.

Same for Java or the other languages I mentioned. If a developer knows Java, it should be all about learning the APIs, not having to stop and drop back to Cocoa or Carbon. Same for Python, or even VB6. I'm not saying to trade Obj-C for C#, more than anything I was calling for more pervasive support across the board for a variety of syntaxes. Same between Carbon & Cocoa. If you have to create a .NET-ish solution in order to do this, and using Mono gives you a big leg up, have a party. As long as they're not licensing their APIs from MS I'm good.

  • "Why didn't you mention the window managers being developed for the *nix's to give it the same features as Quartz?"
I've talked about these in other places. I said that Linux was something that couldn't be ignored, and was going to be a force. I didn't want it to degenerate into a pissing contest between the OSs with feature graphs and checklists. If it makes you feel any better, I didn't mention Avalon/Aero either, even though I've mentioned it other places.
  • "Don't you know Apple is a hardware company? Things like moving to x86 would have kill their core business like cloning almost did."
I specifically said I wasn't saying this in order to head this off, but people still seemed to think I didn't mean it. I am not proposing Mac OSX on x86! Or porting the OS. Or anything like that. You want to press the button to get multiple platforms with a minimum of effort, you have to buy a mac to do it. All development happens on Mac OSX. And since you are doing it on a mac, the chances of there being a mac version kinda go way up so at least the software is available.

The danger is that yes, if your app runs on macs, but also on a platform that is 1/3 to 1/2 the price, you could lose sales since they don't have to buy Mac OSX to run it. How real of a danger is that? I dunno... the problem is that those apps is very few and far between, and the only ones that really exist for the mac are recent ones that Apple themselves have made. Final Cut Pro, etc. Whereas there are numerous apps that aren't available for the mac that are deal breakers for people who want to use the mac. Vertical market/niche, as I mentioned in the last post. I really just don't know which is more numerous, those who are interested in a mac but are turned off by the lack of selection, or those who would drop the mac when some specific title was available for windows. I can hazard a guess, or I wouldn't be bringing it up, but have no numbers.

  • "Why did you bash Linux by calling it viral? FuuUuUuud!!!"
This really got to some people. It was meant to be neither a bash nor a compliment, just a statement of what a force Linux is and trying to capture it's affect on markets in an easy-to-imagine way. I know people can associate it with the FUD that circulated around the GPL being viral, but really... it can just be used as a description for an effect, like "viral marketing". Linux is to proprietary OSs as personal computers were to mainframes of the past.

Remember there was a time when people just didn't have personal computers, just mainframes. Then it was mainframes, workstations and personal computers. The personal computer has decimated both the mainframe & workstation market, eating its way up from the bottom one market at a time. Linux is/will do the same, except to proprietary OSs unless something drastically changes... economics will see to it. I may be working from a different definition of FUD though.

  • Why don't you use proper grammar?
Do you see any ads? :)
yummy alcohol posted button Posted by drunkenbatman
    May 03, 2004, at 09:36 PM


Comments (18)




Post a comment



Anonymous comments are allowed, but please enter something for a name.

And do endeavor to appear sane.









Remember personal info?