Posts from the ‘Development’ Category

Subscribe

I’m not sure if you noticed, but last week Apple launched iOS 7. It was a big deal. We launched Pocket Casts 4 at the same time, it was also a big deal. Today we launched version 4.1 which includes all the features that didn’t quite make it into 4.0, as well as updates based on your feedback and of course the usual raft of bug fixes. We’re very excited about the future of Pocket Casts and we have some big plans for the future. Today though we’d like to recap how the launch went.

After waking up at 2.30am in Australia to push the release button, we were pleasantly surprised by Apple having picked our app to feature in quite a number of spots.

First and foremost a massive banner in the news category, and also in the ‘Designed for iOS 7’ section:

When we threw out all our old version 3 code, and started a new Xcode project at the beginning of 2013 we spent a lot of time on design and workflow. When Apple announced iOS 7 at WWDC in June, we changed course again. Our aim was always to build a podcast listening app that was easy to use, fitted in perfectly with iOS and looked amazing. Clearly Apple feels we nailed it and we couldn’t think of better approval than that.

Next up the reviews started to roll in, here’s a few quotes we’ve picked out:

“I’ve thoroughly been enjoying Pocket Casts 4, and it’s booted Instacast off of my home screen. I’m in love with the natural iOS 7 design, subtle custom colors, transparencies, and intuitive interface. Plus, the syncing is easy and fast. This is what an iOS 7 podcast client should be, and I’m glad Shifty Jelly made it.”

“I’ve switched to Pocket Casts 4 as my podcast client of choice…Besides design choices and animations, the app’s navigation, sync, automatic downloads, and filters work better for me and for the way I like to listen to podcasts.”

We also rated a mention on The Verge and even a shout out on Reddit, for a dialogue I wrote at 2am. In short thanks to your amazing support, we had our best app launch in the history of Shifty Jelly. We made it into the Top 50 paid apps in the US, and were at #2 in our category as well. As small independent developers with little to no marketing budget, we can’t tell you how great that feels.

For those of you that have followed us for a while though, you’ll know that we’re not going to retire on our amazing launch and take the rest of the year off. We’re already planning future updates for the app as well as some new and innovative things in the world of podcasting that no one else has done before. We’re not ready to talk about that today, but rest assured we still have more things in the pipeline that should blow your collective minds. So strap yourselves in, and enjoy the Shifty Jelly Experience (Patent Pending). Also if you got all the way way here and haven’t bought the app yet, shame on you, go buy it right now on the App Store.

Over the past few months, we’ve been working hard on the biggest update to Pocket Casts for iOS that we’ve ever done. We’re excited to finally be able to announce that Pocket Casts version 4 is almost done, and will be available soon!

Some big features of Pocket Casts 4:

Stunning, redesigned user interface based on iOS 7’s styling.

iPad support, because your iPad needs podcast lovin’ too.

Your subscriptions, playlists and play states can be synced between every iOS & Android device you own. We *love* this feature. And you heard us right, iOS and Android, living together in syncing harmony. That’s syncsess right there!

Smart dynamic episode filters. Want a list of every unplayed, downloaded podcast? Right here. How about a list of video episodes that you haven’t downloaded yet? Easy. Manual playlists are obviously still available for the super picky among you.

Automatic downloads. When a new episode of your favourite show comes out, Pocket Casts can download it automatically for you, without you having to open the app.

There’s a lot more to Pocket Casts 4, but we have to keep some surprises for when it launches 😉

Many of these new features rely on the cool new technologies built into iOS 7. This is why Pocket Casts 4 will be available as a free update for iOS 7 only and will be released to coincide with the launch of iOS 7. If your device can’t run iOS 7, v3 of Pocket Casts will continue to work just fine, and when you do update to a shiny new device, you’ll be able to upgrade your app for free!

We think Pocket Casts is the best way to listen to podcasts. We know you’ll love it and we can’t wait to get it into your hands so you can enjoy it too!

A few people were bemused by our decision to release Pocket Casts 4 first on Android. I suspect a few of them even think we may have lost our marbles. I thought I’d take a few minutes to outline exactly why we did what we did.

Team Size
We’re a small team of only 2 developers and a designer. We realised late last year as we were working on a simultaneous release of Android and iOS that if we were going to have any hope of shipping either of them, we’d really have to choose one to do first. The take-away from this is simple: if we were bigger (say double our current size) we would have just done both.

