This was my first year attending Google I/O. I don’t have a WWDC ticket this year, so it was bittersweet being back in Moscone West. Since MartianCraft does a fair amount of Android consulting, it makes sense for me to be there. And there I was, watching an insane bouncy graphic pulse a countdown towards the 5th Google I/O.
It was an experience. The atmosphere at first glance was eerily similar to WWDC. Excited developers, cheering loudly and making a raucous noise. But the similarities ended the moment the countdown concluded and the show began.
A different culture
Google I/O is a different conference from WWDC even though they often get compared as equals. Many in the greater Apple development community focus too much on drawing sharp contrasts between the culture and identity of each. There is no question they are different. But I don’t assert that one is better and one is worse. I prefer one to the other, but I attribute much of this preference to familiarity. I know WWDC, but I do not know Google I/O, so I’m not focusing on the differences in this recap.
I was in the room, not casually watching it streamed through a computer. Most of the initial reactions I’ve read about the keynote focused on Page’s spontaneous appearance at the end and I feel many have missed some of the bigger picture.
I’ll state up front that I was not impressed, but saw a ton of potential. I want to see Google become a proper competitor to Apple. Not a copycat, not a clone. Google has an identity, but struggled to show it yesterday as they stumbled through their public exposition.
It was clumsy
The show was not polished. Not at all. Their Senior and Executive Vice Presidents, with the exception of Vic Gundotra, had clearly not been rehearsed enough. They were nervous, at times difficult to understand because they were mumbling. Demos failed. And instead of moving on, they sat painfully attempting to recover for what seemed an eternity. Many of the presenters had no stage awareness. They would perch behind desks or oversized podiums. Not moving, often not even speaking to their audience, but staring directly into the prompter. A few of them even turned their backs to the audience.
The staging was also comical in its scale. Speakers would get lost with oversized, over-done graphics. It was distracting and felt incredibly impersonal. There were two notable exceptions: Gundotra’s presentation on Google+ and Page’s impromptu lecture at the end.
Technology from the future
Despite the lack of polish and staging, the technology displayed at times was breathtaking. Leveraging Google’s massive network of data centers to cull through your photos and pick the best ones. They even processed them, automatically. It was impressive and useful to many people. Then there was “Okay, Google”, the voice interface to Google search. It demoed flawlessly, quickly and accurately. Neither ideas were original, but they spoke to Google’s core strength: parallel processing on a massive scale, delivered quickly to millions. I can see myself using “Okay, Google” over time because I expect it will work reliably. Compare that to Apple’s Siri, where I’m surprised when it works.
There was plenty to like on the developer side as well. A universal game service that runs on iOS, Android, and the web. (presumably the desktop, considering the web hooks) A software translation service that automatically provides results at the click of a button. Beta testing and user tracking built in, not to mention a consolidated tracking interface where you can track web and app traffic side by side. And then they brought Hangouts to mobile devices for persistent conversations.
All of this technology shares a common thread: they’re web services. Google excels at them. As good as Apple is at delivering tangible products you lust after, Google is equally good at providing web services you depend on. And this was apparent in the enthusiasm shown by executives for particular products. Maps & Search received the coveted placement in the order of the keynote. Android, and the impressive Google+ demos were bookends to a romanticized and overly-dramatic discussion of the future of the web.
The amount of time devoted to Maps felt out-of-place and overhyped. It was an impressive 5-minute tech demo of WebGL crammed inside a 30 minute explanation of a product that already existed (the new mobile maps app) and a future product that was both available today and impossible to distinguish from the current version at first glance. There was an embarrassing attempt to discuss design and intention with the new Maps UI. My favorite moment was a road highlight that was so subtle, the feature had to be toggled several times before the crowd noticed the difference.
Facebook is amassing design weapons of mass destruction. Microsoft is seeking a unified interface system across their desktop, tablet and mobile devices. Amazon and Apple already have established credentials in the design of their products. Isn’t it time we stop giving Google a pass for willfully ignoring the design of their products?
Battery life, internationalization and the web as a universal “write-once, run everywhere” platform were the often repeated themes of the conference. Not once was design discussed. No stage time for Matias Duarte, one of the great mobile designers of our time. The only designer given stage time was a maps designer trotted out to run the aforementioned Maps demo behind that embarrassing podium on stage. Particularly awful considering the new Google Maps showed a tragic lack of design consideration.
There was a lack of taste in how the products were presented, as well. If Google is serious about making the technology disappear, they have to stop paying lip service to design. Their technology is certainly impressive and it’s clear they have talented designers in house. But the importance of design needs to bubble up into management. If they want to ship products, instead of merely services, then they have to consider the design in addition to the technology.
What happened to Android?
As I mentioned at the beginning my reason for being at I/O was to hear about the latest and greatest in Android. There were a few gems, like the aforementioned game service and the updates to the developer’s portal. No new version of the OS, just an early beta of a promising Android-specific development tool. And that was it. About 30 minutes into the keynote, Android became just another platform that was mentioned in support for their other products, alongside iOS and the web.
Not only were product images shown running on iOS, several of the demos were done on iOS devices! It’s certainly laudable that they support a range of platforms for each of their services. I’ll consider their game service first, simply because I could support multiple platforms with the same service. However, I found it odd that the live demos occurred on a rival platform. What signal does that send to your devoted Android developers in the audience?
Another telling sign was the the newly crowned chief of Android, Sundar Pichai, delegated the duties of explaining the new platform features to someone else. Only to return and speak for over 30 minutes on the importance of the web as a platform. It was an amusing show of favoritism. And it made for an odd introduction to the keynote. Gundotra came out to introduce Pichai who then quickly introduced Hugo Barra to discuss Android. It was pretty clear that Android is not a priority for Google.
I don’t blame them, really. Android was never a good fit for Google and I can’t imagine they make very much money from it. The Motorola acquisition has yielded nothing, while Samsung continues to dominate the Android landscape.
Chrome is the future
In contrast to Android, it was Chrome’s name that Google couldn’t speak enough. It was Chrome they touted in video form when discussing penetration in schools. In Chrome Google has a superior product to its competitors. And also in Chrome where Google is presenting their boldest vision of the future of computing. Then consider that their “gift” to each conference attendee was an overpriced computer that can only run a web browser.
I’m having a hard time understanding the Pixel, especially a logical reason for why Google would give away 6,000 of them to developers. Developers need a truck, not a smart car. The Pixel is a beautiful piece of hardware in many aspects. But it’s a bimbo. I can think of no reason why I would ever pack the Pixel for a trip. My iPad is smaller and more capable. Why didn’t this version of the Pixel ship with a development environment? Why not the fancy new Android studio? It was a wasted opportunity from a company that can’t figure out what it wants to be when it grows up.
In my opinion, Chrome is the future of Google. It makes sense. Just as the objective-c runtime is to Apple, Chromium is Google’s runtime. However, that future isn’t forcing everything into a browser window. A modern operating system needs to do more. It needs to group tasks, and switch quickly between multiple applications. It needs a way to focus on a particular task, without excess visual clutter getting in the way.
Google missed their chance at WebOS the first time it was available. If I were a betting man, I’d say that Andy Rubin had something to do with it. He’s now gone. WebOS is open-source and I imagine Duarte would enjoy taking a second crack at what he started with WebOS. But now, his vision wouldn’t be hampered by a runtime with performance problems. Look no further than the Hobbit WebGL demo shown running on the Nexus 10 in a Chrome browser tab. Chrome is powerful technology, it just needs to escape the browser to become something more. I want to see Google build a mobile Chrome OS, in the image of WebOS.
It’s a pipe dream, for sure. But Google has the raw material in front of them and Android has grown out of their control. They need a platform that is uniquely theirs and reeks of their core strength.
A bizarre coda
A lot has been said about Larry Page’s closing remarks. Yes, it was an unceremonious end to a drawn out affair that left many open questions. It was Google’s opportunity to make a statement and set the tone for the rest of the conference. A moment for them to clarify their vision. On paper it probably looked brilliant: Page, struggling to speak, in a very spare and raw moment on what defines Google. It could be built upon Page’s undisputed role as a pioneer in the history of modern computing. He’s a visionary and an idealist. The room erupted when he walked on stage and for 15 minutes of rambling, the auditorium was breathless. As he walked on stage, it appeared to be a brilliant move.
Then Page started speaking and the whole thing slowly derailed. Instead of a moment that would rise above the bore of yearly product updates, it served to articulate just how out of touch Google is with itself. They paraded VP after VP to discuss products without an ounce of cohesion or overarching strategy. It was as though each of them met only once a year to discuss what they’ve worked on. Then their boss gets on stage and completely failed to tie any of it together.
Will the real Google please stand up? If Page is too embarrassed to own up to how they make money, why don’t they start charging customers instead of selling them? I’d love to use the photo galleries in Google+, but until they start charging me I don’t know what else they’re doing with my photos on their massive super computer. Instead of thrusting sub-par iPhone wannabes upon us, why not focus on what you’re good at and build from there.
And the next time you kidnap me for over three hours, make sure your SVP of design gets up and reminds us why we should care about all this gee-whiz tech that you’re so eager to show off.
Google I/O has been an interesting experience. Google has a healthy community of developers and they have their own unique voice. I hope to return next year and meet more of them. My only request of Google (other than bringing back WebOS from the dead) is that they cater food for the next keynote. Three hours was a bit long to go without a burrito.
At the beginning of June, I launched Pris to a surprisingly enthusiastic market and my head has been spinning ever since. The response from users in all parts of the world has been incredible. However, it hasn’t all gone according to plan.
Two weeks later, I’d like to apologize for the errors, detail my next steps and give away an iPad.
A Quick Start
As I allude above, the first week of sales was incredible and quite unexpected. The first weekend saw Pris rocket past apps like iPhoto and iMovie in sales. It peaked at 72 in the Paid Overall charts, reaching as high as 6th in the cut-throat Photo & Video category. It was one hell of a start.
Only the Games category sees competition as stiff as Photo & Video. I was incredibly fortunate to have features in two great publications, a Macworld “hands on” and a treasured link on Daring Fireball. As a result, the app’s website and my announcement post saw more than 50,000 unique visitors during the first week.
The Fall Can Kill You
If someone was writing a fairy tale about an iOS launch, the story would end here with a “happily ever after.” However, the massive amount of exposure did more than spur sales. It exposed flaws, some of them fatal, in the shipping version. I have received a massive amount of support email over the past week. In some of that email, angered users offer the obvious question:
“How did your app ship with a bug like this?”
Pris is a camera and a camera has two essential functions: (1) to capture photos or videos and (2) to provide ready access to those captures at a later time. Many of you have raved about the interesting approach to taking photos, but some of you have complained loudly that Pris has a major problem exporting videos. Relying on detailed feedback from users facing the problem, I began to understand and fix the issues identified.
Despite four months of beta testing, Pris 1.0 shipped with a bug that will corrupt the audio stream when capturing video. When the app attempts to crop the video frames and export the processed video, it fails to read the audio stream and crashes. In certain extreme cases, the malformed audio can cause the video playback engine to crash when it attempts to playback such a movie. Since I preload assets in the review mode, the app will confusingly crash before the corrupted video ever appears on screen. The resulting confusion has been heartbreaking to witness.
For a camera, this kind of bug is an unforgivable sin and I am deeply sorry for all who have been affected by this issue.
Fortunately, the issue that causes the audio corruption is preventable and I have a fix that ensures properly captured video files in all orientations. The trick to diagnosing the problem was figuring out which circumstances would cause the malformed audio to appear. It turns out only certain videos taken in portrait and all videos taken in a landscape-left orientation (where the home button is on the left side of the device when held horizontally) would exhibit the behavior.
Most often I hold the device with the home button on the right, ensuring the camera lens is along the top edge of the device. This meant I never saw the issue during my everyday testing and it slipped through the cracks. I have a feeling most of my testers also use this orientation when shooting video, considering the lack of reported issues during my beta tests.
In addition to fixing the corrupted audio, I also want to prevent crashes if the user already had taken corrupted videos. Therefore I’m placing safeguards into the app for those who have effected videos in their library. This should prevent crashes that occur while using the review mode.
Unfortunately, the video export crash was not the only issue encountered during the first week. Likewise, I’m working to fix these other reported issues:
- Slow, stuttering video capture (i.e., low frame-rates)
- Reversed exposure/focus controls in landscape orientations
- Delayed or slow photo taking on the iPhone 4
- Green lines appearing at the bottom of videos exported on the 4S
Help is on the Way
Fixes for all of these issues are being prepped for a 1.0.1 release which I plan to submit this week to Apple for review. The review cycle for app updates is typically quicker than the review of a new app, so this should post to the store quickly.
In the meantime those of you having trouble getting access to photos and videos can use the file sharing built into iTunes. Connect your phone to iTunes and you can save the folders directly to your computer. This is far from an ideal solution, but it provides a way to recover your photos and videos when encountering the aforementioned bugs.
You Could Win an iPad
I previously announced a contest for photos taken with Pris. I hoped to announce the winners this Monday but, due to the issues reported with the app, I’m moving back the submission deadline until Friday, July 6th. The person who takes my favorite shot will win their very own 16GB iPad with retina display! To enter, please read here for details on how to submit your photos for consideration.
This is my way of saying thanks to all of you who’ve purchased Pris during launch and continue to use it despite its warts.
More than a Launch
Despite the voluminous support email, many of you have dropped a note telling me you love Pris. Last week at WWDC I couldn’t help but blush every time someone told me how much they enjoyed using it. The support from all of you, even through your frustration, has reassured me that Pris is still a great way to take photos and videos on your iPhone.
With that confidence, I’m planning more exciting features and extensions of the Pris camera system. There is so much I can’t wait to share with you.
Thank you for your continued confidence. You can follow @PrisSupport to stay current with the latest news and updates.
The reaction to Pris has been very positive. I want to thank everyone who has purchased the app and started taking pictures with it. To celebrate, I wanted to have a little fun and get a peak at what people are shooting. I’m also giving away an iPad.
UPDATE: Due to problems with the 1.0 release of Pris, I’m moving back the submission deadline to July 6th. I’ve noted the new deadline below.
When I announced Pris I shared a few of my favorites photos and I’ve shared a few more in this post as well. Now it’s your turn to share.
I want each of you to share your favorite shots and after two weeks I’ll pick the five (5) I like the most. Each of these winners will get a promo code (to gift to a friend) and beta access to future Pris versions. I’ll share them on this site at the end of the contest.
The person who shoots my favorite photo will receive a brand new 16GB WiFi iPad with retina display in the color of their choice.
The contest starts today and ends
Friday, June 22nd, 2012 Friday, July 6th, 2012. I’ll announce the winners the following Monday.
How to Enter
It’s simple to enter the contest. You just need to post a photo to Twitter you’ve taken with Pris and include in that tweet (1) a link to the Pris website, http://bit.ly/JTPJQb and (2) mention @PrisSupport.
- You may submit as many photos as you want.
- Photos may be portrait or landscape
- Photos may be software enhanced, but the image must maintain the original aspect ratio (square or 2.35:1)
- To be considered, the photo must be shot in Pris. If you submit a processed image, I may ask for an original to verify.
- You tweet from a public Twitter account.
- All images and their copyright belongs to you, submission to the contest allows me permission to publish on this site with proper attribution.
- Judging is subjective and winners are determined by Rob Rhyne. Digital Arch reserves the right to refuse any submission.
Good luck and happy shooting.
Allow me to tell you about my favorite time of the week. For the past six months, my oldest and I have embarked on an adventure every Saturday morning. When you’re three years old an adventure can be almost anything. For my son it is a 1.5 mile hike to the playground. For me it is two hours of father-son time … mixed with a little app testing.
The app I tested is my new camera app called Pris, and you’re gonna love it.
What is Pris?
Pris is a mobile camera app with a user interface built for capturing the moment. It’s on sale with a special launch price of $2, so go buy it now.
(all photos taken with Pris, some processed in Instagram)
When you first launch Pris, you’ll notice a few things different from your standard camera app. First, no tiny shutter button. Instead you take photos in Pris by tapping the screen. The design dedicates a full two-thirds of available screen real estate to its most important function. Since you can’t feel controls on a touchscreen—only see them!—your fingers will not develop a muscle memory. That means each time you want to take a picture, you have to look at the shutter button.
Pris is built so you can take pictures and videos without glancing away from what you’re trying to capture. This means you’re more likely to take the picture you intended. It’s faster because you’re not searching for a button.
The second thing you’ll notice, looking at Pris, is that the viewfinder is cropped. This is because the resulting image (or video) is cropped. When held vertically neé, portrait, Pris shoots a lovely square (1:1) photo ready to import directly into Instagram. Tilt Pris on its side—i.e.,landscape—and the viewfinder changes to a cinematic widescreen. This crop gives you simple one-shot photo panoramas, but it gets really interesting when you switch into video mode.
Made For Cinema
Pris is made for serious movie-making on the go. A tiny control, the toggle switch, is replaced with something larger. Just swipe right anywhere in the bottom third of the screen to switch into video mode.
Since I was little, I’ve been fascinated by cinema and the art of making movies. The wide 16:9 aspect ratio on the iPhone was nice, but I wanted something closer to the frame of my favorites movies: Star Wars, Bladerunner and 2001: A Space Odyssey1. These were all filmed in a wider 2.35:1 aspect ratio sometimes called CinemaScope.
I wanted to do something special for Pris, so I chose this aspect ratio to crop photos and videos in landscape. The resulting videos possess more grandeur and more drama than the made-for-HDTV movies shot with the standard iPhone settings.
Made for Photographers
It’s no secret that I’m a camera enthusiast and Pris was made with photographers in mind. There’s an increased creative control you get from Pris’ quick focus and exposure lock system. The realtime luminosity histogram is useful for checking your exposure before snapping the frame.
Most of all, Pris promotes two important parts of the photographic process: Composition and Selection. Most photography apps focus on post-processing a presumably sub-par image. I wanted to build an app that would improve the images you capture with the phone. Composition aids, such as the aforementioned creative mode and the live histogram, will help improve the technical quality of your photographs. Photos are stored internally, instead of your global Photo Album. Pick your absolute best and send only those to your photo album. Over time Photos.app will become the app you launch to show people your favorite images.
Pris continues my journey to deliver simple, fun software for creative people to do creative things. I’ve used Pris in every situation that presented itself, from the weekly walks with my oldest son to my youngest son’s first birthday. It’s important that I trust Pris with my most precious memories before I hand it over to capture yours.
Pris dons the moniker: Made in the USA. There is a strong US arts & crafts movement that aims to promote handcrafted over mass manufactured goods. It’s my hope that Pris and other apps like it bear “Made in the USA” to exemplify a standard of quality craftsmanship.
I hope you enjoy using Pris as much as I’ve enjoyed building it.
Who made Pris?
I designed the app and wrote all of the code, but I hardly built Pris by myself.
The Pris icon was designed by the talented Nick Keppol, our senior designer at MartianCraft. I didn’t want to steer far from the canonical camera icon, but I did want it to stand out. The glass and chrome of the white iPhone was an obvious inspiration for Nick. He also designed more legible reticules for the focus and exposure locks. A big shout-out also to Christopher Harrington, my Creative Director at MartianCraft. In addition to design guidance, he offered his radio voice to earlier versions of the app when I included a startup video tutorial.
Speaking of graphics, the entire user interface was designed and drawn in Gus Mueller’s excellent Acorn. One evening, I went to launch Photoshop while on an airplane. After it tried to phone home and refused to launch, I fired up Acorn and never looked back. A nice touch is that each layer style effect maps directly to CoreImage and CoreGraphics, so I could mockup exactly how it’d look. Acorn launches fast and runs without slowdown alongside Xcode on my first generation 11” MacBook Air.
I would be remiss if I did not thank my excellent beta testing team. They tested the app through its many wrinkles and warts, while providing excellent feedback and guidance. Some of them, like Jose and Mark tested every version of the app I distributed going back to October. Thank you Craig, Chris, John, Dan, Jason, Justin, Neven, Guy, Brandon, Steve, Jake and Mike; you’re the best.
Pris is having a launch sale today, 50% off on the App Store.
1 Only 35 mm prints of the film were 2.35:1, it was filmed in 2:20:1. ↩
Tax day is around the corner and once again Twitter is littered with advice on deductions and ways to “save” money on your taxes. As the owner of multiple corporations, allow me to offer the only amount of advice that matters: get an accountant. As in, Certified Public Accountant and while you’re at, you should have an attorney, too.
In the beginning
If you’ve already created a corporation, you should already have both. I hear a lot of people often suggest, that you don’t need either and you can just fill out the paperwork yourself. Don’t. It’s a stupid idea and you can tell whatever friend/know-it-all/website that recommended it that I said it was a stupid idea.
There’s a place for saving money in your business, but the legal document that founds your company in the eyes of the government is no such place. Have an attorney do it and rest peacefully knowing you’re never a lawsuit away from losing everything you (and your family) own.
Second, you should consult an accountant for which tax entity you should use for your business. Picking the wrong entity can cost you a lot of money in unnecessary taxes. But accountants are also consultants. The good ones help you plan out the next year and can offer the best ways to finance purchases. You shouldn’t just speak to your accountant on April 15th; they should be your first call/email/twitter/whatever before you make any investment or major capital purchase. Same applies whenever you create a new type of revenue stream for the company. When you’re young and still small, consider your accountant as the first CFO of your company.
Pay your Taxes
As I allude above, your accountant is not just for taxes, but tax preparations are a big part of the yearly interaction. If this is your first business, you’ve probably had your head filled with all of these mysterious, unknown deductions that “can save you THOUSANDS” on your taxes. Be skeptical anytime there appears a mysterious way to cut your taxes in half. The first rule of business is that every dollar is hard-earned.
You’re in the big leagues now. Gone are the days of 1040EZ forms. If you underpay your taxes as a business the IRS will catch up with you. It’s dangerous to think “well, it worked last year…” because the IRS can go back 7 years to find a smoking gun. And when they do, you’ll pay hefty interest. So, instead of thinking of your accountant as a way to game the system, think of them as a protective measure. In the long term, the conservative approach is more prudent.
How do I Pick One?
Getting sued or audited are the two worst nightmares of any business owner, and for good reason. Your best friends during these situations are your accountant and your attorney, so choose someone you can trust. It helps if they have experience or understand the field of business you operate.
One of your usual methods of discovery as a geek, the internet search, often is no good. As a rule, CPAs and attorneys tend to stay away from the web, given the regulations and laws surrounding their official advice. (Did you know that conversations with your CPA are privileged, the same as conversations with your attorney?) So in lieu of a blind search, talk to your friends, go to a local developer meetup or even your parents. Chances are someone near you has first-hand experience with at least one accountant or attorney.
And since he’s my brother, I’d be remiss not to recommend my corporate attorney of choice. Jonathan Rhyne, while neither as handsome or intelligent as I, is a damn good business attorney. In addition to running the legal department of MartianCraft, he’s also a nerd.
CPAs are a little harder to recommend because they have to be licensed in the state you are incorporated, but if you’re looking for a Virginia accountant get in touch with me and I’ll send you his way.
Go Smart or Go Home
It’s no secret that using the services of an accountant and attorney costs money. It’s the cost of doing business well. Put another way: you’re an indie, you don’t have time to worry about this.
If you are not incorporated, if you don’t have an accountant and if you don’t have an attorney to call, your business is in danger.
A little over a year ago today I had the pleasure of founding a company with two of the brightest in the business. It’s not the kind of opportunity that comes along often and I was remiss to watch it pass by. What I didn’t know at the time was that I was three short months from abandoning my full-time job.
It is interesting now to look back and reconsider my mindset during the founding days of the company. You worry about a lot of things when starting out on your own and, in my case, almost none of them were valid.
I would wager, at the beginning, most are focused on failure. The fact is, we should be worried about success.
The Fall Doesn’t Kill You
I started off like most educated people: I spoke with my accountant. His advice was simple, if somewhat predictable. I needed to save money. Lots of money.
So there I was, chasing my dreams that were comfortably off in the distance. There were many that suggested I was “saving too much” or that I just “needed to make the leap.” But I was determined not to fail.
As you’d expect, this conservative thinking transferred as I started the company. With the fear of failure engrained in my psyche I pursued any and all jobs available. I was concerned with filling a pipeline instead of sculpting my company’s story. Instead of planning for the reality (mobile business is booming) I was trying to solve an imaginary problem.
Failure is Easy
Turns out that failure is easy to manage, when you get down to it. Sure, the stress and uncertainty are terrifying, but without work there isn’t much else to manage. There are few manpower issues without work to do, no accounting kinks to work out of a system with little money and few capital expenses beyond the idle hands you’re paying. A failing company is a ripe situation for innovation and great ideas because you have the most precious commodity available in abundance: time.
There is also little risk involved in strategic shifts, when there is little at the onset. And once you’ve completely failed, the business decisions make themselves. What other choice do you have, but to shut down shop and start looking for stable employment?
In contrast, a successful company has problems of varying colors. Success doesn’t happen steadily over a protracted period — rather, success attacks you like a rogue wave. One day you have one client, the next you have ten! Suddenly you need more time, more manpower and more infrastructure to handle the ten-fold increase in overhead costs associated with each project.
Or consider a company selling software. A featured app in the App store can create the same type of ten-fold increase in customers of your app. 10 times the support email, 10 times the feature requests. How do you account for the added time and material cost to support the incoming deluge of communication?
In hindsight, failure was the least of my concerns.
Plan for Success, Protect Yourself from Failure
In less than a year, MartianCraft transformed from an experimental coalition to a full-fledged consulting service, with an extended staff and Fortune 50 clientele. We didn’t get there without trying; good work is often rewarded with more work. However, to sustain the success and keep our standards of quality high, it required a change of thinking.
I’ve returned my focus back to what drove me to start MartianCraft: building great software for our clients. Failure is no longer defined as financial ruin and a dismantled business, but the failure to deliver the highest quality product to our clients. Instead of planning against worst-case scenarios, I’m pooling resources and talent around a successful future where the company continues in stride. In short, by preparing for success, I prevent failure.
But don’t take this as a vindication for ambitious thinking. A business is wise to plan for it’s next Big Thing™, but it’s important to avoid over-indulgence during the successful years. Remember your accountant’s advice and plan for a rainy day… just don’t forget to take some risk.
Just as MartianCraft has transformed, so have I. A year ago I was plotting the grand adventures of an indie. Now I’m plotting the course for the next year and a successful business strategy for the next five years. As MartianCraft’s success continues, my influence and role for the company approaches a disgusting three-letter acronym for any indie: CEO.
Cry not for me. Being the CEO is a role that any indie carries regarding their business, it’s just not often celebrated. It’s necessity, however, is no less relevant for an indie business than it is for a multi-million dollar company. The fact is, one of the three founders of MartianCraft needed to step into the role. Someone needed to direct our efforts so we could ride the wave of success instead of being crushed under its weight.
Unlike a traditional CEO, the role I’m describing rises out of need, not out of title. What sets apart an indie CEO from other’s is the fluidity of their actions. I am to MartianCraft whatever is needed at the time. If a project needs hand-holding, I become a project manager. If a contract needs negotiating I become a business developer. And if a toilet becomes clogged, I’m there with a plunger.
On any given day, I will negotiate a contract price, work with a developer to determine a release schedule, mentor another developer on the basics of memory management then fire up Xcode to clean up a project that needs to go out the door.
In other words, I’m still an indie, just one whose focus is on developing a company not just developing code.
I guess that makes me an indie CEO.
Last Thursday, after working with Apple’s review team for nearly a year, they rejected Briefs again.
I feel like we’ve all been here before. Another App Store rejection and another post on my (barely can be called a) blog. Since this is likely my final tome on the subject, I’m opting for a simpler approach. Instead of a rambling post about my continued woes of app review and more logical pleas for guidance from Apple, I’m posting a FAQ. A place to direct people as more of them discover Briefs and wonder what could have been.
But please don’t read my cool, logical demeanor as sanguine. I’m madder than hell over the situation, but it doesn’t matter. It doesn’t matter that I rewrote the app, removing all networking code, replacing it with the worthless iTunes file sharing. Nor does it matter that I was doing this based on direct guidance from Apple’s review team. It doesn’t change the fact that I have a concept I can’t sell and an app half its audience can’t install.
When will Briefs be available on the App Store?
Bummer, how can I install and run Briefs on my device?
The same way that has always been available: download the source code, then build, sign and install the app for your device.
What was the reason Apple cited for rejecting it?
According to Apple, Briefs “downloads executable code that dynamically alters the behavior of the app.”
Downloads? I thought you said you were using iTunes file sharing.
Any means of opening a .brieflist in Briefs, including: (1) a direct network download, (2) sending it to Briefs from another app or (3) using the user initiated process of copying the .brieflist through iTunes file sharing. All are considered “downloading” according to Apple.
I thought iTunes file sharing would be the silver bullet. If someone gets a virus from using iTunes file sharing, they really have to try. Think about it, you already use iTunes to copy movies, music and applications to your device. I’m not sure how a plist file adds an unnecessary security risk beyond the current functions of iTunes.
I’ve been happily using Briefs for months. Why does it matter if it’s not on the App store?
First, thanks for using Briefs. Second, I wanted Briefs to be an easy way to test out your ideas and the audience for such a tool is larger than developers. Without a version on the App store, I can’t reach the rest of the audience.
Installing an app from source is not an easy task. Especially for those who are unfamiliar with the joys of device provisioning. Three quarters of the support email I receive is regarding installation issues.
Why not sell the app through Cydia or other similar app stores for jailbroken phones?
I fail to see how jailbreaking your device makes for a better installation process. Nor do I see how I gain more of the desired audience through Cydia.
I’ve never met a single person who jailbroke their device that wasn’t a developer. Developers can already use my tool, as is.
What about a Briefs Mac app?
I’ve started writing code and I have a lot of ideas surrounding a Mac app for Briefs, but I’m reticent to spend more time on the project at the moment. This latest rejection has spooked me and I’m looking for better uses of my time.
Is this the end of Briefs?
The beauty of open-source software is that it never goes away. I get emails every week from people happily using it and I imagine many will continue to find value from it. I’m always open to pull requests and patches are welcome.
I’m not saying I’ll never work on Briefs again, but it’s difficult to open the Xcode project right now. One day that feeling will pass and I’m sure I’ll start poking at it again. When I do, I’ll talk about it on Twitter.
Will we ever hear the whole story?
I’m not in this game to whine about my troubles and get a bunch of folks riled up about walled-gardens or curated something-or-others.
But if you ever run into me, feel free to buy me a beer, ask me for an interview or invite me to speak at your conference. I like to talk and you’ll get to hear about the hidden elevator in Moscone.
In the meantime, I have a business to run and new ideas to build. If reading this makes you angry and you feel compelled to do something about it, go build something great that will make people happy. That’s what I did with Briefs and I don’t regret it; app reviews be damned.
If you’ve been married for longer than an hour, you’ll probably recognize this scenario.
The Architect is watching the telly. Passing by, I casually enquire as to what she’s watching. Normally this creates an intellectual, but brief, discussion about something that typically involves: (a) fixing-up the house, (b) witty crime dramas or (c) dresses. However, today is not typical.
Today we’re crammed into a beach cottage with her in-laws. My father is browsing Facebook out loud, while my mother is discussing something with the boy at a volume several of our neighbors could complain about. Add to the mix a television with poor built-in speakers and suddenly my attempt at being an interested husband becomes an intrusion.
“I can’t tell you the name, because I can barely hear what is going on. I think that Adrian guy from Entourage made a documentary about the paparazzi. I really wish I could hear what’s going on…”
At this point, my options were clear:
- I see if one can survive a dive from the 3rd floor balcony into the swimming pool below.
- I threaten to put my parents in a retirement home if they don’t quiet down.
- I save the day.
While #1 could be fun—if I survive—#2 would be a disaster since neither of my parents are near retirement age and we were staying at their cottage. So…
I Save the Day
For a brief moment, I forgot that we lived in the future. A quick pull from my pocket and I found a PBS opinion piece discussing several female celebrity’s perspective of Adrian Grenier’s documentary. I softly stroke my iPhone as I fire off a quick email to my bride. Case closed.
But before I took my victory lap, I remembered QueueUp—an app that I beta tested—which was recently released. A quick tap on the red & white icon revealed an expired provisioning profile. No worries, after a quick purchase1 I was back in business. Once the app was running, it was mere micro-seconds before the movie was the newest addition to my Netflix queue.
“Dear, the name of the movie is ‘Teenage Paparazzo’ and it’ll be at the house on Monday.”
Smiling, she switched the channel. Checkmate.
1 Patrick was kind of enough to offer a promo-code for beta-testing, but I never considered it. Support folks who make software you love. ↩
The past few days have proven interesting and encouraging. I’ve received many thoughtful comments and hopeful messages from users. However, there is some misinformation surrounding the timing and my motivations for making Briefs open-source. This post is the first of two I hope will clear up some confusion. First, I want to tackle the how and why I released the source for Briefs.
It was Always Open Source
Let’s get this out of the way: Briefs was always open-source. From the first release in September 2009, I announced that the current and future releases would all be open. I selected a modified MIT license for the first iteration because I wanted anyone to use the code how they saw fit. No strings attached and this solved the distribution problem perfectly. It was a framework for developers and any one could install it on their device.
Even before September, many designers were approaching me with a dilemma: how could they use the app if they were unable to build it from source? In that question, a version of Briefs for the App store was born. So, Briefs was open first; a for-pay build second.
With the App store version, designers could purchase a pre-built version that was dead simple to install on their device. (it was also an easy way for developers to give money to a project they found useful) The version I submitted to Apple in May was built as a way to get the app in a designer’s hands.
The Revised License
Many have already noticed that the original license for the Briefs.app source has been modified in the 1.0 release. In particular, I added lines protecting the Briefs trademark and the following clause:
“The Software and/or source code cannot be copied in whole and sold without meaningful modification for a profit.”
The complete license can be read here.
I had planned to detail the various sources that served as inspiration but, as luck would have it, a slashdot commenter has already done that for me. The commenter posits that the license is not “Open Source”, “Free Software” or “DFSG-free.” The basis of their accusation is that I don’t use an existing open-source license. They offer the addition of the above clause as proof that I hate freedom, apple pie and the American Way™.
Why do I Hate Your Freedom?
The irony of the slashdot comments is rich. Not only do I offer two separate embeddable libraries—one for reading briefs, another for running them—I do so under a license without the above modification clause. The truth is, I want people to use the
.brieflist format. I envisioned it not only as a prototyping format but also as a UI specification document. Imagine if you could hand a developer a brief instead of a Photoshop mockup?
If you explore the
briefs.app project, you’ll notice the revised license only covers the UI (e.g., view controllers, local storage, etc.) of the app. None of the core pieces of the Briefs framework are covered under the more restrictive license (since they’re part of sub-projects in other repositories).
I tried to use a scalpel when applying the clause.
Why the Clause Matters
You might ask, what essential liberty am I excluding by adding the modification clause? Ironically, nothing. My motivation for adding the clause was to prevent a scenario where someone would upload a carbon copy of my application to the App store, under their name, with their price. If I charged $15, someone could ask $8 and undercut me with little effort on their part. If I allowed that to happen, it would destroy my ability to sell the app. Then I’d have to make the choice to either sell or open-source the app. I wanted to do both.
However, this entire train of thought is moot if I can’t sell the app in the first place. Currently I’m only withholding your right to submit this app to Apple and wait three months not to be accepted or rejected. I’m such a greedy bastard. Shame on me.
The New Open Source Business Model
The license, despite opinions, is actually a professionally engineered piece of legalese that allows you to open-source your app and still sell it. A lot has been said about Apple’s walled garden but since they control distribution, a majority of the market can’t install an app from source. That sucks if you’re a user, but fortunate if you’re a developer that wants to open-source your application.
Most assume you can’t sell open-source software because no one would pay money for something they can install for free. Free software is practically synonymous with liberty and no cost. When the App store, the equation changed. Interested parties now have the liberty to examine or modify (and re-install if you pay Apple) an application while developers charge a fair price for their applications. Freedom for users, beer money for developers.
Needless to say, I’m excited about the prospect of the new model. Imagine how powerful this would be for budding developers? What if you could look under the covers of your favorite apps? What could you learn?
Even users would see a direct benefit. Jeff LaMarche talks about coding as if everyone is watching and with an open-source business model everyone could be watching. Vanity alone would dictate better engineering!
Introducing the Rhyne Open Source Software (ROSS) License
When I asked Jonathan Rhyne to author a new open-source license I provided a simple wish list:
- Royalty free use in commercial and non-commercial projects
- Attribution should be required
- Prevent people from submitting an unmodified copy to Apple for sale
- Simple language
The result is a modified MIT license with BSD-style attribution that is compatible with the Apple’s distribution model. It gives the discerning developer peace of mind knowing that your brand and trademark are protected, while freeing them to share the coolest bits of their implementation.
This license is my gift to you. Take it and use it.
You Still Need an Attorney
There is some fine print. Obviously this license, as with most open-source licenses, has not been tested in a courtroom. I cannot guarantee it’ll hold up in court and we live in a world where some stooge will try to find a way around it. When that happens, you’ll want an attorney.
Jonathan did a spectacular job bringing classic open source licenses into the modern age. He’s a closet Apple lover and he knows the answer to the ultimate question1. If you’re an app developer, you want him on your side. Who else has an attorney that does consultations over FaceTime2?
He’s even on the Twitter.
It has been three months since I last threw myself upon the court of public opinion. I have waited three months for a resolution—any resolution—on the matter of Briefs’ admission into the App store and have grown weary waiting for a response. Many have asked where things stand, so I decided to grab the megaphone once again.
Before showering the interested few with details, I’ll summarize where things stand as of today. First, the app is not available on the App store and I have no reason to believe it will be anytime soon. That is not, however, for lack of effort by a great many inside of Apple.
At WWDC I was connected with two developer evangelists and eventually the director of the App store to discuss Briefs’ prospects. All three were very encouraging and helpful. This was in addition to several Apple engineers detailing their use of Briefs for company efforts. I left the conference with hope that differences could be resolved and Briefs would be up for sale.
That was until a few weeks later, when I was told (by the director himself) that the review had reached the “executive level.” Considering he reports directly to an Executive Vice President within Apple, I have every reason to believe him. Unfortunately two and half months have transpired since reaching the executive review. (and what a two and a half months it has been for Apple executives!) I have not completely given up hope, but it is time to move on.
Many have asked about development status, including a version for the iPad and a visual builder for
.brieflist files. I’m a new indie of four months and trying to feed a family. I have already poured hundreds of hours preparing Briefs for a public release while simultaneously bootstrapping my consulting business with Jeff and Dave. With the status unknown and Apple openly opposing the strategy behind Briefs, it has become hard to stay motivated.
So instead of trucking along, and growing more resentful of the project, I’ve decided to take a break. And to cool the sting, I’m releasing the 1.0 code base to github today.
1.0 Source Available Today
The completely redesigned user interface. The underwear-laden app icon designed by IconFactory. The
briefcast:// url schemes. It’s all there, including a few bits of code I actually take pride in releasing to the public.
Also, if you were having problems getting scrolling actors to work, all of the fixes are in the new code base. Everything should just work. As always, email me with any questions or problems you’re having.
The Road Ahead
I am not finished with Briefs and I would like to find a way to devote more time to it. I’m considering a lot of ideas—including a Kickstarter project to fund iPad development. I still have some good ideas for the platform and I hope to get back to them in good time. However, it’s time to focus on other work and projects that can get into the App store.
In the meantime, feel free to email me with questions, comments or even links like this. It never gets old hearing how others are using Briefs. It still amazes me that I’ll never know everyone who’s ever used it and doubtful that I can thank you all in person.
Thanks. If it wasn’t for folks like you, I would have given up long ago.