One Of Us Shipped Something
Casey:
Let me start by saying that I have started work on the ShowBot title ordering, but it is not done.
Casey:
And I apologize for that.
John:
There was a pull request.
John:
Someone sent you the code, the dirty desert.
Casey:
I know.
Casey:
But I don't know if... I've only glanced at it, but I'm a little opinionated about how I want it done.
Casey:
So I'm going to give it the college try.
Marco:
One of us shipped something.
Oh.
Marco:
You're so mean to me.
Casey:
I'm going to give it the college try and see if I can do it the way I want to do it.
Casey:
And if I can't do it in basically the one time I sit down to do it, then I'll take the pull request and walk away.
John:
How about this alternate strategy?
John:
Accept the pull request and let us use that while you work on your solution.
John:
Then revert that integration and put in your change.
Casey:
To be honest, that's probably the better approach, but that's all right.
Casey:
All right, so nothing really happened this week, so let's start with follow-up.
Marco:
Apparently some stuff we've said in the past has been wrong.
Casey:
Really?
Marco:
And we'd like to talk now for a half hour to explain why it was wrong.
Casey:
All right.
Marco:
John?
John:
This first item, I didn't put this first one in there.
John:
Who put the first item in?
Casey:
That might have been me, actually.
Casey:
We got a lot of feedback that when we were talking about what would cause someone to switch to Android from an iPhone...
Casey:
And we got a piece of feedback that we talked about an episode or two ago that said, hey, you know, a lot of these new versions of iOS can kind of slow down your phone and make the response time to everything a lot less quick.
Casey:
And that's maybe why people switch.
Casey:
And so somebody wrote in, I don't have who it was, but somebody wrote in, many people have noted the perceived slowdown on older phones could likely be
Casey:
Purchasing an old phone, for example, buying a 4S today, which is still on store.apple.com.
Casey:
Actually, I think I wrote that.
Casey:
The point being that you can still get a 4S today.
Casey:
And iOS 8 is presumably coming out in September and probably isn't going to run too well on a 4S because I believe it is supported.
Casey:
Is that right?
Marco:
The 4S is supported on 8.
Marco:
That's correct.
Marco:
So all the A5 devices are supported on 8.
Marco:
Which is interesting because there's a lot of them.
Marco:
Like if they cut off the A5 devices, they cut off the original iPad mini, which is still for sale.
Casey:
Exactly.
Casey:
So there's a lot of older devices being sold that are still going to be supported.
Casey:
And so that's something to consider and something that would perhaps drive you away from Apple.
Casey:
Because here you get this perhaps not amazing experience.
Casey:
You know, what if this was your first iPhone or first smartphone?
Casey:
Yeah.
Casey:
And you buy a 4S today, and it runs all right with iOS 7.
Casey:
And then in a couple of months, you see that iOS 8 is available, you go and update it, and all of a sudden it runs like crap.
Casey:
I mean, that's no bueno.
Casey:
So that's just something to consider.
John:
We talked about that on past shows.
John:
We were talking about why the heck the iPad 2 was around so long.
John:
They finally stopped selling that, right?
Casey:
I don't know.
Casey:
You're probably right.
John:
Anyway, yeah, we've had that same complaint.
John:
And another one of my hobby horses is not putting enough RAM in things, especially when you can't upgrade it.
John:
It's short-sighted from a sort of customer satisfaction and brand satisfaction level to skimp on RAM, even though it helps your margins, because...
John:
Some people will say, well, I'm just going to get it with the minimum.
John:
And if the minimum is not a reasonable amount, like if you're just setting someone up for it, it's much, much better now in the days of SSDs.
John:
But when it was spinning disks, it was just torture to get a Mac with the minimum amount of RAM and then use it for several years.
John:
And by the end of its lifetime, the OS and all the apps need way more RAM.
John:
And the thing was always swapping.
John:
And especially it was like a 5,400 RPM laptop drive.
John:
And it was just...
John:
It was bad.
John:
Yeah, when we talked about this, the whole having an upgrade that slows down your thing, I don't think any of us thought that wasn't a phenomenon that happens.
John:
I mean, I think we've all actually owned devices that we've either decided not to upgrade to iOS 7 or regretted upgrading to iOS 7.
John:
And all the way back, I mean, I remember on one of my original iPod Touches, I think,
John:
I did want to upgrade to four or something, and then eventually I gave in and regretted it.
John:
Like, this is a thing that happens if you keep devices long enough.
John:
Actually, I did add two tiny notes to this bit of follow-up here, I guess.
John:
The first one is that if you buy a device, if Apple sells you something that they probably shouldn't still be selling, like you get an iPad 2, and when it was so clearly long in the tooth, or you end up with a current non-retin iPad mini, or, you know,
John:
poor marco's mom buying the iphone 4 when she shouldn't have been uh like that's apple's fault for selling those things and and the customer gets it and they they get a bad experience sometimes there's just a bad experience right out of the box right but the the the idea that uh the solution to that is to try another vendor in some sense makes sense if you're if you know you don't know anything about apple and its products whatever you bought an apple thing it sucks you try a different one right but for tech savvy people uh
John:
I would imagine that they could have a similar reaction, but for a different reason.
John:
Tech savvy people are going to do it for the airline reason, where it's vindictive, where you're like, well, I bought this thing.
John:
I was satisfied with it.
John:
I used it for a while.
John:
I upgraded it.
John:
Apple shouldn't have even allowed it to be upgraded, so that's Apple's fault.
John:
I hate Apple now.
John:
My solution is for my next phone, for my next tablet or whatever, I'm going to buy from a different vendor.
John:
And that can very quickly turn into, you know, I just hate Apple not buying their stuff anymore, when in reality, the optimal solution for that person who maybe used and enjoyed Apple products for a while is the next time they buy, you know, buy a higher-end Apple product.
John:
Spend more money.
John:
I'm sure Apple would love this.
John:
Spend more money on Apple products and actually it'll work well.
John:
Again, it's Apple's fault for selling these old devices too long.
John:
It's Apple's fault for allowing the upgrades to go on them when they don't perform well.
John:
Arguably, it's Apple's fault that the software doesn't perform well, but...
John:
Like, if, for example, I had a relative who had that experience and I knew that they were satisfied with Apple devices in general, I wouldn't recommend, oh, well, for your next one, you should get an Android phone.
John:
If I think that they would not get a better experience out of that.
John:
Yes, they get the satisfaction of saying, well, now I'm not going to buy Apple stuff anymore.
John:
But it's like, really, you'd be super satisfied with an iPhone 5S for your next phone.
John:
Right.
John:
So if you say you had a 4S, you upgraded to get slow.
Yeah.
John:
If you really loved your iPhone for all of its life, except for this last part, which again, totally Apple's fault for putting them in this situation and everything, it's like cutting off your nose to spite your face by saying, well, the next one I'm going to get is an Android phone, because that probably won't be a satisfactory experience, especially if someone is used to iOS or whatever.
John:
So that's one angle on this, the whole idea of just, I'm angry, I'm going to get revenge at Apple, and I'm going to do something that's technically not really in my best interest.
John:
And by the way, this is why
John:
Again, everyone loves to spend money on Apple.
John:
So this is why I recommend people, don't get an Apple device if the only one you can afford is the cheapest one they sell.
John:
Because the cheapest one they sell always sucks.
John:
That's true of, you know, you get the $1,000 iMac that's like 15% less expensive and 50% slower.
John:
If you can't get the expensive one, you actually are probably better off with something else.
John:
And then the other point I had on this topic is,
John:
At a certain point, hardware and software sort of catches up to the baseline of what people want to do with the OS.
John:
If you think about the early history of OS X, where it was just super slow for just years at a time, just years and years.
John:
It felt gross.
John:
It felt like molasses.
John:
It was really slow.
John:
It was compositing on the CPU.
John:
Even when they got the compositing onto the GPU, the drawing and the window resizing and all the event handling, it was just slow.
John:
It was crappy.
John:
At a certain point, the cheapest Mac you could buy could pull down Windows fast, could scroll fast.
John:
Like these days, no matter what Mac you buy, buy the least expensive new Mac from Apple, it will scroll a page.
John:
And that sounds stupid, but we went through years where it couldn't scroll and where everything was just super slow.
John:
I think iOS devices are very close to getting to the point where no matter what piece of crap you buy from Apple, you'll be able to scroll through a web page OK.
John:
It'll load a web page OK.
John:
No OS upgrade will screw them in the way that iOS 8 is probably able to screw the lowest supported device today.
John:
We're getting very close to that tipping point where...
John:
the hardware is good enough for the basics to work.
John:
We're not there yet, though.
John:
And I think this is a painful period.
John:
And in the beginning of iOS, like, forget it.
John:
You know, the iOS 1 was like, once the 3G and especially the 3GS came out, you didn't even want to look at those old devices anymore.
John:
You could not go back.
John:
But you do eventually hit some minimum threshold of, like,
John:
On the Mac, menus work, window resizing works, scrolling works.
John:
You can launch applications without waiting a year.
John:
There's still tons of other things that you can do that will make your thing feel slow or whatever, but we just need the basics to work, and we're not quite there yet.
John:
So I'm hoping this time period where Apple keeps doing the strategy of selling devices for a long time, giving them OS upgrades for a long time,
John:
will eventually work out for them when the cheapest device they're selling meets the minimum threshold required for just the basics to not be awful.
Marco:
I think certain generations age better than others, too.
Marco:
Like, in the case of the iOS devices, where you'll have basically the old models being kept around for, you know, two years or so.
Marco:
Certain chips and models have a lot more headroom in them than others.
Marco:
And so, like, you know, the original iPad was not kept around because it did not have a lot of headroom.
Marco:
It had way too little RAM.
Marco:
The...
Marco:
a5 with the ipad 2 at the time had tons of headroom which is why they're still selling a5 devices today um you know certain you know the original ipad mini you know for an ipad these days it's kind of it's kind of sluggish but it still works so that's why they can still sell it um but you know running ios 7 on the iphone 4 was a bad move and uh
Marco:
And I think the A6 and A7, especially the A7, really has a lot of headroom in it.
Marco:
So like the current 5C is the A6.
Marco:
I don't know how long they're going to keep selling A6 devices.
Marco:
There aren't any iPads with it anymore.
Marco:
But I would guess that the 5C internals from the iPhone 5 with the A6, I would guess those stick around for another couple of years.
Marco:
And that really won't be that bad.
John:
the RAM problem is going to be an issue for even for the a7 device.
John:
It's not like the CPU is going to get bad, but again, Apple's been so stingy with RAM.
John:
They've gone multiple generations without bumping the, you know, the RAM specs and these things.
John:
And that is going to hurt it much sooner than like, you know, you're not going to top out the a7 doing basic stuff.
John:
It's fine.
John:
The a7 is completely adequate for, you know, sliding views back and forth, scrolling them, responding to tap events, doing, doing all the basic things you're going to need that we're just talking about.
John:
But yeah,
John:
uh if applications start using more memory because the application has become more sophisticated that a7 is not going to save you if everything keeps getting swapped out and you can't fit things in ram you play one game and it boots out all your safari tabs and it's all sorts of you know so that's that's why i say we're getting close to to the threshold but we're not there yet so i would think even even the most expensive fanciest ios device you can get today has still not meet the met the minimum threshold of you can keep that device for like five years and it will still be basically competent whereas
John:
i mean i'm sitting next to a mac right now granted it's the top end one but again if you if you bought a top end mac in 2008 it still runs os 10 perfectly well i'm running a you know a current version of photoshop i run lots of applications granted i upgraded the ram and all that stuff that's not true today if you if you buy a top end iphone today in uh in a couple years it will not be up to the task of doing running all the applications that uh
John:
Even just the basics of just being able to... I feel like, oh, every time I launch this, this other thing, it gets booted out of memory and I can't even run this game because it requires more RAM this thing has.
Marco:
Well, that's something that... Well, first of all, real-time follow-up, I was wrong.
Marco:
They are still selling the iPad 4, which has the A6 CPU.
Marco:
It's an A6X, but it's the same CPU.
Marco:
So, my mistake.
Marco:
Also, I think...
Marco:
You're right that high-end Macs can last longer, but also don't forget, you're talking about a Mac Pro where almost everything's upgradable.
Marco:
And modern Macs, not only are most Macs sold not Mac Pros, but modern Macs don't even have a lot of upgradable parts anymore.
Marco:
It used to be if you bought a MacBook or a MacBook Pro three years ago, five years ago, you could upgrade the RAM and hard drive over time.
Marco:
You could maybe swap out the old spinning disk for the SSD and get another couple of good years out of it.
Marco:
You can max out the RAM.
Casey:
Which is exactly what I did
Marco:
right a lot of people do that it's a great idea to do that um especially now that ssds are so cheap but that you know the devices we buy today because they are so not upgradable um you know almost every mac that's sold now doesn't have replaceable ram anymore that's what i'm saying but if you buy a top-end retina macbook pro today everything's sealed up can't upgrade anything i think that machine will be fine for the basics in five years
John:
yeah but i would i would say you know if you're if you're specking out a macbook pro uh i would say get the most ram you can afford up front that because the ram will make the biggest difference over time with how well it ages yeah someone just asked me on twitter recently if they should i forget which machine they were specking out but should i take the cpu upgrade for to an i7 or should i take the extra ram and it's a difficult choice but i had to go with the ram because again like yep you know it
John:
If things take a little bit longer, fine, but RAM is like capability.
John:
It's speed versus capability.
John:
Do you want to be able to run these two programs at the same time without swapping, or do you want these programs to run 15% faster?
John:
And being able, capability is more important than speed.
Marco:
Right, and the difference between 8 and 16 gigs of RAM, say, or especially, is there anything still with 4 gigs of RAM in the lineup, maybe the low-end MacBooks?
Marco:
But the difference between the base amount of RAM and twice as much of that is a much bigger difference usually than the CPU choices you have, where for the same price of doubling the RAM, you might get an extra 5% CPU performance.
Marco:
It isn't a big jump on the CPU for the money.
John:
It used to be better, but these days, yeah, you don't get much for your extra CPU money.
Marco:
Exactly.
Marco:
And, you know, going back to the iOS devices, I think this is why you're right to focus on RAM, because that is a limiting factor so often.
Marco:
Like, that was definitely the case with the iPad one.
Marco:
And feedback from the chat, yeah, tons of stuff with four gigs of RAM still coming in stock, some of the low end stuff.
Yeah.
John:
I was going to make a snarky comment, but I'm sure Apple's still selling stuff with four gig, but I wouldn't have actually believed that this list is true, so I'm now even more depressed.
Marco:
We are sponsored this week once again by our friend Matt Alexander and his company, Need.
Marco:
Need is a refined retailer and lifestyle magazine for men.
Marco:
Each month, Need curates and sells a limited quantity of exclusive products from the world's top men's brands.
Marco:
These collections are presented in the form of a monthly editorial built around a certain theme and are shot by local independent photographers.
Marco:
Beyond clothing, which they have a lot of really nice clothing, but beyond clothing, NEED also sells coffee, literature, furniture, and so forth.
Marco:
So you can tell this is written by a British person because he uses the phrase and so forth in the script.
Marco:
Soon, they'll localize to certain cities around the world, the first of which will be London.
Marco:
need just launched volume 8 assembly it features some of the best products for evenings with friends hosting parties and so forth see look again very british uh their favorites this month are the stewart throw uh which matt tells me throw means blanket i guess but it's fancier if you call it a throw it could it all isn't that also a pillow is couldn't there be a throw pillow that that exists right i think so john you're domestic is that right
Marco:
you're asking me about the terms for furniture items from a british ad that's correct not my area of expertise okay well if you want it to become your area of expertise go to need so their their favorites are the stewart throw which might mean a blanket the schwood sunglasses that has to be something cool and the classic oxford watch see that's i wish i could have a british accent because i i feel like saying the classic oxford watch would be so much cooler if i had a british accent
Marco:
that's true and it is a damn fine looking watch it really is way better than all the smart watches that our industry is coming up with these days all right so uh there's also a special offer for atp listeners um anyone who places an order with need and was sent from atp send an email to hello at need edition.com with the subject line overcast trousers
Marco:
Once again, that is to send an email to hello at neededition.com.
Marco:
Subject line, overcast trousers.
Casey:
And to be clear, that's need edition like a newspaper edition, not a-edition like mathematics.
Marco:
Maths, if you're British.
Marco:
Correct.
Marco:
It's maths.
Marco:
So yeah, no, no, it's edition, E-D-I, that kind of edition.
Marco:
Neededition.com.
Marco:
Subject line, overcast trousers.
Marco:
Anyway, they will throw in a bunch of extras with those orders.
Marco:
So, you know, things like magazines, field notes, socks, scarves.
Marco:
See, what I've learned from Need is that a scarf is not only something you should wear in the wintertime when it's freezing.
Marco:
You can also wear them when it's less freezing as a fashionable item to improve your fashion score.
Marco:
so anyway uh they will and then also if you do that you will also be put on a list to get 25 off your next order so go to need edition with an e not an a need edition.com and uh once again email them after you place your order at hello at need edition.com subject line overcast trousers to get all sorts of cool stuff and a discount on your next order
Marco:
thanks a lot to need once again uh they they can really show you how to be much more fashionable and cool than i could ever possibly explain to you because i am not fashionable or cool however i've had some things from need and they make me look much more fashionable and cool than i really am
Marco:
well done no thanks to uh matt alexander and the need crew that that's extremely cool so i got red shoelaces from them that was amazing it turns out if you if you take a regular pair of shoes and you put red shoelaces in them they become fashionable shoes
Casey:
We have some more follow-up from Melissa Savage, who is the wife of one of the co-hosts of the Mobile Couch podcast.
Casey:
And she actually has her own podcast, which I don't remember what it is.
Casey:
So I'm a terrible person.
Marco:
Very helpful.
Casey:
Yeah, thank you.
Casey:
She wrote in to say, I thought I'd just drop you a note about screen size because it illustrates why it's important to have more women in tech.
Casey:
We are on average smaller than men, meaning our reach is not so large.
Casey:
Despite what you say about getting over the bigger screen within a week, the iPhone 5 annoys me daily because I can't quite stretch my right thumb to the left corner, sight of 1001 key functions for most apps.
Casey:
This is where, of course, the back button is.
Casey:
So she goes on to say, not only this, but women's clothes are almost almost never have pockets or when they do, they are crappy tiny ones.
Casey:
The iPhone 5 doesn't fit properly into any of my jeans pockets.
Casey:
Modern purses have phone slots, but these are not large, maybe four inches by a half an inch.
Casey:
So, real-time follow-up, by the way, her podcast is Silver Screen Queens.
Casey:
Anyway, the point being that we were lamenting the fact that our jeans pockets, or if you're Matt Alexander, our trouser pockets, are not big enough.
Marco:
Wait, are those the same things?
Marco:
I thought trousers were like khakis.
Marco:
Or are trousers all pants if you're a British person?
Casey:
I thought they were all pants.
Marco:
Don't say pants to a British person.
Casey:
Well, yeah, I know.
Casey:
I thought they were all the things that we put over our underwear.
Marco:
We'll have to get some clarification with Matt Alexander on the underwear hierarchy.
John:
We need one of those CPG Gray videos to show the hierarchy of the lower body of men.
Marco:
So a random stranger in the chat room with no credibility is saying that trousers are all pants.
Casey:
And by pants, you mean not underwear?
Casey:
Yeah, that's a good question.
Marco:
This is very confusing.
Marco:
Why did the British take our language and mess it up so badly?
Casey:
Seriously?
Casey:
They ruin everything.
Casey:
So yeah, so to come sort of back to point, the idea is that here it is, we're lamenting the fact that our trouser slash jeans pockets are not big enough.
Casey:
And we actually have pockets that are designed to fit things.
Casey:
Whereas women don't often have pockets at all.
Casey:
And occasionally have when they do have pockets, they're tiny.
Casey:
And that is something that quite frankly, I did not even consider.
John:
Well, not just the I mean, there's two points here.
John:
One is the clothing thing.
John:
And the second is small hands and reaching the reaching the corners of the screen.
John:
And, you know, even on when the you know, when the iPhone, when the iOS devices got taller, it was a little bit harder to reach over there.
John:
But here's the thing about the women in small hands and reach issue.
John:
When I see people out on the street with comically large phones, it seems to be most frequently women with comically large phones.
John:
And I don't know why that is.
John:
You would think if they, on average, have smaller hands, they would favor smaller phones.
John:
That is not what I see.
John:
I see, I mean, at the very least, it's equal.
John:
But my impression is that you are more likely to see just a really big phone being
John:
In use by a woman than a man.
John:
I don't know if that, does that match your experiences?
John:
No.
Casey:
Oh, really?
Casey:
See, I have seen only a handful of comically large phones, but the first one that I saw amongst my peer group was a dear friend of mine who is extremely petite, has a just ridiculously large phone.
Casey:
To me, it looks like an iPad mini.
Marco:
See, for me, I think, first of all, the smaller hands and reach issue is not just a women's issue.
Marco:
My hands are kind of medium-sized, and when Apple increased the screen size with the iPhone 5, I had changed the grip I had on the phone.
Marco:
I used to hold it a certain way with all the old size, and then I had to kind of chook up a little bit on the phone, like in t-ball terms, because that was the last time I played sports.
Marco:
I had to choke up a little bit to get a better reach when the five came out.
Marco:
And there's still certain things you got to kind of hold it back a little bit in your hand.
Marco:
I had to adjust the way I even touch it to hit certain corners.
Marco:
And so I don't think it's necessarily a men and women issue.
Marco:
I think it's just... I mean, there's already...
Marco:
Even within, you know, within both genders, there's a pretty big range of hand sizes.
Marco:
And I think a lot of, like iOS has, with 7 especially, when they added the edge swipe gesture to go back and stuff like that.
Marco:
Like they're making the interface more like screen gesture based instead of based on tapping a certain button in a certain spot on every screen.
Marco:
Overall helps this problem because it makes it so that you don't have to touch a very certain faraway area so often.
Marco:
you can, you know, just use these gestures.
Marco:
And I think, I think this is the kind of problem that can be worked around with those kinds of decisions for the most part.
Marco:
I mean, obviously within reason, you can't really use an iPad one handed.
Marco:
It kind of sucks.
Marco:
Uh, but you know, and the five and a half inch phone, which apparently might now be fake or delayed or, you know, it's one of those things where the analysts, there's basically zero evidence for the five and a half inch phone anymore.
Marco:
So the analysts who all predicted it are now saying, well, it's going to be delayed until next year.
Marco:
Uh, because they don't want us to say they were wrong, but, uh,
John:
i forgot where i was even going with this yeah so the you're onto something with the grip thing because when i see people using large phones there's just the really big ones that you notice you're like whoa is that a tablet no that's their phone i see them using it in a different way like they're not one handing it with a thumb on the thing maybe they're two handing it maybe like something the ones that have a stylus obviously that's totally you know the galaxy note things or whatever where
John:
but it you use it in a different way i mean and you do see remember back when we had sliders with qwerty keyboards and everything the whole deal was people would pull out the phone hold it sideways flip down the keyboard and like it was kind of like what uh you know in uh landscape orientation where you you're holding it on the side like it's a game boy advance so i'm making game references you guys don't get anyway landscape
John:
uh and and using two thumbs on it with the keyboard but now that it's touch oriented that that grip is gone and for a while we're in the one hand thing with the thumb on the thing but now with the larger phones i see more two hands and like two hand portrait two hand landscape one hand holding it one hand tapping it like old people use remotes you know you hold the remote in one hand and then you take the second hand and come from above with a pointer finger and you hit the buttons on the remote uh you
John:
And none of these things are, I think, necessarily bad.
John:
People are like the devices and are choosing to against why Apple is going to make a phone with a bigger screen.
John:
People like the bigger phones.
John:
They're they're adapting their usage behavior to just for it.
John:
But as Melissa writes in, if you like to use your phone with one hand, like, you know, with the traditional sort of iPhone style grip.
John:
you will be annoyed along with the rest of the people who like that, no matter what your hand size, that the phones keep getting bigger.
John:
Because, I mean, like I said, when the phones got taller, I found it harder to reach some sections on the screen.
John:
You had to do the little shimmy.
John:
Remember we talked about that when the iPhone 5 first came out?
John:
You had to do the little grip shimmy, right?
John:
And it's going to be even worse.
John:
We're going to have to adjust our habits.
John:
And if Apple stops selling phones of this size, then we'll just suffer along with everybody else.
Yep.
Casey:
All right.
Casey:
A little bit of quick follow up.
Casey:
John, this is for you, I believe, about TVs.
John:
Oh, yeah.
John:
We're talking about 4K and plasma.
John:
And one of the reasons that Panasonic exited the plasma business is going to cost them a lot of money to try to get a 4K plasma TV because those little cells or pits that are in plasma televisions that make up the picture elements are
John:
If you were to, you know, quadruple the number of those or roughly quadruple the number of those in the same area, they have to get much, much smaller.
John:
And that's harder to manufacture.
John:
And AWACS, I think this was on Twitter, sent me a link to say that Panasonic actually did make a 4K plasma television.
John:
It's 152 inches diagonal.
John:
That way you don't have to make the cells any smaller.
John:
You just make the television massive.
John:
It weighs 1,300 pounds and draws 3,700 watts.
John:
And it's not cheap either.
Marco:
That must have a six-figure price tag.
John:
It is.
John:
I don't think I remember what the price was.
John:
we'll put the link in the show notes just to go to see i mean again it's not the fact that 4k is an impossibility for plasma it's it's the the technology to make the little picture elements whatever they're called in plasma smaller they would have to do a lot of r&d to get that working but i'm assuming this gigantic television was simply whatever their latest and greatest regular high definition plasma process was and just made it way bigger with with the little cells being exactly the same size
Marco:
If only there was already a word for little picture elements.
John:
It's not pixels, but the pixel is the resulting image on the screen.
John:
I'm trying to talk about, and there is no equivalent in CRTs because it's just a big vacuum and an electron gun and scanning over the phosphorus.
John:
I think they're called cells.
Marco:
We are also sponsored this week by our friends at Squarespace.
Marco:
Squarespace is the all-in-one platform that makes it fast and easy.
Marco:
Can you believe that?
Marco:
Both fast and easy.
Marco:
To create your own professional website, portfolio, or online store.
Marco:
For a free trial and 10% off, visit squarespace.com and enter offer code ATP at checkout.
Marco:
A better web starts with your website.
Marco:
Squarespace is simple and easy.
Marco:
They have drag and drop content editing, very easy page builder graphical tools, and also you can jump in there and you can get down to the markup and you can inject your own script tags if you want to.
Marco:
You can write raw markup if you want to.
Marco:
The whole range, easy to expert.
Marco:
They have a beautiful design, beautiful designs for you to use on your site.
Marco:
All of their designs come with responsive mobile designs that match your style, so your site looks good on every device, every time.
Marco:
They have a 24-7 support through live chat and email, and they have a massive support staff located in both New York City and Dublin, Ireland.
Marco:
Squarespace plans start at just $8 a month, and that includes a free domain name if you sign up for a whole year up front.
Marco:
And you might as well, because let's face it, you're not going to move your host that often.
Marco:
So start at $8 a month if you sign up for a whole year.
Marco:
Get your free domain.
Marco:
Squarespace also features commerce on any plan.
Marco:
All their plans come with this.
Marco:
You can add, if you want to, a store, an online store to your site.
Marco:
And you can sell physical goods, digital goods.
Marco:
They manage all sorts of stuff for you, tracking and orders and everything else.
Marco:
Really fantastic.
Marco:
Start a trial today of Squarespace with no credit card required.
Marco:
It's a real free trial.
Marco:
No credit card required.
Marco:
This is where you forget to cancel it and they automatically bill you.
Marco:
Nothing like that.
Marco:
Start building your website today.
Marco:
Check it out.
Marco:
When you decide to sign up for Squarespace, make sure to use offer code ATP to get 10% off your first purchase and to show your support for our show.
Marco:
Thank you very much to Squarespace for sponsoring ATP.
Marco:
Squarespace, a better web, starts with your website.
Casey:
So, Marco, big day?
Marco:
A little bit.
Marco:
I'm so tired.
Casey:
When did you wake up?
Marco:
I didn't sleep well last night, so it's kind of a blurry line.
Casey:
Well, that was my next question, was did you sleep any...
Casey:
When did you actually remove yourself from bed?
Marco:
About 8.
Marco:
I decided I was probably done sleeping.
Marco:
And I had to come downstairs because I had the launch scheduled for 11.
Marco:
And I had it in the state in iTunes Connect where it just has an availability date set in the future.
Marco:
Because the problem was...
Marco:
You know, so I wanted to launch it today.
Marco:
If you set it to be released in the App Store today, then it'll start going on at midnight, you know, last night.
Marco:
And I didn't want to stay up all night if there were server issues, you know, because that was the big question mark was, will the server stay up under the load of however many people tried out on day one?
Marco:
I had no idea because I didn't really know how, you know, how heavy is each user on the server.
Marco:
I really had no measure of that.
John:
You didn't do load testing with like a bunch of VMs and hit it from, you know, that's the great thing about EC2 and stuff.
John:
You can just get a fleet of instances briefly and bombard your service to simulate the load of thousands of users.
John:
And I mean, it costs some money, but you could just ditch them all when you're gone.
Marco:
Yeah.
Marco:
Yeah, I mean, I thought of that.
Marco:
It would have been very hard to mimic the exact usage pattern of Overcast users without having a bunch of iPhones connecting at weird times, having podcasts being released at certain times.
Marco:
It would have been hard to simulate well.
Marco:
And so instead, I opted to use that wonderful cloudness of modern hosting to instead just temporarily get way more resources than I actually needed.
Marco:
So I temporarily, a couple days ago, I went from two web servers on Linode to eight.
Marco:
And a very easy way to create more if I needed to.
Marco:
And it turns out I ended up needing way less than that anyway.
Marco:
So I was scared of what the servers would do and I didn't want to be kept up all night.
Marco:
So instead, I set it to be released tomorrow.
Marco:
And then today at 8 a.m., I changed the date back, which makes it immediately get released at that point.
Marco:
But...
Marco:
immediately released on the app store doesn't mean it's immediately available to everybody whenever they check and showing up in search results because there you know it has to like propagate to different cdms around the world different servers being replicated and however apple does it it usually takes a few hours so i wanted to launch at 11 a.m so i made the switch of the date at 8 a.m figuring that by 11 it would be available everywhere and showing up in search results and turns out that was too early um it actually showed up by about 10 or 9 30 even it only took like an hour and a half
Marco:
But I waited anyway, and I had all the people who had advanced beta copies, the depressed people, I told them all, don't publish before 11.
Marco:
So I waited, and I didn't publish before 11 either.
Marco:
And yeah, so I spent the morning just looking over everything, tweaking everything, and then I launched it.
Marco:
And the response was strong immediately.
Marco:
I was...
Marco:
I was scared of lots of potential things.
Marco:
I knew that I had made an app that I was very happy with.
Marco:
And my beta testers were generally very happy with it as well.
Marco:
But that's only like 30 people.
Marco:
And this app was downloaded by thousands of people today.
Marco:
So the opinions of 30, especially this relatively undiverse group, are not very reflective of the web at large.
Marco:
So
Marco:
I didn't know what to expect from either the server load or from just the reception of the app.
Marco:
And are there any really crazy bugs that are just really edge case that none of these testers or I hit that would be major showstoppers and that I'd have to freak out and issue a quick emergency update?
Marco:
And it turned out none of that happened.
Marco:
It was great.
Marco:
It was just smooth.
Marco:
I was so worried.
Marco:
I haven't eaten well for a day before this.
Marco:
Yesterday, I was feeling terrible all day.
Marco:
It ended up being nervousness.
Marco:
Now my back is a mess.
Marco:
I've been holding all this tension in my back, and my lower back is just destroyed today.
Marco:
It's awful.
Marco:
Because I was really taking this nervousness inwardly.
Marco:
But...
Marco:
But it seems like everything went very well.
Marco:
I mean, the downside is I spent most of today reading thousands of tweets and hundreds of emails.
Marco:
I still, I'm mostly keeping up with the tweets.
Marco:
I still have, at the time of reading this, 524 emails that I haven't gotten to yet.
John:
What are people emails?
John:
Are these like support emails to the support address or personal emails to you?
John:
Or is there a difference?
Marco:
Well, there isn't really a difference yet.
Marco:
I have a support person I'm going to hire, but I wanted to receive all the emails on day one.
Marco:
First of all, just from a pragmatic standpoint, I wanted to know about bugs immediately so I could try to fix them.
John:
These are emails from the application.
John:
You're in the application.
John:
There's a button somewhere you can hit that emails you.
John:
That's what you're talking about, right?
Marco:
Yeah, yeah.
Marco:
And it's mostly people with little feature requests, some bug reports, some tech support kind of stuff.
Marco:
I'm trying to be careful and set expectations for tech support very low.
Marco:
I don't use the word support anywhere.
Marco:
And the descriptions of all these email addresses is feedback.
Marco:
And I say everywhere, I can't respond to everything.
John:
Well, you have an autoresponder that says, please explain to me why you wouldn't want the number one podcast app available on the app.
John:
Wow.
Marco:
Nice.
Marco:
So anyway, I have a lot of email to go through.
Marco:
I don't think it's that bad of a thing.
Marco:
I'll see what happens day to day.
Marco:
I didn't know if I should hire someone because as far as I know, maybe by next week, it'll be like five emails a day.
Marco:
I have no idea.
Marco:
I don't know what to expect yet for daily volume.
Marco:
And so until I know that, I'm not going to make any decisions about whether I'm going to hire someone or not.
Marco:
But I probably will end up doing it if I can.
Marco:
But yeah, most of the emails are stuff that takes a few seconds to look at and maybe a minute to respond to if I have to respond, a minute at most.
Marco:
But when you have hundreds and hundreds and hundreds of them, that adds up quickly.
Casey:
So the launch went well, the servers didn't croak.
Casey:
all is good in the world?
Marco:
Yeah.
Marco:
I mean, the database server load never went above like 0.4, which is awesome because that's the hard one to scale.
Marco:
The web servers were negligible.
Casey:
Have you cranked back on some of the expanded footprint?
Casey:
Like, have you gotten rid of some of those VMs or are they still... No, they're all still there.
Marco:
I mean, if I keep all of these up for an entire month, the entire hosting bill of Overcast is like $540 a month, something like that.
Marco:
when i sold instapaper the hosting bill was about seven thousand dollars a month for more or less hardware well it was more overall horsepower but not by a whole lot um because hardware has gotten better since then and linode upgraded all their stuff so like linode's current pricing is almost cheaper than most dedicated pricing for like for similar things it's it's extremely competitive and
Marco:
Before this, I was going to host it at Limestone Networks, which is a really cheap, dedicated host.
Marco:
And I had a server there for a while when I was developing, doing crawling and stuff.
Marco:
And that server was like $260 a month for what I'm... You can now get it Linode for about $160.
Marco:
I mean, it's crazy how good Linode is right now.
John:
This is another example of hardware catching up to something that doesn't change as much.
John:
Yes, hardware always gets better, but...
John:
for textual data in small amounts it used to be that no matter how small your textual data was if you just wanted to store like an address book for people that's like bounded in size only text not a lot of thing even that would be super expensive just because hardware hadn't caught up uh hardware has gotten so much better people's addresses books are similar in size maybe they're
John:
you know twice as big five times as big still mostly text maybe with little pictures but that grows much more slowly than computing power price performance memory and stuff like that so i think the cost of like you know fast forward 15 years the cost of doing a similar service to overcast like podcast feeds keeping track of what podcasts are all their metadata what their feed addresses all that stuff like that's not going to grow at the same rate as how cheap memory and storage and everything grows so you're getting to the point where it'll be like oh i'll
John:
I run my podcast metadata service on a puck in my home that I keep in the attic and never look at.
Marco:
Right, and that's, well, honestly, the dream is not that.
Marco:
The dream is closer to what Linode offers, because this thing runs somewhere else that you don't have to think about it.
John:
I know, but I'm talking about hardware requirements.
John:
It would be like, oh, this is like $5 a month.
Marco:
you know, unlimited CPU and memory.
Marco:
Oh, yeah, exactly.
Marco:
I was thinking, actually, as a temporary, as a side note, which I guess all side notes are temporary, if Apple updates the Apple TV with an A7 chip to take advantage of, like, Metal and making a game console version and everything...
Marco:
I wonder about the web hosting potential.
Marco:
It's like Mac Mini Colo times two.
Marco:
The web hosting potential of Apple TVs, because A7s are really good chips.
John:
Yeah, but it's not... I mean, for web hosting, it's like you've got to have memory to have all of the disk stuff cached in memory so you don't actually... You don't have to pull it off the disk.
John:
You're...
John:
just caches are all warmed up right so you need a lot of memory for that and you probably need lots of small weak cores more than what is a7 i've still just two two fairly expensive course i think still something like i mean that's why the server chips are all like tons and tons of relatively weak small cores so you could be processing lots of uh things at the same time and each one of those things is no longer that demanding if you're just getting and sending again sending and receiving small bits of textual information
Marco:
so apparently um a similar company to uh to mac mini uh colo or whatever was it yeah anyway a similar company called a mac mini vault they host they already have a page host on an apple tv so we'll put that link in the show notes
John:
Hey, no, no fans in the Apple TVs.
John:
You don't have to, you know, I guess you have to add your own fans because maybe if you packed enough Apple TVs in, I mean, they do produce heat.
John:
If you packed enough of them in, you need something to push that heat into the hot aisle in the data center.
John:
So you'd have to like add fans to the front of it.
John:
Very strange.
John:
i imagine like you know computing power to density ratio has to be pretty good with with an a if there's an a7 based apple tv that has to be pretty good yeah but i mean like the mac minis though these are these are not purpose-built hardware for the data center and the people who do make purpose-built hardware for the data center have access to more or less the same technologies right so it's not as if you know this is the optimal solution it's just funny and interesting from like imagine if you just got a bunch of these pucks and you put them in this little drawer but realistically speaking enough
John:
Google's still making their own blades out of God knows what, and it's even better.
Casey:
So first day went well.
Casey:
Do you care to share how many users you have?
Casey:
I saw you tweeting earlier today how many signups you had.
Casey:
What are we at in at least a vague order of magnitude?
Yeah.
Casey:
21,800.
John:
Now, is that accounts registered server side or are those number of downloads from the App Store?
Marco:
That is accounts registered server side.
Marco:
The number of downloads I won't have until tomorrow morning when I get the stats.
John:
I mean, you figure it would be similar because it's, you know, you can't really use the app until you sign up.
John:
So if people downloaded and didn't launch it, I guess, but...
Marco:
yeah yeah but yeah so i mean i would imagine the number of downloads is probably substantially higher because there are going to be some people who downloaded and just haven't launched it yet some people who downloaded it got to the login screen and said i don't want to create an account and deleted it or said i'll come back to this later and do this um so i would guess number of actual downloads uh might even be as high as twice that do you have the uh the fact linked from that first screen that says you know create create an account or whatever
John:
that's why i wrote the fact and that's why it's called the skeptics fact uh it's because i i knew people would say why do i need an account and that's why that's the very first question or i don't know i think it's the second question but you should keep track of it if if they launch the app for the first time and don't hit either one of those buttons the second time they launch the app you should make the skeptics fact like more bold
Marco:
you know because i don't even remember seeing it there but like it's you want you want there is an explanation you might as well give it now there is an explanation of why why do i have to make an account of any kind for a podcast app yeah and and this was i've had a couple i didn't know this was another kind of risky thing i didn't know like if there would be a lot of people who were offended by this and who would who would skip it um or you know who would cancel their efforts to try overcast entirely just because they didn't want to do that
Marco:
The reason the accounts are there is because this is an entirely server-backed app.
Marco:
The server does all the crawling, all the updating, all the notifications and everything.
Marco:
The server does a lot of the work.
Marco:
And the app doesn't even have an XML parser.
Marco:
The server does everything and just outputs JSON to the app, which it can decode quickly and natively.
Marco:
anyway and so there has to be some kind of user identification method between the app and the server now if all i ever had was an iphone app uh or even even if if all it ever was was ios apps that were all in the same account i could i could do things to kind of hack around this like i could do like you know generate a random id the first time you use it and then use that as your username behind the scenes and never even show the user what their username is and you know then they could that could work just fine um
Marco:
I could also store a user ID string in iCloud, in the key value store, so that way they could launch it on their iPad after I make an iPad version and it syncs over.
Marco:
There are things like that I could do.
Marco:
The big problem with that is, first of all, that would almost completely rule out web functionality.
Marco:
Second of all, if I then had a way for them to add an email address and password to this account,
Marco:
Believe me, I know what would happen because I had similar issues with people making accounts at Instapaper.
Marco:
What would happen is people would make duplicate accounts.
Marco:
Rather than associate an email address with their current account, they would create a new account inadvertently with the email address.
Marco:
And then you have two accounts and they email me saying, all my podcasts are gone because I logged into the new one.
Marco:
They didn't know.
Marco:
And then you have to find ways to merge accounts.
Marco:
And it basically becomes a big issue with perceived customer stability and data loss because they will do something weird that makes them think they lost everything and then blame me and be very unhappy.
Marco:
And also, it's just a massive burden on support email.
Marco:
and so i chose you know what let me try instead just require the account right up front explain it as best i can i know a lot of people are still going to not do it but let me just show you let me just require the account up front make it always require an email address so i can do password resets and
Marco:
let's just see if that works.
Marco:
Maybe that'll be fine.
Marco:
And in the future, if it ends up a lot of people are being turned off by that and I really want their business, then maybe I can add the system where, okay, it just starts up with an anonymous ID and then you can add an email address later.
Marco:
But I would rather try this first because if this can work well enough, it is so much easier to support and it's so much easier as a user that it's always the same.
Casey:
All right.
Casey:
And you say all these things as though you've been burned once or twice before.
Casey:
I don't know what that's about.
Marco:
Exactly.
Casey:
All right.
Casey:
So let me start with a couple of obvious questions.
Casey:
And then I have some hopefully less obvious questions.
Casey:
And then as we talk, I'm sure John will start tearing apart little bits and pieces of what you're saying.
Casey:
I'm so looking forward to this.
Casey:
Yeah, I do want to save that for probably the end if we don't get to it in the middle.
Casey:
Why freemium?
Marco:
I'm not that confident in the market for a paid upfront app anymore, especially because I wanted to charge a good price for it.
Marco:
You know, my in-app purchase.
Marco:
So the model is, in summary, the app is free.
Marco:
There are some limits.
Marco:
The in-app purchase removes the limits.
Marco:
That's it.
Marco:
It's one purchase, one time, five bucks.
Marco:
And that removes all the limits.
Marco:
So it's kind of like a trial version.
Marco:
Uh, it's, it's kind of my, my hacky way of doing a trial version.
Marco:
Um, except that, you know, the entire app doesn't expire.
Marco:
Just certain things just don't work after, you know, certain things don't work unless you pay.
Marco:
And even, and the two big things that don't work, the, the smart speed and voice boost, you can actually demo them, uh, without paying for five minutes.
Marco:
Like there's like a, there's like a five minute trial of those features, uh,
Marco:
I actually wasn't even sure if Apple would allow that, but they did.
Marco:
So it is basically a trial version.
Marco:
And again, so going back a minute, so that's $5.
Marco:
I don't think, if I launched today in the App Store, I'm sure my day one sales at $5 would be decent.
Marco:
But first of all, I know I got way more people as this model than I would have with that model.
Marco:
I know that.
Marco:
Second of all, I know over time that would be very hard to sustain.
Marco:
Because once the initial PR is over, and once all your friends and all your blog readers have bought it, and once everyone who's going to write about it has written about it, then the sales of every app just tail off like crazy.
Marco:
They just drop.
Marco:
If you look at the graph, it looks like a roller coaster.
Yeah.
Marco:
And they settle into a point and then that eventually kind of lowers and lowers and lowers.
Marco:
If your app is paid up front, that happens faster and it happens more severely.
Marco:
I've seen this happen.
Marco:
And Instapaper was always that model the entire time I owned it.
Marco:
It's still that model today.
Marco:
Um...
Marco:
I know that model very well, the paid upfront model.
Marco:
I also know that in today's app store, in a competitive category where I don't even have the most features and people are very, very picky with what they want and what they don't want, I knew that a $5 paid upfront app was not a good long-term solution.
Marco:
um so that's why and so i i found a way to make free work you know i i saw with instapaper there were so many people who i would i would come in contact with in real life even like even like family friends i would like you know be visiting them and i'd see on their phone they were still using instapaper free like even like two years after i just continued it like there were so many people who no matter how much they like you
Marco:
They don't pay for apps.
Marco:
It isn't just that they won't.
Marco:
It's that they, in their minds, don't.
Marco:
That's just something I don't do.
Marco:
That's the kind of mindset it is.
Marco:
Who buys batteries, Marco?
Marco:
There's a lot of people.
Marco:
This is not a small group.
Marco:
A lot of people who really just don't buy apps.
Marco:
And I knew that the biggest podcast app in the world by a very large margin is Apple's podcast app.
Marco:
The second biggest by a pretty large margin is Stitcher.
Marco:
Both of those are free.
Marco:
I wanted to make an app that's good and free.
Marco:
Because the fact is the Apple Podcast app is not bad.
Marco:
It's not great, but it's not bad.
Marco:
That's the biggest competition in the market, and it's free, and it has a lot of features.
Marco:
And it has some features I can never have, like the integration with iTunes.
Marco:
There are alternatives here.
Marco:
Somebody in the chat said, I could have done ads, but I've never seen an ad in an app that I thought made the app look good.
Marco:
Ads and apps are very intrusive because they take up so much space.
Marco:
I don't mind doing podcast ads here because our advertisers are good.
Marco:
And because for the rest of the show, we're giving six minutes of ads out of a 90-minute show.
Marco:
When an ad's in an app, not only are the advertisers usually terrible, but it's taking up a pretty big chunk of the screen all the time.
Marco:
That's a much bigger cost on the user than the kind of ads I respect, like podcast and well-done blog ads like the deck ads.
Marco:
It's a very different ratio, and the advertisers are all cheap and crappy, and so I just don't like app ads at all.
Marco:
And there were also features in the app like the Twitter feature where, you know, so I offer these like Twitter-based recommendations where you can connect your Twitter account and you can get recommendations based on the people you follow, based on what they listen to.
Marco:
And, you know, if they've connected their accounts.
Marco:
And...
Marco:
That kind of feature works best the more people you have.
Marco:
It's a social feature.
Marco:
And this is why all social apps are free, right?
Marco:
Because the social network value, exponential, blah, blah, blah.
Marco:
And so this is the same way where that feature becomes a lot better if I have more people using it.
Marco:
So I decided rather than, you know, get five bucks from everybody, I was going to...
Marco:
try to try to get five bucks from from a few of the people who use the app and just try to make the app as cheap as possible to host like and i focused on that from day one because i did not want to get to the point with insta where i was with instapaper where it was very very expensive to host this it
Marco:
with with uh with overcast i have made every possible focus on keeping it as cheap as possible on the servers that's why i'm on linode that's why my big expanded version of the hosting was only going to be 500 bucks a month and i'm probably going to get away with more like two or three hundred after this is all done uh the whole point of this was cheap hosting make this sustainable that way and so this the next question is which a few people have already asked is why not a subscription price
Marco:
And I thought about that a while, too.
Marco:
My model for the in-app purchase, I've been all over the place in planning this.
Marco:
Originally, I was going to do everything is unlocked and you just pay what you want for the app.
Marco:
And that, you know, I thought about that.
Marco:
I got some input from some trusted people and that just, it wasn't very good.
John:
Is that even allowed on the App Store?
John:
How would you get the money from them?
Marco:
I actually asked them that because that's a good question.
Marco:
I talked to a couple people at Apple, whoever, you know, the people I could find at Apple.
Marco:
They don't necessarily publish a directory or anything, but the people I could find who might have been relevant to it at Apple, I tried emailing in and...
Marco:
Got various places and all of them kind of ended with, well, maybe.
Marco:
So it was kind of a question mark as to whether that would be allowed.
Marco:
And generally with App Store stuff, you don't want to live on a question mark edge of a rule.
Marco:
What you said earlier, John, is exactly right, which is the cost of hosting each user goes down with time.
Marco:
So the only way that my... If I'm responsible about how I host this and how I manage the resources...
Marco:
The only way that the costs really meaningfully go up over time is if the user base is growing substantially over time.
Marco:
Because otherwise, if the user base stays the same and usage stays the same, then the cost of hosting will slowly decrease as hardware gets better and hosting gets cheaper.
John:
And it won't be like Instapaper, where people like me just have this massive backlog where you're saving just thousands and thousands of articles.
John:
Even when you archive them, right?
John:
I forget what your policy was on archive things.
John:
It used to be like a window, but if you paid for... You've had various reels.
John:
But anyway, people's Instapaper collections could, in theory, grow, whereas...
Marco:
podcast there's some working set and then if you after you played an episode like you're not retaining that info are you well i'm retaining the the row in the database which is a row of like five integers of like you know the podcast id the user id whether you completed it or not and when
John:
Well, I was saying is you could trim that stuff off like you don't need to keep a record of it.
John:
I listened to this episode three years ago because it's no longer visible in the app hasn't been visible in the app for four years.
Marco:
Well, actually, if the podcast has fewer than 1500 entries, it is still visible in the app.
Marco:
But.
Marco:
The reality is, I know from Tumblr how these tables grow and what that means and what it costs to host.
Marco:
And the fact is, a table full of hundreds of millions of integer associations like that is really nothing to host.
Marco:
It sounds like a big number, but in reality, a table with five integer rows...
Marco:
that that could be like your service could be as big as tumblr on that table might only be like nine gigs you know that's really we're not really talking a massive amount of of data here this is you know that's and that's the kind of table like the index is bigger than the table usually and you were saving the textified versions of web pages in the instapaper database right because like if if i was saving them on s3 i wasn't saving the database all right well but but it but somewhere you were saving them because you had the uh what do you call it the
Marco:
if someone had a different view of a website than somebody else you couldn't just save that web page as they saw it and allow everyone to see that right it was a way to to work with login barriers um so that you know so that if you if you were logged in if a site required a login barrier if you saved with the bookmarklet the bookmarklet would send a copy of what you were seeing to the servers which would save it just for you and uh anyway so
Marco:
where was i oh yeah so subscription so yeah that's i didn't do subscriptions because my costs aren't high enough where i really need them like i can i can get on get along just fine without them and i might do them in the future like with instapaper when when i sold instapaper i don't know what it is now i haven't i haven't been you know bugging them about stats or anything because honestly that's not my job anymore but um when i sold instapaper
Marco:
It was making about half of its income from subscriptions.
Marco:
And it was an industry model.
Marco:
The app was a few bucks.
Marco:
Most of its life, it was five.
Marco:
Then it became three.
Marco:
About halfway through the time I had it, I launched these monthly subscriptions that would allow me to offer a very small subset of users very expensive features.
Marco:
It started out with search.
Marco:
Well, it started out with nothing.
Marco:
Then I added search.
Marco:
Yeah.
Marco:
Most people who subscribe did not subscribe because of search.
Marco:
Most people who subscribe described out of a sense of goodwill to me for providing years worth of app updates without charging them and building up a surplus of goodwill among my audience.
Marco:
That's kind of my plan here is if I need more money later on to address hosting costs or whatever, you know, I'll do a few years of free updates.
Marco:
People will like me enough that if I put in like a tip jar or something or like, you know, a monthly voluntary subscription that does nothing, you can make good money with that.
Marco:
I mean, really think about it.
Marco:
I was making half of my income from those when I sold Instapaper, and most of those people never searched.
Marco:
That was not the reason they were buying it.
Marco:
So that's the plan for money, is what I'm saying.
Marco:
Did I miss anything there?
Marco:
I'm sorry.
Marco:
It's been a long day.
Marco:
I'm kind of mentally fried.
John:
So that last bit, though, you were saying like the idea of having the equivalent of a tip jar, even if it technically is for search or whatever and having or having a subscription thing or you mentioned that those are both viable.
John:
It's not like you're saying, oh, that can't work.
John:
I mean, because you know from experience that it can work in a reasonable fashion.
John:
What is it about that approach that you didn't like that made you change your mind this time and go with the, you know, five dollars to unlock the rest of the functionality thing?
Marco:
It really is a combination of not having a lot of faith in that.
Marco:
Because keep in mind, I sold Instapaper over a year ago.
Marco:
And when I sold it, sales were not great.
Marco:
And so I saw the writing on the wall for the paid upfront model back then.
Marco:
And I'm not very confident in it now.
Marco:
Part of it is also that now is a different model.
Marco:
You know, Instapaper had basically one and a half competitors.
Marco:
The podcast app market has lots of competitors and many of them are free.
Marco:
And so I recognize there was, you know, stiffer competition here.
Marco:
I was going into it, you know, I was going into a very mature market.
Marco:
Like with Instapaper, even though there was competition from, you know, six months after I launched, uh,
Marco:
The competition and I evolved together.
Marco:
We both started from the same spot of not much.
Marco:
And then we were able to grow over time in complexity and advancement.
Marco:
With the podcast market, I'm going into it while everyone else who's in this market has been writing their apps for four or five years.
Marco:
These are now old apps.
Marco:
They've been around the block.
Marco:
They have tons of features, tons of infrastructure in place.
Marco:
I was starting late to this game, so I was going to come in with fewer features by necessity.
Marco:
And so that's another thing.
Marco:
I tried with that.
Marco:
I realized that I would need to do something a little more dramatic than just launch to five bucks if I wanted to get a decent user base.
John:
Well, I was thinking it was comparing it to also launch it free, but have a, you know, $20.
John:
I like Marco because he makes nice things thing that unlock some feature that no one's going to use like search, but people would do out of the goodness of their heart like that.
John:
That's the model I'm comparing it to.
John:
Not the $5 up front, but the large in application, quote unquote, subscription, whatever you want to call it, that isn't really unlocking anything.
Marco:
Like the big tip jar.
Marco:
Yeah.
Marco:
The main reason why I didn't do something like that is that I just didn't think most people would buy something that expensive.
Marco:
And like one of my ideas was to have like a three-tier system of like pay what you want, you know, $2 a year, $5 a year, $10 a year, something like that.
Marco:
And I was a little afraid that, you know, by making it complicated, because those things are all kind of complicated.
Marco:
By making it complicated, then, you know, I think you reduce dramatically the number of people who will do it.
Marco:
Because some of those words kind of scare people away.
Marco:
You know, I was even thinking like, you know, maybe using like the public radio vocabulary, calling these things pledges.
Marco:
Or, you know, you could be like a supporter of the app, you know.
Casey:
Would you run a telethon like once or twice a year then?
Marco:
If I did that, maybe I'd have to consider it.
Marco:
I thought of all those models in various showers I've taken over the last two years.
Marco:
Because that's in the showers when I think about pricing for my app most.
Marco:
I don't know why.
Marco:
that's my life so uh i went with this model because it's simple and and because i it's it's a low barrier to entry the price is relatively high if it's five bucks i was tempted to charge 10 actually but i knew nobody would buy that um you know the and who knows i might discount the the in-app purchase in the future i'll you know i'll play with the price it's not hard-coded anywhere
Marco:
I decided in the end to just keep it simple because it's simpler for everyone.
Marco:
It's simpler for me.
Marco:
It's simpler for the users.
Marco:
This gives me flexibility.
Marco:
I can do things like in certain places, people who can't use an app purchase, I can put up a web Stripe buying form and then sync that over with their account so it unlocks the app.
Marco:
By keeping it simple, I have many options.
Marco:
so that's that's really it all right we are also sponsored this week by fracture fracture they they sponsored us a while ago back i think in may they sponsored us fracture is great uh fracture prints photos directly on glass in vivid color it's it's really interesting so i have a bunch of fracture prints around my office because they're good i mean and you know it started out obviously they were a sponsor that's how i learned about them so disclaimer but
Marco:
even even when i when i'm not being sponsored by them i have on multiple occasions bought fracture prints at full price because i like them um fracture they their printing method it's great like you upload a picture whatever and then you get it printed
Marco:
And it's really – the picture is printed directly on a thin piece of glass that's then mounted to a thin piece of foam board so that you can hang it up easily.
Marco:
So, these prints are relatively lightweight.
Marco:
Like, you don't have to worry about them, like, falling off the wall and, you know, pulling your wall down and shattering or anything.
Marco:
They're just immensely practical because what you get is a really nice-looking glass print that's border-to-border, frameless.
Marco:
And then it is kind of its own frame.
Marco:
You don't need to then get a picture framed.
Marco:
And compared to getting a picture framed, it's an amazingly good value.
Marco:
So I have a bunch of these things.
Marco:
I have a couple of big ones showing off various nice pictures I've taken and then
Marco:
I have these three that are the smallest size they have, which I believe is five by five inches.
Marco:
And I use those to print out app icon pictures of the apps I've worked on.
Marco:
So I have this row hanging in the wall of my office, this row of app icons that I've worked on.
Marco:
It's kind of like a trophy collection for the things I've done in my life.
Marco:
Because when you make apps, there aren't a lot of physical artifacts like that.
Marco:
And so...
Marco:
uh it's great because like the five by five print is just 12 bucks um so it's really you know no barrier to entry here if you want to get a couple of app icons made you know yeah spend 12 bucks it's no big deal anyway fracture puts everything you need to get your photo on the wall right in uh the box they you know they they give you your own little picture anchor thing or if you get the little the desk version it it has a little stand already uh built into the frame but
Marco:
Prices start at just $12 for the prints.
Marco:
They're very reasonable.
Marco:
Even the big ones are really reasonable.
Marco:
And every fracture is handmade and checked for quality by a human being in their small team in Gainesville, Florida.
Marco:
It is the thinnest, lightest, and most elegant way to display your favorite photos.
Marco:
And the best thing is you can even get 15% off.
Marco:
with a coupon code ATP.
Marco:
So please use coupon code ATP to get 15% off.
Marco:
Go to FractureMe.com.
Marco:
That's F-R-A-C-T-U-R-E me.com.
Marco:
FractureMe.com.
Marco:
Thanks a lot to Fracture for sponsoring our show once again.
Marco:
I definitely recommend them.
Marco:
They are great.
Marco:
I'm looking at, let's see, five of them right now in my field of view.
Casey:
Yeah, they are really good, and I recommend them as well.
Casey:
Let me ask another obvious question, then I'll get into one or two that are less obvious.
Casey:
What took so damn long?
Marco:
I started writing this in October 2012, and that was when I still own Instapaper and the Magazine.
Marco:
That's when I had the idea for the audio processing stuff, and so I wanted to make a little prototype to see if it was even possible.
Marco:
So I did, and it was, and it was great.
Marco:
But I didn't really have time to make a full podcast app around it at that point.
Marco:
I had other projects.
Marco:
Then, you know, eventually other projects went away and I had time, so I worked on them.
Marco:
And so then, you know, by last fall, when I announced Overcast at XOXO last September, so almost a year ago is when I announced it.
Marco:
By that point, I'd been working on it full time for, I don't know, four or five months, something like that.
Marco:
I really thought it was almost done because as a typical programmer, I was like, oh, well, you know, it works for me for the most part.
Marco:
It works on my phone.
Marco:
It's fine.
Marco:
So, yeah, I should have it out in, what, two months?
Marco:
That turned out not to be the case.
Marco:
It just... Podcast apps are so incredibly complicated.
Marco:
And I didn't quite fully appreciate that at the time.
Marco:
You know, I didn't...
Marco:
I knew about stuff like, you know, feeds, you know, having to manage weird feeds and everything else.
Marco:
Like, you know, edge cases there.
Marco:
But just the interface.
Marco:
There's so many screens in a podcast app.
Marco:
It's crazy.
Marco:
Like, I ever asked about this briefly a couple weeks ago in the after show.
Marco:
So, you know, it's...
Marco:
It's just so, there's so much that goes into a podcast app.
Marco:
And I now have 545 emails in my inbox, at least half of which are asking for features that I haven't even done yet.
Marco:
You know, it's a very demanding market as I'm learning today.
Marco:
I thought I was launching with a lot for a 1.0.
Marco:
Turns out, for the most part, yeah, people are fine with it.
Marco:
But there's a lot of people out there who are really demanding more, a lot more, even from day one.
Marco:
And so I didn't want one point.
Marco:
I anticipated some of this.
Marco:
So I didn't want to disappoint people a lot in day one.
Marco:
So I didn't want to leave like massive gaping holes.
Marco:
Now, streaming is a big one.
Marco:
And, you know, video is a medium sized hole.
Marco:
I don't ever plan to support video because it's it's kind of a different medium and it demands different things.
Marco:
I wouldn't be able to use my audio engine and any of the effects and I could use I could use the compressor, but I couldn't I couldn't use smart speaks.
Marco:
It would be weird.
Marco:
And there's a bunch of stuff that I that I couldn't that it would be harder to do with video and the whole interface to accommodate video.
Marco:
And then you have the question of like, all right, well, are you allowed to mix video into playlists?
Marco:
And if so, what do you do?
Marco:
Like, do you start playing video podcast episodes right in the middle of audio podcast episodes?
Marco:
What if you're in the car?
Marco:
Like there's all sorts of like weird things with supporting video that I don't think are worth it because I don't think video podcasts are that big of a requirement.
Marco:
I would venture a guess the majority of podcast listeners don't listen to any video podcasts.
Marco:
It's just such a different medium.
Marco:
Video, I think, was, for me at least, it was an easy decision not to support.
Marco:
You just don't do it at the same time as audio podcast.
Marco:
It's a different demand.
Marco:
And I think also most videos move to YouTube these days.
John:
That's what I was going to say.
John:
Are video podcasts even a thing anymore?
John:
I haven't YouTube channels more or less replaced them, but I suppose they're still out there.
John:
If I was into video podcasts, I would want an app that was built around video podcasts because they're different enough.
John:
I suppose you could make one super app that does both audio and video, but that's a tall order.
John:
I would be perfectly happy getting separate applications for video and audio podcasts.
John:
People use the YouTube application if they're watching YouTube channels and stuff.
Marco:
Exactly.
Marco:
So that's why no video.
Marco:
No streaming was harder to take, basically.
Marco:
The reason I don't have streaming is not because it's some oversight that I just forgot to add it, as some emailers have assumed.
Marco:
That's not why.
Marco:
The reason I don't have streaming is that all my audio processing stuff is done using raw, low-level core audio APIs that don't inherently automatically provide streaming support.
Marco:
The other apps use AVPlayer.
Marco:
And AV Player, the AV Player framework is higher level.
Marco:
The downside of AV Player is that it removes a lot of the control that you have.
Marco:
There is a way to do voice boost.
Marco:
Not quite as well, but you can do it.
Marco:
It's a little more CPU intensive if you do it that way, but it is possible to do voice boost with AV Player.
Marco:
To the best of my knowledge, it is not possible to do smart speed.
Marco:
And I've thought about lots of... Over the last few years, I've thought about lots of different ways to maybe attempt to hack smart speed into AV player.
Marco:
And I just could not come up with anything that was remotely doable and reasonable and not like a ridiculous, horrible pile of terrible, fragile hacks that would break immediately.
Marco:
So...
Marco:
In order to make SmartSpeed, I had to do raw core audio.
Marco:
And I thought SmartSpeed was a good enough feature to make that worth adding months of development time and making me have to reimplement things that everyone else gets for free with AVPlayer, including streaming.
Marco:
The other thing is when the other apps that do streaming...
Marco:
They have to do it in a limited way because AV player, through reasons that I believe, I tried asking Apple about this at WBC in the labs this year.
Marco:
No one really knew for sure or at least told me, but it seems like the reason why is because of HTTP live streaming and its DRM and its expectations thereof.
Marco:
You can't save a stream.
Marco:
And you can't turn a download into a stream.
Marco:
You have to either stream something or download it.
Marco:
You can't do both.
Marco:
You can't just start playing a partial download.
Marco:
And you definitely can't convert a stream into a download.
Marco:
Just stream it and just save what you're streaming until it's done and then save that as a file.
Marco:
You can't do that.
Marco:
What I'm going to do when I do add streaming, which I'm going to begin work on that shortly once 1.0 stuff settles down, I'm going to do it so that you can just start playing a progressive download.
Marco:
Doing that well in the background download system requires new capabilities that are in iOS 8 only.
Marco:
So it made sense to wait until iOS 8 came out and do it then.
Marco:
And so that's what I'm going to do with streaming.
Casey:
So let me ask a genuine question.
Casey:
Why is streaming...
Casey:
such a big deal, not from a development side, but from a user side.
Casey:
Like there have been times I've wanted to listen to a show and it hasn't been downloaded.
Casey:
And so I just wait for it to download.
Casey:
Like what am I missing that makes this such a big deal to so many people?
Marco:
Most of the benefit of streaming, I think, has been removed with background downloading in iOS 8 or 7.
Marco:
I really think that, for the most part, most people are going to have things downloaded when they're at home or the office on Wi-Fi, and they will never even notice it downloading.
Marco:
And then they'll go out and start listening, and they'll just listen to whatever they have downloaded.
Marco:
But streaming is really useful when you're adding a podcast, and you want to start playing it immediately.
Marco:
And so for that instance, like, oh, I just discovered this episode or this show.
Marco:
Let me start playing this right now.
Casey:
You can't, not you personally, but you can't wait like literally 60 seconds.
Casey:
Also, the chat room is saying storage space.
Casey:
I mean, I shouldn't be arguing with anyone.
Casey:
I just, I didn't realize that people were running within like 50 or 100 megs of the limits of their device.
Casey:
I'm surprised to hear that.
John:
You've got to leave gigs free.
John:
I just tried to upgrade my iPad to 7.1.2, which I'd forgotten that I hadn't upgraded it to that.
John:
And every time I try to upgrade iOS on that thing, it tells me I don't have no space.
John:
Only 1.4 gigs are available, so I've got to go delete stuff.
John:
And, you know, you need a lot of room just for even small OS upgrades.
Marco:
Also, there's the issue of download speed also.
Casey:
Yeah, which is what the chat room is now telling me is that I'm spoiled by LTE slash decent Wi-Fi.
Marco:
Well, and also, some podcasts are hosted on servers or CDNs that themselves don't send the files very quickly or can't send the files very quickly.
John:
Yeah, that is a big problem.
John:
So my experience, obviously, I don't have an iPhone, but like with my iPod Touch is with the background downloads, every time I pick up my iPod Touch and go to Overcast over the past month or so I've been using it, everything's already downloaded because it's just been sitting there in my Wi-Fi all day.
John:
But on the occasion when I've said, oh, actually, I want to get like you just said, I just want to get this episode.
John:
I do the thing you just said, Casey, and I go to download it and I look, it's like 1%.
John:
two percent you're like oh no exactly and i and for me i can't say well i'm going to get in the car and drive away anyway because as soon as i leave my house to download stops because it's an ipod touch so like it's not i i think there are two use cases one are the people like when you say streaming you think of people like just wandering around constantly pulling audio over cell data that goes right into their ears but i think the other use case is
John:
I just, I don't want to have to wait for the download to finish.
John:
And I want to be able to start listening as fast as I can, because presumably the service can send audio data fast enough that you can listen to it in more or less real time.
John:
So that's what I would like out of the streaming.
John:
I remember being frustrated when Apple first added podcast to iTunes.
John:
I got all excited, went into the podcast, got a subscription, and then it clicked on an episode and saw the downloading bar.
John:
I'm like, why isn't it playing?
John:
It's not going to play until it finishes downloading.
John:
This is ridiculous, you know, because you used to like everything, you know, web browsers.
John:
If you go to an audio file, a video, like, of course it starts playing before the whole thing downloads.
John:
It's not, you know, but podcasts weren't like that, probably for framework reasons.
John:
And by the way, a lot of people in the chat room have mentioned lots of other podcast apps that already do this.
John:
I think what Marco was saying is that.
John:
The frameworks Apple provides don't give you a convenient way to do that.
John:
So if you want to do that, it is entirely possible you have to do it yourself, though.
John:
And what Marco's saying is he wants to wait until iOS 8 because there are frameworks that make that easier.
John:
All these other people with podcast apps, like Marco said, got a big head start on him.
John:
They've already implemented their own ways to do all these things.
John:
Essentially, I think what it comes down to for streaming is you've got to pick what's going to make it into 1.0, and that one didn't make the cut.
John:
I mean, if you had added streaming, you'd be waiting many more months before the thing came out.
Marco:
Specifically, what they've added in 8, this is no big top secret, what they've added in 8 is the ability to basically use streaming on the same download that can become a background download if it has to.
Marco:
In 7, if you wanted to do a background download when the app wasn't running or whatever, you kick off the request and it says, all right, and then it can tell you progress updates, but you can't get to the data until it's done.
Marco:
So there's no way to stream that.
Marco:
So if you were offering streaming before, you had to offer streaming in a way that, oh, and you also can't convert any other downloads into a background download.
Marco:
So you'd have to offer streaming in a way that if you were streaming, hit pause, and the app got terminated or got backgrounded, that download would get canceled and fail, and you'd have to start over again with a background download if you wanted that file.
Marco:
What they've added in 8 is the ability to convert a streaming data download into a background download so that that use case can continue and can do that well.
Marco:
So that's what I'm going to use.
Casey:
All right.
Casey:
What about the dev process surprised you the most?
Casey:
Was it just that there are that many screens or was there something else?
Marco:
I was most surprised that all this audio stuff worked on an iPhone.
Casey:
That's actually a pretty good answer.
Marco:
Really, because it was like, oh my god, the amount of processing I do on every sample that goes through 44,100 times per second, or if you're a stereo podcast, 88,200 times per second...
Marco:
The amount of just processing and math... I look at almost every sample in some way... When SmartSpeed is on at least... And even when SmartSpeed is off... To render the little peak meters animation... The little EQ animation... I'm looking at every sample... I'm doing an FFT on every sample... That's crazy talk... Thinking about that... Logically... That shouldn't be so fast on an iPhone...
Marco:
It runs at 30 frames a second on an iPhone 4.
Marco:
And without maxing out the CPU.
Marco:
And to answer people in the chat talking about battery impact and everything... I was concerned about battery impact.
Marco:
I've been using this for over a year now.
Marco:
And the battery impact is fine.
Marco:
It's fine.
Marco:
It's not... What hits the battery the hardest...
Marco:
is playing shows faster than 1x and so to some degree smart speed does that because the reason why that's so hard is that you're then asking the hardware to process more than 44 100 frames per second you're asking it to you know if you're playing at 1.5x it's going to process you know 60 whatever frame for you know frames per second so it's going to
Marco:
when you're playing faster than 1x it still has to like decode the mp3 read all that data process all that data so it's it's it's doing all that work more per second that is what makes a big battery impact if you look at like the cpu usage meter as you're running one of these things but that's true of all the podcast apps including apples like they all have that problem because that's just the reality of playing data quickly is that you have to then read and process it more quickly so you have to do more of it and it costs cpu time
John:
You're not doing the the equalizer animation when the screen's off, right?
Marco:
Correct.
Marco:
Yeah.
Marco:
If if there isn't one on screen or the screen is off or the app is not foreground, then it does not do anything.
Casey:
All right.
Casey:
What's your favorite feature, which may or may not be the one you're most proud of?
Marco:
I'm definitely... Okay.
Marco:
I think my favorite one is playlist reordering.
Marco:
The way playlists are implemented is crazy because I really wanted this particular feature, which is I didn't want to have to distinguish between a manually organized playlist and a smart playlist, the way most iTunes does it that way.
Marco:
I wanted all playlists to be smart and manually organizable.
Marco:
So that's how I did in Overcast.
Marco:
So you can set your criteria for your playlist of what should be included, but you can always just drag it around and reorder it.
Marco:
And then when new things come in, your order is preserved, and it just tries to obey the filters in a reasonable way and the priority settings and everything to try to fit a new episode in where it should probably go, given your reordering.
Casey:
Yeah, you know, when you first told us about Overcast, you know, that was quite a while ago, and you were talking about things like SmartSpeed and things that you were trying to include in it.
Casey:
And you had told us about your playlist ideas, possibly it was Underscore and I down in South Carolina, but regardless of when, I never used playlists ever in any podcast app I've ever used.
Casey:
And so when you gave us the beta, I tried to do a playlist for things that just Aaron and I listened to, which is basically just IRL talk and then everything else.
Casey:
And every time I started fiddling with the playlist settings or perhaps reordering the playlist, like you were describing, it was very quickly apparent to me that this was something that I've always wanted in my life.
Casey:
I just didn't know it yet.
Casey:
Yeah.
Casey:
And it's really, really well done.
Casey:
And I am not surprised that you count that as your favorite feature.
Casey:
I think my favorite is probably SmartSpeed because I think it is so transparent.
Casey:
But the playlists are a close second.
Marco:
Yeah, I mean, SmartSpeed, I think, is definitely what I'm most proud of.
Marco:
Because, you know, SmartSpeed, it's a hard thing to do.
Marco:
Like one of my formulas for my own happiness and intellectual happiness as well as success in the app world is it's nice if you do like...
Marco:
One hard thing and a lot of easy things in an app.
Marco:
That's a really good balance to have because if you do like one really hard thing, that makes it harder for competitors to do and to copy you feature by feature.
Marco:
But then all the easy things help it be easier to maintain for you.
Marco:
And usually like...
Marco:
A lot of things that are very hard to do aren't really worth it.
Marco:
It isn't a must-have feature for customers, so you've got to be careful what you pick.
Marco:
I talked in the last after show about how I worked so hard on the Kindle feature for Instapaper, and in reality, that probably wasn't worth all the effort I put into it because it was hard.
Marco:
It's easier these days with some other tools, but it was hard.
Marco:
Anyway, SmartSpeed is a very hard feature to implement well.
Marco:
um you you can do it badly in a few easier ways but i wanted to do it right and i wanted to do it well and doing it well is not easy that said there isn't anything stopping the other podcast developers from doing it so you know like just time and and dedication and and you know possibly having to rewrite a lot of code uh you know they could do it it's it's not like it's going to be exclusive to me forever like i'll be lucky if it's exclusive to me for six months you know but
Marco:
Anyway, and yes, I know RSS Radio already does it to prevent any feedback like that.
Marco:
So it isn't even exclusive today.
Marco:
But yeah, so anyway, I'm very proud of that.
Marco:
I'm also very, very proud that my EQ meters animation thing actually works because the whole reason I did that...
Marco:
is because uh apple in their music app and ios 7 like because the problem i was trying to solve with that was how do you indicate in the in the list of episodes how do you indicate which one is currently playing and the way apple handles this is they have a little pink animation in the music screen that is like a tiny version of this in like a little circle on the side or something like that it's tiny version of a peak meters view and
Marco:
What drives me crazy about it is that it's fake.
Marco:
It's just a canned animation of some bars moving up and down.
Marco:
It is not actually reflecting the music that it's playing.
Marco:
So me, being a smartass and being arrogant, I thought, you know what, I bet I could do that for real in my app.
Marco:
And so I tried.
Marco:
And at first I was like, I'm probably going to have to use OpenGL to make it really fast and everything.
Marco:
And it's kind of hard to use OpenGL on a translucent blended layer that's going to be blended into the rest of UIKit.
Marco:
That's not easy.
Marco:
And I really didn't want the overhead of doing GL because I didn't want to be spending two weeks on this one little feature.
John:
What made you think you were going to need to use OpenGL for it?
Marco:
Just to get the animation fast enough.
Marco:
Or, you know, for battery reasons.
Marco:
Like, you know, maybe I could do it with quick draw or whatever, but maybe it would take too long.
John:
Quick draw, right.
John:
You mean the actual drawing process, though?
John:
So what you're worried about is not so much the core animation will be run through OpenGL, but it's like you didn't want to have to draw the little lines with core graphics, thinking you wouldn't be able to get 60 frames per second out of that?
Yeah.
Marco:
I was worried about that.
Marco:
And I was also worried about, you know, the FFT that's running in the background and processing all the sound.
Marco:
Like, what is that going to do to battery life?
John:
What do you think the GPU is sitting there waiting to run your DSP functions on it, right?
Marco:
I've thought about that.
Marco:
But honestly, the CPU versions of it work so incredibly well.
Marco:
For the scale I'm running them on, I don't think the GPU will make a big difference.
John:
the libraries they have those what are they called the the arm extensions the arm simd extensions neon or something yeah yeah yep so like presumably apple's libraries are you know using that behind the scenes on the cpus that support it so it's kind of like you get your own you know it's like altivec all over again
Marco:
Exactly, yeah.
Marco:
So I made very heavy use of the Accelerate framework, the VDSP functions, which all do... As far as I know, they all use Neon whenever they can.
Marco:
And so, yeah, so I made this visualizer with that.
Marco:
I realized how quickly it ran, and...
Marco:
it was originally only going to be on, like, just overlaying the artwork on the table cells.
Marco:
That's all I needed it for.
Marco:
And then I realized, oh, this is really cool.
Marco:
And I also... I added it to the main playing screen.
Marco:
First of all, because it looked cool and it seemed like a waste to have it on, like, the navigation screens and not on the now playing screen.
Marco:
And also because...
Marco:
I thought it might help if you're listening to a podcast on your phone, but you're not doing something else.
Marco:
If you're just sitting on the couch looking at your phone, nothing else is going on.
Marco:
Or you're sitting commuting on a plane or something like that.
Marco:
You want to signal to other people that you're listening?
Marco:
No, I wanted, well, first of all, it is nice that it has that feature where like, you know, in a lot of other apps, the only way you can tell that they're playing is, you know, if the time is moving, basically.
Marco:
And, you know, or, you know, the symbol changes on the play button, but like it's, these are pretty subtle signals.
Marco:
With overcast, it's very clear when it's playing something.
Marco:
But also, I wanted to give people who were just sitting there with their phone and had nothing else to do, something to look at.
Marco:
Just something to keep you visually entertained a little bit so that maybe, just maybe, you'll, for a few seconds more, not switch over to Twitter and stop paying attention to what you're listening to.
Marco:
So it was kind of like a political statement as well.
Marco:
Like, let me give you some reason to stay in this app and something to just lock your visual attention so that you can pay attention to the podcast rather than switching to something else and zoning it out.
John:
So why did you mirror all the bars, Johnny Ive?
Marco:
It looked better.
John:
Exactly.
Marco:
That's it.
Marco:
It looked better.
Marco:
Simple as that.
Marco:
There were a number of good reasons why the number of bars had to be...
Marco:
It's 19, 18, 19.
Marco:
Yeah.
Marco:
There were a number of reasons the number had to be no greater than 19.
Marco:
Like the FFT window size, it would have been really difficult and much more complicated and much more CPU intensive if I had more FFT buckets.
Marco:
So I couldn't do more bars than that.
Marco:
And so not only does it look better to have the shape be symmetrical that the bars form rather than just being like a big slope and you fall off the edge of the screen.
Marco:
So not only is the shape nice and symmetrical, but also the bars can be nice and thin relative to not being like these big fat ones.
John:
You can always cheat and interpolate between the bars, right?
Marco:
Yeah, but that's stupid.
Casey:
Yeah, I couldn't do that.
Casey:
all right so i've got two more questions and then i'd genuinely like to hear john destroy your uh user interface all right uh firstly uh what do you hope people appreciate and perhaps you feel like you've already answered that but an example of something we haven't really talked about yet is the link to other ads do wait before we make this entirely the the me show do we have any other topics we wanted to get to because no i don't want to i don't want to like take over our show
Marco:
Too late.
John:
We do have topics, but they'll keep until next week.
John:
Yeah.
Casey:
And you can blame me because I keep asking you questions.
Casey:
So it's my fault.
Casey:
So, yeah.
Casey:
So what do you hope people appreciate?
Casey:
And what I was starting to say was an example of this that I've seen a lot of positive feedback for, from, whatever, was the linking to the other independent podcast apps.
Casey:
And I've seen a lot of comments fly by about how that was a classy thing to do.
Casey:
Maybe that's your answer.
Casey:
Maybe it isn't.
Casey:
But what do you hope users of the app really appreciate?
Marco:
To answer the question directly, what I hope people really appreciate is the smart speed and the voice boost.
Marco:
Because these are the things that just were the hardest.
Marco:
They took the longest.
Marco:
And for the time being, they set me apart.
Marco:
These are features that they don't immediately scream, oh my god, must have to a lot of people.
Marco:
Some people, sure.
Marco:
But not to probably the majority of people.
Marco:
But once you try them...
Marco:
they're incredibly valuable if you care about those things and some people don't some people never play podcast faster than one x they don't want to they don't see the point or they don't like the sound or whatever a lot of people couldn't possibly um you know care about the volume normalization and everything that's fine you know i you don't need everyone to look to love you and and you don't need everyone to appreciate the amount of work you put into anything that's you know
Marco:
the the amount of work you put into something does not correlate to its value um so that's fine but i but i hope people appreciate that stuff who care you know and so that's that's the answer that now to get to the question that you kind of asked about you know why i did the the link to other apps in the in the i basically have a section in settings that links to all my competitors uh for not all of them link to some of my competitors probably the biggest ones
Marco:
the main reason why I did that, it was kind of, it was kind of a, what the hell moment.
Marco:
It was like, you know what?
Marco:
I don't want to do this thing.
Marco:
And I think it would be pretty cool.
Marco:
I was afraid though.
Marco:
It was a risk.
Marco:
I saw it as a risk.
Marco:
Uh,
Marco:
in two reasons one small and one big the small risk was that apple would reject it because they have pretty strict rules about whether you can display and link to other apps within your app and under what conditions and if you read the rules it's kind of like well this might qualify this might not like it it was a little bit vague and i wasn't sure if they would approve it turns out they don't care as far as not yet at least so we'll see you know future updates we'll see if this feature lasts but so far they don't care
Marco:
The second concern, and that's a minor concern, because if they say I can't do it, fine, I take it out and I resubmit, no big deal.
Marco:
The second reason, though, was I was afraid that it would... My goal with doing this, with linking to my competitors...
Marco:
was really well-meaning.
Marco:
It was really to just like, you know, some of these people are my friends.
Marco:
This is a small business.
Marco:
These are all indie developers like me.
Marco:
We're not talking about... I'm not linking to major corporations with VC funding who were trying to crush everybody and put everyone out of business.
Marco:
That's...
Marco:
That's not this business.
Marco:
This is a business of small independent developers who are very similar to me.
Marco:
And I wanted to kind of show solidarity with it almost, like just kind of be friendly with the business rather than being hostile towards my competitors.
Marco:
And again, some of these people are friends of mine, which made it even easier to do it.
Marco:
I was afraid, though, that it might be perceived as like me looking down on these people like, oh, you don't like my app?
Marco:
Well, fine, just take one of these, you know, because I'm like the Eric and Apple who everyone hates.
Marco:
And, you know, like that's I was I was worried about that perception happening.
Marco:
but it didn't and in fact not only did it not happen uh i don't i didn't see a single person who seemed to think that um having that feature in the app i think has gotten me more tweets more comments more emails that are all positive than anything else in the app including like all my features smart speed like everything
Marco:
People like that more than everything else I've done in the app, according to what people are telling me about and what people are posting on Twitter.
Marco:
People love it.
John:
They love it.
John:
I was just going to bring up the one jerk who I saw who was yelling at you about that on Hacker News.
John:
I guess you didn't see that one.
John:
But anyway, rest assured that the internet... I haven't read through all of Hacker News yet.
John:
Yeah, read the Hacker News to this one guy who gets all upset that you link to your... Like, it takes a special kind of determination to dislike somebody...
John:
To figure out a way that someone linking to his competitors in a respectful way from his application somehow shows that he is a terrible person.
John:
But this person took their best shot at it.
Casey:
Yep.
Casey:
So my last question, which I think you just answered seconds ago, was what was your most surprising response?
Casey:
And it sounds like the linking to other people's apps was that.
Marco:
Yeah, definitely.
Marco:
That and a combination of both of how many people immediately saw that and immediately cared about it in a positive way.
Marco:
So that's number one.
Marco:
Number two, I was really just overall very pleasantly surprised at how positive the reactions generally were.
Marco:
I didn't know.
Marco:
Like...
Marco:
Until this launch, I had no idea whether anyone would care about the new cool stuff I did because I don't support the iPad, the Mac, Android.
Marco:
I barely support the web.
Marco:
I don't have streaming.
Marco:
I don't support videos.
Marco:
There's all these limitations in Overcast.
Marco:
Those are pretty big omissions to a lot of people.
Marco:
Right.
Marco:
Right.
Marco:
So there was, there was that.
Marco:
Um, I also, you know, I never listened to video.
Marco:
I never watched video podcasts because I'm always listening to podcasts in context where I can't look at a screen.
Marco:
Uh, so I don't use video podcasts and streaming.
Marco:
As I said, like I'm going to add streaming.
Marco:
I didn't make it into version one because it wasn't, it wasn't so important to hold back the release for another three months while I did it and wait for iOS eight like that.
Marco:
So that's, that's why.
Marco:
Overall, though, I didn't know how many people out there thought like me on this.
Marco:
Like certain features I don't even have, big and small.
Marco:
I didn't know how many people that would anger and offend and turn off and who would just say useless one star.
Marco:
And it turns out there are a few, of course.
Marco:
There's always going to be a few, but it's a much smaller percentage of people than I expected.
Casey:
Yeah, that's awesome.
Casey:
And I should, to back up just a brief moment, I should point out that I was curious how you were going to handle ordering the podcast apps that you were linking to, because one could perhaps unreasonably construe that, oh, whatever you put at the top is clearly your most favorite of all your competitors.
Casey:
And I don't remember if it was that you told me or I noticed, but you found a way around that, which I thought was very clever.
Yeah.
Marco:
I just randomize the list every time you open the screen.
Marco:
Right.
Casey:
Which I thought was a very clever idea and a really good touch as well.
Marco:
I do the same thing for the same reason with the directory categories.
Marco:
The category list itself is ordered intentionally, but the podcasts in each category are randomly ordered every time you load it.
Marco:
Nice.
Marco:
Same reason, because it's like, you know, I don't want to have to rank these one through six in this category.
Marco:
I don't care that much.
Marco:
I don't want it to be like that.
John:
You can always do alphabetical for the directory, I mean.
Marco:
Yeah, but then you have like AAA tech show.
Marco:
Then you have the yellow pages problem.
John:
People are going to be gaming your particular iPod podcast application.
Marco:
Well, but like your lessons to Casey.
Marco:
It's like, you want to add that security now or later?
Marco:
It's better off to add it now.
Marco:
So yeah, that's why I did that that way.
Marco:
And also, by the way, another risk that I thought...
Marco:
The only developer who was in that list who knew about it beforehand was underscore David Smith, because he's a friend of ours.
Marco:
He was on the beta.
Marco:
So Podwrangler, by underscore David Smith, that was the only app on there that knew about it beforehand.
Marco:
I was also afraid, and this could still happen, that one of those developers would get really pissed off at me for including them on that list and would demand removal.
Marco:
If that happens, I can do it server-side.
Marco:
It's no big deal.
John:
Why would they demand removal?
Marco:
Maybe they really hate me as a competitor and don't want to be in my app at all.
Marco:
I don't know.
John:
They don't want you to link to their app?
Marco:
It was a risk.
Marco:
I don't think it was a major risk, but I was worried.
Marco:
What if one of these competitors gets really upset with me putting them in here?
Casey:
I think it's an insane thing to have to worry about, but I concur with you, Marco, that that is something I would worry about as well if I were you.
Marco:
I mean, keep in mind, I've been kind of overly sensitive to what, you know, of this thing I'm doing that I think is well-meaning and harmless, what could people possibly have a major problem with?
Marco:
Because everything I've written on the internet or said here has been attacked with that kind of standard recently.
Marco:
So, like, I have to be very careful, like, anyway, just try to think, like, in what ways can this be totally misconstrued that would cause problems for me or other people?
John:
So in the chat room, I thought of something that I thought of when I first saw this.
John:
It's like, if you had put things from Megacorps in there, they'd be like, you can't use our trademark image in your application.
Marco:
technically maybe however it's their app icon which i'm loading from the app store using it to show their app page so that i'm not sure that would really hold water but you know if anybody complained i would remove them it's no big deal like again i said i could do it server-side and by commenting out one line in an array but still like it's i would rather i'd rather avoid conflicts rather than like invite them and then try to escape them
Marco:
But overall, based on the response from that competitor's list, I think it was the right move.
Marco:
I'm totally blown away by how many people just love it.
Casey:
All right.
Casey:
So the chat room would like me to ask, how do you handle the retired greats?
Casey:
And perhaps in general, could you give us just a quick blurb on how you handled the directory overall?
Marco:
I whipped it together three days ago.
Marco:
And I intend to update it sometimes.
John:
that's it that's kind of what i thought i'm not sure what they're looking for you to say but at least we the directory part like the categories though it's like oh this is a tech podcast is that how is that determined is that metadata that's in the podcast is that you just saying oh this is a tech podcast these are all handpicked in my admin panel like i i can create categories and put whatever i want into them
John:
But so it's not it's not exhaustive.
John:
I haven't browsed it.
John:
It's just like, here's a bunch of tech podcasts.
Marco:
Yeah, it's it's meant to be a starting point.
Marco:
So there's every category has in it a subscribe to all button.
Marco:
And the idea of adding this, like one of my beta testers asked, you know, is this here because a lot of people need to do this?
Marco:
Like, is this a common request?
Marco:
Why is there a subscribe to all button taking up a whole table row in the directory?
Marco:
And the reason why it's there is not because anybody has ever asked anybody for that feature, as far as I know.
Marco:
It's kind of an opportunistic, like, well, let me give them a chance.
Marco:
Maybe somebody will do this.
Marco:
In my opinion, it's a way to promote podcasts and to give people a quick way, if they subscribe to nothing, if this is their first time ever using a podcast app and they don't know what to subscribe to, go pick a category, hit subscribe to all, and you'll have enough content to last you most of your time that you need to listen to something.
Marco:
um so that's that's basically it it was like a these are like little mini collections like little mini curated collections of you know six to eight podcasts in each category um the idea was not to be exhaustive but to provide like a starter kit to people um and this was this is a hedge i don't know if the directory will prove to be the most important part here in which case i should probably make it more robust um
Marco:
Or if most people will use search and Twitter to find their stuff.
Marco:
So this is kind of a hedge where I have a medium-strength Twitter feature, a basic directory, and a good search.
Marco:
And I think a good search you always have to have.
Marco:
So that's out of the question.
Marco:
You have to have that.
Marco:
But between the Twitter and the directory, which one do I focus more time on in the future?
Marco:
That will be determined by what people actually use.
John:
Well, you can you can amp up your directory as people start using the application, because then you can do the stuff that Apple does in its store.
John:
I'm assuming you don't have access to Apple's metadata, right?
John:
Like, yeah, new and noteworthy, top rated or whatever.
John:
But you can say it like popular.
John:
Pretty soon you'll know what.
John:
what are the popular tech podcasts, not just from your list, but in general, like you'll, if you are willing to categorize a large portion or scrape categorizations, a large portion of the podcast, you will have data to know, Oh, this one, I mean, you could rank them by popularity.
John:
Like, you know, what is the most popular comedy podcast and put that one up at the top.
Marco:
Well, the podcast put their – they put iTunes category metadata in the feed usually because iTunes has this RSS spec that almost every podcast feed adheres to so they can be listed in iTunes.
Marco:
And so many podcasts claim their own categories in the feed.
Marco:
So if I wanted to do something like that, I could.
Marco:
I'm not convinced of the value of that.
Marco:
If you browse around the iTunes top list, once you leave the editorial areas of iTunes, like the editor's picks and stuff, if you go to just the raw top things in this category list, I don't know how useful that is.
Marco:
I'm not sure.
Marco:
This is the thing.
Marco:
I don't know yet.
Marco:
I don't know.
Marco:
Do most people find their podcasts by browsing the directory or by searching for something by name?
John:
The social one is probably the most reliable, even though it seems like the weirdest and the weirdest, oh, I got to put my Twitter thing in or whatever, because the recommendations from your friends or people you follow.
John:
So it's like the top list.
John:
If you rank by popularity, like just the same stuff always.
John:
It's like this American life is going to be the number one.
John:
you know like it's spoiler that's what's that's what's going to be the number one thing there was this really super but but who hasn't heard of this american life and in some respects it's like well that's a good podcast people you know there's a high chance that just an average person picked out of a hat will like this podcast because lots of people like this but with with podcasts with a curated list then it's like well if your taste is like marcos then you will you may like one of these picks more than you would like this american life because it's just it goes it's quirky as your particular thing but that's why i think the social one is actually the best because
John:
you have to find someone who has similar tastes to you and then follow their recommendations.
John:
The super popular one only works if you are not an individual but are rather the average human being.
John:
Because then you're like, oh, yes, exactly.
John:
I am the average human and I like the best things.
John:
I find with podcasts, people are most excited when they find something that may not be particularly popular.
John:
This show, for example.
John:
It may not be particularly popular in the grand scheme of things on this American life type level, but exactly speaks to their particular interests of like, I like people who have one particular kind of model train and they will be so excited about a podcast just about that kind of model train.
John:
They will love that show more than this American life.
Marco:
Yeah, and I really think the social features are much more useful than the directory for most people.
Marco:
I think the role of a directory is to provide a starting point, right?
Marco:
And that's why I have my little starter kits in each of the little categories.
Marco:
That's fine.
Marco:
Um, but you know, once you get past, give me a few things in X category, the browsing experience is terrible.
Marco:
The usefulness of the rankings is off.
Marco:
You know, that's why I think, you know, I, this whole social thing is the way to go.
Marco:
Um, I don't know.
Marco:
All right, John.
Marco:
Do your worst.
Marco:
Thanks a lot to our three sponsors this week.
Marco:
Need, Squarespace, and Fracture.
Marco:
And we will see you next week.
Marco:
Now the show is over.
Marco:
They didn't even mean to begin.
Marco:
Because it was accidental.
Marco:
Accidental.
Marco:
Oh, it was accidental.
Casey:
Accidental.
Marco:
John didn't do any research.
Marco:
Margo and Casey wouldn't let him because it was accidental.
Marco:
It was accidental.
John:
And you can find the show notes at ATP.FM.
John:
It's accidental.
Marco:
They didn't mean to.
John:
did you really just do that no i well it should be in the after show this is just i mean like i was on the beta so it's not like i'm you know saying anything that like i should i should have been giving more feedback during the beta but every time i went to the the beta feedback thing and i read it i read everyone else's feedback i'm like yeah they're getting all this stuff
John:
People would say things, yeah, good, someone said that already.
John:
You had a lot of good beta testers, so they covered everything, more or less.
John:
Although, I mean, I have a few things I could throw.
John:
Some of these have already been said, but they're worth saying in the show.
John:
What did they cover insufficiently?
John:
It's not insufficient.
John:
So I talked to you about this once in an after show before like things are revealed.
John:
But so let me just start with what I tweeted was like, I'm using this app instead of my iPod shuffle.
John:
And I am like I'm off of my iPod shuffle now.
John:
Part of that is due to Bluetooth and not so much the application because I've switched over to like, you know, wirelessly playing it during my commute.
John:
Just let me believe it's the app.
John:
Yeah, but the other part is, here's the other part.
John:
I'm one of those people who does not care about smart speed.
John:
I don't listen to things at more than 1x.
John:
I don't need a volume booster.
John:
So all those features you spent a long time ago are meaningless to me.
John:
But I would not be using your application at all because I have other podcast apps that I purchased, right?
John:
I didn't use them before, too.
John:
And again, part of that is Bluetooth.
John:
But it's because what I was doing with my iPod Shuffle, besides cursing at it, I was bringing it back to iTunes, plugging it in, and...
John:
at various times i would either with my old ipod shuffle i would manually drag individual uh episodes onto the ipod shuffle like you know sync manually sync individual episodes right and then when i got a new ipod shuffle it didn't let me do it that way and i had to make a playlist but it was still just a manual playlist so i would drag individual episodes into a manual playlist and then sync to the ipod shuffle and what i was doing when i dragged them into the playlist i was like
John:
All right, here's the order that I want to listen to.
John:
Because I didn't have a screen on the iPod.
John:
I can't on the iPod shuffle.
John:
I just have to hit play when I get in the car.
John:
I need them to play in exactly in the right order.
John:
So I was prioritizing them.
John:
And so I would say, oh, well, as soon as an episode of, you know, whatever, Roderick Online comes out, I want to listen to that right away.
John:
Even if I'm in the middle of an episode of some other thing that I was listening to, I want the Roderick Online to come on the top.
John:
but you know like i want i want to do these three episodes in this order and i want to do them as a block i was it was like priority ordered but with manual adjustments and that sounds familiar it's exactly what overcast does and that is the probably the maybe the the one and only main reason i use this application is because the playlists allow me to make an arrangement that's exactly what i was doing manually before the difference is now that i mean you know it's it's
John:
on a server somewhere it's synchronized so like i just i installed overcast on my ipad too not that i'm going to listen from there it keeps track of where i am i don't have to have the problem of like switching off different environments if i don't have the shuffle with me or whatever like anything that's an ios device will know where i left off what episode i was on what the play positions are and all of those things and as i reorder things that follows me around as well so this is an automation of the terrible manual process i was doing before so that's why i use the application but
John:
all right so this is supposed to be me complaining i'm basically what this is a great complaint what i'm trying to explain here is that when people said oh well you know people on twitter were having there was like this mini debate that spun off from me saying that i use the application if unless you care about exactly the things that same things that i care about that doesn't mean this application is necessarily for you right because if you if you care about the smart speed stuff and i don't like that's it's a whole different set of priorities and that's what you're getting at with all the people with the feature requests
John:
If a podcast app is useless to you, if it doesn't use video podcasts, you're not going to like this app because it doesn't do video podcasts.
John:
Everybody has something like that.
John:
And so the same reason that I really like this application is like a reason that someone else might reject it entirely.
John:
Or, you know, it's like the demands people have of podcast applications are so different that hearing just people like, well, John recommends it.
John:
It must be good.
John:
No.
John:
No, maybe it's no good for you.
John:
Maybe you want a feature that it doesn't have.
John:
Or in the case of video, that it's probably never going to have.
John:
Just because I recommend it doesn't mean that, oh, it's automatically good.
John:
It just means it fits my needs appropriately.
John:
And I think the playlist feature in particular, I can't be the only one who does... Maybe I'm the only one who did it manually because it's just too much of a pain.
John:
But once people can do it without the pain that I was going through, like they can just do it by just dragging their thumb around...
John:
I think a lot of people will find that feature.
John:
I mean, like you were saying, your favorite feature.
John:
I think that is the killer feature, even though it's like, oh, you let people reorder stuff in a table view and did a little algorithm to make stuff land in the right place, more or less.
John:
That, I think, is the most important feature for me for this application.
John:
But my first complaint is related to that.
John:
When I went to try to say, okay, well, Marco has this application.
John:
He says it does all this playlist stuff.
John:
First of all, I didn't have faith that I was going to be able to do that.
John:
I figured I'll just make a manual playlist and I'll just manually do stuff like I was doing before.
John:
Even that would be an upgrade because manually dragging tracks onto the iPod Shuffle is a nightmare compared to doing it on the screen.
Marco:
As a previous iPod Shuffle owner...
Marco:
Using an iPod shuffle in any way other than playing a random selection of music tracks is horrible.
John:
Even random selection of music tracks is horrible if you have other stuff on there.
John:
The voiceover thing where it tells you if you happen to have music and podcasts, you've got to make sure you're in the right realm before you start playing.
Marco:
Oh, wow.
Marco:
That was added after my shuffle time.
Marco:
I had the very first shuffle and I think the third one.
John:
Yeah, I've had a series of them, and they're not my friends.
John:
A lot of it has to do with iTunes being crappy, too.
John:
But anyway, when I was trying to make my first playlist, I saw that it has this priority podcast thing.
John:
I'm like, oh, yeah, that's what I want.
John:
And then I remembered you talking about the manual rewriting with the priorities.
John:
I don't understand why priority podcasts as a thing are a concept in the application.
John:
There is two kinds of podcasts.
John:
There is a priority podcast, meaning a podcast that can have a priority, and then non-priority podcast.
John:
Why not just make all the podcasts?
John:
The first thing I do when I make any playlists is I say, select priority podcasts, and I select them all because they all have a priority.
John:
There's no tail at the end where I'm like, okay, this is my top five, but everything else is just exactly equal.
John:
Because what I find myself having to do is go into the thing and say,
John:
select priority podcast select select select select select and that step feels like it doesn't need to exist like that concept of a priority and a non-priority podcast seems like a complication that could confuse people into thinking they can't get the playlist they want when really they can it's like oh no you got to mark those as priority podcasts first now maybe i'm wrong and other people really do want to say i have three priority podcasts and everything else i don't care and it's just a big it's just a big mush for me but that's me that's me too
John:
I want all of them to be priority podcasts because I know, I mean, there's not that many.
John:
I mean, I read off my list.
John:
It's like maybe 10, 12 subscriptions.
John:
I know which ones, what order I want them in, all 12 of them.
John:
It's not as if I have them confused about any ones at the bottom.
John:
Anyway, people in the chat room are saying they just want to prioritize a few of them.
John:
But for me, that is an additional complication.
John:
that confused me at first and then it frustrated me every time i had to go make a playlist because i had to select the price and even now when i add a subscription because i still haven't even caught up like i think i didn't even put core intuition on here yet when i go add that i'm gonna have to remember to go into my playlist and mark that as a priority podcast and sort it rather than it just being becoming the last priority podcast or whatever or the first one or something like that now it's in the non-priority podcast category
John:
So I find that frustrating a couple people have already complained to you about this but like this I know I have a crappy a5 device but there's a pause sometimes when I tap on a thing before it switches screens before it starts playing I don't know what it's doing during that pause but it's not playing the audio it's for already downloaded stuff do you have any idea what what that
John:
Yeah, no, that's real.
Marco:
Yeah, that is, like, I have to async that, basically.
Marco:
Like, the API for reading audio files, it's just like this old blocking C API.
Marco:
And what I would love to do is have lower-level access to the files so I could, like, whatever it's doing on certain files where it has to, like, preload something or pre-read something to get from zero to playing...
Marco:
I would love to do that when it downloads and then cache the result of that so that way when you go to play it, it can play instantly.
Marco:
But I don't have that kind of access in the APIs.
Marco:
And maybe I can go lower level somehow, but I haven't found a way.
John:
Some kind of like Amazon Fire predictive, like if I've just added a podcast or if I've just downloaded it, chances are good that that's going to be the one that I'm next going to play.
John:
Or even if it...
John:
Even if you want to fake it out and make it perceptually faster by changing screens before the playing starts?
Marco:
Right.
Marco:
So that's the right answer, and that's what I have to do.
Marco:
I just haven't done it yet.
Marco:
The right answer is I have to kick off the screen load and then give the screen a loading state, and then give the now playing screen a loading state, and then kick off the load of the file asynchronously.
Marco:
So I have to do that.
Marco:
It's on my to-do list for 1.1 or whatever.
Marco:
I haven't gotten to it yet.
John:
Uh, yeah.
John:
Another thing that several people have already complained about, but, and I'm sure you know about, but it's worth airing out for the listeners as well as the, the idea of going through and cherry picking individual episodes, having it boot you back out to whatever screen it sends you back out to.
John:
Like, it's not as easy to just go through, Oh, I want that episode of that.
John:
Oh, I want that episode of that.
John:
You have, you get sent back out to the home thing and you got to dig your way back in again and fine.
John:
I've been frustrated by that a few times.
John:
Uh, in this one, I know you got complained about this too, but I don't remember what your answer for it was.
John:
If you are unfortunate enough to hit the end of a podcast before you realize you've hit the end of it and it goes away.
John:
Like, I don't know what the solution is, but you're saying like maybe you could have a holding bin for it or what it was several times.
John:
I've either accidentally scrubbed to the end of the podcast, which is easy to do with the fat thumb on the little scrubber thing or whatever.
John:
Or it has run out when I've like, you know, it's been playing and I took my earphones off and didn't notice it was still playing or whatever and hit the end.
John:
And now the thing is gone and I have to re-download it.
John:
What is what are you doing about that one?
Marco:
that's tricky this most of the feature requests i've gotten so far today or the people who are like oh i cannot use the sat because i need to manage x almost all of them are storage management of some sort like a lot of people are like one request that i keep getting which i um i never really considered that you know people would want this but they do i just didn't cross my mind i guess
Marco:
is a different state, a state of things that are new or that you haven't played and deleted.
Marco:
So they're like the active state of the item, but that is not downloaded and won't be downloaded.
Marco:
Because right now, my states are basically needs to be downloaded, downloaded, and deleted.
Marco:
That's it.
Marco:
Those are the three states an item can be in.
Marco:
Yeah, like a will-be-downloaded queue.
Yeah.
Marco:
No, but what people are asking for is they want items that like on certain devices just are never automatically downloaded.
John:
Right.
John:
Like it's a queue that doesn't run it.
Marco:
Like it's a new item.
Marco:
Yeah, it's a new item that I want to keep as new, like keep as unplayed, but don't have the app try to download it.
Marco:
And maybe I'll try to download it some other time.
Marco:
You know, so there's and that's a very common request so far in the email.
Marco:
Again, I was not expecting that at all.
John:
In general, looking at the state of episodes, when I'm going through any list, it's not always easy to tell what state is that.
John:
Some kind of iconography or visual elements to say, because you have those states in your head.
John:
Does this need to be downloaded?
John:
Has it already been downloaded?
John:
Has it been downloaded and started?
John:
How far progress in it?
John:
Or is it one of those weird things you just described where it's not supposed to be downloaded in this device?
John:
You've got the little eye there to try to figure out what's what, but...
John:
other i mean instacast is the main other application that i've used and i forget what it's iconography it's like a little green corner thing when it's been downloaded and like maybe there's like a progress bar or something i don't even know what the hell it uses but like some visual way to look at a list and when i look at these lists i mentioned before like my nervousness about going on a plane flight to wdc and saying i don't know if all the podcasts i want to listen to are downloaded or not i can't glance at the app and tell that i could go into each individual thing and see if it's downloaded and try to start playing to make sure that it's there but like
John:
Some sort of visual reassurance or acknowledgement of the state of each episode.
Marco:
See, and this is going to be a hard balance to strike.
Marco:
Podcast apps, I think on one extreme, you have apps like Downcast, I think Eyecatcher is like this, where they just have tons of customizable settings for everything.
Marco:
that comes at a pretty big cost of interface complexity.
Marco:
And, you know, I'm trying... This app is trying to be mass market.
Marco:
I'm trying to... I'm really trying to compete with Apple and Stitcher.
Marco:
Like, that's what I'm looking at.
Marco:
I'm not trying to compete with Downcast and Pocketcast and Instacast.
John:
But this isn't like a twitchy feature.
John:
This is like a...
John:
simple like a visual i mean i guess it's like visual clutter you're trying to not have like you want to you need to convey a certain amount of information and you don't want to make it clutter you don't want to have like you look at an episode list and it has like a million little stickers and dials all over it telling you like obscure icons that you're like what does that mean it's like a lollipop and there's a red circle and there's a line through it and there's a thing that looks like it could be a progress part like but i think that state information about
John:
which one was i just playing which thing is currently paused i mean like you said with the big giant eq meter over the things like that gives an indication of what's currently playing but for all the other states like has this been downloaded is this going to be downloaded how far am i in the episode is it played or not and by the way someone in the chat room mentioned a reasonable solution to the what happens when the uh
John:
the timer goes off the end have a recently played list that like you just pull off the end and delete from that after some period of time so if you accidentally scrub your way through an episode you can go to the recently played list i don't i don't know what the good solutions are like the reason the reason i didn't put a lot of these in like the the beta feedback is there was no i can't say oh obviously you should need to do whatever because i would try to think well how would you solve that problem they're not easy like it's there's only so much room for buttons there's only so much room for visual clutter
John:
And you have a navigation hierarchy that you, I mean, you don't want to like break out of that and start going like three-dimensional chess where like you normally go like right to left, but you can also zoom in and out.
John:
And it gets confusing because like you said, there's a lot of screens.
Marco:
Right.
Marco:
And the question with all these features, you know, if, okay, I want a way to do X. I want a way to toggle this state without affecting this state.
Marco:
So I want a new state of this or I want a new option to do this.
Marco:
One of the big questions is, well, where do you put all this stuff?
Marco:
And what do you do in the interface?
Marco:
Is that hidden behind a gesture?
Marco:
If so, how does it explain to anybody?
Marco:
Is it behind an info button?
Marco:
Well, where do you put the info button?
Marco:
Is it in the settings screen?
Marco:
Well, then how big is the settings screen?
Marco:
The apps I've mentioned, the ones that have a lot of options, like Downcast and iCast, they have six different pages in their settings screens because they have all these settings that people request have to go somewhere.
Marco:
and and the uis for that can be pretty clunky and cumbersome and can turn off a lot of people and so i'm trying to i'm trying to balance this like you know i'm trying to balance between trying to give people what they want uh or rather trying to give people what they ask for um and trying to be a mass market appeal app you know i don't want to add a
Marco:
uh i'm never gonna win that race and because mostly because i can't but secondarily because i don't want to um you know if you want tons of fine-grained controls over all that stuff i think you'll be better off using downcast just like just use downcast you just concentrate on adding making it the features you already have the features that are already there making it clearer to the people using those features and
John:
what's going on because you have a certain amount of state that you already support right and you have certain features that you already support but a lot of them like you said like it might be hidden like for just to give another example i'm looking at the app now on the little download icon it has a badge that says five i tap first of all i don't know what that badge means i assume that means there's five downloads are they in progress or whatever i tap on the little five i see a list of five episodes they all say download paused underneath them in very light uh text it would be hard to read if i was even older
John:
I don't know why these are all paused.
John:
And this is an example of the mysteries of Overcast.
John:
Sometimes it does things that I don't understand.
John:
It's working best when it's like you're in the cycle.
Marco:
Now you see why I wrote three downloaders.
John:
Go ahead.
John:
It's best when you're in sort of the cycle where I was in a long period of time where I was just like, I didn't do anything in the application.
John:
I had set up my subscriptions.
John:
I had set up my playlists.
John:
I would wake up in the morning, all my podcasts would be there in exactly the order that I wanted them, and I would just play.
John:
Like, that's, you know, that's how you want it to work.
John:
It's like, I don't have to touch this application.
John:
It does exactly what I want.
John:
I never have to wait for it or whatever.
John:
But when something does go wrong, or I want to do something weird, like, oh, you know, someone recommended, this was before the Twitter recommendations, but oh.
John:
Someone recommended that I should listen to that episode of Electric Shadow where they talk about Apple TV.
John:
So I go into search, find Electric Shadow, find the episode.
John:
I'm like, well, how do I get this into my thing?
John:
Oh, now I got to market as a priority podcast.
John:
Maybe I could just manually arrange that.
John:
Am I subscribed to Electric Shadow now or did I just download the one episode?
John:
Is it going to?
John:
uh download all the rest of the electric shadows or does it know i just got that one like these are features that already exist like you can do all these things but i was unsure whether i was using the app in the right way to do them you know what i mean and like that i think rather than adding features other than the ones you think you have to add is probably the place to concentrate especially for a mass market because this app already does tons of stuff and already has tons of features but it's not always clear to the inexperienced user or the new user
Marco:
that those features exist or that there's people are successfully using them yeah you're totally right i mean that's i agree there i'm not gonna argue with you there i agree there are there's a lot of things in the app that are not as clear as they should be and that are not as intuitive as they should be and a lot of features that are that are kind of hidden um that you know probably shouldn't be you know it's 1.0 and i'm open to suggestions so file a bug
John:
yeah well that's the problem like if if i had all the good suggestions i'd be telling you exactly what to do but it's not an easy problem like exactly it's not it's not like oh it's just it's a lot of times it is you use an application you're like oh this is obvious you should be doing this and it's for some of the the feature features are easy to do like oh mark you should totally let me start listening immediately and then save that as a download like you know you need to do that that's yeah technical thing you can tell the person exactly how you want it to work and it's fine but the ui thinks it's like
John:
So what do you add?
John:
What buttons do you add?
John:
What buttons do you remove?
John:
We've already got swipe and tap.
John:
Where else are you going to stick this other thing?
John:
That's why I keep thinking visually.
John:
I don't know what the design would look like.
John:
I think you could get something that fits in the theme, but that's the only thing I have a concrete suggestion for.
John:
some kind of visual indication of the states that already exists for episodes and such.
John:
And the navigation thing of when you're trying to cherry pick episodes, not getting chalked back up.
John:
But again, you've heard most all this feedback before.
John:
I'm more or less just airing it on the podcast so other people can know that you've heard this feedback.
John:
You should just make the beta board public and say, people have said all these things before.
John:
Take a look.
Marco:
To some degree, it's a difference of philosophy on how much of this stuff that people are asking for I should even offer.
Marco:
I would much rather favor good default behavior than a preference if I can get away with it.
Marco:
And there's sometimes when you can't get away with that.
Marco:
Sometimes if people are really divided on something and it's like 50-50, half people want this, half people want that, neither of them is clearly better than the other or just a difference of preference, then you usually have to have a setting somewhere for that.
John:
Do you think you need a setting for the hit the end of the episode, it immediately gets deleted and you can't find it again?
John:
Because the disk-based people probably want that.
John:
People who are like, I want it to be gone immediately.
John:
But if you just put them into the recently played episodes thing and got rid of them after five minutes, the disk-based people wouldn't care.
John:
But the I accidentally went to the end people, it's kind of like the I accidentally, did you mean to scroll to the top by hitting the status bar or did you not really?
John:
An Instapaper, right?
John:
it's not you need to have that feature but sometimes people do it accidentally this is a similar situation like it's a frustrating situation when you hit especially when i'm trying to scrub around even on our own episode i was trying to listen to something we were saying in an after show and i was trying to scrub around near the end of the thing to find to go back because i had missed something because you know i've been distracted for a second and i scrubbed off the end of the episode went away that's not good and like the disc space people i'm like you can wait five minutes disc space people i'm one of the disc space people believe me i will get those emails
John:
I'm always running out of space on my devices, too.
John:
But it's much worse to accidentally try to, you know, scrub back to hear something that Casey said, accidentally go off the end.
John:
And, yeah, people were asking for a skip to skip the ATP theme song.
John:
And I'm like, oh, people like the theme song.
John:
Right.
John:
But I was I find myself speaking going off the end at the end of Back to Work.
John:
I don't like listening to that theme song.
John:
As soon as it starts playing, I want to be done.
John:
But to make the episode go away, I have to manually, as far as I know, manually thumb the scrubber to the end to make that episode, you know, be marked as played.
John:
Whereas as far as I'm concerned, as soon as the little music starts playing, I'm done with the episode.
John:
yeah i just hit i just hit fast forward like three times which is enough to cover and then i just and it deletes itself and goes to the next episode yeah i know there's no good solution to that but what i'm saying is like the things that happen near the borders at the end of the episode and fighting with the little you know the behavior of should it go away sometimes i want it to go away immediately sometimes i don't want it to go away accidentally and so but i i think just like like the you know
John:
recycle bin or trash can or whatever having having some sort of buffer zone for things to stay in for a short period of time without any settings related to that just say that's the behavior that the people who need the space will just you know just tell them it's immediately freed and then five minutes later it will be yeah right yeah i mean that that's worth considering but then then i have to have a ui for okay well how do you get to these deleted do they show up in a special list somewhere
John:
Yeah, I mean, you have playlists, right?
John:
So I would just keep using that metaphor.
John:
These are smart playlists that are built in.
Marco:
You know what I mean?
Marco:
I don't know.
Marco:
There's enough cost to that feature that I'm not sure it's worth it.
Marco:
And then there's also the cognitive burden that you put on all the users.
Marco:
When an app could behave in two or three different ways, then the user's trying to figure out, okay, we'll wait.
Marco:
Yeah.
Marco:
I just did this, then, you know, where is this, or what happened, or do I have this file?
Marco:
Like, you said earlier that you were, you know, you wanted to be sure if you're getting on a plane or something, you want to know whether everything's downloaded or not, right?
Marco:
One of the reasons why I've kept the storage model so simple is to provide that assurance, to know, like, okay, if there is no number badge or frowny face on the downloads icon, then I have everything.
Marco:
That's it.
Marco:
Like, that's it.
Marco:
If the downloads icon is not showing a status,
John:
I didn't know that.
John:
That concept is clear to you, but I didn't know that.
John:
I'm glad I now know that, so I will look at that and if that's the model.
John:
But that model, the programmer model, that's in your head, but the user model is not... There's nothing in the UI that tells me that that should be the case.
John:
The way I can know that I'm safe is I just look to see if there's any badge on the download icon, and if there isn't, I'm safe.
Marco:
right and that's and you you got burned early in the beta because i changed this halfway through the beta earlier on when it first hit you when you first complained about it i was not validating the files i was getting if the download gave me a file and the download completed successfully i said okay it succeeded done and i moved on and then you tap you tap the file and you'd get the that is unfortunate error um
Marco:
And it would say, oh, I can't play this file.
Marco:
I don't know why.
Marco:
That error means that opening the file in the audio processor failed.
Marco:
And often that was because it was a bad download.
Marco:
Sometimes it was like it was not actually an audio file.
Marco:
It was like somebody's 503 page when there was a server error.
Marco:
So what I do now in the downloader, after you made that complaint, that was correct.
Marco:
And so what I do now is...
Marco:
As soon as the files download, there's a brief pause where it seems to freeze at 99%.
Marco:
And the reason why is because it's loading it into the audio processor right then to see, is this a real audio file?
Marco:
And how long is it?
Marco:
And, you know, is there anything I need to get any information to get from this?
Marco:
That way, once it downloads, it can give you an accurate duration.
Marco:
And if it's not actually an audio file, it can consider that a failed download and then show it in the UI and maybe try to retry it later or something like that.
Marco:
So now with that, you can be pretty sure that what you're getting, you know, like as soon as it was downloaded, it was tested in the thing that opens audio files.
Marco:
So it will open.
John:
Well, I know you've got the accidental delete by scrubbing complaint before, and I think you'll get it again.
John:
So maybe, you know, like you got it from a couple of people in the beta.
John:
Maybe you'll check your email to see if it comes up more often.
John:
But I still say that scrubbing around in a downloaded episode should never cause that episode to be deleted, despite the fact that, yes, I agree that when you're done playing the episode...
John:
having it be automatically deleted is pretty much what people want to do but me moving my thumb around or even hitting the fast forward button should never cause that episode because if i am on the plane everything's downloaded and i'm listening to something and at the beginning of the episode they make a reference to something at the end i'm like i want to skip to the end and see what they're referring to and i go skip to the end i guess deleted like i wanted to listen to that to our podcast now i'm in a plane with no wi-fi and i can't like scrubbing using the scrubber does not seem like it should be something that causes data loss
John:
well but but because like but i mean you just wait wait wait to see what the feedback is like maybe i'm the only one there was like three two or three other people who had similar comments in the beta no i've had it happen i've had it happen i mean just you'll if it's a far it's a problem you'll find out because right now like when the people download on day one maybe they don't notice once they use it for a week or so if you'll find out what the real percentage is
Marco:
Yeah, I mean, one thing I did about in like the second or third beta, I exchanged a scrubber so that before it was continuous, as soon as you would drag it around, it would seek to that point.
Marco:
And so if you just held your finger over and dragged to the right, it would just, it would eventually, like as soon as you hit the far right edge, bam, deleted the podcast.
Marco:
The way it's released now and the way it was about a third of the way into the beta is it's momentary.
Marco:
So you have to touch down, drag it around.
Marco:
As you're dragging it around, it doesn't actually seek until you release it.
Marco:
And so in order to hit the end and delete the file on the scrubber, you have to drag it to the end and release it while it's at the end to actually have that happen.
John:
But like when you're trying to get to like the last 30 seconds of a two hour podcast and your big thumb is covering like the timestamp and you can't really, you know, it's easy to accidentally even release even just to take a look at what the timestamp is and not realize you've hit the end.
Marco:
Yeah, that's fair.
Marco:
I mean, what you're identifying is definitely not ideal.
Marco:
The question is whether the alternatives are worse, like whether the alternative complexity is actually overall worse.
Marco:
And I don't know the answer to that.
Marco:
I'm sure there's ways I can improve it that I haven't thought of yet.
Marco:
But, you know, like adding this whole different state of episodes of like this like purgatory state, which would be confusing.
Marco:
A lot of people would never even realize they could go back and get them.
Marco:
And the story people would be very upset by it.
Marco:
And it would be more work and things would be more complicated.
Marco:
There'd be more weird bug edge case potential.
Marco:
So like...
John:
Orange people would never know.
John:
Anyway, you can always make it a setting in that case.
John:
It's five minutes.
John:
You delete it in fact for five minutes.
John:
The other weird thing that, like, I mean, there's limited space for navigation here, but, like, I wanted to show my wife the directory today, and I had to think, now, where was the directory under?
John:
Because if you look at the top, it's icon that really should be a gear, but Marco's stubborn.
John:
Download.
John:
Oh, no.
Casey:
Add a playlist.
Casey:
No.
John:
And then a plus.
Casey:
No.
Casey:
I agree with the icon.
Casey:
I don't like the gear.
Casey:
Well, that's not fair.
Casey:
I think that the icon works.
John:
It's a perfectly nice icon.
John:
I'm just saying that gear is the symbol for settings.
John:
Anyway, and I had to think like, well, it's not going to be under downloads because it's a directory.
John:
The little plus thing with the document, I had to keep reinforcing to myself that that means that's add playlist, right?
John:
Yeah.
John:
yeah right and so the plus is like well by a process of elimination it has to be the plus to see the directory and it makes sense because you're adding a podcast kind of but like it's like i expect that to be like the search or whatever but it's also the directory uh anyway my wife searched for atp and didn't find this podcast so that's her bug report you already got that one too though
John:
oh it's probably somewhere in my um it's now my 590 emails yeah oh some someone i mean you know someone tweeted my wife showed it to me and i said take a screenshot and send it to marco you can use bug shot put a big red arrow it'll be excited i think she actually did email you about it but anyway that that has to do with like we have to put atp somewhere in our metadata or description or something for that to work
Marco:
I don't even know.
Marco:
I don't know.
Marco:
You're toast.
John:
Yeah.
John:
Well, the other option is when you launch the application, just have a gigantic big subscribe to ATP button.
Marco:
Well, it's already in the directory.
Marco:
It's in the tech category, which is the top left category in the directories.
Yeah.
John:
Yeah, we're almost there.
Marco:
Anyway, that's plenty for now.
Marco:
See, the important thing here is that I shipped before Fast Text's update for iOS 7.
Marco:
Yes, yes, yes.
Marco:
I cannot believe I beat you.
Casey:
To be honest, I've worked on Fast Text like once, maybe twice since iOS 7 came out.
Casey:
But that doesn't negate your point, which is that you wrote, what, three quarters of an application in the time that I couldn't basically just recompile for iOS 7?
Casey:
Yeah.
Casey:
Oh, that's the best.
Marco:
I'm so happy.
Marco:
When you first joked about that, it was probably six months ago.
Marco:
Oh, probably.
Marco:
And I thought for sure.
Marco:
Oh, yeah.
Casey:
I thought for sure I'd make it, but I just haven't found the time.
Casey:
Oh, that's amazing.
Casey:
Yeah.
Casey:
That makes me so happy.
Casey:
I did it to myself.
Casey:
I can't even be upset.
Casey:
Well, certainly not at you anyway, because I did it to myself.