Internal Combustion
This is cool.
I have to admit that while I do most of my gainful work on GNU/Linux machines, when I sit at home and browse the web and play music, I use my iMac and OS X. I also will guiltily admit that I buy almost all of my music with iTunes music store. It’s just too darned easy; I’m a sucker for a click-and-buy song machine. My problem is with the deteriorating quality of the iTunes app itself. Apple has probably had me patch this thing literally 7 or 8 times so far, and each time I do the ‘upgrade’, the application runs worse. Every time. Soon, nothing will work at all. I am running iTunes 7.3.1 on OSX 10.4.10. This is basically the current releases of each at the moment. Right now, in iTunes, the following basic functionality does not work:
- The track clock at top center will not update unless you click on it
- The Visualizer has the same problem and is useless.
- Most importantly, the music store UI is not usable at all. They have killed my ability to buy music through them.
- If you open the artwork window by clicking on the album artwork, you’ll find that you can not close it. Ever. To make this more annoying, every time a new song comes on, the artwork window jumps to the front.
I would like to stress that all of these things used to work a few releases ago. How is it even at all possible that bugs of this magnitude could ship? Do they not test this application at all? I mean, this is their core app. iTunes is what drives people to the mac platform, kind of like how Office works for Microsoft. You would think iTunes would work right on their OS, their hardware, with all their patches. But sadly, no. This app only gets worse over time and I stupidly keep installing the latest release, thinking things will be fixed…
This will be the shining example for all time of how corporate greed will ruin anything. Michael Dell is perfectly happy to torch Linux for Microsoft’s benefit to try to save his sinking ship. Remember, Dell had to come out of retirement recently because his PC business was on the rocks.
It really would be appropriate to send Michael Dell, Steve Ballmer and Ron Hovsepian to jail for this stuff. After 17 years of volunteer work by thousands of volunteers to bring the Linux platform to where it is today, the Hovsepians and Dells are happy to throw it right into the volcano in an attempt to save their flagging companies. It really should be illegal. They really deserve to be punished severely. I’ve bought my last Dell and I won’t let friends buy Dell if I can help it.
You should boycott Dell and Novell entirely. Fuck ‘em.
I guess I should explain a bit more for the non-tech portions of the audience.
Recently, Microsoft struck a deal with Novell, who market a Linux server distribution. The deal basically partnered the two companies in such a way that Microsoft and Novell are building a “interoperability lab” for Windows and Linux. It’s important to remember that Novell didn’t write or create Linux. Volunteers did. The volunteers gave it away and licensed it in a legally binding way so that no one can actually own it in the corporate IP sense. Microsoft basically came out and said that Novell’s Linux users would be protected from lawsuits that Microsoft might consider bringing against Linux users in the future. Microsoft claims to have patents that Linux infringes upon, and likes to imply that if use use Linux, you might get sued eventually. The problem is that it’s BS. Microsoft has about a trillion patents. That doesn’t mean squat in terms of reality. Microsoft claims to have patented such things as a mouse cursor and user permissions, things that demonstrably predate Microsoft itself. They patent everything, literally, everything, whether theirs to patent or not. Everyone knows this. Linux is explicily community property and the courts have consistently upheld it’s Public License. If Microsoft tried to sue Linux users, it would not work. They already had SCO try this. It failed. That does not stop them from continually threatening the Linux community and potential users with this shite. So, now that Dell has joined in, this sends a really bad message to all the folks out there who don’t know any better than to believe them. If Dell is playing along, folks are meant to think, then there must be something to this. It’s all a lie though. The PC market is, as always, being manipulated. Now when folks are scared to get Linux pre-installed on PCs because of this crap, Microsoft will go out and say, see - no one wants Linux.. too risk, etc.. All bullshit. And Dell is the enabler this time. Novell already sold the community down the river. Dell is setting it on fire and pouring kerosene on it.
So, please take this seriously. I write software for a living, so I know that stealing IP is serious. What Dell is implicitly saying is that they _do_ believe that the IP rights for that 17 years of volunteer labor actually might belong to Microsoft. That’s Evil(TM). What the Linux community has accomplished is a GOOD THING. Allowing Microsoft, Novell, and Dell to stomp it out is a BAD THING. It’s a very clear moral choice. If you continue to support these companies, you are doing real harm.
Because Peter and Charlie were right, not just specifically about REST, (as in representational state transfer) but about the fact that it takes people a while to really understand REST and why it’s not just beneficial, but downright important. I think I finally had some of the ephiphany of REST, but oddly it was because I was thinking about an entirely different problem than web traffic protocols. I was thinking about the different ways people move large amounts of geospatial image, elevation, and vector data around their systems. These days, interoperability is the new way, partly due to advances in technology that allows digital collaboration, partly for the more mundane reason that there are a hell of a lot of formats, web services, and spatial databases out there that people want to use. So, in effect, geospatial data and associated information is coming from all over the place all the time, in all kinds of oddball formats, map projections and states of metadata completeness. Yet we fearlessly use it all together all the time now and it pretty much works well. How do folks do this? Basically, we use a very awkward collection of file format codecs, open standards specifications, web services, and RDMBS systems. This stuff is extremely heavyweight. Again, as it was with web application programming, our first instinct was to create a big fat abstraction layer of stuff to shield us from this big scary world. We created heavy ungainly things that allow us to communicate spatial data and we were happy. But we did it at too high a level again, just like we did with web apps. It turns out that HTTP does provide you with most of what you need for web app communication and much of the app server is stuff we decided we needed to have wher we really didn’t. Well, maybe there’s a way to use a similar type of protocol to make communicating spatial data throughout data systems and get to a place where the communication of data isn’t surrounded with huge, heavy applications to manage all the translations and states and other stuff that we decided we had to have when we really didn’t. Just like web apps. So, I’m not saying use GET,PUT,POST ans DELETE. Maybe something similar in spirit, though. I’m not even suggesting anything specific. This is just the kernel of an idea. But I think there may be something to it. I’ll have to think about it. I know that the OGC specifications have gone a long way towards providing a key data abstraction in the networked world, but I feel like it’s still too high level. I don’t want to have to churn through chatty XML conversations, I want those sweet, sweet bits with a minimum of fuss and I want to edit ‘em, send ‘em back or have ‘em disappear or whatever I want. Web app, workstation app, handheld app, whatever…
I’m going to have to ask Peter and Charlie about this one.
King Kenny:

