Vesper Quickly Becoming a Valuable Case Study

When I first heard about Vesper, a note-taking application for $4.99 that only runs on the iPhone, I was a bit skeptical.  Vesper comes from Q Branch, LLC and consists of some fairly high-profile people including: John Gruber, Brent Simmons and Dave Wiskus.  My gut told me these guys are leveraging their Internet fame to sell a lot of Vesper.  I believe my gut was very wrong.

The trio appeared on an episode of the Debug podcast and John discussed this very aspect of marketing Vesper.  He pointed out their fame would only take them so far and fame alone will not make this a successful product.  In order to build a successful business from Vesper, they would need much more. This was the turning point in my thinking and John was exactly right, they need to create a great product people will want and only then will they gain the momentum they want.

Since the release of Vesper, I’ve seen consistent discussion about the design and some of the decisions which went into its features.  We can all speculate on it, but fortunately the Q Branch team has been taking it further with a level of transparency we don’t usually see in a high-profile iOS application.

Vesper is an application we can all learn from, starting with design to the thought process of feature implementation.  The team is doing a great job of helping us see their process from detailed design discussions to open sourcing code they use.  I hope they continue the level of transparency with the dialogs they have, I know I personally address they questions myself and often times don’t have an echo chamber to help me out.  I often look at a good application and wonder how or why something was done.

Here are a few of the nuggets of information we don’t usually see, but are so valuable:

How to Make a Vesper: Design - a great view into the history of Vesper design discussing all the different aspects of what goes into design.  Each aspect of the application design is discussed, what made it in and what did not. 

Vesper is opinionated software. Every interaction, pixel, and line of code was carefully considered, and no work was too precious to throw away. I’d like to share some history of how Vesper came to look and feel the way it does. 

You can learn a ton about design, especially if you are not a designer and may not be aware of all the things needing consideration when building a beautiful application.

Open Source: DB5 – at times it becomes difficult to effectively work with non-developers on a project and collaborate in a positive way.  DB5 is a simple idea solving a common problem in an elegant way.  The Vesper team releases their tool to everyone who may face a similar problem.  It’s open source so anyone can make it even better.

Brent Simmons Gists – a nice collection of code from the Vesper developer, someone who is a very experienced Objective-C developer. 

Technical Notes on Vesper’s Full-Screen Animations – a detailed look on animations, comparing the standard way most developers do it to how they did it with the logic behind the decision making.  This is how a regular application can be outstanding, paying attention to these kinds of details reveals the difference between an artist and a laborer.

How should you handle beta testers for you application?  Lots of ways to do it but this is how Vesper does it as explained by Brent Simmons.  Being very open about the tools that worked for a particular style and project is always very nice to know.

No developer is proud of a bug in their creation and most of us go to great lengths to hide the fact that they exist.  It’s only human nature to not want others to know we have failed in some way.  Not surprising, the Vesper team is open about this aspect too

Here’s a bug in Vesper. You can reproduce this easily.

  1. Start dragging a note from right-to-left to archive it.
  2. Before you let go, take another finger and tap the hamburgrabber button in the top left to open the sidebar.

Note that the sidebar opens and the note is still in a partially-dragged state. That shouldn’t be, but I didn’t think of it when I was writing the code.

You can figure out why the bug exists. When I’m writing a feature, I don’t necessarily think of all the interactions with all the other features. I try to, but it’s easy to get overly-focused.

I bought Vesper *because* of the openness of the team and I want to witness the evolution of this application.  It’s refreshing and rare to be told a story you can witness about the crafting of a product.  The Vesper story is just that, the story of crafting a great application.  We are often pushed or expected to be producers, our parents and grandparents were the crafters of our time, proud of the things they created.  It is time we show that we are crafters too.

The openness and transparent style of the Q Branch team seems like a winning approach.  It will at the very least continue and grow the discussion of their application.  If people are talking, they are probably buying…like I did. 

Let’s hope for more thoughts and reasoning from these guys in the future.

Getting Started Resources for Mac and iOS Developers

Are you just getting started with Mac or iOS development?  Maybe just trying to improve what you know?  Here is a great resource from Dave Mark.  Everything is covered including blogs, conferences, forums and official Apple documentation.

