The Dialogue: Russell Ivanovic

Today on The Dialogue, we have Russell Ivanovic from Shifty Jelly. Our goal behind The Dialogue has been to not limit the interviews to just designers and so this time, we thought we’d change things a little bit. Russell is the face of Shifty Jelly, developers of apps like Pocket Casts & Pocket Weather Australia. We love their apps on iOS and Android and it was great talking to him.

Can you tell us a little bit about yourself?

Well I’m Russell, and currently I’m a developer at the best company on earth — Shifty Jelly. I started Shifty Jelly 5 years ago with a my friend Philip, and I guess our other title would be “Co-Founders”. We live in Adelaide, South Australia which, distance-wise, is probably the furthest you could possibly get from Silicon Valley. I started my IT career 13 years ago as a Software Engineer, then 4 years later became a Software Developer, and 4 years later again my title is just ‘Developer’. Some might say that’s a slow downgrade in terms of titles, but I’m perfectly happy just being a regular old, plain ‘Developer’

We all know Shifty Jelly thanks to Pocket Casts. Before we get to that, what made you guys go Indie full time and drop your day jobs?

We made Pocket Weather Australia first. It came out within a few months of Apple launching their App Store in 2008, and went straight to the #1 spot in the store. It had to compete with around a total of around 500 apps in the entire store, so those were definitely different times.

Anyway, after making that, we were still full-time employed for 2 years before we finally decided to go indie. In terms of what made us, we probably should have done it back in 2008 but we were seriously risk-averse and too scared. By 2010, we both had a revelation though: if we don’t do this now, when is there ever going to be a better time to try?

You’ve mentioned a few times before that you decided to make Pocket Weather Australia because none of the apps had accurate data for Australia. What made you decide to do a Podcast app next?

We both had iPhones, we both enjoyed podcasts. At the time, there was no good way to get podcasts on your iPhone. The official Apple approved way was to download them in iTunes, plug your phone into your computer, sync the podcasts to the phone, then play them through the Music app. This was convoluted, not to mention annoying if in the morning you had to rush out and didn’t have time to do the syncing dance. Apple was actively rejecting podcasting applications at the time as ‘duplicating functionality’ that they provided, but we decided to try anyway. It was also our first new app that we made after deciding to do the indie thing and going full time.

What was the reception like for Pocket Casts on iOS at launch?

For version 1.0? We barely even got noticed. A lot of competitors launched around the same time and they did a better job out of the gate at getting press and people’s attention. Truth be told, they did a better job of their actual apps as well. We persevered with version 2 and by version 3 we were finally starting to see a moderate amount of success. What made us build an Android app at that point was probably just pure stubbornness. We kept getting requests for one, but everyone ‘in the know’ we asked said the same thing, “You can’t make money on Android selling paid apps.” This was March of 2011, and to be honest we forged ahead blindly without really knowing what we were in for.

So after not getting any success initially, you guys decided to work on an Android version. How was the reception to that initial release from Android users?

We committed pretty much the cardinal sin every iOS developer does when first exploring Android. We ported our app over with little to no regard for the platform or it’s intricacies.

The Amazon comments are harsh. Many developers port their iOS app to Android with no regard and it usually backfires. What was your plan of action in this situation where your iOS and Android apps, were not doing well?

Well, we sat back and thought about it. Were we building the wrong app, e.g.: did nobody care about podcasts on their phone? This was clearly disproven by the success of our competitors on both platforms. So what was our app lacking, why didn’t it succeed? We sat down and had a good long think about that and came up with two clear things: we were terrible at marketing our product and letting people know, and our app itself needed to feel more ‘native’, to fit into the platform better and take advantage of it rather than trying to be different to it.

Was the lack of a usable podcast solution on Android a major factor into you deciding to do the app overhaul on Android first?

That was one of the factors, yes. After trying to build version 4 of the iOS and Android app at the same time, we quickly realised just how inefficient that was becoming. So we decided to focus on just one. The factors that led us to the Android version were that there was no good built-in solution from Google, the quality of the competing apps was a lot lower than on iOS and both Philip and I were already really experienced Java developers meaning that we’d be able to work on it at the same time. If you remember, we also identified marketing as a weakness of version 3, so at the back of our minds we were also trying to make this into an interesting story for the press, and what’s more interesting than a developer bucking the trend and bringing an app to Android first, instead of iOS? Finally we wanted to do justice to all our customers that had purchased our app on Android and expected big things, we felt like version 3 had really let the most hard core of them down.

After the amount of press you guys had for going Android first, how was the reception when the huge update finally hit Google Play?

