Hardcore Year: I Learned Swift, Build a Mac app and Earned $1635 in 1.5 months

Andrey Azimov
Jun 23, 2018 · 24 min read
Image for post
Image for post

3 month ago, I quit my job to follow my passion and make my own products. Progress Bar OS X was my second project in my 1 year challenge. This is the story of how I made it, specifically written to answer all of the questions I’ve received on Twitter.

TL;DR

  • Made a raw prototype in 1 day from Github example and share with friends
  • Made MVP based on friends feedback in 2 weeks
  • Launched and became #1 in Product Hunt, Hacker News (Show HN)
  • Got some hate that it’s not free especially on Reddit
  • Earned the first $700 in 2 days after the launch
  • Made second version according to feedback in next month
  • Earned $1635 in total after launch in 1.5 months

Where Do You Find Product Ideas?

1. Habit of collecting ideas

I have a habit to put every single idea for problems that I have into a list. Without judgments, evaluation or thinking, I put every single idea on to that list. This means that my idea for “Uber Horse” is even written down. I use Trello and I have about 10–15 ideas naturally per month. Keeping a list of ideas is crucial to making sure that once one product is launched, I have the choice to choose which product I want to launch next. Some of my ideas, prioritized before Uber Horse, are creating a marketplace for buying crypto with Paypal and launching Progress Bar OSX.

2. Review each of these ideas with friends

Image for post
Image for post
Ukrainian warriors Cossacks are using collective mind to brainstorm 👌perfect email reply to Sultan

Friend same values and experiences. If they would use the product, I know it has potential.

I have a group chat with friends, dubbed the “Spicy Group”. It was initially made to help me launch my first idea a year and a half ago. The group is still thriving and we’ve found a place to share our ideas, support each other, and send stupid, but hilarious, memes. I owe a lot to these people. Love you guys. If you don’t have a spicy group of your own, I recommend you look in WIP Chat and find some friends.

Friends honest review helping to not suffering too many choices of ideas

Too much opinions is also bad

In total hypocriticism, it’s just as important not to listen to too much feedback. Too many conflicting opinions has the potential to burst your bubble and make you fearful of just trying.

Idea of Progress Bar OSX

Image for post
Image for post

Since I quit my job and started working alone, I measure time differently.

I don’t care about hours and minutes.

I don’t have meetings, appointments or calls.

I only have meetings with myself. :)

I don’t care what day of the week it is or whether it’s a weekend or not.

I don’t care what the date is.

Public holidays don’t matter because I always have public holidays off (if i want).

What I really care about is life’s progress.

How much time has passed? How much more time do I have to finish the projects I am dreaming about?

I am a big fan of @year_progress tweets. It keeps you aware of the passing time. What I wasn’t a fan of was how they only tweeted a maximum of twice a week and you had to navigate to their account to check the progress status of the year.

Image for post
Image for post

What Is The Solution?

Validation

I’d love to hear how you validate your ideas before building them out 🙂

Solving my own problems and just building

These emails give some feeling that something is happening (or no) and we can get stuck in this idea validation forever. You will never know until you try to sell and see if people will pay for it. I think everything else is bullshit. For me, it’s much easier to just build stuff and see what happens.

In the worst case, I will have only one user, myself, and learn coding a bit more.

Building

How I learn new things

I’d love to hear about how you managed to pick up a new coding language so quickly to make ProgressBar! (assuming you had to) And how the rest of us can do that!

I’d love to hear — whether in this article or another — about how you learned to make things. It seems like over a year ago you didn’t know how to code, and now… here you are!

I’m using programming as a tool

I think a lot of people are starting to forget why programing was created.

I don’t want to learn tons of programming theory from courses and books that I will never use. I tried to complete 10 courses but I never finished any of them. I’m using programing as a tool to implement my ideas in life. For me, learn programming is not a final goal. I just learned by Googling things like “Swift menu bar OS X”. Some man say this is not the best approach because I will not learn programming basics. But I don’t want to learn basics.

This is definitely bad if I have a goal to to find a developer job because they will probably ask me on interview about algorithms. encapsulation, a bunch of other stuff. But I don’t want to find a developer job so I don’t care. And guess what. Users don’t care either. :) We keep seeing these articles “Web Developer Skills 2018”, “Roadmap of iOS Developer” paths with tons of tools that you need to know. Lists of 10 books with 400 pages that you need to read before you even can try to make something.

If you are learning programming as a tool to implement your ideas it’s much more fun and interesting. There are always problems, something will not work, but these problems are real not some hypothetical problems that will never happen.

What language to choose?

I heard that Electron is really heavy weight and even simple app will be 200Mb+ so I skipped it.

Objective-C syntax for newbie looks very scary:

Image for post
Image for post
Image for post
Image for post

