We're happy to congratulate Steve Baranski, an alumni of the iPhone Studio, who released his first iPad app over the holidays! StereoMatic is a stylish jukebox that plays songs in your iPod music library and streams them using AirPlay. It's a simple idea, brilliantly executed. I caught up with Steve to ask a few questions about the app and his experience creating it.
Mike: I love the vintage jukebox design. It reminds me of one of those 50's diner-style tabletop jukeboxes, fit perfectly into my iPad. And the subtle details of the interface make it feel like a real, live jukebox. I was so convinced by the design that I tried to feed coins into the coin slot. You just might have invented a new kind of in-app purchase. Seriously, the design is fantastic. Did you design the interface yourself or team up with a graphics designer?
Steve: Thanks! Anyone that's seen me draw knows that I definitely hired a designer! We had worked on graphics collateral for some of my freelance projects, and I approached him about the idea. We're both music buffs, so it really resonated with us both. We started by doing some research, identifying reference photos, and ultimately selecting the table-top style you mentioned. Then he prepared some reference elements that we used to craft the interface as it stands. This was definitely an iterative process—there will be a few changes as the app matures.
I think it's very important to hire a designer. It may require some up-front capital, but it pays for itself. I also think it helps to find a designer who's really passionate about your project.
Mike: Behind the stylish interface there's a non-trivial amount of programming. How did you get started developing apps for the iPad?
Steve: This was a long and winding road. I was primarily an enterprise Java developer for over a decade. While working at Comcast, I spent about three years doing embedded development for an upcoming version of their interactive program guide. To deliver a rich experience on a resource-constrained device (the cable set-top box), we used OpenGL ES. During that time, we had a chance to prototype a few iPhone apps. I was hooked!
Last year my family moved back "home" from Colorado to Oklahoma. I took another position doing enterprise Java development, and on the side I started doing freelance iOS development in earnest. I decided to enroll in the iPhone Studio to help formalize what I had learned on my own, and it really helped me distill some of the concepts I had initially struggled with.
Shortly after attending the Studio, I presented at a local CocoaHeads meeting, and was then approached by a local company about doing iOS development full time. It was a no-brainer decision for me! At a la mode, I am responsible for the company's growing iOS product portfolio. Our flagship product targets the real estate appraisal market. DaVinci for iPad is featured on the Apple website.
Mike: It sounds like you've made a significant career change, going from doing part-time freelance iOS development to also working on iOS products full time. You quickly transitioned from being "hooked" to being "booked". But you didn't stop there. What was your motivation for creating StereoMatic?
Steve: When I first held the iPad, I was impressed with how immersive the experience was. It's well-chronicled how apps like Contacts, Notes, iBooks and Calendar feel like their real-world counterparts. Although Apple's iPod app is excellent, it feels a lot like using iTunes on your computer. With the larger real estate of the iPad, I felt there was an opportunity to deliver a warmer user experience. Ironically, there aren't a lot of jukebox concepts in the App Store.
My motivations weren't all financial; I wanted a portfolio-caliber piece to show prospective clients. StereoMatic shows that we have genuine experience successfully navigating the process through conception, implementation, App Store approval, and general availability.
Mike: StereoMatic is the first app I've used that takes advantage of the new AirPlay feature in iOS 4.2 to stream the jukebox audio to other devices. I can see this being a lot of fun at parties, gyms, offices, or anywhere a group of people want to share their musical tastes with others. Was StereoMatic created with AirPlay in mind, or was it a happy coincidence when AirPlay was included in iOS 4.2? How involved was the programming side of AirPlay?
Steve: When I conceived StereoMatic, I was skeptical about the app's potential, since I personally didn't listen to music on my iPad very often. Moreover, there aren't a lot of docking solutions like there are for the iPhone. Once AirPlay was announced, however, I felt a lot more optimistic about the app's potential.
As for the technical side of things, it's actually embarrassingly easy to add AirPlay support—for audio, check out the `MPVolumeView` class. The API and its behavior changed as iOS 4.2 progressed through the beta phase, so I still have a little bit of work remaining to customize the look and feel of the AirPlay popover.
Mike: In other words, it's easy once you know how to do it. :-) I think that's especially true in iOS development. Knowing what Apple has already done for you in their frameworks, and how to effectively use their classes, is a huge timesaver. And it sounds like your timing couldn't have been better—you used a new feature in iOS 4.2 and managed to ship the app in time for the holiday shopping season. How did the app submission process go for you?
Steve: I've submitted over a dozen apps and related updates in 2010, and ironically, StereoMatic was my first rejection experience. I had distributed the app for beta-testing, and fixed a few things identified during that process. Despite my best efforts, however, Apple found one case where the app could crash. They provided a clear explanation of the issue, and were quick to review and approve it once I re-submitted the app.
App Store rejections garner a lot of media attention, but in my experience, the rejection was entirely justified. The review process underscores their commitment to customers, and it ultimately spared me some embarrassment as well.
Mike: That's great to hear. So, now that you have the first version behind you, what's next for StereoMatic?
Steve: I have a roadmap for StereoMatic that I hope to realize as time and budget allow. We're preparing a maintenance release right now, then we intend to add animations and gesture support, playlist editing, social media integration, Universal Binary, and even iPhone - iPad interaction (e.g., for parties and such). We've also considered offering alternate jukebox "skins" via in-app purchase.
Mike: Oh, that's a clever use of in-app purchase. I'd pay to have my StereoMatic look like one of those grungy jukeboxes you find in the back of a honky-tonk. But you were wise to focus on the basics first and save those features for the next version. Folks new to iOS development often struggle with where to start. What advice would you offer folks who are specifically looking to get into iPad app development?
Steve: For someone getting started with the iPad in particular, I would encourage them to start with an iPhone app, and consider transitioning it to a Universal Binary.
First, the market potential for iPhones is far greater—the iPad has sold well, but there are many more iPhones and iPod touches than iPads in the wild. It's also worth noting that the bar for iPad development is a bit higher than that for iPhone development. The app usage model seems to be less transient than the iPhone, and to support both device orientations, you have an extra "degree of freedom" to accommodate.
Regardless of the approach, start with a simple idea. Consider leveraging an iOS API (e.g., iPod library, EventKit, etc.), freely available data sources (e.g., earthquakes, weather, employment statistics) or even a commercial service API (e.g., Dropbox, Evernote, Google Finance) that reduces your need for cloud-based infrastructure. Hire a designer and spend some time working on a very basic Version 1.0.
Mike: The new Mac App Store is opening January 6th, just a few days from now. While creating desktop Mac apps comes with its own set of challenges, folks who have invested in learning Objective-C and the iOS frameworks are in a great position to target the Mac platform, too. What are your thoughts on the potential of the Mac App Store?
Steve: The Mac App Store represents a tremendous opportunity for developers. Many desktop developers already have distribution mechanisms in place (i.e., download, boxed software, etc.), but the Mac App Store will surely broaden the scope of availability and aid with app discovery.
It also presents an opportunity for iOS developers to transition to desktop development. I intend to join the Mac Developer Program, but at this time, I don't have an idea in mind just yet.
Mike: Thanks for taking the time to share your insights, Steve. And congrats on StereoMatic! We always wanted an authentic jukebox in the office. We just couldn't find one that some tipsy cowboy hadn't already poured strange liquids into. Thankfully, this one always looks brand new!
Steve: Thank you - it was a lot of fun!
StereoMatic is available on the App Store for $3.99. No spare change required. Ready to create your own iOS app? Consider joining us in Santa Clara, CA in March for the next iPhone Studio, or scheduling a private course for your team. Check out some of the other apps our alumni have created!