The New World Champion, Nicky Hayden (aka The Kentucky Kid)

Valentino Rossi’s old 1000cc M1’s (a thing of the past, now they’re all to be 800cc)


I have spent an inordinate amount of time over the last 8 years looking at imagery of the earth. My new job is no different, in fact, I see an absurd amount of earth imagery in my latest gig. Which is cool. I am still fascinated every time at what you can see in these images.
I never imagined seeing them in the carpet.
Check out this carpet, which has real earth imagery “printed” on it digitally, that is the strands of the carpet were colored to match the pixel data in the earth imagery. Gives one the effect of being 1000 feet tall walking across the earth. That’s just cool.

I haven’t written about the latest interesting development in the Operating Systems realm yet, but I think I should explain this a bit, mostly for the benefit of my non-technical audience. The following opinons will almost certainly bother some folks, which is alright, I’m just saying up front that I hear ya.
Microsoft recently entered into an agreement with Novell (vendor of SuSE Linux), whereby Novell and Microsoft will create a Linux compatibility laboratory for Windows. This was annouced with much of the usual MSFT fanfare and bluster. The Open Source community instantly smelled a rat and waited to see how Microsoft was to turn this into the next attack on Free Software and Linux in general.
Let’s go back in time a bit to Microsoft’s last big try at taking down Linux. The short version of the story is Microsoft funded a small company called SCO, which bought up some remnants of old UNIX intellectual property and then proceeded to sue the pants off of IBM, Auto Zone, and whomever it thought it accuse of putting their newly acquired UNIX code into the Linux kernel. Over five years later, the IBM case still drags on and SCO hasn’t shown any offending code. There never was any. Along the way, SCO tried to cash in by selling licenses to use Linux “the clean official version” as it were, that had been approved by SCO. No one bought. SCO is in ruins and everyone now knows the ploy failed, embarrasingly badly at that. SCO is now an industry joke. Microsoft funded the whole stinkin thing, denied it, then was outed and forced to admit it, embarrasingly, at that.
Now, let’s return to modern day. Now, Microsoft and Novell are going to sell you a ‘legit’ Linux operability kit. Microsoft is trying to control the linux market now, by choosing a favored vendor/partner and forcing everyone to play by their rules. Because, now, Microsoft says it has patents to the stuff inside Linux, and well, you’re going to have to get indemnity by using the Microsoft/Novell linux stuff or they’ll sue the pants off of you. Same game, different name. The problem is, the general public doesn’t know about the GPL license that the Linux work is released under. The upshot is that Microsoft can’t make that stuff their property and sell it to you like Windows, it’s illegal. Now there is likely to be another dragged out court challenge to all this. Microsoft says they found a legal loophole in GPL. We’ll see.
Why should you care? Because if Microsoft gains this kind of legal control over Linux, then all of our computing environments will be toast. Microsoft’s products are already of dangerously poor quality and security. They’d get worse and worse without the stiff competiton of the Open Source world. Your choice of computing environments would be gone, and you’d be stuck with whatever crap MSFT rolled out. This could be compared to everyone being forced to drive a Buick because Buick somehow claimed to have the patent to internal combustion. The only cars would be Buicks, which would suck really bad, except, well, most folks would really just be happy with _any_ car, as long as it worked most of the time. That’s more or less what we’re facing here. Look, if Microsoft executives had their way, every UNIX and Linux server in the world would be replaced with a Windows OS. That would be utterly horrible and lame for reasons I don’t have space to indulge here. Why would you ever trust something as essential as the world’s computing platform to a private company that has demonstrably practiced every evil business practice in the books and invented a whole new class of evil business practices to meet the changing technological landscape? Uh, I don’t think so.
The good news: It won’t work. Firstly, the GPL is pretty explicit. Whether MSFT claims to have found a legal loophole (as they claim) or not, it has stood the test in the courts every time, and let’s remember it can also be modified very quickly. The F/OSS community is not about to let Microsoft steal or kill the fruits of their decades of labor, all of which was perfomed under unceasing assault by Microsoft itself. Ridiculous. The only way this even begins to work is if the public is too lethargic or stupid to care. If the public buys into the Microsoft fear campaign, then it could be more difficult for the truth to come out in the end. But, really, even the biggest luddite knows that Microsoft and Linux aren’t the same thing, and I just don’t think that this latest Microsoft play to kill off Linux will work. Linux is just too resilient and now it’s too well established. It won’t be taken out by some mere trick of corporate law or ‘gamesmanship’. Perhaps the best testimony to the success of the GNU/Linux Operating System is how hard Microsoft is still trying to find a way to kill it off. Don’t think that others haven’t noticed. Sun Solaris used to be an extremely expensive UNIX Operating System. Now, it’s totally free and open source. Sun knew that it needed to be released ‘into the wild’ to survive, and smartly decided to let it go. Linux proved that Open Source community property works and even Microsoft , with all of its resources and evil tactics can’t stop it. But I wish they’d stop making it so difficult.
I have to give out props to Apple. They actually hooked me up when they didn’t really have to. In our modern business climate, this is virtually unheard of these days. I’d forgotten this could actually occur.
My main computer is a 20″ 1.8 GHz G5 iMac. It’s the first generation 20″ iMac, it’s kind of an old model, but still current. The new ones look the same but are much faster with the intel chips. The iMac has, however, been a stalwart companion, and I’ve grown somewhat dependent on it for my day-to-day computing stuff. So, it finally broke. The power would just shut off. Click. Off. This happened a few times to my dismay, then finally, it would not power up any more. Kaput.
I heard that there was a new Apple Store in the Flatirons Mall in Broomfield, so down I went, to the the incredibly poorly named “genius bar”, asked for help, and was told to schedule an appointment. My hopes of an immediate fix dashed, I was pleased that I could at least make the appointment right there on one of the demo machines in the store. I got one of the last spots for that day, and returned at 2:45. Fair enough I guess. I waited at the “genuis bar” (can’t you call it something else?) for 15 minutes and then I was served. The fellow hears my complaint, tries to power it up, fails, then he starts looking stuff up in his powerbook. The good news follows: The power supply is bad, but they extended my warranty for that specific part for another year. Better yet, he’s replacing the Main Logic Board (think motherboard) for free as well, since its also extended, and heck, they might as well while they’re in there.
Wow. I was pretty suprised. Also, I dropped the unit off on Saturday, I’m writing this Monday night, and Apple just called to say the iMac is ready to pick up! Stoked.
So, I have a bill from Apple for $957 dollars worth of repairs, and I won’t pay a dime, even though my warranty has been over since February 20th 2006!! That just rocks.
Go Apple, you just earned some damned brand loyalty on that one. ![]()
Having an extremely wide range of skills and experience should be an advantage and a differentiator in the employment marketplace. But, much to the contrary, it’s making it much more difficult to find good fits in the employment arena.
It seems like I would be having much more success if I had only focused on one technology stack during my career. All of the recruiters and job descriptions have become keyword driven. So, basically having experience in many different languages, operating systems, programming environments and problem domains _hurts_ your chances of getting the interview. Because they’ll go for the guy that can say he spent the last five years only doing J2EE every single time.
I would assert that being so poorly rounded would be a disadvantage in the marketplace, as almost no job is really that focused. Developers need to be adaptable and quick to learn new technologies, be able to recognize he value in them, and adapt to new problem spaces and toolkits. If you’ve spent the last five years ignoring everything but J2EE or C#.NET, you probably aren’t the adaptable type. You probably cling to your one skillset with an iron grip. That’s not they type of developer I’d want to add to my team.
During the last five years, I’ve delivered code in a dozen languages, on Windows, Linux, UNIX, and Macintosh platforms. I’ve built and maintained computer hardware and done systems administration. I’ve designed, built and administrated SQL databases in several RDBMS systems, commercial and otherwise. I’ve built custom continuous integration and deployment systems. I’ve built a software test lab from scratch. I’ve integrated tools in various languages that most wouldn’t have thought would work together. I’ve solved tricky problems that most single-stack developers couldn’t fix. I’ve delivered solutions in a wide variety of problem domains from simple Employee Time Tracking ware to detailed Remote Sensing software, to RF Engineering visualizations. It’s frustrating when a potential employer calls up and simply asks “How many years of J2EE have you done?” So, I honestly answer, “Well, one, but…..”, and they instantly pass on you. This just keeps on happenning, and honestly, I don’t understand how some of these people so easily write you off.
I’m glad I’ve taken the path that I have. I know now that I can tackle almost any technical domain and acheive success. But, how on earth do you convince a potential employer that it’s true? It’s becoming fairly frustrating to see how my breadth of experience seems to be a hinderance in the job market, when really, it’s my chief strength. It’s something employers should value, but they just don’t seem to.
I don’t agree with everything he says in his blog, but this article is brilliant and 100% correct.
Joel’s Field Guide To Developers
I worked for one company where some of the most talented developers anywhere were herded into what were called “bays”. The bays were wall-less cubes where up to 12 developers literally worked elbow-to-elbow. It was worse than a lunch counter. It was utterly humiliating and they lost extremely good talent left and right after that. Cubes started looking like paradise after the “bay of pigs” incident.
I wish every hiring development manager and IT CEO/COO would read this article.