So when I saw this, I had panic attack and decided skip it as well. :D

Swift syntax looks like Javascript so I decided use of it.

Find code examples on Github

Share with friend first prototype

Image for post
Image for post

And I got pretty positive feedback but I thought: Ahh, this is friends so all of them are lying to me to so they don’t upset me.

What really surprised me, I saw my app on some of friends laptop after a couple of days after I shared with him. And I asked him pretty seriously:

- Why you didn’t delete my app? Did you forgot?

- What? No I told you I like it and I want to use it

Image for post
Image for post

This was really unexpected because feedback about all my previous app was “Oh nice”. They were just being polite.

Mr. John O’Nolan feedback

The thing is, John is the most critical person on Earth :D. To surprise him, you need to invent a teleporter or a time machine . When I talk with him, I feel like I’m talking with somebody 100,000x more intelligent than me with the addition of perfect British English. :D :D :D

Image for post
Image for post

My first success, Dark Mode List, made me first $15 in revenue and was featured on Lifehacker. I was so happy with my success but John replied by saying:

Image for post
Image for post

Traction = 1,000+ people want to pay you.

If you find 1,000 true fans who actually want something enough to pay for it, then you can talk about optimising and growing it

If you didn’t hit that level. It’s not traction. Move on. We’ve all been there.

You try as many different ideas as possible until something takes off

Image for post
Image for post

I was very upset. My biggest success in life was destroyed in 1 second.

Yep, this is startup reality. Startup life is not fancy romantic writing algorithm on the window, eating pizza, coding and overnight success, like in the “Social Network” movie.

I accepted it and memorized the quote. Better to have hardcore, but honest, feedback from people who have experience instead of fake nice feedback like, “Oh nice idea! You are so awesome”.

When I had my new idea about Progress Bar, I was scared to show him because, as cool as Progress Bar is, it’s definitely not a teleporter. It was still a raw prototype. But I decided to try and sent it to him. I was ready to hear a new portion of hardcore honest feedback but unexpectedly I had this reply from John:

Yo this app is fucking cool. I have feature requests…

Image for post
Image for post

No way. Probably he is kidding me and this is his sarcastic humor but it wasn’t. He was quite serious. He didn’t joke. Even most critical person on Earth can like my app. :)

So I started to implement his and my other friends’ feedback and made it all public in WIP chat.

Design problems

Image for post
Image for post

I want to show a progress bar icon that moves when the progress is changing. From the first impression, it’s a very easy task but after I dug deeper this became a very challenging problem. The design had to:

  • Fit Apple menu bar design
  • Be small because menu bar does not have a lot of space
  • Not conflate with battery bar

I thought before that UX designer work is easy, they just draw something and get paid well. But now I know how wrong I was. This work could be more difficult than a developer’s work.

I even decided to install Sketch. Before I used only standart OS X image editor. :D

The design took almost two weeks. I tried many different ideas like:

Image for post
Image for post
Johnny not happy with this design

All of them sucked. The trick with a design, if you’re not a designer, is that you know that it sucks — but you can’t change anything. Everything you try makes it even worse and then you tend to feel useless.

I needed somebody who could rescue me from design hell. I asked my friend Dasha for help, she is designer and I really like her style.

Image for post
Image for post

After of couple of hours of collaboration and experimenting we finally got something that at least didn’t suck and I liked it. :)

Image for post
Image for post
Image for post
Image for post

Making a website

I was inspired by Pixel Snap and their cool website, but I want to make not just a standard MacBook with a GIF inside. I wanted to give users the ultimate experience from the app within the first seconds when they opened the website. So I decided to make a fullscreen image slider with Mac desktop to show the user how the app will behave on their desktop just after he downloads it. Thanks for Raman, Sasha Koss and Max Manzhos who helped me to implement it.

Image for post
Image for post

http://www.progressbarosx.com/

I have a big desire to use @year_progress’s which is really good “The one progress bar you’d rather see go slower” but thankfully my friends stopped me. :) So a couple of days later I was struggling with a slogan for my app. Thanks for my friend Raman that suggest to use a slogan from “Fight Club” movie:

This is your life and it’s ending one minute at a time.

Monetization model

Image for post
Image for post

It will be paaaaaid! Paaaaaaaid only!

Today people are used to things being free, freemium, open sourced or cracked and for me was really hard mentally to make a decision to make it paid only and sell for $5. But my friends convinced me to try making it paid only.

Besides, I’m an indie developer and need money to pay my rent and bills. If I work for free I will starve and die and not be able to make more apps. :D So I decided to make it paid only and see what happened. I prepared myself that there would be some negative comments (although there were more than I expected but more about that later).

Payment System

Image for post
Image for post

