AIM Chat Email Google Chat MSN Chat Skype Call
Dopplr Flickr Last.fm Readernaut Twitter

This site is valid, hand-coded HTML, CSS, JS, and RSS. Generated JS is used for TypeKit fonts and Google Analytics.

Icons are by Paul Robert Lloyd.

© 10 Jonas Wisser

Colophon

The Simple Best

Apple Event Predictions

Since Smoking Apples made their predictions and didn't ask me—Nostradamus that I am—I'm going to volunteer mine here:

iPod
New iPod touches, duh. Matching the iPhone 4 in everything but cell service and offering up to 128GB of storage space. Apple will also kill off the iPod Classic. It's not just about having an iPod touch with enough storage space to make it essentially redundant; it's about removing any remaining brand confusion as to which is their flagship iPod product. Hint: it's not the Classic.

iTV
Gruber says it's coming, so it's coming. My bets are on the announcement of a unified iOS running on iPhone, iPod touches, iPads, and the iTV, which may very possibly not be released for another month or so. The obvious upshot is that the iTV will support apps; one of the ones demonstrated today will be Netflix. Apple may also release a new webcam and announce FaceTime support for the iTV, but that's far less likely. Regardless, it will probably run a higher-clock-speed Apple-designed processor than we've seen yet, along with at least 512MB of RAM, making it perfect for…

Game Center
Rolling out across the entire iOS lineup starting, oh, sometime soon. Still not sure what they'll do for controllers, but iTV + apps + Game Center means Apple's entering the living room gaming market in a big way. Expect to see at least one big-name mainstream gaming title for the iTV demonstrated, possibly one by EA. Also expect to hear that Satoru Iwata has suffered an apoplectic stroke.

iLife '11
Improved iMovie with some similarities to the iOS version and the brand new iBooks.app, among other things. There was some scuttlebutt about an image editing program, but I don't buy it. There's also the possibility that iBooks will work with the other iLife apps (iPhoto and iMovie in particular) to allow easy ePub creation. Yes, you can put videos in ePub books. Announced, not released.

Of course, all of these may be wrong. I'll be curious to see which ones.

Gruber vs. chpwn

Jailbreaking is a hot-button topic in the tech community. Plenty of well-known and well-regarded geeks couldn't live without their jailbreak; plenty of others—many of whom happen to write and maintain software themselves, and thus have a financial incentive to prefer that people not muck around with their products—believe the jailbreak community to be pointless at best, and a hive of scum and villainy at worst. John Gruber, who has a background in software development, seems to be in the latter camp. I am unabashedly in the former.

Earlier today, Gruber made the argument that Apple isn't fighting jailbreaking. Instead, when a new security hole in iOS is revealed by a new jailbreak, Apple rushes to patch it—not in order to stop the jailbreak, but in order to protect the millions of iPhone, iPod touch, and iPad users who choose not to jailbreak their phones. That's a reasonable argument, and one I agree with wholeheartedly. Doing anything other than what Apple does would be irresponsible at best and willfully malicious at worst. As for the patent in question, I think it only makes sense to withhold judgment until Apple announces plans to put it into use; as a tech company, they file a lot of patents that remain unused.

Unfortunately, he didn't leave it there. When chpwn, the developer behind the jailbreak taskswitcher ProSwitcher weighed in with an opinion on the matter, Gruber wasted no time in tearing him down.

Let's take a moment here to observe that Daring Fireball has a truly impressive readership for a primarily Apple-focused, relatively niche blog. Gruber himself estimates that DF has over 400,000 subscribers and three million monthly web page views. In the roughly twenty-four hours following his link to my Safari Extensions Tumblr, I saw 10,490 hits from DF, third behind only Lifehacker (10,608) and Pimp My Safari (11,985—it was the first Google result for 'Safari extensions'). Traffic from Daring Fireball regularly flattens unprepared servers, making it one of only three sites I know with its own verb. The upshot is that if Gruber knocks you on Daring Fireball, you can expect otherwise intelligent people to jump right on the bandwagon without knowing any further facts.

