October 28, 2023

Save generic notes to people in Henlo

One of the most wished for features for Henlo is a way to save notes without adding an interaction. The next update will allow for exactly that. Stretch goal: Add a reminder to a note to not forget about that important work meeting they told you about.

August 26, 2023

Placescore Beta Soon-ish

I’m nearly ready to invite people to Placescore’s TestFlight. If you want to test and play early, subscribe to the Tiptop Newsletter (no spam, ever) where I’ll drop the TestFlight link (with a limited amount of spots) in the next couple of weeks.

July 19, 2023

Out now: Peat – A habit tracker app for iOS and iPadOS

Long story short: My habit tracker app Peat is out now. You can download it for free. I think it might be the best habit tracking app on the App Store but you’ll be the judge of that seriously biased opinion.

Peat offers a very focused and easy to use overview of your habits. Here’s a little pro-tip for you: Long press on a habit to add a completion directly from this list.

Some people don’t get why building habits is so important for a happy life. Here’s my elevator pitch for why you would want to go through the hassle of sticking to a habit:

It literally changes your identity.

You become a different person. Just by deciding to do something regularly, you’re suddenly a person that works out, that flosses daily, that reads a new book every month. It doesn’t matter who you want to become, the fact is that building a habit stands between you and your future identity.

I love challenging myself like that but the current choice of apps didn’t fit my needs. All of them are needlessly complicated or cramped full of gamification features like streaks. As you know: I hate streaks. They create needless pressure and destroy any form of motivation as soon as they break.

The habit detail view offers a visual representation of your growth. Every green square shows a success. Note how you can add as many completions to a day as you want.

That’s why I build Peat. It’s basically a tally list on steroids. You do what you want to do, you check it off. Every completion gets a green square. Over time you see your progress through the amount of green squares in each month.

You won’t get punished if you miss a day. Who cares! As long as you come back to it and try again, you’re on your way.

Here’s a list of what Peat can do right now

  • Reminders: Set a customizable daily reminder for each habit you don’t want to forget about.
  • Statistics: Keep an eye on overall trends or dive deep into specific habits.
  • iCloud Sync: No matter if you’re on your iPhone or iPad, you can check on your progress and mark new completions.
  • Widgets: Slap your habits right where you can keep them in mind. See your progress right on your home screen.
  • Currently available in English and German
Statistics! Bar charts, line charts, Peat has got them all.

Peat is free to download and use. Some features require a subscription though. I’m trying to become an indie dev here, so please bear with me.

Download Peat from the App Store

January 8, 2023

Work in progress: Goblin Mode

A lot has happened since I shared these two posts about the project I’m currently working on. I figured it’s time to let you know what has happened in the meantime. Here’s the short version: I learned a lot. Like A LOT. This is my third app ever and it’s the one where a lot of previously vague concepts finally clicked. I’m injecting dependencies, juggle with types and create view models like there’s no tomorrow. It’s so much fun!

What was supposed to be a placeholder icon has grown on me over time

A couple of weeks ago I invited some friends to try out the app and see if the overall idea works. This was a huge moment for me. People signed up for something I programmed. They created literal user accounts saved to a database I connected to an app I coded. Crazy. It got even cooler after that: They started using the app. And somehow they didn’t stop. I’m not sure if they’re only using the App because they want to be nice but it feels like they enjoy sharing one-off status updates with a closed and private group of friends. No endless timeline, no fame, only letting people know what you’re up to.

Let me give you an overview of how the app looks like at the moment.

This is the main view. You see your own current status and how old it is. Below that you’ll see all current status of your friends.

I wrote the code for all of this like three separate times. The first two iterations didn’t care about the amount of database requests at all. They worked but they weren’t scalable. I’m now using Firestore realtime updates and it’s amazing. If a friend updates their status while you’re in the app, the status automatically gets loaded from the server and displayed on top of the stack.

But what happens when a friend hasn’t updated their status since midnight?

SPIDERS!

They become stale. I like the idea of having a predefined tabula rasa moment. Each day starts with a clean slate. If you post something one minute before midnight that status will only be fresh for one minute. Slightly weird, but I kind of like it.

Speaking of likes: I implemented a system to like status. It works well and is fun. I’ll probably replace it with a system to react with a tag, though. Liking feels wrong when a friend posts a status about them being tired, feeling empty or being sad. I want to be able to react to these with “ūü§° Clown”.

There are more than 130 tags now. I built an admin area and support for admin accounts into the app and can CRUD tags and tag categories in seconds. New tags and categories show up on user’s devices without the need for an app update. It’s all in the cloud, baby!

I also build a system for tags and tag categories that are behind the paywall. My current idea for monetizing the app would be to put most of the cool tags behind a subscription of some kind. Those server bills need to be paid!

With the ever increasing amount of tags my friends asked for a tag search feature. That has been implemented as well. For those moments when you need to share your shower thought quickly.

And last but not least: I revamped the whole follow/unfollow system I talked about here. It became clear that asynchronous following isn’t the right concept for an app that’s meant for you to share semi-private status updates. Now there’s a whole screen dedicated to see who requests being friends with you. If you accept a request you become friends with the other person and you can both see the status of each other. If you cancel a friendship both ex-friends stop being able to see the respective status. Fair and easy.

I’m toying with the idea of limiting the maximum number of friends each person can have. Just to drive the point of the app home. That didn’t work out very well for Path back in the day but maybe times have changed. Who knows.


That’s it for now. I still don’t know if I’m going to release this to the public at any point. I’m still a novice coder and my implementation of everything related to Firebase has a big potential to suck. I’m generally cool with my code not being the best but in this case it could result in me racking up an enormous Firebase bill. That would not be fun at all.

As I said: Who knows. I might find a way to limit the app features enough to let people try it out without me becoming poor while allowing people to pay to cover the database costs. It sure would be an interesting problem to have.


Do you feel like there’s a Goblin Mode shaped hole in the lives of you and your friends?