I didn’t want to put this into the Apple Store because I didn’t have time for Apple review which could take weeks. Also, I didn’t want to pay $100 for Apple Developer program and give Apple 30% from each of my sales so I skipped it.

Probably you will think about using Stripe. But Stripe isn’t supported in Ukraine. :D so I did some research and found Gumroad. It takes the fee are 3.5% + $0.3.

OK at this point the app is ready to take off and I had spent around 2 weeks on it.

Launch

Product Hunt

I launched on Sunday 00:01 San Francisco time and announced it on my Twitter, Facebook, WIP chat and emailed it to all my blog subscribers.

Small tip: the first image will be used as a sharing image in Facebook and on Twitter so make sure it gives a clear understanding on what your product is about. To check or refresh the image use twitter card validator or facebook debugger.

Image for post
Image for post

The app become #1 Product of the Day

Image for post
Image for post

Hacker News

Image for post
Image for post

I almost gave up but thought ‘maybe I need to try one more time. In the worst case they will just delete the post. So just before sleeping I submitted it with a new title.

Image for post
Image for post

When I got up, I was very surprised when I saw that my post #1 in Show HN. But with a lot of hateful comments. :D

Image for post
Image for post

If your post failed in Hacker News try to re-submit it one more time with different title. And remember to wait 4–5 hours after posting before making a verdict on the success because posts don’t go to the top immediately.

Reddit

How about Marketing?

Marketing! I know how to build things, but have no clue how to get them in the hands of people

I want to hear how you market your product in your April results.

But what is marketing?

Five dollars for this? It MUST be for free! 😡 😡 😡

Image for post
Image for post

It was very painful to read this comment. A lot of people said that it should be free, refer to existing open source tools or saying that they can make such app in 5 mins.

Here are some of them:

- Why the price of 5$? Maybe start with a lower price? Not much functionality here to justify the price point.

- This can easily be done using the program BitBar

- I’m not against selling software, but $5 for something I could probably whip up in an hour and post as open source is really not the best way to get people to use your app. This app just doesn’t provide enough value to be $5–maybe if it was a dollar.

- Should be free, with no annoyware and offer a $5 purchase for some extra features, or simply ask for donations

- If I had a mac, I would probably a make a free version of this

- Five dollars for this? Are you NUTS?

- I really hate paid stupid apps like this in Apple ecosystem.

- $5 for massive anxiety???

- Your charging 5 dollars for that math to be displayed in the menu bar. That’s an incredible amount of money for nearly nothing.

- I’m in no need for such a thing. Simply stating that charging 5 dollars for simple division is a bit steep.

Someone even tried to to bargain in chat.

Image for post
Image for post

So true:

Even Dropbox and Airbnb was hated

Image for post
Image for post

Based on this behaviour of Hacker News users you can even make an app for free :D.

So remember:

When HN hates something as being stupid / simplistic / easy to make in 5 minutes. Usually, means it’s a good idea © John O’Nolan


If people are bitching about the price you hit the right spot. Because if they don’t bitch they either don’t care for your or they think tit’s a bargain

So I decided continue and took this as a good sign. :)

Press

Nas Daily

Image for post
Image for post

I messaged him without any hope because I thought famous cool people never reply but he replied pretty quickly:

YO I LOVE IT! Thanks for making it

It was very unexpected and a big pleasure for me.

Traffic

Image for post
Image for post
Image for post
Image for post

Top 5 traffic sources

  1. Product Hunt
  2. Twitter
  3. My Personal Site
  4. Applesfera

Conversion rates

Image for post
Image for post

What we see here is everything is dying. Product Hunt and Hacker News traffics obviously don’t last forever.

But the conversion rate from unique visitor to click on buy page increase twice in period of May 1–31 because traffic became better qualified.

Month 2 — v2

  • Custom day end time
  • Custom deadline with emoji support
  • Launch at login
  • Save all your settings after quit
  • More accurate month progress (by hours)
Image for post
Image for post

I was a bit tricky to implement Day Progress function with Start and End day condition. I need to make sure that it’s handle all possible scenarios and corner cases like what if current time ≤ OR ≥ that now. Thanks Sasha Koss who helped me with an algorithm.

Unit testing with Google Sheets

Image for post
Image for post
Unit testing with Google Sheets :)

Should I stop and keep working only on this app?

Image for post
Image for post

I had a thought:

Maybe I should stop and keep working only on one app because people are paying for it and it’s kinda validated?

It’s such a comforting idea that you can stop launching new apps every month and focus on one and just keep polishing it.

Image for post
Image for post

Hell No! It’s a cool sign but it’s definitely not enough to stop and get married to this app.

Revenue

After launching I went to sleep and when I got up I saw that I made $700. This was insane. In two days, I made almost my monthly income before.