I went looking for a reasonably recently updated list of dev resources to link to from the article. Couldn’t find one I was happy with, then remembered that we included a pretty solid list at the end of the book Beginning iOS 6 Development. Since that list needed to be updated for the iOS 7 rev of the book, I thought, why not pop the list into a blog post. And here we are.

At its core, programming is about problem solving and figuring things out. It’s fun, and it’s rewarding. But, at times, you will run up against a puzzle that just seems insurmountable—a problem that appears to have no solution. In those situations, it’s good to have friends in high places. This post outlines some resources you can turn to when you’re in a bind.

So add Resources for Mac and iOS Developers… to you reference list and be sure to check out the post comments for some other great resources.

Dave also has a great list of developer tools as well, Dave’s List: Apple Dev Tools…

 

Vesper – The First App for iOS 7

01 Hero

I’ve been spending a fair amount of time with Xcode 5 and iOS 7 lately.  I can’t mention specifics, but I can say it’s a direction I am very happy to see.  There are a lot of good things happening in there.

Charles Perry points out how Vesper, the note taking application for your iPhone, is a  window into what users can expect from design in iOS 7:

As it turns out they were right on the mark. This style of clean, edge-to-edge design that emphasizes content and deemphasizes the interface was exactly where iOS 7 was headed. As Jony Ive explained in the WWDC keynote address, “In many ways, we’ve tried to create an interface that is unobtrusive and deferential. One where the design recedes, and in doing so actually elevates your content.” And that’s exactly the effect we see in Vesper. Without toolbars, without even separator lines between table view cells, Vesper draws users’ eyes to the content so they can quickly access their information and be on their way. This deference to content is going to be a hallmark of iOS 7 design and will be something for all developers to keep in mind as they plan for the future.

Charles has some really good observations that point out the parallel between Vesper and what users can expect in iOS 7 when it arrives in the fall.  Considering who is on the Vesper team, I wondered how much they knew about iOS 7 redesign while putting Vesper together.  I’m not the only one:

With so much of iOS 7′s new design anticipated by Vesper, it’s natural to wonder how much of this is coincidence. Did Q Branch get tipped off? Or is this just a matter of great minds thinking alike? Who knows. With this group of characters, it could be either or both. Ultimately, though, it doesn’t really matter. What matters is that now we all can see the new direction that iOS is heading. We know that in iOS 7, content is king. We know that in iOS 7, color and animation are more important affordances than ever before. And thanks to Vesper, we now know that it’s possible to combine these traits of iOS 7 to create a unique app that retains an individual identity while at the same time fitting into the rest of the iOS 7 ecosystem. If you’re one of the many now thinking about your own app and its transition to iOS 7, I suggest that you consider what lessons you can take from Vesper. It’s a great app, but I think we’ll soon see that it’s a great iOS 7 app as well.

I don’t use my iPhone enough to make a commitment to Vesper but an iPad version would be a quick purchase.  Of course the $4.99 price tag might be a cheap investment to learn a bit about design.

Talking about Building iOS Application on The Tablet Show Episode 85

I was a guest recently on The Tablet Show with Richard Campbell and Carl Franklin, to talk about iOS development, client projects, API’s with Ruby on Rails and creating applications with interactive back ends.

I think it turned out pretty well but I really can’t stand listening to my own voice, so please give it a listen and decide for your self.

http://s3.amazonaws.com/thetabletshow/thetabletshow_0085_bazinet.mp3|remaining=yes|titles=Rob

Thanks to Richard and Carl for having me on the show.

More Great iOS Developer Podcasts

Podcast RSS

I subscribe and listen to a lot of podcasts.  I wrote about some of my favorites before, 7 Great iOS and Mac Developer Podcasts to Learn from Today, and I wanted to share some more today.

CMD+Space

Hosted by Myke Hurley, CMD+Space is a show with interviews various independent Mac and iOS developers from the perspective of running their businesses and how they got to where they are today.

So many developers go independent all the time and could use some solid guidance.

CMD+Space is on then 70decibels network which hosts many other shows that you might find interesting.

Debug

Hosts Guy English and Rene Ritchie have been running this podcast for the past few weeks but it quickly became one to get sync’d to my iPhone for listening while driving or daily walks.