The reception was amazing. It was written up on Android Central, Android Police, The Verge, Ausdroid and countless other websites that cover Android apps. It was covered on podcasts like All About Android and so many others. It was even covered on a few pro-Apple blogs like Daring Fireball as an example of an iOS developer going Android first, however mostly in an off-hand ‘well I guess there are exceptions to every rule’ type way. A week or two after launch, Google also contacted us and offered to feature the app in their store, I don’t remember exactly when that was but I do remember we were on the front page of Google Play for a full week. It was the most successful launch we’d ever had and the most amazing part of it is that it didn’t just last for a week. 6 months later the app was still selling at almost the same volumes it had on launch day.

Pocket Casts going Android first is probably the biggest success story for a premium app on Android, wouldn’t you say? Also, when you started work on the iOS revamp, how did iOS 7 and WWDC 2013 change that?

I doubt it. Plenty of paid apps on Android have millions of downloads, ours is currently between 100,000 -> 500,000 (Google Play shows download numbers next to each app, based on defined ranges). So in terms of success, we’ve done well but we’re nowhere near being the ‘biggest success story for a premium app’. This seems to be something most people miss, despite the fact that download ranges are public, as are app prices, so researching roughly how much an app has made is far easier than on Google Play than on iOS.

In terms of iOS 7 and WWDC 2013, yes that was a massive turning point. The Android version of 4.0 shipped in late 2012, so at that point I’d gone back to working on the new iOS app. We’d learnt a lot from the Android version in terms of workflows, etc, and we were starting to apply those to the iOS version. We had a lot of issues though in terms of how we were going to lay out our app, what kind of style it would have, and what it’s ‘personality’ would be. Version 3 was insanely heavy chrome-wise and we knew we had to dial some of that back. Still, it was hard trying to figure out an overall direction and we wasted a lot of time trying various things out. Enter WWDC 2013: I travelled to the US for the first time to experience it all and during the keynote, everything became crystal clear. Not only had Apple essentially answered the question of what kind of visual identity we needed to give the app, but they’d also given us the backgrounding APIs we’d always wanted in terms of being able to download podcasts without user intervention. To say I came back driven would be an understatement. Within a few hours I’d convinced our team that we needed to start again, pressed ‘File -> New Project’ in Xcode on a brand new iOS 7 only project and away we went! We worked harder from WWDC to iOS 7 launch than I care to admit. It was an insane amount of effort to hit the September deadline, but we made it.

You’ve had extended beta testing for both the iOS and Android versions of the app, allowing outside testers to help early in the process. How important has the outside feedback been in both versions of Pocket Casts?

That extended beta testing period, and the feedback we received were invaluable. That’s another thing we were determined to change for the version 4 launch, in previous launches we either didn’t beta test heavily outside of our close circle of friends or when we did we didn’t leave enough time to actually take on people’s feedback. Having people actively giving us feedback a good month or more before release meant that we could actually change a lot of things before we shipped.

So how did Pocket Casts 4 for iOS perform and how was the launch experience for you, given it was ready for a major iOS release? Please explain the reasoning behind going with a free update as opposed to a separate, paid app that many developers went with.

The launch experience for version 4 of iOS was also really positive. Apple featured us with a big banner in the news section, they featured us in the ‘Made for iOS 7’ category and in quite a few other places worldwide. Basically everywhere except our home country of Australia, where our local Apple Developer Rep made it abundantly clear that he would not support us or talk to us again, because of the success of our Android release. I have no idea why he took that so personally, and to this day it seems really petty, but that’s a story for another time. The press were also overwhelmingly positive about our release and it was covered on your site and many other top Apple websites around the world.

In terms of why it was a free update, the main reason was simple: up until this point, the iOS version hadn’t seen a huge amount of success. It had, from memory, only 10,000 -> 20,000 downloads and it didn’t seem worth trying to explain to those users why we were charging again or going through the fun that is the paid update process. Instead, we doubled the price (from $1.99 to $3.99) and launched it as a free update. We’re not against paid updates, in fact we’ve done them in the past with our Pocket Weather app. The paid update for that app was a financial success, but since it’s not supported by Apple, there were a lot of annoying elements to it that just doesn’t make it worthwhile unless you have a lot of users.

Tell me about Shifty Jelly’s contribution to Bjango’s Skala View for Android and how that came to be.

Skala View for Android is very much related to Pocket Casts 4, we needed a quick way to preview designs on our Android phone and up until then, Skala Preview on the Mac and Skala View on iOS were our tools of choice. Unfortunately, there was no Android version at that time. I’ve been good friends with Marc Edwards of Bjango for a while now, so I asked him if he’d be interested in making one. He was, and since we had the Android expertise and needed the app, we built it. It was a super quick app for us to build, partly because I’d had a small hand in the Mac and iOS versions that came before it as well. Bjango is an awesome company and we share a common vision for how we feel independent development should work. To be honest I hope Marc becomes insanely rich with his upcoming Skala launch and buys us out. Hi Marc!