Image for post
Image for post

And $1635 by the end of May

Image for post
Image for post

Net Profit

Net profit: 327 sales X $4.525 – $10 fee = $1,469.6

The real fee is 10.1% and it’s not so obvious when see 3.5% + $0.3 fee at the first time because for low cost products like $5 fee is high.

Magical feeling

Passive income?

I still didn’t get 1,000 true fans that are willing to pay me, but I’ve got 327 so only 673 left to go

Question from Roman Mishiev:

I want to hear about your plans to make the same results in May but recurrent. Without detracting anything from you accomplishments, I would be interested to know if you’re doing any tracking on the results of

This is just a leap of faith

Menu bar apps revolution

Image for post
Image for post

Some even tried to make the same app and put a gig on Upwork LOL. :D

They say imitation is the highest form of flattery :)

Image for post
Image for post

I think this is a good sign that we found some product validation model that could get value for people and they will be happy to pay for.

Hardcore Life

Dogs attack

And 1 meter snake at my house

Problem with a bank

Image for post
Image for post

All my revenue was sent by Gumroad to PayPal. I opened a bank account in Thailand while I was there. It’s not easy because you need to have a work permit, but after trying at 20 banks one finally gave in.

When I entered the wrong pin code via phone, they said:

You card has been blocked and you need to go to Thailand to unblock it. It doesn’t matter that you are in a different country.

Sincerely your,

Awesome bank ;)

This was my only way to withdraw money haha. :D

Image for post
Image for post

It’s a strange feeling when on the Internet, you have revenue but in the real life you are starving because you can’t access your money.

There was a day where I ate only bread and cookies. Some people do a juicing diet but I made a bread diet hahaha. :D

Image for post
Image for post

I drank free tap water in Starbucks. OMG, what could be better than a glass of tap water in hot Balinese weather?

I also worked there till night and then, even longer because it was free. :D

Sarcasm hashtags: #StartupLife #FancyOfficeInSanFrancisco

Image for post
Image for post

Luckily, one of my friends helped me. I sent money to his PayPal account and he withdraw cash for me at the ATM.

I ran into a local cafe for food and bought a big noodle and omelette. This was one of the tastiest dinners in my life. :D

Image for post
Image for post

Total April and May results

Revenue

Image for post
Image for post
Image for post
Image for post

April Total Gross revenue was insanely big for me, $1570 but MRR is low. Why? Because the biggest piece of Total Gross Revenue was made by Progress Bar OS X which doesn’t have any monthly recurring payments. This data is open on my site: http://andreyazimov.com/

BTW 30% of Hardcore Year already passed. Damn how fast.

Image for post
Image for post

Expenses

Tell us about the costs you made this month (techstuff like servers and software, but also your living stuff like food and rent etc..)! It’s sets the revenue in a good perspective of your total balance.

Personal expenses $544 / month in Bali

Image for post
Image for post

We see that my expenses are growing 5–8% per month. Probably because I started to make some money and ate more and because of visa extensions. :)

Typical Business expenses for 1 month:

  • Hosting for Sheet2 Site: $5 / month
  • Gumroad Pro $10 / month

But you done all this because Pieter helped you!

Image for post
Image for post

Question from @DanielMeade:

Without detracting anything from you accomplishments, I would be interested to know if you’re doing any tracking on the results of Influencer Marketing. Your association with levelsio will have undoubtedly helped your reach.

Pay it forward ❤

To be fair, retweets obviously helped. But the key is is the product because if the product is shit nobody will buy it.

And it’s not only Pieter, there are some other people from Spicy group who helped me build “the right” products and believed in me more than myself as I mentioned before.

But I would not call it “INFLUENCER MARKETING”. I think it’s normal when your friends help you and believe in you. Someone is helping you and you’re helping other people. Together we are building an ecosystem of people that are helping each other to make great products.

So if you are reading this please help at least 3 people achieve their goals.

Image for post
Image for post

Lessons learned

Product / Market fit is much higher with simple and clear products that hit one niche pain point rather than complex technical products that target wide problems.

UPD: Nov 2018

After Jeff Atwood (co-founder of StackOverflow and Discourse co-founder retweeted it)

And even Paul Graham liked it:

Image for post
Image for post
Image for post
Image for post

After it was featured in Uncrate:

And main Lifehacker website (before it was featured in only Russian branch)

Here’s a sneak peek of what I’m working on next

Image for post
Image for post

Have you ever been annoyed by that?

UPD: Jul 2018 — Launched

Want to see if I reach my goal?

And follow me in Twitter

And if you’re feeling really generous, you can buy me a pack of ramen by sending $2 to my PayPal address

or become my Patron

_____________________________________________________________

What happen next?

_____________________________________________________________

Thanks

Love you ❤

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store