• The Early Bird Caught Me

    A bird alarm I never bet on quietly beat every idea I loved, and figuring out why meant admitting I’d been reading my numbers backwards for years.

    I build things for fun, and to fix my own problems. That’s pretty much the whole business plan. There are no VCs involved anymore and no growth team waiting on a standup, it’s me, Leandra, some friends giving me priceless nudges, a credit card with a nervous limit, and a list of small annoyances I’d like to make smaller.

    You might assume the part I obsess over is the building, but it really isn’t. I love building, it’s my comfort zone. The thing that keeps me up at night is the marketing experiment. I have a tight budget and even less time, and I have to decide where to spend both. Get that wrong and the nicest app in the world dies quietly in the App Store, unranked and ignored.

    So this is a story about getting it wrong on purpose, cheaply, and about what a bird I didn’t even fancy the odds of ended up teaching me.

    The control group won

    I’ve already told the long version of this story over here, so here’s the short one. Before building anything, we ran Facebook ads to test a handful of alarm ideas against each other: Social Alarm (wake up to secret messages from people you love), an alarm from your future self (my real darling), one with quotes, and one with a sexy voice, all of them against the boring baseline I’d thrown in only so the others would have something easy to beat, an alarm with birds.

    The birds won, and not by a hair. I’d rooted for Future Self right to the bitter end, and it didn’t matter at all, because the market doesn’t care who I’m rooting for. A cheap little experiment had just told me, very politely, that my taste was the least valuable thing in the room.

    Ahh, but your gut is special, Dieguito, no?

    – My Favorite VC

    It isn’t, and the dashboard had just said as much out loud. What I didn’t understand yet was why the bird kept winning, and that took a second app to figure out.

    So I ran the same experiments on two very different apps

    I don’t have just one app. I built more than 10, and most of them are gone or don’t get much of my attention, but one is still a good runner, Smart Keys (a smart keyboard for people like me who write in a second language and would rather not sound awkward), and now there’s Bird Rise (the alarm that wakes you up gently with birdsong). They couldn’t be more different from one another. One solves a writing problem and the other solves a waking-up problem (waking-up problem??? Really??), and the people who use each one barely overlap. Smart Keys lives in the middle of your sentences, while Bird Rise owns your first waking minute.

    The same broke person built both of them, on one tiny budget, and ran them through the same playbook, even though the apps themselves share almost nothing. And that, it turns out, is the most useful science I’ve ever run on myself.

    Experiment one: buying users

    The first experiment is the boring and expensive one. You pour money into Meta, watch who comes out the other side as a paying customer, and then do the math on CAC against LTV (what it costs to win someone, set against what they end up paying you back).

    Smart Keys barely scrapes an LTV/CAC of 2. It works, but only just, and you can almost feel it sweating to get there. And that was fine, my strategy is to have many of those little apps with tight margins that together could make a difference. But then, Bird Rise tops 3 and keeps climbing. (the holy LTV/CAC > 3 that VCs supposedly swoon over, that one??)

    The download-to-paid story is even more lopsided. Smart Keys turns roughly 3% of downloads into paying users, while Bird Rise sits comfortably north of 6%. That’s two times the conversion out of the same channel, produced by the same clueless guy.

    I’ve dropped over 30 grand (most of it straight into Zuck’s pocket) to learn things like this, so here’s the receipt for free. Two apps are not equally good at turning attention into money, and the gap has almost nothing to do with how hard I worked on either one.

    Somewhere along the way I started thinking about these apps less like products and more like a portfolio I angel-invest in, each one a little bet with its own risk profile (though plenty of them I still build purely for fun, or for a cause, and those just pay out in a currency these charts can’t see).

    Which raises the uncomfortable question any honest indie dev should sit with: would all this money have done better quietly parked in a boring index fund? I once built myself a chart putting my profits next to my ad spend next to what a conservative investment would have returned over the same years, and it was not a flattering picture (a reckoning I’ll save for its own post).

    Experiment two: the hard paywall I didn’t believe in

    Then I read a RevenueCat State of Subscription report claiming that hard paywalls (the kind where you hit a wall and have to pay or start a trial before you really get going) can actually work, even for small apps.

    I didn’t buy it. A hard paywall felt like the sort of move only a brand with real trust and real money could pull off, and we have neither of those. It seemed obvious that a tiny app run from our apartment couldn’t slam the door in a stranger’s face and ask for money (or commitment before testing the product).

    So I ran the same hard paywall A/B on both apps at once. On Smart Keys it was a flat, immediate no. On Bird Rise the test is still running, but the early read (which I’ll trust before the final number lands, because the direction is already that clear) is that the hard paywall might actually work, on my little app with no brand to lean on, which I honestly didn’t see coming.

    I didn’t believe the RC report, and the report didn’t care. It was the same experiment producing opposite answers, which is the whole point. There’s no playbook you can lift off a blog post (this one very much included), only the version you test on your own thing.

    Weren’t you the king of A/B tests, Dieguito?

    – VC-backed Me

    Prince at best. In a past life I was a properly funded tech bro out to change the world from Silicon Valley, and I ran dozens of these tests there, burning through millions of dollars in the process. The punchline is that when we finally shipped the winning variants, not a single metric that mattered actually moved. I came out of all that pretty burnt out on the whole A/B religion, so this (cheap little tests on my own apps, with my own nervous credit card, where the answers actually change what I do next) is me quietly making peace with it. And even half-converted, I learned more from this one cross-app comparison than from a hundred button-color experiments back then.

    What kept showing up

    So why does the bird keep winning experiments I never designed it to win?

    It took me embarrassingly long, and a lot of squinting at Mixpanel, to notice it. Every metric where Bird Rise pulls ahead (it’s cheaper to acquire users, and they convert and commit far more readily) traces back to something the flashier ideas never really had: a strong tribe.

    “Tribe” is a slippery word, though, so let me pin down what I mean by it, because it isn’t a big audience and it isn’t a subreddit that happens to exist. It’s the difference between people who merely share an attribute and people who’d put that attribute on a mug. Here’s the test I use:

    A tribeNot a tribe (just a category)
    They wear the name with pride: “I’m a birder” goes straight in the bio.A label in a demographic report. They don’t proudly tell anyone.
    They could talk about it for 24 hours straight.They’ve got nothing in particular to say about it.
    There’s a mug, a tee, a sticker, and they own it (or want it).No one would ever put it on a mug.
    It comes with its own lingo, rituals, heroes and rules.It’s just an attribute people happen to share.
    Members quietly rank each other by how deep they go.There are no insiders, no status, no ladder to climb.
    They evangelize, dragging friends in (like: vegans, fasters, CrossFitters).There’s no reason to tell a soul.

    Still, “Tribe” isn’t a yes/no, it’s a gradient.

    Birders immerse themselves fully (with their lingo, gear, life lists, and even a century of Audubon membership behind them). People learning English as a second language form a real community, but it’s a gentler one, more a network of practical groups than a single passionate culture. Within this, specific language-learning groups (Korean learners, Portuguese from Portugal versus Brazilian, Duolingo’s owl fans) are noticeably stronger than the broader community. Smart Keys benefits from these smaller groups but never quite achieves the strong pull that birders give Bird Rise, which accounts for most of the difference between converting at 3% and 6%. Future Self had neither of these, just my own private fantasy with an alarm attached, while the bird came with a whole community already waiting at the door.

    The thing sitting underneath all of it is a daily ritual (a natural one like waking up, not a streak you guilt yourself into) resting on top of a community that already cares, something I’ve started thinking of as Ritual × Tribe. That mix is cheaper to reach and far more willing to commit. I can’t prove it’s the strong combo and not just dumb luck, but every cut of the data keeps pointing the same way. It’s not that I magically turn into a better builder when I build for birders, it’s that I happened to pick a better pond, one that came stocked with both halves (entirely by accident), and the data spent a whole year patiently trying to point that out to me.

    And here’s the part that took me a while to truly understand: this chart isn’t a scoreboard. Every corner of it has winners. A useful, tribeless app can definitely generate money if you can buy the channel or own it outright. A big, passionate crowd without a daily hook can succeed through merch, sponsorships, and partnerships. None of those are bad quadrants; they require different marketing strategies, and each one runs on resources I don’t have: funding, a sales team (or any team at all), a channel I control, or a B2B approach.

    This chart has a couple of other dimensional axes I’d love to explore more, but let’s keep it simple for now so I can convince myself that I created a model to evaluate my ideas.

    Smart Keys and Bird Rise accidentally dragged me to the top-right quadrant. It’s the one corner I’ll aim for on purpose from now on, not because the others lose, but because it fits my reality (budget, team, expertise, lifestyle). Until I get excited by some cause or have fun with some technology that makes me forget about all of this. ;p

    Metrics to change, or metrics that change me?

    Underneath the bird and the tribe, there’s a bigger shift this whole thing forced on me. When I see a download-to-paid number stuck at 3%, my trained instinct is to treat it as a dial: tighten the onboarding or move the price around, and try to drag that number up by force. That’s the optimizer in me, the part Silicon Valley trained into me and paid handsomely for. But a metric can be a clue instead of a dial. Bird Rise converting at two times the rate of Smart Keys was never really a paywall problem I could fix, it was the market quietly telling me something true about the concept itself, about whether the need ran deep and the people were hungry enough.

    The only way I’ve found to tell a dial from a clue is to bet one idea against another. You don’t learn the shape of something by staring at it, but by holding it up next to whatever it isn’t. A number on its own just begs to be optimized, but the same number sitting next to a wildly different app stops being something I turn and becomes a verdict on my thesis, on what I’d assumed about the problem and whether anyone needed the product as badly as I did.

    I guess some metrics are there for me to change, and the more important ones are there to change me.

  • Smart Keys, Idea to Profit

    This is a summary of a 16 months journey. From idea to profitable business.

    The idea was born from a personal need. I wanted a tool that could help me proofread my texts on my phone or computer. My main inspiration was Grammarly. But better. (Delusion is a requirement for starting a business).

    I didn’t want to start another VC-backed startup. I wanted to build a lifestyle business, something my wife and I could run together and make a living from. This is important because some ideas just don’t fit that kind of model.

    I was drafting a method to build things I care about. This is my secret process now, but it wasn’t back then. In summary, it was something like this:

    1. I have a problem, and the solutions aren’t good

    I have always struggled as an ESL learner. My wife has too. Writing an email or a simple text message and feeling confident about it was always a struggle. This was always a top of mind problem.

    We had been using Grammarly to help us with that, but it was infuriating. Always trying to teach me and repeatedly correcting itself. I got really excited about the possibility of making a tool that a company needed millions of dollars and hundreds of engineers to build, but doing it with just me and my wife. We were either geniuses or about to have a very expensive hobby.

    Grammarly and other players were moving a lot of money and traffic and growing. My goal was to get 1% of their market share. I figured that was a humble enough slice of the pie. Spoiler: It was not.

    2. Lets build it

    The first version was a wordpress site that was simply proofreading my texts. It had a prompt that I was always using on ChatGPT.

    That evolved to a point that I was using it everyday. My wife too. We added more “pre prompts” and suddenly it became a huge list of prompts for different purposes.

    The first names were Slap Keyboard and Tapp Store. I am not proud of those. It took some time to feel confident with Smart Keys. I still don’t think it is the best name (it sounds like a car key tool), but we got to a point that we needed to launch. We could change it later. We didn’t.

    The tool evolved to something more than just proofreading. It became a tool to easily convert any text to any language, or even create your own text transformation.

    3. The launch

    We had not tested the market costs before building it, because apparently I like not following my own process. So I was curious to get the first numbers for cost of acquisition. We created many creatives and started seeing people quite excited.

    Because my budget is quite restricted, I decided to focus on one main channel to distribute and market. Mostly iOS for distribute and Meta for marketing. I tried Apple Search Ads and Google Search Ads. I did not succeed.

    I noticed that the first customers were using the app multiple times a day. That gave me confidence to scale more ads. Even though ROAS was low, I was confident by our own use and those first customers that eventually we would get that money back.

    As a product person, I decided to create a MacOS version of it. The concept is the same: an easy way to proofread or transform your texts. However, I ended up using the Mac version much more than the iOS one.

    One major event that happened about a month after our launch was the introduction of the native proofreading feature on iOS 26 (iOS and MacOS). That made me a bit worried, thinking people might stop downloading our app. However, our use case is so broad and offers many possibilities that we kept going. We even joked that Apple copied us.

    What we tried and failed

    • Reddit as a tool for feedback: There are way too many people asking for feedback and not enough actually giving it. I got some feedback here and there, but honestly, a lot of time is spent for very little value. Plus, a lot of communities don’t let you share your product, which makes sense because people just sharing their stuff without joining the conversation is pretty annoying. Reddit Ads has cheap clicks, but no conversions.
    • Apple Search Ads and Google Ads: Too expensive for us. We couldn’t get a good ROAS.
    • Influencers: Unless they have a huge audience (millions of followers), they are not worth it. Their videos also didn’t perform even as Ads. And if they are big, it will be expensive. I particularly do not like this because it is like a one shot thing. Get a spike of downloads that doesn’t sustain. I want something I can bring users over time.
    • Product Hunt: A good tool to improve SEO. Don’t expect meanigful feedback or get ranked well. Many robots and people selling upvotes.
    • TikTok: Cheap views and clicks, but very low conversion rate.
    • MacOS version: I like this version more than the iOS one, but I couldn’t find a channel to market it.

    12 Months burning cash

    The first six months felt like a slow cooker with our small marketing budget. The profit chart was slightly going down every month. I started to doubt my strategy a bit, should I put in more money to see faster results, or was this not going anywhere? But the LTV numbers started to improve, and retention remained very high.

    The good news started after six months, when the ad costs finally became lower than the profits. I didn’t expect it to take that long to see the chart reverse and start earning money again. Naively, I thought we would be profitable in about three months.

    16 Months later

    After 12 months, we recovered everything we invested from the start and finally began making money, not a lot, but enough. Margins are tight. The app is stable and requires little maintenance. The money we earn is being used to fund our other ideas.

    Seeing the profits surpass the costs was an important milestone for us. I confess that I slightly reduced the budget just to see that happen faster during that month.

    But I still don’t really feel pumped about dropping over $25,000, mostly with Meta. It’s wild to think that while my customers’ LTV is about $35, Meta’s average LTV is probably in the hundreds of thousands of dollars.

    So, are we rich?

    No. Did we make Zuck richer? Yes.

    Smart Keys didn’t become the “Grammarly Killer” I naively thought it would be. I didn’t get my 1% market share. Maybe 0.0001% 🤷‍♂️❓

    But what I got was a business that pays the bills, works for us, and allows me to keep building weird stuff. I traded the stress of “growth at all costs” for the anxiety of “I don’t get a support ticket for months. Are users stuck on the first screen?” and honestly, I prefer the latter.

    It’s not a unicorn. It’s a small, profitable, slightly oddly named app that solves our problem, and we use it every single day. That’s exactly what we wanted.

  • My No-BS Building Process

    Indie dev notes from building outside the VC fantasy

    Most people talk about building like it’s about speed. Ship fast… move fast… break things… Really?

    The longer I’ve been building stuff, the more I see that the real work happens before anything actually ships. That quiet, slow phase where it doesn’t look like much is happening yet.

    I have read many books about creating a startup, product iterations through experiments, finding market fit, and leveraging viral effects. They share a playbook that might work (or pretend to work) in the VC world.

    The thing is, the indie-solo-bootstrap reality plays a different game from the silicon-valley-BS-unicorn fantasy. The good news is that there are many great books and resources available for those dreaming of a lifestyle business.

    The spark to find my process came from one the first chapters in the MAKE book. It’s a good book for someone who wants to start building things and has no idea where to begin.

    As a big fan of the Go Horse methodology, I tend to go straight to the building step. And that’s no good. That was the reason I decided to prioritize more the planning and research steps more in my life. And I wanted to build things that matter. Or at least, things I care about enough to finish. I realized that having a clear path helps when you’re stuck in the “what should I build” loop.

    So here it is: my secret building process.

    Let’s start with the first one, which is actually creating a list. From now on, I love lists.

    1. My top problems

    Spend a couple of weeks simply listing the problems in your life. (If you don’t have any problems, try making your life a bit more interesting stepping out of your comfort zone)

    The Secret: Just write them down. Don’t worry about fixing them yet. It’s harder than it sounds because our brains want to jump straight to the solution. Try to resist that. Just let the problems linger and bother you.

    When you’ve got a solid list, rank the stuff. Be real about what actually makes your life miserable and what’s just small annoyances you complain about. Keeping it simple is best. I tried a fancy decision matrix once, but it was way too much work and didn’t help much. Just going by the order of the problems worked best.

    I’m still working through some things from my list from three years ago. But yeah, it’s a list that I occasionally add new items to. As you can see, there are various problems, such as the desire to write more or eliminate hair in unwanted places. 👙

    2. Solve them (without building anything)

    Start by addressing the first item and look for possible solutions that already exist. Test them. You may actually find a product that solves your problem perfectly. If so, congratulations, you just saved yourself months of work. Job done. Move to the next one.

    The secret: I was pretty amazed that just by switching up my habits and pushing myself out of my comfort zone, I fixed a bunch of problems. I started a 5-minute-a-day workout (which felt like a lot since I’m usually pretty inactive), and that kicked off a chain reaction, helping with stuff like back pain and improving my sleep.

    I also began volunteering at local non-profits, which really helped my networking. And the best part? It didn’t cost me a thing and didn’t involve any tech.

    Three years later, most of the items are done, and I feel it’s time to go back to step one again very soon.

    3. Market research

    Alright, now the real game starts. If you didn’t find a solid fix for a big problem, your experience testing existing solutions earlier will help you see what’s missing. Here’s where most people go wrong, don’t start building just yet. Check out some marketing numbers first. Use SimilarWeb or SensorTower to gather some data about the players.

    Check-in: I prefer a market with big players, either in revenue or traffic, hitting millions a month. I’m a bit cautious about untapped markets. This probably isn’t the best problem to tackle while bootstrapping. I think I need to be really excited about the project to decide to keep going.

    The secret: By the way, being excited is a huge part of my process because building something is tough. There will be lots of times I’ll want to quit, so that excitement has to push me forward during those moments.

    4. Now it’s your time to shine

    Now that you have a good idea of what you want and what the market looks like, split your time in two. If you are a product person, really force yourself to spend more time on marketing, and the opposite for marketing folks.

    4.1. Test the market

    This next step totally changed the game for me: run ads and use simple forms to figure out acquisition costs. Getting users’ emails also helps you build a list of beta testers to stay in touch with. And yeah, you gotta talk to people dealing with the same problems.

    Marketing Requisites: You have to spend money here, there’s no way around it. Someone who tells you otherwise is trying to trick you into buying their stuff. If you’re not willing to pay to find customers, either this problem isn’t that big a deal to you or you don’t really believe in your idea.

    Tip: Last time I did this, I ran a Meta campaign using their Lead Online Forms. I tested my idea against 3 others to compare CAC and ended up finding another opportunity. Check out the Bird Rise story.

    4.2 Build an MVP

    Whilte your ads are running, you can start building. This should answer technical questions and solve your specific problem. Keep it small and meaningful for now, because in less than six months, it will surely become a little monster with all the features added from user feedback.

    Tech Requisites: Be careful with the scope and tech stack. You don’t want to build something that requires high server costs or maintenance.

    Use your own product. Remember, this came from your list of top problems you wanted to solve in your life. But try not to fall in love with your idea. Fall in love with the process of solving problems. Share your MVP with those first people from your initial Ads. Do the adjustments based on their feedback. You will have bugs. Many bugs. If users are not reporting bugs, you are not hearing them. It is hard to get good feedback. I still struggle here.

    Check-in: While you’re going through this, you might realize your idea isn’t really fixing the problem. Technical issues pop up. CAC might be too high. The problem could be trickier than you expected. This is a good time to pause and think about whether you want to keep going. Quitting now isn’t a bad thing. It’s actually pretty smart. It saves you from wasting months on something that a solo person or small team can’t crack. Just go take a shower and have a good cry.

    5. Launch

    I fixed all the bugs, adjusted the product based on early user feedback, and developed a decent version of the marketing strategy. Now it’s time for a reality check. What I want to figure out now is the real cost to attract paying customers and how much they’ll actually value my product. That way, I can get a clearer idea of whether this product will be sustainable or if I have enough money to keep it going.

    The Secret: My go-to plans are short- and long-term subscriptions with a 3 to 7-day trial and lifetime discounts. This approach allows me to account for some costs related to the trial (CPT) preety fast and generate some revenue from lifetime discounts.

    I like weekly plans as an anchor for other plans and as a way to measure if the product is good enough. In a month or so, I should have a better idea of retention based on renewals.

    There will be many iterations here, from onboarding to pricing. Be patient before making major changes and try to get a good volume of users first.

    How about growth hacks, virality, and organic strategies, Dieguito?

    – Your Favorite VC

    Sorry, but I don’t trust organic growth as the main strategy (yet?). With the flood of AI-generated apps, welcome to the bloody ocean of the app market. Apple and Google wouldn’t surprise me if they start charging per app published instead of by developer account. The only people who don’t like paid acquisition strategies are VCs, they love to hear zero-marketing budget BS.

    6. Measure

    The most important metrics for me are CAC related: CPT (Cost per trial), CPS (Cost per subscription) and ROAS. That is it. Retention, Profits and LTV are critical, but they take a while to measure meaningful data. You will change prices a lot until you find what works.

    Good tools to help you with that are Mixpanel (connected with the Meta API) and RevenueCat.

    Check-in: From those numbers, do another check-in. Scaling ads while bootstrapping is tricky and can get expensive quickly. Proceed with caution. You can see the blue line rising faster than revenue in the first chart. Six months later, I reevaluated to make the ad spend more sustainable.

    What about Experiments, weren’t you the king of A/B Tests?

    – Your Favorite Scientist

    First off, I’m not the king, maybe more like the Prince 💁‍♀️. I used to get super excited about experiments, especially the chance to discover something novel. I spent tons of hours designing, coding, and running experiments, sometimes with awesome results from tons of data points. But the weirdest part was that when we rolled out the experiment to all users, we didn’t see any change.

    What was probably happening was a lack of statistical power, which is a major issue in science itself. People often talk about statistical significance, but that’s really just an agreement that the result is unlikely to be due to chance, unlikely… unlikelly.

    Another thing to think about is what you actually measure. Experiments should ALWAYS be judged by the final metric, which is REVENUE. Tweaking middle metrics like signup rate or onboarding steps doesn’t always affect revenue. Sometimes a big jump in signup rate doesn’t do anything for revenue (I’ve even seen it go down 💸)

    The Secret: So, when I start a new project, I usually don’t have the cash, team, or tons of data to run experiments. These days, I’m more into getting ideas from behavior construts that big companies have already tested a lot, like social proof, authority, commitment, scarcity, and so on.

    10. Scale (or not)

    Welcome to the real world, you’re now a real player in the market. Scaling means you’ll be up against those big players you checked out months ago. Your campaign performance won’t be the same with your small budget. You’ll probably need more creatives, get more support tickets, and messing up your server or introducing a bug could disrupt thousands of users (While I’m writing this, I’m waiting for Apple to approve a bug fix for a version I messed up, and now users are stuck.).

    I consider it actually a good success if you can deliver a good product but can’t scale during the first months. You solved your own problem and helped other people solve theirs. Scaling takes time and requires good cash flow.

    The Secret: If you’re going solo, find a buddy to do a bi-weekly check-in with. I’ve been doing this with a friend who’s also building stuff. Sharing progress and struggles helps keep you accountable and gives you new insights from another perspective.

    The truth: This part of the process is still a work in progress, and I’m not totally sure I cracked the secret here. Either way, whether you managed to scale or not, it’s probably a good time to take a shower and have another cry.

    That’s it

    This is a live process. It involves some iterations and may take time. It has evolved since I read the nudge from the MAKE book that if your list of problems is small, you should make your life more interesting. I signed up for the 540-mile bike ride from SF to LA, which brought me beautiful problems to solve.

    For Smart Keys, I followed most of the steps above. However, I admit that in other projects, I skip some parts I don’t like much, such as properly testing the market.

    Air Fiesta is a very poor example of a project that failed on many levels. It started by not addressing any of my problems, was technically complex, had a huge scope, and I did inadequate market research. I did it simply because I had free time and was excited about building a game using the Google Maps SDK related to a cause. I even added to my list of problems just to justify its development: “I want to create games again.” 🥸

    But I am trying to be better at it. Bird Rise was actually a pivot inspired by insights during the market test. And Air Fiesta and other tiny games actually brought a main insight about using games as a marketing tool. So maybe I am learning something after all.

  • The Social Fall, The Bird Rise

    It was 5-ish in the morning and the Alexa in our bedroom was pulsing that eerie orange light. Usually, that means a notification is pending (or it’s trying to sell me a bird feeder it predicted I’d buy soon).

    I mumbled, “Alexa, read my notifications.”

    It was a message from our niece saying she missed us. Leandra woke up, eyes wide, and immediately bought a flight ticket to Brazil.

    That effective, unplanned wake-up call was the spark. We thought that experience was something worth repeating. We wanted to wake up surprised by messages from friends, family, loved ones.

    The Rabbit Hole of Doubts

    The initial idea was an app to help us do exactly that. A social alarm where people could record secret messages for you to wake up to. We toyed with it, recording silly messages for each other. It was cute. But then came the questions.

    • Is there anyone else in the galaxy who wants this?
    • How do we test it without spending months building it?
    • Will anyone pay for this?
    • Is it really more effective than a regular alarm?
    • Does Apple allow dynamic alarm sounds? (Yes, but it’s a nightmare, by the way).
    • How do we handle the privacy of people’s recordings? Or unwanted people recording messages for you?
    • What happens if you have no friends recording messages? (That one hit close to home).

    …and a rabbit hole of other doubts.

    Testing the “Social” Hypothesis

    We were so sure we were onto something.

    But surprisingly, we did what product-centric people usually don’t do. We ran Facebook ads to test the idea before building it. We compared the “Social Alarm” against a few control groups: “Alarm with Quotes”, “Alarm from your Future Self”, “Alarm with a Sexy Voice”, and… “Alarm with Birds”.

    I was actually rooting for the Future Self idea as well. (I have weird needs, I know). I was also super excited that we found some evidences that human voices and variability on alarm sounds are more effective than just a regular alarm sound. So my two favorite ideas were super aligned with that.

    While the ads burned money, I built an MVP to test the technical waters. I tried Flutter first because I wanted to be lazy and have one codebase for iOS and Android, and had kind of a blast working with FlutterFlow for SF2.LA, so why not going to it’s parent technology. It didn’t go well. The libraries weren’t there, and it felt like I was fighting the framework more than building an app.

    So I ditched the cross-platform dream and went native iOS. Suspecting that now with AI Coding Assistants, it’d be easier to maintain two good codebases. By the way, because these coding assistants are so good, I don’t believe anymore in any cross-platform solution.

    The ad results came back. Neither the Future Self idea nor the Social Alarm set the world on fire.

    I also talked to someone who had tried it in 2014 and failed. They faced many problems and ended up pivoting to a different idea. Found other people who tried in 2023, and failed again.

    I thought people wanted to wake up to friends.
    I was wrong.

    We were confused. The winner was Bird Alarm… but the iPhone already has a default bird sound. Why would anyone download an app for that?

    I’m a bit anti-social, so I ironically crave those planned, safe moments of listening to loved ones. When I get a voice message from a friend, I wait for the perfect moment to listen to it. I assumed everyone else was the same, lonely in the crowd, starving for a voice. But maybe I was misreading the room. Maybe “social” has become a job. A performance. Something you check before bed and doom-scroll through. The last thing people wanted was to “login” to another social interaction the second they opened their eyes. They didn’t want connection. They wanted peace.

    We shelved the whole thing. I still tried to launch my “Future Self” alarm anyway, the code was ready. Apple rejected it. I changed the approach. Apple rejected it again. They were nailing the coffin on this idea for me. But, they gave up on rejecting me, and approved it. Still, the solution I got seemed one of a kind gohorsing style, if you know what I mean. I called the app Memo Rise, a mix of Memo app and alarm. I consider this app just an MVP, still needs a lot of work, but somehow, there are some “visionaries” paying for it.

    The Second Chance

    Six months later, Leandra told me to stop messing around with coding games and revisit our list of “serious” ideas. We looked at the alarms again.

    We’ve spent the last years trying to build things that improve our daily habits. The questions are always the same.

    • Is there anything I do daily that I can make better?
    • What is bothering me the most every day?

    We looked at the bird data again because people wanted it. We wanted something to improve our wake-up ritual, and we love birds.

    So we decided to give it a shot. I already had the Memo Rise code rotting in a folder somewhere, so adapting it to play bird sounds wasn’t a huge leap.

    Becoming Bird People

    The funny thing is, the more we worked on it, the more we fell in love with it. I didn’t start this project excited, but somewhere between finding the right Song Thrush audio and debugging audio sessions, I got hooked.

    We started watching documentaries. We became obsessed by Cornell University, they are simply the masters of bird-related projects, they have so many, with millions of visits per month. The Guardian recently talked about their bird identification app Merlin. We started identifying birds on our walks. We became those people who point at a tree and whisper, “White-throated Sparrow” (my favorite, for now).

    So here we are. Bird Rise. It’s one more little product we’re proud of. Maybe the one we’re most proud of, actually. It connects us a bit better with nature, and it’s not just another AI wrapper looking for a problem to solve. And that feels like a win already.

  • Reader Mode, RSS, and the Business of Interrupting You

    I used to be an RSS user, and I loved it. Most mornings started the same way, ginseng tea on the desk, laptop already warm, and Google Reader open before anything else so I could check what was new.

    I could easily read blogs written by friends (people I actually wanted to hear from, not people I happened to know). I could also pick the brain of strangers I admired, bookworms, travelers, designers, developers, nerds scattered around the world, people I would probably enjoy being friends with but never met.

    That simplicity was great for readers and bad for anyone trying to sell attention. RSS stripped pages down to the part that mattered and ignored the rest. No ads or tracking, and none of the urgency theater. That also meant no money, which explains how this story usually ends.

    RSS had already existed for years before that moment, mostly living quietly in the background of blogs and personal sites. It started as a fairly nerdy idea in the early 2000s, a simple XML based way for websites to say “here is what’s new” in a format machines could understand and humans could benefit from. Blogs adopted it quickly. News outlets tolerated it. Big platforms embraced it just enough to look open, then they quietly lost interest once they naively realized how little leverage it actually gave them.

    So, in 2013…

    Google shut down its RSS reader.

    I frustratedly migrated my feeds to other readers and pretended that was a solution. It worked for a while, but around the same time, social media and Google News got very good at hijacking attention. You stopped choosing what to read and started letting something choose for you. Checking in turned into staying indefinitely.

    I could still see what friends were doing on social media. Google was giving me interesting things to read. If I measured how much time I spent consuming information, I would probably describe myself as informed. That metric looked good on paper.

    I ended up forgetting about my RSS feeds. They faded from my radar, and I told myself that it was fine. What did not look as good was how I felt.

    Over time, that tradeoff became impossible to ignore. The less time I spent on my phone or on social media, the better my days felt. I had more energy for new ideas. I was more willing to start projects instead of postponing them.

    I even felt.. smarter? 🤷‍♂️, it’s hard to explain, I felt my brain more in sync. This was not a dramatic realization, just an accumulation of small, repeatable signals. So I started deleting things, one app at a time, watching the home screen get emptier and my mornings feel lighter.

    Social media went first, which was easier than expected. Work related apps followed, which felt irresponsible until it did not. The last thing I could not let go of was Google News. Some of it was convenience, some of it was fear of missing out. Mostly it was that Google News lives inside the browser, which still feels nonnegotiable on a phone. I even tried removing the browser app entirely. That experiment did not survive long.

    The journey to the RSS nostalgia

    There were things I genuinely liked about Google News. It surfaced relevant topics often enough to feel useful. I could remove outlets I did not want to see anymore, which gave me a comforting illusion of control.

    By the way, did you know that you can add this blog to your Google feed? Try it here.

    Still, I would regularly get pulled into scrolling spirals or feel oddly irritated by publishers that hijack the back button just to dump a wall of clickbait in your face. This is directed at you, SF Gate.

    Big tech has always had a weird relationship with aggregators, mostly because feeds threaten things platforms care deeply about: ads and data, plus control. RSS was inspired by an Apple research group initiative, briefly embraced by large platforms, and then slowly abandoned. A feed that gives readers everything and takes nothing back is hard to justify inside an ad driven model.

    And then this morning happened.

    Today as in Christmas Day. I woke up by an app I am building around gentler mornings and started testing iOS accessibility settings, things like font size, contrast, and other details that matter when you are designing for people who do not interact with screens the same way. For the record, I am officially using 110 percent font size on my phone now. Happy 40+ to me.

    Well, somewhere in that wandering, and squinting a little more than I used to, I rediscovered Reader Mode in Safari and learned something I had completely missed.

    You can make Reader the default!

    For most websites, not all, but enough to change how the web feels. It is not an accident that Reader Mode does not work on many news articles opened from Google News, while the same article often works fine when accessed directly. Clean reading experiences being treated as optional instead of default is a business decision, not a technical limitation.

    I turned it on and immediately felt transported back to how reading used to be. Articles looked like they were designed to be read instead of converted (well, sometimes an article converts your soul though).

    Apple ships Reader Mode, and features like “hide distracting elements”, which quietly enable one of the best reading experiences on the modern web. This is where accessibility gets interesting, and a little uncomfortable for companies. That has always been a slightly contradictory position for a big tech company. Apple is not particularly fond of ads, and it also has history here. The Apple research group I mentioned earlier created important technologies around accessibility before being shut down under Steve Jobs.

    News business model

    I understand the challenge of news outlet business models, which are genuinely complicated. A feature like Reader Mode or LLMs does nothing to help a news-ad-driven strategy, so it is not surprising that companies look elsewhere for revenue. The New York Times Games (!!??) division becoming one of the company’s main revenue drivers says a lot about where sustainable attention is easier to build. Looks like we finally understood why people bought newspapers in the past, for the crosswords.

    What surprised me most was how quickly my body reacted to this change. The tension I had normalized while reading simply disappeared. Especially in the morning, when my tolerance for persuasion is close to zero.

    Reader Mode does not feel like RSS in how it works, but it feels like RSS in how it lands. It works directly from semantic HTML. It keeps the intent and discards the infrastructure. You arrive because you chose to, and you leave because you are done. Nothing in between tries to keep score.

    I do not think RSS failed because people stopped caring about reading. I think it failed because it was bad for business. I am also fairly sure this feature does not make some companies very happy. SF Gate, again, is still able to inject ads into Reader Mode or force a refresh after a short delay, which conveniently breaks the reading flow. These patterns exist to reassert control, reintroduce tracking, and remind you who actually owns the surface you are reading on.

    Reading as a special need

    Universal design is often framed as altruism, sometimes as something utopic. Accessibility features take real effort to build, the return on that effort is hard to quantify, and the revenue upside is rarely obvious. Because those capabilities are usually used by fewer people, advertising stakeholders rarely worry about losing that audience, at least at first. That changes the moment uninterrupted reading starts to feel like a special need.

    I did not plan to feel sentimental about it. I was just testing accessibility capabilities, half awake, thinking about font sizes and contrast ratios. Then I stumbled onto something I thought I had lost a long time ago, a good reading experience, one paragraph after another, without anything pulling at my attention.

    It turns out the hard part was never giving up RSS. It was remembering that choosing how to read is still an option.