(It's also worth noting that Gruber has a very human habit of responding well to people who agree with him and poorly to people who don't. My notes-app roundup on Smoking Apples in which I found Simplenote to be the best of its kind got a link; Brandon Pittman's vociferous disagreement did not. That's Gruber's right as a blogger. If we weren't all a little egotistical and self-promoting, well, you wouldn't be reading this right now.)

The problem with the second post on Daring Fireball is that it was clearly intended to put chpwn in his place. Instead of giving the link a full title, as he usually does, Gruber simply called it "Nope". "Nope", as OS X's dictionary tells me, is simply an informal variant of "no", but it connotes relaxed dismissal, the idea that whatever statement is being negated is without real insight or value. That by itself would be only somewhat insulting. But he followed that slight up with this gem:

This guy “chpwn” — a teenage developer of apps for jailbroken iPhones — says I’m wrong that Apple is not fighting jailbreaking:

This sentence is a masterpiece of opinion manipulation. First, the use of "this guy". "This guy" is never trustworthy, because you don't know him and your friends don't know him—otherwise he wouldn't be just "this guy". You may not know chpwn from Adam, but you've just been told, consciously or not, that he's not to be trusted because John Gruber doesn't know who he is. Then he puts quotation marks around "chpwn". Now you've been told that chpwn is really untrustworthy; after all, he's using an alias. Never mind that most of us have used a non-name-derived handle on the internet at some point in time. Jiminy. Remind me to refer to him as "Gruber" from here on out.

But that's not the end of this work of rhetorical dicknosery. Having planted the seed of distrust, he goes on to water it by calling out the developer's age—specifically, by invoking an age at which many of us were irresponsible louts. "But wait," you may be saying, "that sentence reads 'a young developer'." It does now. Gruber updated the post while I was in the process of writing this, and I'm sorry to say I don't have a screenshot of the former version to prove my point.

Happily (or rather, unhappily), his update also introduced confirmation of an attitude that was only mildly expressed in the first version. The major portion of the update was the addition of this paragraph to the end of the post:

Put another way: I know that many App Store developers wish that Apple were “fighting jailbreaking”, because App Store piracy depends upon it.

Given that the last line of the post (now of the second-to-last-paragraph) is "And they’re [Apple] certainly not going to support or trust a fix for the vulnerability from a jailbreak developer.", Gruber's attitude is pretty obvious: he feels that jailbreak developers are pirates and peddlers of dubiously legal software. I'm pleased to say that the United States Government recently made jailbreaking and the installation of unofficial software clearly legal, so we can dispense with that argument. The more serious issue is the implication that jailbreak developers, and by extension jailbreak users, are untrustworthy pirates who spend their time defrauding innocent iPhone developers of hard-earned money.

Don't get me wrong. I'm not trying to argue that iPhone app pirates don't exist, and I'll happily agree that anyone who jailbreaks his phone just to pirate something he could have paid for with a day's lunch money deserves a good punch in the nose. But there are plenty of jailbreak developers and jailbreak users who have nothing to do with the piracy scene. I personally have never pirated an iOS (or iPhoneOS) application despite being jailbroken since I got my first iPod touch, and as far as I know, chpwn has nothing to do with Hackulous or any other piracy scheme. He's a developer of iPhone apps and add-ons that, for one reason or another, wouldn't be accepted in Apple's official app store. He, like other iOS devs, distributes his apps to users through the channels available to him. Lumping him in with those who profit from pirating other developers' apps is a truly low blow, and Gruber should offer him an apology.

As with all made things, jailbreaking is a tool. Like knives, guns, and p2p programs, it can be used for good or for evil. Implying, as Gruber did, that jailbreaks and the people who create and use them are inherently untrustworthy is misleading at best, and I expect better from someone the community looks to for insight.

Full disclosure: I ran against John Gruber for President of the Letters.app project a while back. He kicked my ass. (By, I suspect, a very impressive margin.) That was probably for the best.

Homebrew and get/lose



My favourite new package manager in action.

I like simplicity. All too often, that's hard to reconcile with my love of technology. Things like package managers and the other complex systems that make up a working computer are rarely simple to use. Anyone who has ever used Linux (or fink or MacPorts) will likely agree that maintaining software that doesn't come with your computer can be a pain in the ass.

Mac users, for the most part, have it easy. Download, unzip, drop in Applications. Disk images make things a little more complicated, but one walkthrough is enough to help all but the most obstuse users understand what's going on.

Then there are command line apps. Little things like wget that you probably only miss if you've spent time living in a Linux distro, silly little tricks like cowsay, or absolutely necessary tools like git and mercurial that just don't come built into OS X. Acquiring and managing command line software on OS X can be a gigantic hassle. Developers have created (or more accurately, ported) package managers like Fink and MacPorts to make it a smaller one, but it's still a hassle—you have to remember a somewhat arcane set of commands and jump through hoops to make sure your newly installed software is recognised by the system without getting in its way.

Enter Homebrew. It's the first package manager to be created specifically for OS X instead of ported from another platform, and it's built with simplicity in mind. It installs software inside /usr/local/, a directory reserved for that specific purpose, and works well with other software installation methods like Ruby gems. It doesn't even require sudo privileges to install the vast majority of software. In other words, it's the first really Mac-like package manager, and if you haven't already, you should go check it out.

Nevertheless, homebrew inherits several of the issues that belonged to its predecessors. It has its own commands and syntax that are simpler than those belonging to other package managers (apt-cache --name-only search, anyone?) but still confusing to first-time users. Since it installs many packages from source and doesn't play a sound or use another system notification when it's finished, it's all too easy to switch away to a browser and get lost in Wikipedia, only to remember hours later that you were actually installing the dependencies for some larger software package—or maybe that's just me.

Today was the first day I had some free time to play around with Homebrew. I had just installed Growl and growlnotify because I was working on a newly installed copy of OS X, and I realised I could create a script to install Homebrew packages and let me know with a sticky Growl notification when they were done. From there it was a short trip to creating one for removing Homebrew packages as well. I named them get and lose—much shorter and more memorable than brew install for people who aren't used to using package managers.

It's possible I'm the only one who wants this kind of simplicity and Growl integration from an OS X package manager. Just in case I'm not, though, I created an installer. (For the curious, it puts get and lose in /usr/local/bin and @machomebrew's Twitter icon in /usr/local/share/images, for use in the Growl notifications.) It's a pretty basic effort—the scripts can only handle one argument at a time, for example, and successful Growl notifications get displayed even if you uninstall a package that wasn't installed to begin with or don't include an argument at all1—but since get and lose are just bash scripts, anyone is more than welcome to make them more useful and rerelease them.