Historic Sales
Pocket Casts on Android has outsold the iOS version historically at about 5:1. That means for every 1 iOS version we’ve sold, 5 were sold on Android. The Android version also costs $1 more, so we’re making more per transaction as well. The reasons for this are a blog post on their own, but it’s a fact.

Future Sales
On Android there is no native podcasting solution, and we see a massive potential to fill that space. There are other apps out there, but we feel we have what it takes to become the dominant podcasting app on that platform.

Why Not?
Team rivalries should be left on a sports field. There’s no reason not to launch on Android first or iOS first in 2013. Both are massively viable platforms full of users who want to pay for great apps. Anyone who tells you otherwise is wrong. The choice of platform all comes down to where your users are, and which one makes more sense for the kind of app you’re launching. It’s no longer a clear-cut ‘always iOS first’ world.

App Quality
Let’s be honest, 2 years ago Android really sucked. The OS was a mess, the store was a mess, the SDK was a mess and the hardware was a mess. Today all that has changed, and it’s an amazing platform. That said overall the app quality on iOS is still far higher than Android, as developers catch up with all these new changes. There’s a point coming soon when Android will be full of high-quality apps, but there’s a gap in the market right now for small developers like us who are passionate about design to create something a cut above the rest. In short it’s currently easier for a good app to stand out on Android than it is on iOS.

So there you go, a short and sweet explanation of why we did what we did. Once version 4.0 is out on Android (countdown available here), we’ll be working on the iOS one next. We won’t be starting from scratch since a few months of development has already gone into that version, but there’s still a lot to be done. If you’re fascinated by the Android vs iOS development process, there’s a great interview with me available here.

In the top-left corner of every iOS device there is a space for service providers to proudly showcase their branding. Pop a sim into your iDevice and once connected, you’ll notice the name of your service provider appear between your reception bars and network type (•, 3G, LTE, wifi). Once you’ve gotten past the informative value of such branding, the novelty wears off rather quickly. It isn’t uncommon for a carrier to make a mess of their name (YES OPTUS, VodaAU), which can severely uglify your phone -forever-. A fair question to ask is: have you ever forgotten which service provider you’re subscribed to? No, neither have we.

So you’re a full-time independent developer, and you’ve had an app in the store for four years, for which you’ve released regular free updates. Revenue for the app has dried up, because everyone who has ever bought a copy can’t buy it again. You have ongoing costs; servers to run, mouths to feed. You decide it’s time to be ‘greedy’ and ask your customers for more money. This is exactly where we at Shifty Jelly found ourselves with our flagship product ‘Pocket Weather AU’. First released in 2008, it’s been the lifeblood of our company, oustripping the earnings of all our other apps by a large amount. It’s basically keeping the lights on here at the 3 man Shifty Jelly Office.

At this point you have two choices: release new features via an in-app purchase, or create an entirely new app to sell. To us, an in-app purchase was not really feasible because we wanted to start again on the application, hooking it up to a brand new server, use brand new code, write brand new controls and frameworks for it. Offering this update as an in-app purchase would mean trying to ship the old code and old image assets along side the new code and new images. If you’re not a developer, you’ll have to trust us when we tell you this is nigh-on impossible.

So we were left with only one choice: release a paid update, as a brand new app. The problem is Apple don’t give you a way to do this, and if I’m being cynical I’d say they don’t want you to do this. Their goal is to sell iPhones, and I think that deep down they know that if people feel apps are free or cheap and updated forever, Apple will sell more iPhones.

So what do you do? Well here’s what we did, hopefully you can learn from it.

Initial Transition:

We created our new application and submitted that to Apple for approval, setting the release date to the future so it wouldn’t go live in the store until we were ready.

Once it was approved we removed our old app from sale and left things for a few hours. This is because the App Store takes a while for changes like that to propagate.

When we were ready to release the new one, we set the release date to now. Again we didn’t promote it straight away giving it a few hours to propagate through the store. Even when you see it in the store, you still might not be able to download it, we’d recommend 4 hours minimum here. Even after 4 hours a small amount of people still couldn’t download the app, but eventually that sorted itself out.

