Love this bit: “Sometimes you’re stuck on a problem, and there just don’t seem to be any great solutions: maybe it’s related to a piece of code you’re writing, or decisions around how you’re going to market your app. Then, you start thinking about the problem from a wider perspective. You realize that you won’t need to even write the tricky piece of code if you architect it the right way, and that the marketing decision is one your friend (who has a knack for that sort of problem) would know how to tackle. You could sum it up as ‘taking a step back’ from the problem.”
Taking a literal step away tends to help. I've often realized new approaches or epiphanies when mulling a problem while walking or in the subway.
Bit of background: my company is doing fintech and often there are seemingly insurmountable problems related to regulation or certain counter-parties. Taking a step back is a huge help in these cases as well; often the solution is just better negotiation or a call to your lawyer friend.
I used to get frustrated and send angry emails / phone calls. Now I get away from the desk for a bit and mull it over for a few hours before doing anything. The method hasn't failed me yet
On solo projects I've been experimenting with a technique that sounds a bit silly but seems to help a bit. I try and take off my programmer hat, or even my analyst hat, and try and become a stakeholder.
What do I want this program to do? What will make me want to use it, and what will be a deal breaker?
Once I finish thinking this through, I 'become' a programmer again and get to work. Often I find that things that seem a big deal at a coding level either don't matter, or are the wrong things to worry about.
Doesn't work for many people. They know the theory but can't apply it.
I can, but I've met plenty of bright people who simply haven't learned that ability yet.
It does work wonders for myself though. I am well-balanced between wanting technical excellence, ease-of-use and usefulness. It helps my job relations a lot.
I think Emmett Shear's story in this video[1] is a fantastic example of how sometimes the best solution to a perceived problem is to take a step back and realise the problem shouldn't be solved at all. In his case, the problem of determining when to show ads during live streaming.
This is where a good Product Owner/Manager is worthwhile.
They're not there to allocate resources or assign work or create schedules. They're supposed to be in that "higher perspective" headspace most of the time, so that by the time their decisions turn into actionable work...it's been through these mental filters.
Corollary to this: if neither Google nor Stack Overflow have the answer, you may be trying to solve the wrong problem. This is often how I realize that my approach to something is wrong, especially when exploring a new problem domain or language/tool.
i have to respectfully disagree as this methodis too short sighted and removes all possibilities of innovation and creating something new to explore and test.
I think OP's idea was that developers in most fields are very infrequently treading new ground when it comes to solving programming problems.
Your business idea is where you'll likely be innovating - trying to use X language/pattern/stack to do something no other developers are talking about us a good sign that you may be going down a rabbit hole.
Further, often I've found some of the biggest problems in product development, turn out to be things that can be discarded or shouldn't have been in in the first place. Something that was adding complexity unnecessarily for example, a feature that you don't know for certain will be useful, etc.; it's a hint as to the difficulty in finding a satisfactory resolution in the first place.
I like night-walking. The cool night air, the relative silence, the reduction of the horizon to whatever range of light my eyes can perceive... It all helps me focus and think about the primary considerations involved...
"What I’ve learned (aside from sucking it up, and sending a kind, helpful response) is: design your product as if it was going to be used by people that are a software literacy step below the target user."
Completely with you on the 'sucking up and sending a kind helpful response'. Snark does not pay. It makes no sense to snap at a user.
Regarding the other point about first-time users. I have a slightly related theory.
When you design something, design it for someone who has the attention span of a two-year-old. Not because your app is going to be used by a two-year-old. But because that is how much mental bandwidth a user is going to give you. Your user is probably busy or just likes to multi-task.
Working that much harder on the UI pays off, or at least prevents a disaster.
>When you design something, design it for someone who has the attention span of a two-year-old. Not because your app is going to be used by a two-year-old. But because that is how much mental bandwidth a user is going to give you. Your user is probably busy or just likes to multi-task.
I think this is a common problem, and the problem is with the people creating/selling/supporting the product, not the customer. We get so invested that we are willing to overlook little pain points or special knowledge required, which are precisely the things that drive customers away. We develop our own obscure workflow, and just by being an expert in the topic we become incapable of providing the feedback to make it friendly to new users.
"So, don’t be stingy: a product with no paying users is (usually) better than a paid product with no users. It’s much easier to upsell to an existing customer than it is to find an entirely new paying customer."
This is generally true, but it seems a bit like applying an Enterprise view of sales to a market of minnow sized budgets. It reinforces app consumers' view that apps should only charge for marginal value, not core value or the biggest value. This sort of "freemium" model leads to basically a market of pure crap with extremely rare gems.
Edit: I'm not dumping on the author, here. Were I to "do mobile" I'd probably take a similar approach because it clearly works.
I must be in the minority, but I refuse to use freemium applications (those relying on in-app purchases to complete their functionality). My attitude is if you don't think your app is worth anything - I agree. Look, I'll walk into a Starbucks and spend $3 on something I'm going to consume in 30 minutes without even batting an eye. If you think your software is worth less than that then it probably doesn't warrant my time to check it out. I'm willing to concede I'm in the minority - but I'll also point out this goes a long way toward explaining why the quality of indy mobile apps is so abysmal.
> Look, I'll walk into a Starbucks and spend $3 on something I'm going to consume in 30 minutes without even batting an eye.
Because you know exactly what you're going to get from Starbucks. Or even if it's a coffee shop you've never been to before, you have a pretty good idea what to expect when you order a coffee.
I made my first iOS app freemium because you just can't tell what an app is like by looking at some screenshots. Freemium lets the user assess the quality of the app before paying for it.
Yeah, when it comes to unknown names, freemium is (in my opinion) best for both the creator and for the user.
The user gets to make sure they aren't completely throwing money away, or don't need to hassle with refunds, and the creator gets an easy way to get their name out there and grab users from the competition without any commitment.
As long as the price isn't obfuscated, i love the freemium model.
You've never tried a new restaurant or a new dish? Sometimes the fun in life is not knowing exactly what you're going to get. Sometimes you win, sometimes you lose.
This is only true for things costing small sums of money. Shelling out $5-$10 for a new drink at Starbucks or a new dish at a restaurant and not being completely happy with the result is no big deal. Shelling out $25K for a new car and not being completely happy with the result is a big deal.
My question then is why are we treating mobile apps like new cars when they're priced (or as I'm arguing - should be priced) like new coffee drinks? I'm no economist, but I think a nominal fee for apps would have a huge impact on the app store. Reviews will be more honest and as such the crap will sink much faster and the cream will rise much faster. It would then be much easier to find good apps, apps that no one would think twice about paying a nominal purchase price.
Why do you think franchises are so much more profitable than mom and pop shops? People will hardly even enter a place unless they know what's inside already.
We're living in different worlds. Everyone I know avoids franchises and seeks out the mom and pop shops. Why settle for known mediocrity when you have the chance to get something great? And for those times when greatness is decidedly not achieved, well, you have to expect some lumps on the road to greatness. You're telling me most people don't think this way? Especially in virtually risk-free situations? Wow.
Wow what? There's a reason McDonalds makes 25 billion dollars in revenue each year and your local mom and pop doesn't. If this surprises you, then your expectations are wrong.
>Why settle for known mediocrity when you have the chance to get something great?
My estimate is that most people will pick up a fast and cheap burger because it is good enough and convenient every now and then and most people I know will try something new every now and then.
And people are balanced differently on if they prefer convenient and familiar or new and interesting.
I think McDonalds have a lot of scale-factors in their success and revenue that aren't applicable to shops that are not gloval franchises. Don't believe that its because they're generally considered fantastic.
I'm compelled to ask how much you're paying for your "Hacker News" subscription... because the rest of us are somehow finding legitimate economic value in this nominally free resource.
I don't have a stance on the issue either way, but that's not a fair comparison. HN is free because it makes YC one of the most powerful tech organizations on the planet. (HN is one of the main reasons YC is in its current position. But that's a topic for another time.)
It's the same reason Reddit is free: because that makes Reddit one of the most influential news sources circa 2017.
In a similar fashion, a coffee from Starbucks isn't the same as an app download. For instance, though Netflix is about 2 Starbucks orders, it's subscribers attribute greater value to it. However, a $1 monthly increase brings out the pitch forks in them. It's all very confusing
I think you're making the mistake of considering all Netflix users to be the same.
We just got Netflix, it beat other options (Amazon mainly) because of the low price. I never get Starbucks (nor go out for a hot drink) because it's too expensive; when Netflix price increases I'll be moaning.
Those moaning with me are likely to be people who also can't afford $overpricedCaffeineProduct, no?
It's less confusing when people stop trying to convert bewteen "value received" and "dollars paid".
Starbucks coffee and Netflix subscription cost what they cost. Take it or leave it. If you take it, that becomes your baseline. And regulars/subscribers generally don't like when the base price goes up. Doesn't matter if the base price was $3 or $30.
Businesses don't charge what they think their product is worth. The concept of "thinking what its worth" is silly all by itself. They charge the profit maximising amount in the profit maximising way.
If you could get one customer at $100 or fifty customers at $10, what is your product 'worth'?
I think you do need to assess what your product is worth, simply because you don't know how many customers you'll get at each price point and if you experiment thoroughly it'll take time and may ruin your market.
On the other hand, if I conclude that my product provides X dollars of value to my customer, I know I should be able to set the price at X-Y and get many customers.
That's the point, there's no such thing as a fixed amount of dollars of value per customer. You may have found a segment willing to pay X-Y, but you may be leaving a lot of money on the table by not selling to the potentially much larger segment that only gets X/2 dollars of value from your product.
"My attitude is if you don't think your app is worth anything - I agree"
By this logic, all free apps are worthless. Do you mean to tell me that each and every app on all of your devices were paid downloads? I find that unrealistic and hard to believe.
Also...do you use Facebook and/or Google? Those are also free to use and think it would be a stretch to call them "worthless" (I'll concede that many people, including me, find Facebook next to useless except for marketing purposes, but I would not try to make an argument that it is worthless).
That's largely my experience, there are one or two exceptions but if I look at the stuff that I use for years, software that has been continuously maintained and is functionally rich and stable it's nearly all commercial.
Agree on theory. The net result, however, is that most “free with IAP” is a cesspool of manure. And that’s before we even start to talk about games with this model.
I think even if there were no "free with IAP" apps, most of the applications would be really really bad.
Most shareware applications were bad too, most web services/web applications are bad. Most paid applications are probably bad too, but one can only test a few of them.
The perceived badness of free applications is overblown because there are so many of them (but that is mostly because mobile made distributing applications trivial) and one can test swaths of them, well, for free.
A lot of times a "freemium" application is really just developers rolling their own "try before you buy" solution. A few bucks makes sense for something trivial, but if I'm charging north of 5$ for something that will be in frequent use (say, an expense tracking app), I completely understand that the user first wants to verify that the app fits to their needs, something you can't do from looking at a few screenshots.
If you look at the IAP option list you can tell if it's freemium or not. I don't put a free app with a $9.99 "Unlock Pro Functionality" in that category. Fifteen different "Buy xx Gems" is.
This is a great question. Shareware locked into this idea that if I could only get my game or application into people's hands, then they will love it and pay for the other features.
This definitely is a similar model to a free app with in-app upgrades. The challenge is coming up with a model where the user will decide they want to upgrade. Is it more features? Is it a restricted timeframe? More game levels?
I bet different app types do better with different options. I'd be curious if anyone has captured data on the best option for the different categories.
A long time ago I made a DOS shareware app and posted it on various BBS/ftp servers. 6 months went by, and to my great surprise I got a check for $10 in the mail with an appreciative note asking for the full version with the extra features. By this time I completely forgot about the app, and of course I'd never made the full version. I think there might be a moral in there somewhere kind of like how backups don't work unless tested regularly.
A long time ago I made a Windows (3.1/95) app that invisibly used a file share to send 'Post it' notes to peoples screens. It served a purpose for myself and my colleagues at the time as we were in an organisation that barely used email, and also had no IM facilities whatsoever.
I threw it online, by uploading it to several of those shareware app hosting sites that used to exist and hosted it on my own site as well. The app was fundamentally free, but if you wanted to use it legally in an organisation you had to by per-user licences.
To my utter surprise, cheques started arriving in the mail, some for 100's of user licences. Several were FTSE100 companies. It turned out that my app had a killer feature - when you sent a 'note' to someone else, it appeared on their screen almost immediately on top of what ever they were doing. Apparently traders loved this, so my apps was being used in several banks on their trading floors.
The whole thing was short lived, and the money I made was a short bubble. Less than a year later it all dried up, and NetNote[1] was consigned to history.
Back to point though, and why I'm replying - one of the large banks asked me to come in for meeting to discuss upgrades to the app - as they'd paid for 1000+ user licences I felt duty bound to attend the meeting. However, what they basically wanted was a complete overhaul of it and had a request list as long as my arm. As an indie developer I couldn't commit to that, so I didn't make any promises, and then completely failed to deliver on their requests.
The difference is the rock bottom price, you can't (I don't think) put a time limited app in the app store. I use the 'shareware' model for my software and trials outnumber purchases 50-1. Put that number into an environment where $3 is seen as expensive and the economics don't look very good.
Indeed it does and your friend has provided a valuable service - they've searched and reviewed the app for you. This applies to free and paid-for applications. I've had apps I've recommended to friends where it turns out they were looking at the app but wondered whether it was worth $4.99. After seeing it they happily paid the $4.99. I ribbed them about their reluctance to pay the $4.99, given the cost of their daily Starbucks habit, and essentially what they responded was they're accustomed to apps being bad, but free. They're suspicious that paid-for apps are just as bad, but not free. This is anecdotal, but if it represents the attitude of the user community at-large then it goes a long way to explaining the state of apps today: no one is expecting them to be any better than they are.
its worth also noting that this is also an expectation of the SEA market now so its really pissing into the wind to try to not to do it if you're selling to consumers. As it can be interpreted as a "fuck you" to people in developing nations.
It's particularly encouraging to read the many hours of work and back-stepping he's done, to get the quality really, really high. Startups are often associated with speed, but less so on flexibility, even if lean philosophy purports it. Ship fast. Get the bare-bones MVP done. Aim for viral growth. This is probably why we have millions of apps, but only a few dozens last and actually taken up by the mass. Different types of products mean different processes after all, give or take amount of resources.
In this app's case, it's about re-imagining an existing function - timetables. The designer knows that user experience is everything, and because of this he's willing to scrap everything if need to. And even when this happens, it isn't exactly waste as you understand the problem deeper and come to the design of an even better solution.
Sure you can argue that an MVP can bring about those design iterations. Keeps your focus on the users too. But arguably the market for this type of product is very active - though not necessarily competitive. So rather than get buried with the hundred others, it needs to shine right from the beginning.
You're exactly right. I think the thing you said that people can't get their head around too is that you sometimes have to decide you are wrong and start something over. Learning from failure is the hardest thing to get right. The missing piece is usually having enough data to know if you have failed. With that, going deeper and better feels like an improvement not a reset.
Admitting that you're wrong may sound like a bruise to your ego, but only if you feel personally tied to the project. Pixar has a good approach; they vehemently emphasise that the project is always separate and thus criticism towards it are never personal. If you try and do it for your own project, you can get a more objective view and explore much more design possibilities.
The downside to this is a longer process, and actually you become more prone to "analysis-paralysis". But still I would argue that it's part of developing yourself to become more objective, at least that's the experience with my project anyway. It's funny that we're taking about this because two weeks ago I had to tear down an entire product architecture, built over 3 years, to start all over again. I had made one flawed assumption at the beginning, and it got buried so deep that I didn't realise for a long time. It manifested itself into a set of problems that I kept hitting into, until I had to concede that there's something rotten at its core.
It sounds like a waste, but no: the new product was actually designed at a much shorter time, and far better than its predecessor (well you'll just have to take my word for now ;)) And yes I do feel a bit silly for being in denial before.
What's sad is because of App Store economics. He can never depend on his paying customers to ever pay for an upgrade. He will always have to chase new customers.
Another sad thing is that a consumer can't tell their iDevice "hey, stop downloading updates to this app; I like it just the way it is" - the closest we can get is turning off automatic updates for all apps, and then hoping we never accidentally tap on the "Update" button for that specific app.
Currently, both of the problems can be solved in one kludge: release a big upgrade as a new app. For example, I bought the app Things when it was at version 2. I liked it so much that when Things 3 came out as a separate app, I bought it too. And if I really loved the UI of Things 2 and hated the new UI in Things 3, I wouldn't have to do anything. I could keep auto-upgrade on, and never have to worry about my Things 2 app being upgraded to something I don't like.
> Another sad thing is that a consumer can't tell their iDevice "hey, stop downloading updates to this app; I like it just the way it is"
You certainly can do this, unless I misunderstand your point. Automatic Downloads are an option in iOS. You can turn them off if you don't wish an app to automatically update every time a new release comes out.
Right, but like I said in my original comment, you're just hoping you don't make a very easy to make mistake. I can't count how many times I've updated an app on accident
I'm currently on a version of Snapchat that does not recognize when I use iOS 11's screen recording feature, so I can record anyone's snaps and they don't get a notification. But I have to have automatic updates off, and be very, very careful when updating (when I tap "more" to read about other app updates, I accidentally tap like .5cm lower I can upgrade Snapchat), and hope none of my friends ever "helpfully" tap the "Update All" button on my phone. It would be so much nicer to just lock the version somewhere.
Worth noting that the makers of Things copped criticism from some users for that approach of a paid upgrade. And negative reviews can be very damaging in the App Store.
I was not aware of this. It definitely would suck if Things 3 had a low rating, but I just looked it up on the App Store and it has a 5 star rating. Yes, negative reviews can be very damaging, but (at least on iOS 11) not only does it say "5.0", it also says "Editor's Choice" and "#38" so I would argue that Things 3 was not really damaged too much.
Things just won an Apple Design Award in the last 1-2 weeks which gives them huge amounts of App Store support and general press. That would have put them in front of millions of new users unaware of the upgrade issue. @appstore has 4.5m followers for example. This boost is incredibly rare (10 ADAs per year).
(Source: We won an Apple Design Award for our app Streaks last year.)
Very impressive Jordan. Pls do consider releasing TimeTable in India - an Android version if possible. Millions of parents of primary kids (more than the students) will be happy.
For most software, design is typically the most important factor. An app that does the right thing and has the right interface but is poorly coded and inefficient is still useful. An app that does the wrong thing, or has an awful interface, is not useful no matter how slick the code behind it.
A lot of apps are like this. I know dev who were like "They made that all that money off Angry Birds." Didn't Rovio have a bunch of terrible ideas that failed and Angry Birds was one of their last ditch projects?
Sure, those follow the start of school/college semesters across various countries. It's actually quite nice, it means some periods of the year (like now) have relatively low usage so I can spend time on other projects. Approaching those spikes, I usually invest more time into updates etc.
Some profound product management wisdom there, Jordan. Wish enterprises understood it as well as you've laid out. Thanks for the post and here's to your continued mojo.
really great article. It's a breath of fresh air in the sea of churnalism suffering from Mediumitis - "I did this in 3 hours and now I have self-worth".
It's sad that people aren't willing to pay $1 for an app but are willing to purchase in app features. I feel mobile software is moving in this direction and that it will only get worse with time. The sad part is it makes software more complex and hence more expensive overall, and you probably end up spending more over the lifetime of the product...
I feel this way and it's mostly due to apple's return policy. Because it is near impossible to return an app I generally look towards free apps with an IAP to unlock everything/remove ads. If apple had a refund policy similar to steam with a 2h return window I'd be much more willing to pay upfront.
>Sure, three million downloads is a lot, but that’s happened over more than six years.
It still remains "a lot", US$ 500,000 per year, not exactly peanuts IMHO.
EDIT:
Ah, no wait, I misread the article, he got a handful of downlads when the app was US$1, the 3 million downloads are since it was made free/freeware.
Not enough to make this my day job, while paying off a mortgage unfortunately. For short durations it has been, although my living expenses are much higher now than they once were.
It's also very seasonal - it closely follows the download graph on the post.
unless -- based on personal experience -- if it's treated as suspicious by the local police/neighbors, even if its a skinny, geeky-looking, white male who goes out walking alone late at night.
if I had a nickel for every time I've been harassed by police or local do-gooders, I'd have a lot of those nickels. and I'm not even of the demographic that PC-ness says should be oppressed. (ostensibly: black+male, or male+gay, or non-white, or female, or mean-faced, or weapon-carrying, etc. in reality: straight white male, innocent, no weapons, not in a gang, no drugs, etc.) "why are you walking alone at this time? why are you looking at things? implied: are you a terrorist? a pedophile? explain immediately!"
We do not (always) live in an intellectual-friendly culture. At least not in the USA, 2017. We (might, often) live in a small-minded, hyper-stereotyped, very ignorant local culture. Obviously it depends on precisely where you live. SF on Friday at 8pm? very different than Kansas, small town, Wednesday, etc.
not even joking. (And I submit this knowing it's not a HN-hivemind/PC-aligned viewpoint, and thus will be downvoted. I do not care anymore.)
I wanted to give you some feedback that I find this behavior to be passive aggressive and toxic. I shared an opinion and a perspective, based on actual life experience, which was related to the topic at hand, the comment I was replying to. I wrote it in good faith. And then, from my perspective, you parachute in and sabotage it.
I appreciate that you acted in a way that you think is trying to improve matters.
But any normal person, in RL, would consider your action to be an attack, and passive aggressive. It's chilling and toxic.
Well, you know, statistical method. Likelihood of you being a rapist or a burglar scoping their next target are higher in the eyes of the cops if you walk by yourself at these hours.
I've been stopped by the police in the small hours when I've been outside but my friendly demeanor and easy-going attitude -- "What's up?", "Sure, here's my ID", "Nothing in my pockets except keys, some cash and a phone, take a look", "I work most of the nights and sleep at day" -- usually quickly gets me out of the occasional awkward cop situation.
I am not mad at them, they're trying their best. It's better than having no cops on the streets at all.
Grumpy dudes in bad mood should be able to walk around public streets without being harassed too often. Unless they are noisy or otherwise their behavior suggest they are the problem. If I had to deal with cops and pretend I am in friendly mood and have easy-going attitude, it would take joy away from walks significantly.
Guess I am lucky that I live in area where going by walk somewhere is not considered bad behavior.
(I am also lucky to live in fairly low crime area, so I can walk without being afraid of being robbed or harassed by dudes or worst.)
Agreed. It's just that I am naturally more friendly and since I've had a big "violence career" -- I grew up in a small town FULL of bullies and had to learn to stand up for myself very early -- I learned how to avoid conflict by being outgoing and friendly (I am a pretty big dude physically). Two or three minutes of mediocre acting goes a long way and I don't deem it a big sacrifice.
I completely agree the grumpy people shouldn't be assumed to be criminals by default but what I described is an agreeable compromise for me.
Maybe get a dog? When I was younger, I got away with all kinds of sketchy "roaming around at night in the suburbs" activities with "Hey, I'm just a responsible teenager walking the family dog"
Taking a literal step away tends to help. I've often realized new approaches or epiphanies when mulling a problem while walking or in the subway.