What software and hardware do you guys use at Shifty Jelly?

Hardware wise, we’ve always had MacBook Pros. We had the 2010 models originally, but we ripped out the CD Drives and installed SSDs instead. Nowadays, we run 15″ Retina Macbook Pros, the higher end model with 16GB of RAM and a 512GB SSD. Our thinking in both cases is simple, we want portability and speed and we don’t mind paying for it. When you’re a small a team like we are, there’s no point in cutting corners when it comes to hardware. Every minute you spend watching a beach ball spinning is a minute you’ve wasted. As an iOS developer, the retina screen is handy because it means you can fit a full resolution iOS Simulator on the screen during testing. We put them up on stands, plug in an external 27″ Dell monitor (or 2 in Phil’s case!), keyboard and mouse and mash away. The fancy pants asymmetric fans really make a difference too, our office used to be all app fan noise but these days all you can hear is Phil talking to himself while he codes. Monica, our support person, is not quite as insane as us, so she has only one 24″ monitor and a non-retina MacBook Pro. I’ve been eyeing off the Mac Pro ever since I laid eyes on it at WWDC 2013, but honestly it’s just too expensive and a laptop is far more convenient in a lot of cases since you can flip it open, and continue from where you left off. I also can’t remember the last time I had to wait for my laptop to do anything, it’s just so damn fast. We take backups really seriously too, so we all have external USB drives we use with Time Machine. On top of that, all our code is checked into a GIT repository in an external location, and we back up a lot of things up off site as well. We’ve had drives die in the past, and simply bought a new one, restored, and been back up and running 2 hours later. It’s like magic.

We also run 2 Mac minis as test servers, oddly enough both running Linux installations. The only consideration here was heat and noise, and the latest model of Mac mini runs near silent and cool to touch.

Software wise, I use Apple’s toolchain for iOS (Xcode, etc) and Google’s for Android (Android Studio, etc). Some of my other favorite bits of software on the Mac (he says as he scans his dock):
– Slack: for all our messages and collaboration
– Wunderlist: we keep our bugs and todos in here
– Reveal: nifty little app from yet another Australian Developer that lets you crack open running apps and debug their visuals
– Sequel Pro: the best damn MySQL client in existence
– Source Tree: we run our own git repository for source control, and Source Tree is our UI of choice
– iStat Menus: little widgets in your top bar that quickly let you know what your CPU is doing, and apps that are using your network. Funnily enough Bjango makes this, what can I say, Australians are awesome.

As a company we make heavy use of Dropbox, for syncing all our files onto all our machines, as well as occasionally sharing large files with other people.

Finally in terms of software, we tend to write a lot of internal tools and administration areas for ourselves. We tend to shy away from scripts and prefer full-blown web administration areas because they can be used by anyone in the company. It also means we can regularly swap out the internals of how those things work without needing to change a thing. We often use these internal tools as a way of testing new technologies, some of which we end up rolling out into production if they work out. Just the other day Phil re-wrote one of our command line tools in Go, which is quite nifty. I don’t see us taking up Go anytime soon, but we’re firm believers in the right language for the right job. People who use MySQL and PHP and nothing more because “that’s worked for me in the past” honestly don’t know what they are missing.

What would be your advice to someone just getting into development on iOS and Android?

Well the simple, clichéd advice is “Winter is already here”. Meaning that the golden days of throwing any old app into the store and getting noticed are long gone. Even making an absolutely amazing app doesn’t guarantee you any sort success whatsoever. Indie developers are going out of business like nobody’s business and it’s harder than ever to stay afloat. After that amazing back-story you can almost guess my advice, and I’m sorry but it’s corny: if you’re getting into development now I hope you’re doing it for the love and not the money because the money may never come.

What’s next for Shifty Jelly?

People ask us that question a lot, and it reminds of how the press treat Apple: “YES THIS IPAD IS AMAZING, BUT WHAT’S NEXT? ARE YOU STILL INNOVATING? IS ANYONE THERE? YOU ARE DOOMED!” I know that’s not how you were actually asking it, and I do have a penchant for dramatising things, but why does there have to be anything next? If we refined the Pocket Casts and Pocket Weather experiences until they glowed, why would that not be enough? Ha ha I kid, next up we’re going to expand our existing products and introduce a few new products. Unfortunately, I’m not at liberty to tell you anything, because we love us some privacy. Not because we want to protect our precious ideas, but more we don’t want people to know what we’re doing so they don’t get disappointed if we’re late or don’t ship it.