Debug is also an interview show with well-known Mac and iOS developers.  As often happens while I listen to interviews various questions come to mind that go unanswered, not the case here.  These guys seem to ask the questions I want answered.  Coincidence?  Most likely but the great questions result in solid advice.

Identical Cousins

Hosted by Michael and Brent Simmons, they discuss various topics important to Mac and iOS developers who are mainly independent but also those gainfully employed at companies large and small.

I stumbled across Identical Cousins while listening to another podcast, which is often the case.

Iterate

This podcast is a bit different with a focus on the design side of mobile development for Mac, iOS and Android applications.

Iterate is hosted by Rene Ritchie and others.  Rene seems to be a repeat name here and other podcasts including MacBreak Weekly.

31 Great Days of iOS

It’s been a while since I had the time to post anything but I wanted to share this great summary post by Chris Risner of the Microsoft Azure team where he is focused on mobile.

Chris blogs each day in January about a specific topic iOS developers may face in their applications.  The post is titled 31 Days of iOS and each post is a detailed tutorial on a specific topic that day.  

Day 1: Getting set up for developing for iOS
Day 2: An inro to Objective-C
Day 3: Creating your first iOS App
Day 4: Working with Multiple View Controllers and Storyboards
Day 5: Programmatically showing View Controllers
Day 6: The Delegate Pattern
Day 7: Making Network Requests
Day 8: Performing Posts and Setting Request Type
Day 9: Handling Text Input
Day 10: Singletons and the AppDelegate
Day 11: Saving Data using NSUserDefaults
Day 12: CoreData
Day 13: The TableView
Day 14: The UIWebView
Day 15: Connecting to Built-In Apps
Day 16: Handling Device Orientation
Day 17: Using the Debug Console
Day 18: Opening your App from a Link
Day 19: Showing the User’s Location with Maps
Day 20: Displaying Info with Maps
Day 21: Using the Camera
Day 22: Using the Gallery
Day 23: Using Background Threads
Day 24: The View Life Cycle
Day 25: The Application Life Cycle
Day 26: Setting up Push Notifications
Day 27: Sending and Receiving Push Notifications
Day 28: Activity Indicators
Day 29: Advertising with iAd
Day 30: Adding Analytics to your Apps
Day 31: Submitting your App to Apple

Chris is speaking at CocoaConf DC in March, in case readers are planning on attending.  I will be there.

Work Hard, Work Smart and Don’t Play the Lottery

Helpful apps

The New York Times had a great article this past weekend titled As Boom Lures App Creators, Tough Part Is Making a Living.  As the title indicates, the life of a mobile developer is not often the glamor we hear about.  The million-dollar jackpots are few and far between and are more difficult now than in the early days of the Apple App Store.

The article chronicles the two very different levels of success; one, Ethan Nicholas who created the iShoot game and made over $1 million in 2009.  The other part of the story is a couple who worked full-time on a handful of applications focused on children.

It saddens me when I see smart people treating the app store akin to The California Gold Rush; same state and the same dreams of getting rich and too often a very similar outcome:

The Grimeses’ quest cost them more than $200,000 in lost income and savings. So far this year, their eight apps have earned $4,964. When the newest iPhone came out at the end of September, the couple immediately bought two. 

I can attest to the same experience as the couple who lost it all.  I didn’t let it go that far but having an idea, creating an application over a couple months and receiving very little return for my efforts…followed a similar path.  In hindsight, I shouldn’t have been surprised. 

The app store is stocked with so many applications it’s almost impossible to stand out in the crowd.  Unless you are well-funded and can afford a lengthy and costly marketing campaign you will likely be cast to the abyss that is the app store.  Those lucky few will be selected by Apple to be promoted on the store, to be glorified in iTunes and will go on to nice rewards.

This is not the path a smart business person should travel.  Developers are smart, we work hard and just want to be rewarded for our efforts.  It is because we are smart that we should step back and think about the path of one-time customers greedily parting withe their $2.99, $1.99 or, I shudder to say, their $0.99.  We can’t support our families with these measly morsels.

