Ever wonder what goes into updating an app? Magic Window developer tells all
The following is a guest post from Josh Michaels, the creator of Magic Window, Earthlapse and Tahoe Blue. I met Josh a few years ago and was struck by his enthusiasm for his work. There are people who love what they do, then there are people who live what they do. Josh is the latter. If you ever get a chance to hear him speak (and he's been at 360intersect, altWWDC and plenty of other conferences), by all means do so. He's articulate, funny and dedicated. Below is the story of Magic Window's latest update, version 5, available now in the App Store.
Fear and Loathing in iOS7: Remaking Magic Window
by Josh Michaels
When I first sat down to consider updating Magic Window for iOS7 the task seemed overwhelming. Magic Window was introduced in the first month the iPad was available which seems like ages ago. Really it's just three and a half years. I don't know what the App Store equivalent to dog years is but the design of the app as it stood seemed ancient.
In the back of my mind I kept looking for an excuse not to do it. The advice from pretty much everyone I spoke with was to just leave Magic Window alone and start building something new. And honestly that's what I really wanted to do. However I knew there was a chance that I wouldn't have a choice, that some bug could pop up that would force me to ship, and once it did I would have to do some amount of redesign.
Expanding - the Magic Window 2.0 demo video circa January 2011
When the first iOS7 beta came out the app was "a strobe light in your face" as Brad Smith so succinctly put it. A low level OS bug caused the app to flicker white in a way that would instantly send an epileptic to the hospital. I spent a week alone isolating the bug and reporting it to Apple and after they marked it as duplicate all I could do was wait and hope. The bug persisted through every iOS beta. There was no workaround. If it wasn't fixed, I'd have to pull the app.
Three weeks out from iOS7 release I finally had some time to sit down and start experimenting with applying iOS7 design concepts. Not knowing if the bug would be fixed I didn't want to go too far. I figured even if I didn't ship I'd at least get some practice with the new techniques that I could apply to another new app.
Tinkering was pure joy. I started experimenting with blurring and parallax. I started deleting all the gradients and gaudy icons. Basically doing all the easy work. It didn't take long for the app to start to take on a truly new form and given the amount of work it took I started to think maybe an update would be possible.
Experimenting - early iOS7 explorations with Tahoe Blue. That's a lot more blue!
Still, I knew that beyond the tinkering was a deep and extensive set of work that would take at best weeks and at worst months. Worse was recognizing the likely reality that this work would not be rewarded in any way. The app has already been featured on the front page of the App Store. It has already been in Apple's television commercials. It has already been covered by countless blogs. No one wants to hear about a resurrected 3.5 year old app -- there's too many other truly new and shiny things out there to stand out.
The more I considered it the more updating seemed like a sure mistake. The app was sitting on 167 amazing five star reviews. Doing an update would drop it to 0 and likely sink an already sinking ship. If I charge for the update some set of people will riot, and I don't have time for that. I soon began thinking of the redesign as a suicide mission and put it down hoping that I could just leave the app alone and continue to watch it slowly die under the pressure of the store. This was depressing but less depressing than another failed attempt at resurrection.
If I ever get my hands on a time machine I'm going to travel back to the point at which the expectation was set that 99 cents entitles the buyer to free upgrades for life and kill whoever set that expectation. When I was a kid we had to walk through the snow 10 miles to Walden Software and pay $50 for every version of every piece of software purchased. The software industry is going to die if we can't figure out a sustainable way to make money off it that doesn't involve coins, gems, and candy crack.
More Experimenting - for Earthlapse the Space Gray style still seemed to fit
Enough complaining, Grandpa. I turned my focus to creating my talk for 360iDev and continued to hope that I wasn't going to have to do an update. The GM seed dropped literally an hour before my talk and I had just enough time to install it, run Magic Window, and see that the bug had been fixed. A huge weight was lifted and I joyously got on stage and gave my talk knowing I would finally get to move on to the new app I'd been toying with.
When I got back from 360 I promised myself I'd spend half a day with Magic Window on iOS7 just to make sure I hadn't missed anything. I'd only done a ten minute pass on the GM and certainly there could be something there I hadn't seen. Sure enough within just five minutes an issue was revealed - the rendering bug was only partially fixed! The fix only fully worked if at least one other view was on screen, and that's not always the case. This was easy to workaround but any workaround would require it to ship.
Then it hit me like a double nutshot. I was going to have to do an update. Not just to Magic Window, but to the two derivative apps Earthlapse and Tahoe Blue as well. This stacked on top of the Magic Window Mavericks updates I had to do meant that I was going to have to go heads down for a long time.
$#@!. $#@!. $#@!.
Can I really sacrifice a month or two to update an app that is barely selling? If I do, am I really going to go through the whole PR cycle and try to actually get it attention? All I want to do is work on the new app but clearly something has to be done here.
I looked for every excuse I could to get out of it. Maybe I could just remove the apps from the store. Maybe no one would notice the rendering problem. I mean it was subtle and only happened some of the time. It took about ten minutes to get past denial to acceptance and start assessing what it was going to take.
I quickly crafted a plan. I'd start with Earthlapse because it was the simplest. I'd then move on to Tahoe Blue which was still fresh and also didn't need that much work. By the time I am done with those I'll have the design techniques down and can tackle Magic Window.
Forget advertisements let's just make art. Tahoe Blue - Spring 2013
Then like a force of nature the wave of creativity hit me. Anyone who has done creative work knows what I'm talking about. Creativity is something that flows through you. It's a force that ebbs and flows and when it hits it hits hard. My fingers connected to the keyboard, my eyes to the screen, and with few exceptions no one saw or heard from me again for six weeks.
The redesign turned into pure joy. Something I'd feared quickly became something I loved. As I hit delete again and again killing old images, features that didn't belong (sorry about the flashlight), complex UI elements that were over designed, I was reminded of the fun of making Earthlapse. As I repeatedly chipped away at this giant rock beams of light started to shine through. It's as if the magic was locked in a jail and I was fighting to get it out.
As time wore on my health and my sanity started to wear down. I was doing this entirely alone. I had to get through 5 updates (3 iOS and 2 Mac) all while doing contract work to pay the bills. That's right folks, all while doing contract work.
Long before this episode began I'd already committed to a month long tour of talks in Europe. I had a pretty hard deadline because of that. The mantra became "I have to get the album out before the tour." I kept repeating that. Again and again. I have to get the album out before the tour. I have to get the album out before the tour.
Deference - the Magic Window Scene Browser on iPhone 4.0 vs. 5.0
As departure day neared it seemed like I would actually make it. I pushed out the Earthlapse and Tahoe Blue updates along with the Mavericks updates to clear my mind and get completely focused on Magic Window. The night before my flight I had finally crossed everything off the list. It was done. But I decided to let it sit for a week and revisit it with fresh eyes before pushing. I had been too close for too long and I was certainly missing some things.
The first week of travel was to Illinois and I knew I'd have the bandwidth there to finish it up. In between preparing my talk for the Reflections|Projections conference and meeting with old friends I spent my time in the Engineering library and the basement of the Digital Computer Lab where I went to school. I had missed a lot of minor things. More polish was needed. But I was getting it done in the place where everything started. It felt good.
Clarity - Magic Window Scene Browser on iPad 4.0 (top) vs. 5.0 (bottom)
The night before flying to Europe I pushed up the build for review. This, of course, was not without a hitch as an iTunes Connect bug had caused an IAP to go in review and get rejected despite having not been submitted. But as always I got through the crap and here we are Waiting for Review. It's done. It's done. The album is done. Just writing these lines tears are streaming down my face because I think I'm just now realizing I really did it.
Depth - so I heard you like Parallax...
I realized a few things through all of this. The most significant is the true beauty and value of the iOS7 design language.
Early written languages used complex and hard to create character sets. In some cases this was to keep the serfs from learning how to read and write. If they could read and write they'd become educated and then they wouldn't want to be serfs anymore.
I am not a good graphic designer. However, I do have a knack for visual and information design and keeping things simple. The true greatness of the iOS7 language is that you don't need to be good at graphic design to express it. The interface for Magic Window 5.0 amounts to text and Glyphish icons.
This means all my crappy graphic design is gone. Through the creative use of deference my gradients have been replaced with the beautiful magical photography that is the centerpiece of the app. Nature is inherently beautiful to our eyes and great photography retains that beauty. Nothing I do with a gradient tool can beat that.
So what makes the iOS7 design language special is that it is extremely accessible. You don't need one of those special dudes who rocks with the gradient tool and layer effects anymore. You just need to know how to keep things simple and clear.
Iteration - Icon candidates for iOS7
There are probably some places I went too far. The icon is likely one of them. I iterated through a variety of concepts but at the end of the day I became very comfortable with the icon I chose (far right) despite the fact that it looks somewhat awkward in the App Store. I'll listen for feedback and refine as appropriate. Hal, I know you hate it.
Evolving - the Magic Window icon 2010-present
Now, finally, I can move on to the next app. As soon as I get caught up on my contract work. And update the website. And post this article. And send mails to the press. And of course actually release the update :)
Oh and I was wrong about the reward thing. The reward was in the work.
The status has changed to Ready for Sale.
Enjoy Magic Window.
Software Updatesmore updates
- Apple Remote Desktop updated with Yosemite support
- OS X Yosemite 10.10.2, iOS 8.1.3 updates now available
- Sports Illustrated 120 SPORTS channel comes to Apple TV
- Logic Pro X update brings AirDrop support, new effects, tools, and more
- Parallels Access 2.5 released, adds file manager, computer-to-computer remote access
- The Google Translate iOS app is about to get a lot smarter