Now we had to figure out phase 2 of our master plan, how to tell people beyond those who read our blog and follow us on Twitter? In the past it appears like you may have been able to update apps that are not for sale in any country (see this blog post, which has since been updated after the author and I chatted on twitter). Unfortunately this is no longer the case. So let me explain how we found this out, and what other tests we did. In our case we had 2 existing free versions (one for iPad and iPhone) that we could play with (both removed from sale about a week before our new app went live), so here’s what we did:

Created an update for these apps, linking to the new paid version and also telling our customers there was an update.

Released the update to Apple which they approved.

We waited 2 days to see if it became available as an update to people’s phones. 2 days later it still hadn’t.

Then we tried putting the free Apps back in the store (by ticking the countries in iTunes Connect) and bam, an hour later they became available as updates.

To test another theory, we un-ticked the countries again the next day, and an hour later the update once again disappeared.

The simple conclusion: The ONLY way to update apps not for sale in the App Store, is to put them back into the App Store until everyone that wants to update to them has. The one minor exception to this is that when a customer tries to re-download an app from their ‘Purchased’ section, they will get the most up to date version, regardless of whether you’ve put it back in the store or not. It should be noted that the ‘Purchased’ section of the App Store is horribly broken. The search feature in it simply doesn’t work. If you’ve bought 500 apps like I have, scrolling through it while it lags, jitters, and keeps jumping back to the top will make you want to poke your eyes out.

Update: A helpful developer on Twitter pointed out that you can actually still link to apps in the purchased section, like this (this confused us at first, because it only works on the device, not on a desktop):

So yes, paid updates are possible, but you’ll have to work hard to get it to happen, and there’s no such thing as a perfect transition. As a developer I can’t tell you how much I’d like Apple to support this, because if they did it would be better for us and users alike. Imagine having your favourite app release a massive update, offer you an upgrade price, and you having the option to accept or decline. Imagine if you decline still getting bug fixes for your current app, and one day rewarding the developer by buying the app.

There’s no way to release a paid update on the iOS App Store, you have to release a new app.

You can’t pull the old app from the store, and provide future updates for it. If you want to update it, the old version must also be in the store, and remain in the store.

Apple will probably never support this, and it’s time as developers we stopped this crazy ‘race to the bottom free updates for ever’ mentality, and start restoring the notion that developers also need to get paid, and there’s no inherent weirdness or shame in that.

Pocket Weather Au, our very first serious app in the Apple App Store was released in September of 2008. Since then it’s been an amazing journey for us and we’re really glad that you came along for the ride. We went straight to the #1 spot in the store, and stayed there for well over 3 weeks. The thank you and suggestions have flooded our inbox ever since. Overall we couldn’t be more proud of what we built back then, and the many, many updates we’ve issued for it since (25 updates, over 4 years: view graphical history).

It’s an old image, sepia doesn’t lie.

The astute among you will note that in January of this year the updates stopped. That was when we decided, after 4 years and so much hard work that poor old Pocket Weather Au was starting to look a bit tired. We have learnt an amazing amount since 2008, about development, weather and had so many great suggestions from you, our fans and customers.

Now we know some of you well, and instead of reading the rest you’re just looking for the buy link, HERE YOU GO!

Ok, now that 95% of you have disappeared, the rest of you can read all about the new version here, on our website. There’s also a handy review by the fine people of MacTalk here.

Finally, we’d like to answer a few common questions that our current customers will no doubt have:

Is this a free update?

No, it’s a brand new app that costs $1.99 and runs on your iPhone and iPad. We’ve released 4 years worth of free updates to the previous version, and when making such a drastic change we decided to build a brand new application. One of the main reasons for this was to not force an entirely new app onto people who might not want it.

I’ve been waiting for ages to give you guys more money, why only $1.99?

We get offers all the time from people wanting to donate to us, or get us to charge more for our applications. We feel that for now $1.99 is fair price for an app you use everyday, and we don’t take additional donations. If you really feel strongly about giving us more money, convince a friend or family member to buy our application instead 🙂

I like the current version, do I have to update?

No. We intend to keep the weather servers that these are connected to running for at least another year, probably much longer. We have no way to update the app itself though, so should it break in future versions of iOS then there’s not a lot we can do about that.

I bought your app just recently…

We removed our old app for sale before posting this one, so there should be very, very few of you that fall into this category. If however you did buy our app within the last few weeks, and feel like you’ve been wronged, please email us, we’ll look after you 🙂

I have an Android phone, don’t you guys love us?