Creating applications for iOS and Android are fun and very rewarding but these platforms should not be the island for your application.  The people building businesses in this space today should be cleverly thinking of ways to monetize their idea without the goal of hitting gold but rather building on a customer base willing to keep giving you money.  How many applications can someone create, sell for $0.99 and get a lifetime return of $5,000…if you’re lucky?  This is not even breaking even, it’s a really weak business model.

The better approach is solving real problems for someone who is willing to give you money to ease their pain and continue this on a regular basis.

Refer back to Ethan Nicholas and the direction he has taken since his million-dollar application idea:

Mr. Nicholas and a friend, Brent Miller, were inspired to form a company. “We were going to make another million or two,” said Mr. Miller, 38. But when none of their new games sold like iShoot, the pair moved in an entirely new direction. They founded echoBase, a start-up with 14 employees that is developing apps to allow doctors and nurses to view and update medical records across different computer systems. They brought in Mr. Miller’s father, Rod, a former I.B.M. sales manager, as chief executive.

This is an example of a solution to a real problem, making the life of doctors better and at the same time providing accurate and reliable care to the patient.  The application is free on the App Store but it’s very clear in the description that a server piece is also needed.  I am sure THIS part is not free.  This is someone who has made it in the App Store but realizes it’s not easily reproducible.  This should be the type of applications we are creating, ones that create a revenue stream for developers but also add real value to users. 

An organization like echoBase has iOS client software and some generic server piece which opens the doors to using other clients as well.  Anything from Android and Windows RT to web and rich Windows Desktop apps.  

The Apple App Store is very different today than it was in 2009 but it still holds great value to the people who are smart and don’t try to play the app lottery. 

Great Companion eBook for Stanford iPhone Course

CS193P 225x225 75

The Stanford University course for iPhone Application Development (CS 193P) is a really great course and one all new iOS developers should check out.  

Daniel Steinberg has recently released a companion text for the Stanford course under his Editor’s Cut series:

This is the official companion text for the popular iTunes U series from Stanford University taught by Paul Hegarty in Fall 2011. The book is full of code examples and animated walkthroughs designed to teach experienced programmers how to write iPad and iPhone applications.

The book is available from the Apple iBookstore.  The only downside of this book is that it’s only available in the iBookstore from what I can tell.  Which means, I have to read it on my iOS device not on my Mac where I might be coding.  Come on Apple, get with the program here.

If You Attend Only One Conference, Make It CocoaConf

Cc logo

I recently had the chance to attend CocoaConf DC in Herndon, VA, June 28-30 at the Crowne Plaza Dulles.  Unless you have been living under a rock, you have heard of CocoaConf but for those that haven’t, CocoaConf is a small, focused iOS and Mac developer conference.  The idea of CocoaConf is to be small, intimate and come to you.  Conferences such as Apple’s WWDC are huge (5000+ attendees) and it costs people a small fortune between conference ticket, travel, lodging and food.

CocoaConf is different in that it happens multiple times a year in a different city, closer to people who want to attend but don’t want to spend the big dollars for travel.  The regular price of $600 (after early-bird of $450)

Conference Organizers

The people behind conferences are usually the ones that make or break the experience.  Sure one can say it’s the sponsors or even the attendees but without good organizers, it just doesn’t work.

The conference organizers for CocoaConf really did make the conference a real pleasure.  The unusual things about the organizers, they are a family.  A single family headed by Dave Klein and his outstanding children of varying ages.  From Dave’s Twitter profile he says he is:

Christian homeschooling father of 13. Author of Grails: A Quick-Start Guide. http://tinyurl.com/GQuick

And they homeschool; impressive indeed.  I’ve ever seen this before.  I have seen friends and associates but never a family.

The Klein family did a fantastic job of running this conference, well organized and very attentive.

The Venue

Although the conference is touted as being in Washington DC it is really in Hearndon, VA.  It seems all the VA towns near DC consider themselves part of the city.  

The conference was held at the Crowne Plaza Dulles. I have attended a few conferences at a Crowne Plaza and they always please.  They really are a conference center and do a fantastic job of taking care of both guests and attendees during the conference.  

I have to say the food during the 3 days was the best food I have seen so far at a conference.  Each day included breakfast and a huge hot lunch in buffet format with food for each palette and eating disorder, er I mean eating selection.

The discounted room rate really made a big difference as well.

