It Just Works?
- October 16th, 2011
- Posted in Uncategorized
- By Michael Blake
- Write comment
The phrase “it just works” is one part meme, one part marketing genius and a third part false dichotomy.
I the world of Apple “it just works” was a fantastic idea. A commitment to zero configuration, zero knowledge computing. An idea that technology should be free of the kind of work that computers of the time often represented.
It was a new world view, and one we happily adopted.
I’ve heard the phrase used in modern times both ironically and unironically, and I’ve got to ask. As developers, do any of us believe “it just works” makes any sense for computer professionals?
Maybe, if you can use the phrase “I’m a ruby guy”, you can buy into that. “Oh look, brew has everything I need!” is very close to accepting “It just works”.
Personally I don’t spend my professional time in a single language and framework, and I have often found “it just works” just isn’t true. For that, I’ve always found the linux community far more accommodating.
I’m not try to turn this into a fanboy rant. I can see where OSx is a great choice for a certain type of developer, because it encapsulates all they do nicely. I just have one question. In what world is there a choice between “It just works” and “It doesn’t just work”, which seem to be the choices that we believe we have?
It is never that simple.
I have gone way outside the box on any number of occassions, and when I do, something that is supposed to just work (whether Windows or OSx) just doesn’t. Alternatively, if I’m supposed to be working inside a box, like iPhone or Winforms development, trying to go outside of those it just works boxes is nearly impossible.
I guess what I’m doing here is taking an anti-fanboy stance, at least as a developer. I do have a preference in OS, but it is absolutely not relevant to my professional tools. I want to take “Choosing the right tool for the job” into the world of OS decisions as well.
So here’s my short list of what “Just works” for me, and when.
Windows Development:
I’ve tried your Mono, and I feel like I caught Mono from it. I am a huge open source guy, so I get where you’re coming from, but no. If I’m doing windows development (winforms, wpf, silverlight), just give me windows. Please.
Mobile Development:
Here’s where OSx shines. Because Apple says so. While Google’s SDK is available on any OS, Apple will give you OSx only. There is no reason to run hacks or switch between VMs to test the different versions. Just swallow your hate, go use OSx.
JVM based Development:
Give me Ubuntu Linux for this any day. I know all the tools (ostensibly) work on OSx, but I will never rely on OSx for JVM level work. Messing with Apple’s custom-implemented runtime just…no. If I’m working on the JVM (Scala, Java, Jruby) give me Linux.
Ruby Development:
Anything that isn’t Windows. Enough said.
C/C++ Development:
Well, lately I’ve actually been doing this in OSx with Xcode. It’s not terrible, but I would still prefer Linux for this. Once again, I lean toward not windows (unless we’re talking Visual C++, in which case, I’m still avoiding Mono).
No comments yet.