Of course we do, Pocket Weather Australia 3 is also available from Google Play here.

We are very proud and excited here in the office today, and we hope you are too. Our goal (we always set one of these before releasing a new app) is to reach the #1 spot in the App Store. We’re not bothered by whether that’s for 2 seconds or 2 years…we just want to show Apple, Australia and everyone that apps still matter, and it’s not all about games! So come on Australia, get into the Olympic spirit, and let’s get Pocket Weather Australia to that #1 gold medal winning position!

People often ask us “Do you do client work? I have this great idea!”. We literally get that several times a week. The answer is yes, but we are not interested in your idea. We are looking for people who don’t just have an idea, they have a business plan, they have their budget sorted and they have the passion required to transform an idea (the first 1% of the work required) into a product (the other 99%). People we can form a partnership with to bring something truly innovative and useful to the market.

So we’re proud to announce our first such collaboration for this year, with just such a client: Rebecca from Rustic Evolutions (www.rusticevolutions.com.au). In September of 2011, we received this email in our inbox:

I am interested in having an iPad app developed for use by farmers as an in-paddock record keeping tool. I would like to work with a South Australian based company to develop this and found your website from a google search. Can you please let me know what information you would require to provide a quote and timeframe for developing an app?

The best thing about this email? Rebecca didn’t ask us to sign an NDA before uttering a word about her idea, but instead gave us a really high level explanation about what she wanted. People who believe that ideas are incredibly valuable, and can be stolen in seconds are a topic for another day (hint: they are not and they can not). So long story short Rebecca came in, we talked about her idea, and then laid out a roadmap for how to bring her idea to the store. It was clear from the beginning that Rebecca had already put a lot of thought into her app, and the business around it. She had mockups of screens, notes about ideas, and questions all ready to go.

The takeaway? If you want to bring an app to market, you have to be prepared to put in the hard work. To research, to think things through, to organise the finances required. Then you have to find yourself a team of developers that you’re comfortable working with, that want to see you succeed and that, most importantly, you trust. You also have to be a bit flexible, the more Non-Disclosure Agreements and restrictive contracts you sign, the worse the outcome is going to be.

The clients thoughts on the project?

I just want to say thank you so so much for all your enthusiasm, hard work and assistance in getting this app into the market. Whenever I tell people I’m getting an app made they always ask how the hell do you do that. My answer is always the same – I googled app developers and very wisely chose the coolest and most skilled boys in the business. Finding you was a dream come true and the whole process has been stress free and an absolute pleasure, something that is very rare for a start-up independent business I’m sure you will agree.

So Rebecca: we really do wish you all the best with your app and hope that you get the success you most definitely deserve. Working with you was a pleasure, and we’re really proud of what we have built together. If anyone out there knows of any farmers that would be interested in what Rebecca and her company have to offer, be sure to point them to her Rustic Evolutions home page, and her brand spanking new EvoCrop app.

And finally, we can’t help but leave you with the picture Rebecca sent us of herself and her husband, trialling the app in the field:

Welcome to 2012, and goodbye to January…where on earth does the time go! This is the first year we’ve sat down and actually planned the year ahead. It’s been quite an exciting task and today we thought we’d share a little bit of that planning process with you. Nothing is guaranteed of course, we’re not exactly renowned for sticking to deadlines, or plans, so we’ll see how it goes.

That’s right, we’ve been working on a brand new Mac app. No details yet, we’ll just let you marvel mysteriously.

But of course it wouldn’t be the Official Year of Shiny Things (why yes, I did just make that up, thanks for asking) if there wasn’t more than just those two things, and there certainly is. We plan on making some very big changes to our existing iOS apps, as well as our Android apps. This is the first year we’re going to turn our Android development into a first class experience. What we’ll be striving for is an equal (or better!) app experience on our Android apps in comparison to our iOS ones.

Suffice it to say we’re very excited about 2012, and if you own an iPhone, iPod Touch, iPad, Android Phone, Android Tablet or a Mac you should be too! If on the other hand you own only Windows products, then perhaps it’s time to evaluate where you are in life, and what on earth you’re doing reading our blog…

Over 3 months ago we took a long, hard look at Pocket Casts. It was by far our favourite app, yet it was selling really badly. So we had a decision to make: let it go and move on to something else, or double down and work on making it better. We loved it too much to let it go, I for one use it twice a day, if not more. So we made a decision that’s not easy as a small developer with very tight cash flow…we decided to spend whatever it took on getting the app right. ‘Whatever it took’ turned out to be 3 months. That’s a huge risk, but we think it was worth it.