If you still want 'em after that disclaimer, get 'em here.


1 The first version of get/lose, posted in a fit of overenthusiasm after insufficient testing, gave successful Growl notifications even if the brew command failed. That should be fixed now.

31on100 →

My attempt to eat for a month on $100 or less. Two days in, it's going pretty damn well.

Why?

Before reading the rest of this post, please take a moment to mouse over (or tap) the word 'Colophon' in the bottom-right corner of your screen and read what it says there. No? All right, then. The relevant part is this:

"This site is valid, hand-coded HTML, CSS, JS, and RSS."

If you've ever coded a website or used Wordpress before, I expect your reaction to that line of text is something like this: "HTML, okay. CSS, sure. JavaScript, whatever. RSS… wait, what? Why would you do that?"

It's a valid question. Tools like Wordpress, Blogspot and in particular Tumblr take all the pain out of blogging. Have a thought, write it down, and you're done. The blogging platform takes care of formatting your post according to pre-arranged rules, notifying readers via an automatic RSS feed, and letting them praise and criticise your work via automatic comments. It's easy. You barely even have to think about it.

And that's the problem.

I read a lot of blog posts. Too many. I like reading about the opinions and experiences of others, even when—particularly when—those opinions and experiences differ from my own. But I've got to be honest here: I only care to read essays and posts that have clearly had some thought put into them. Platforms like Wordpress, Tumblr, Facebook, and yes, especially Twitter make it all too easy to post items without taking the time to think them through.1

One of my primary goals in maintaining this blog—something I hope will become a significant part of my everyday habit—is to post no article that I have not put significant time, thought, and effort into writing. Every word should be carefully weighed; every article carefully considered. Writing my own code, from <body> tag to finished blog post, is just time-consuming enough to make sure I'm writing from a place of balance, thoughtfulness, and intellectual honesty.

There are practical considerations as well. Static HTML is easier on my server; all it has to do is hand out pre-compiled pages, which greatly reduces the chance of a sudden influx of traffic knocking the whole thing on its ass. I'll never have to hack a database just to use an absurdly long post title. I don't have to deal with the administrative overhead of a Wordpress installation. Complete control over the look and feel of my site is mine, and mine alone.2

Finally, there's the very simple fact that coding everything by hand will force me to learn things. I talk a good fight when it comes to technology, but I couldn't code my way out of a paper bag unless it supported Applescript and had an internet connection and a web browser. In the course of the last week or two, I've learned a number of HTML tags I should already have known, more than a few new CSS properties, some basic JavaScript, and the syntax of an RSS feed. The more I write here, and the more work I do on the look and feel of the site, the more I expect to learn.

One more thing…

The name of this blog is The Simple Best. I chose it partly because it's not already taken, but there's more to it than just that. 'Simple' things are those generally understood to fulfill exactly the purpose they are made for and no more. 'Best' things are those that fulfill their purpose completely, faithfully, and with style. Both are qualities I strive to instill in this blog; they are also qualities that I require of the software I will occasionally recommend here. It should do exactly what it was made to do, and no more, and do it with style.

Perhaps more in keeping with the title, though, is this simple thought experiment: if you offer me a choice between a simple item that does exactly what I ask and no more and a complex item that does almost what I want and a great number of other things I don't, which will I prefer? The answer seems obvious to me: I like the simple best.


1 Whether the poor grammar and spelling that dominate the internet are similarly a product of easy publishing is a question I leave to the reader.

2 A blessing and a curse. I apologise in advance for the likelihood that at some point you will find I've completely broken some aspect of the site.

First Post

This is my first post on my new blog. It's really just a test. Please check back soon for actual content.