Pre-Conference Tutorial

Chris Judd taught an awesome iOS Tutorial on the day before the official conference started.  I was fortunate enough to be able to attend and learned a bunch along the way.  I wanted to pick up some tips, especially for Storyboarding, and it was well worth it.  I was exhausted after this intense day.

session 1:

  • Basic Xcode/Interface Builder
  • Creating iOS Projects
  • Running in Simulator

session 2:

  • Objective-C Primer
  • View Controllers

session 3:

  • Storyboarding
  • Creating Universal Applications

session 4:

  • Table Views
  • Data Storage with focus on Core Data

session 5:

  • Camera

session 6:

  • Core Location/MapKit

Even if you are an experienced developer, take this day of training because you will have an audience to ask questions of and learn some things along the way.

It was great that we were kept busy and having an NSCoderNight was awesome. I  have always wanted to attend one of these hacker nights but none exists in our area and hadn’t had a chance while traveling.  It was a great time with people just sitting around discussing iOS and Mac development along with other aspects of their business or job such as supporting Android with a big application across many handsets.  Good content.

Conference Sessions

The session list for CocoaConf was long and consisted of a who’s who of the Apple developer community, including Daniel Steinberg, Chris Adamson, Mike Ash, Mike Dalyrmple, Chris Judd, Saul Mora, David Smith  and other great local speakers..  The topics covered a large array of topics with an audience ranging from beginner to experienced developer.  

When attending conferences I try to pick the sessions that I can’t normally find the information easily online.  These are usually topics that are experience-based or deep topics that are make digestible by the speaker.  Sessions that exemplified this:

  • Enter the Matrix by Mark Pospesel – this was my favorite talk and really let me see the power of the iOS framework.  It was all about 2D and 3D graphics with transformations, scaling and rotations.  Mark really knew his material here and showed it with the demo application he created for the talk, it showed off all that the framework could handle as well as how good of a developer Mark is.  Great talk.
  • iOS Computer Vision by Jonathan Blocksom – this talk also exemplified how the iOS 5 SDK and OpenCV libraries can extend what we can do with applications today and use augmented reality to create some really crazy applications.  The augmented reality demo was mind blowing.
  • The Wonderful World of Text by Chad Sellers – handling text in iOS or Mac application is not something that gets a lot of coverage but lot of apps do it.  Chad is the owner of Useful Fruit Software and creator of Pear Note for the Mac and iPad.  Both apps make heavy use of text and we got to see some experience with text while making his products.  Great guy to speak with as well.
  • Getting to Know Core Data by Whitney Young - this sounds like it might be a beginner’s talk but it wasn’t.  Whitney uses Core Data daily and knows it really well.  He gave attendees the real insight into using Core Data with iCloud and what is possible and what Apple tells us.  Very insightful and valuable content.

There were 3 tracks and a total of 30 sessions and a keynote on Friday evening giving us knowledge until 8:00pm.  After the first two days, my brain was truly mush and I was very exhausted. 

Attendees

One of the reasons I like to attend conferences is because of the other attendees I meet.  I always find the story of others interesting and inspiring.  

I met a lot of people and made many new friends all from different skill sets and walks of life.  I heard many stories of application success and some failure.  There were people who had been writing Objective-C since the early days while others just starting out.

It’s also inspiring to see young people finding enjoyment in coding.  Conferences don’t seem to attract young people but at CocoaConf there was one exception.  A young developer who came all the way from Texas to join the fun and learn.  He was 14 years old and already had 5 application in the Apple App Store. Quite an accomplishment with the demands of school today.   He was very well-spoken and a pleasure to talk with.

This conference is small, 80 attendees or so. You can almost meet every person if you try over the 3 days.

Finally

I really had a great time at this conference.  I have attended many conferences over the years and the combination of the great group of organizers, venue, content and the attendees, made this the best conference I’ve attended.  I would certainly recommend this to others and I will return to another CocoaConf.

Did I mention the swag?  T-shirt, logo’d notebook and pen, bag and an awesome coffee mug.

IMG 0452

CocoaConf is not an annual conference but is run many times over the course of a year in a various cities, making it easier for you to attend.  The next city is Columbus, OH, August 9-11 and future cities with unannounced dates are Raleigh, NC and Portland, OR.