New Look, New Layout, New Flow

The first thing you’ll notice when you open version 3.0 is that everything has changed. The look, the feel, the flow of the entire app. There are many reasons for this, but the main one for us was always about making the app more usable and more friendly. For long time users of our application, we realise this can be quite jarring at first but give it a few days we think you’ll love it. We can’t explain every single change we made, but we’d like to cover a few.

When we first created Pocket Casts, we came up with the concept of the updates tab. New episodes stayed there, until you either downloaded or deleted them. We loved this, but it confused people to no end. Some people don’t like deleting, others were confused when after a podcast was downloaded, it would disappear from the updates tab. Where did it go, what did I do…they didn’t know. So the concept of ‘Recent’ and the Episodes page was born:

The way it works now is that episodes that you’re phone has found out about recently, appear in the ‘recent’ page. Downloading them leaves them there, but also places them in the ‘downloaded’ page (which also flashes briefly when you download something. This makes it clearer where your podcasts are, and how to get to them. Another new feature is that the app will now download 2 podcasts at once, which is handy when one podcast authors site is screamingly fast, while the other is slow.

Cloud Power! (Notifications, Speed, Data Use)

Pocket Casts is the only podcast application for iOS (as far as we know) that does all its podcast processing on a server. What this means is that when your phone needs to see what’s new, instead of downloading individual podcast feeds (which can be very large), it just calls our server once “hey what’s new” it says. “Here are 3 episodes that are new since the last time you checked” says our server. That’s about 10kb’s worth of data, vs potentially many megabytes worth. Also worth noting is it’s a lot faster.

Talk is cheap though. Let’s compare Pocket Casts with the highest ranking of our competitors. I installed both apps cleanly, and imported my OPML file with the 27 podcasts that I subscribe to. I let both do their first refresh/setup without timing. Next I quit both apps, and performed a refresh in each one in turn, measuring the amount of data used, and the time taken. The results might surprise you:

Pocket Casts took 1 second to refresh all 27 of my podcasts. Our competitor took almost 2 minutes (105 seconds). That’s about 70x longer. It’s worth noting here that I could have been really mean and added 100 podcasts. Pocket Casts would still do those in 1 second, while the competing app (without a server) could take up to 10 minutes. It’s not rocket science, their app has to go off and look at every single RSS feed for every single podcast and see what’s new. That’s where our server comes in, it refreshes podcast feeds at a rate of about one million per day! All this so that your phone doesn’t have to.

Time aside, I decided to monitor the data use. To refresh 27 podcasts Pocket Casts sends 5kb to our server, and receives 3kb, for a total of 8kb. That’s tiny. The competing app sent 69kb and received 2252kb for a total of 2321kb (2.3 megabytes). In this case the competing app uses 290x more data than Pocket Casts. Note that we’re not deriding our competitor in any way, you can’t do any better than that, since you have to parse the feeds from the phone. That’s why we designed our app to have a server, because we wanted fast refreshes with minimal data use. And not just any old server, we currently run 11 high-end servers, that plow through many, many gigabytes worth of data each and every day. Yes, we do take this very, very seriously.

Speed, and bandwidth aside, having a server also adds one more benefit, the ability to do push notifications. Something we’ve expanded quite a lot in the new version:

You can now opt to receive text notifications, along with a sound when new podcasts are released. You can even turn this on or off per podcast, if you like some more than others. What it means is that you’re always notified about what’s new, even if you have the app closed.

Now Playing

The old now playing screen was ok, but there were a few things that bothered us. Firstly the progress bar was too close to the top of the screen, which didn’t work well with iOS 5 and its new notification pull down. Secondly the controls were a bit small, and felt cramped down the bottom. Lastly there didn’t seem to be any consistency as to how we placed these controls on the page. In the new version we’ve fixed all that, while retaining the ability to see all the podcast artwork by tapping in the middle of the screen. The show notes are now much more accessible as well, just swipe to the right to see them. We also download the show notes when the podcast is downloaded, so no more having to have an internet connection to read them. On the list screens, you can now see exactly where you are up to in each podcast (and it updates if the podcast is playing) as well as being able to pause and play right from those screens. Lastly (and this is one of our favourite features) you can now start playing a podcast while it’s downloading.

Storage

If you listen to a lot of podcasts like we do, then you can quickly become overwhelmed with having to manage them. Deleting old ones can especially turn into a chore. With the new version of Pocket Casts, we now let you configure how many old episodes you’d like to keep. You can do this for all your podcasts, as well as each one individually. So in my case I tell it to keep the last 3 Tech News Todays (a daily show), but only the last This Week In Tech (a weekly show). You can also ‘star’ an episode if you want to make sure it never gets automatically deleted by the app.

Podcast Settings

New to Pocket Casts v3.0 is the Podcast Settings page. We realised fairly early on that some podcasts have really terrible album artwork. Others have long and cumbersome names. Well worry about those things no longer:

Now you can change the name of a podcast, or its artwork at any time. We may have accidentally also created a way to listen to more…how shall we say…’risque’ podcasts with this feature, but that wasn’t our intention. Honest.

Sharing

Another great new feature of Pocket Casts v3.0 is the ability to share your podcasts, episodes, or even the position in an episode with other people. This means if you’re really liking a podcast, or an episode, you can recommend it to a friend in a few simple taps. When you tap on an email, tweet or website with this sharing link in it, you can open that straight from your phone, and it will launch Pocket Casts, and let you choose if you’d like to listen/subscribe. When we release version 3.1 for Android, you’ll even be able to share with your friends on the other side of the fence.

The Small Things

We could go on for hours (quite literally) about all the things we’ve changed, but we’ll leave you with a few extra things:

You can stop an episode from playing (or streaming) by long pressing on the now playing tab icon.

We now have podcast chapter support, swipe to the left to see all the chapters, tap on one to play it

You can now export your subscriptions to an OPML file, for backup and to use in other podcasting apps

You can now turn our giant skip buttons off, handy for people that want to listen to advertising

You can now check out the podcast description, and visit the podcasts website from the podcast page

You can tap on the first podcasting tab to switch from the tile view to the episode view

You can now add videos into your playlist as well. By default they’ll play as audio, but one tap and you can be watching the video instead.

Don’t tell me you made it to the end, and are still reading? Go grab the app already. Tell a friend. Heck yell it out from the rooftops if you have to:

Which begs the obvious question: Have we gone mad, two Android apps in the space of a month? Have we abandoned iOS for greener pastures? The simple answer to which would be: no, we’ve always been mad, but we’re still committed to iOS development.

The longer answer is that currently we have two programmers at Shifty Jelly: Philip and Russell. Out of those two only one coded all our iOS apps, Russell. Philip focussed on the server side of things, which pretty much all of our apps rely on, and which has always been a full time job on it’s own. Since resigning from our full time jobs in September of 2010 Philip has been optimising the heck out of our servers, to ensure that each day he has less and less maintenance that he has to do on them. This frees him up to do some front-end development, which is something he’s always wanted to do. Combine that with his 10 years of experience in Java, and Androids rise in the mobile world, and you have a pretty good match. If you’ll endulge us a second, let’s rephrase it as a computer hardware analogy: in essence we’re a dual core machine, capable of working on iOS apps on one core, and Android apps on the other, while taking advantage of our design co-processor across both.

In many ways the Android side of things is still an experiment, a way of putting a toe into the water to see what happens. So far we’re pleased with the results, but it’s early days. We’re going to be writing a series of blog posts over the next few weeks about the experience, should be quite interesting!

So what can you expect from the Shifties over the next few months? Here’s our current plan:

New version of Pocket Weather AU for iPhone (hopefully released to Apple today)

New versions of Pocket Casts for iOS and Android (hint: we’re building a platform here, not a podcasting app as such…there’s a LOT more in the pipeline for Pocket Casts)

New version of Pocket Weather AU HD for iPad

New versions of our world weather apps

New versions of Pocket Weather AU for Android to slowly build up the feature list to match the iPhones

What, that’s not enough for you? 😉

So let’s put aside the iPhone vs Android war, it’s pointless, both platforms have their merits and neither one is really superior to the other. It all depends on your preference, and having a choice is a good thing as far as we’re concerned. But more importantly, you can enjoy the benefits of Shifty Jelly on both…now isn’t that a load off your minds? Now go be good little boys and girls and buy up all our apps so we can eat for another week! No really…I’m hungry…