The only thing I would change or add to this conference is recording of sessions.  I know it’s expensive and some speakers don’t want it but it would help overcome the tough choice of which session to see in a multi-track event.  It’s minor, but would be nice.

7 Great iOS and Mac Developer Podcasts to Learn from Today

I have quite an extensive list of podcast subscriptions in iTunes these days with much of my interest on iOS and Mac development.   Considering how iTunes is Apple, there are a lot of podcasts that have just stop producing content and gone away.  There are a comparable few podcasts dedicated to iOS.

I spend time looking for new podcasts and revisiting old ones trying to find ones with good content and who produce on a fairly regular basis.  I wanted to share my favorites with you, hopefully to help them keep producing.

These podcasts are developer podcasts but there really are two audiences; some are focused on the technical details of development while others are of interest to developers running a business around iOS and/or Mac software.  I’m sure there’s overlap here.

I think each and every one of these are great and I know you will find value in them as well.

Core Intuition

Core Intuition is hosted by Daniel Jalkut, developer of MarsEdit and Manton Reece.  This podcast had been on a bit of a hiatus with sparse updates over the past year but recently they have been producing regular episodes.  Mainly a podcast produced by Mac developers with little iOS discussion, the topics are applicable to most developers in the Apple community.

Episodes run about 45 minutes and usually focused on a handful of topics like the Mac App Store, sandboxing and dealing with customers.  Top notch for sure and well thought out dialog.

Edge Cases

This podcast is relatively new and hosted by Andrew Pontious and Wolf Rentzsch.  They discuss topics appealing to both Mac and iOS developers ranging from Core Data to Sandboxing and the future of developing for Apple products.

Episodes are about 45 minutes in length and pretty rich in technical content.  The podcast started in May and they already have 8 great episodes out as of the time I write this.

Wolf is the creator of Mogenerator and other tools.

Developing Perspective

Developing Perspective is produced by solo developer David Smith who is an iOS and Mac developer.  Episodes run about 15 minutes and talk about very specific topics that all Apple developers think about one time or another.  These include the path to independence, developer’s machine and going to WWDC.

I discovered this podcast a short time ago and it is one that I anxiously await new episodes.  It seems every episodes resonates with me.   David has a great radio voice too, calm and soothing.

iDeveloper Live

This podcast is run by Steve “Scotty” Scott and company have been doing this podcast for what seems like an eternity.  Most of these shows run about an hour and cover various topics like open source, Apple (of course) and interviews with various developers known in the Mac community.  Many of these interviews cover specific topics the developer is very familiar with.

Listeners can tune into the live show and participate in the chat room as well as find updates on Twitter.  The episodes are always entertaining and full of great information.

NSBrief

Saul Mora is the creator and producer of these great interviews with Mac and iOS developers as well as people funning Apple-focused software companies.  The podcasts run almost an hour and Saul knows just the right questions to ask and knows enough about the technology to make really useful insights.

Recent episodes include chats with Jamiee Newbery from Black Pixel while on a plane.  Every episode is different and every episode contains valuable insight.

I met Saul at CocoaConf in DC a short time ago and he is a great guy doing these great interviews.

Build and Analyze

Marco Arment and Dan Benjamin host Build and Analyze, which is a bit of a different podcast.  Marco runs Instapaper and much of hour plus episodes discuss trials and tribulations of running Instapaper.  The insider view is really helpful and I pick up a lot of great tips.

I have to warn that sometimes, just sometimes, they get off on long tangents about coffee, cars and kids.  Although not directly applicable to running a application business, it can be entertaining.

NSScreencast

Ben Scheirman is .NET developer turned Ruby on Rails and iOS developer who created NSScreencast, which is not technically a podcast, but I thought it would add some good value to this list.  Although not free, at $9 a month, it is bargain.  Each screencast goes into detail about how to use a particular feature of Xcode or of iOS development in general.

Topics such as how to implement Pull to Refresh, using Storyboards, Provisioning to HTTP caching and setting up a CI server.  Each episode ranging from 10-30 minutes, perfect for those suffering from short attention span.

Finally

I listen and watch each of these and love them all.  I’ve learned a ton about he iOS and Mac developer community by just listening.