Smart Keys

  • The Vibe Life: Building Smart Keys for Mac

    I didn’t realize I was about to enter the “vibe” industry when I started building Smart Keys. All I really wanted was a way to sound fluent in languages without doing the hard work. Let’s be real: learning languages is tough. So, I built an app that lets me fake my english fluency until I make it. Besides hating this reference, the thing here is that I’ll probably never make it. I may not be as fluent as I sound using tools like this.

    Still, Smart Keys did the job for me on my phone. It solved my laziness problem and gave me a sense of accomplishment. Translate a message, change to a more casual tone, proofread an email, all with one tap. Suddenly, I was hooked. This tiny app had me feeling like a fluent native speaker.

    Bringing the Vibe to My Desktop

    Once Smart Keys worked its magic on my phone, I thought: why not bring this vibe to my desktop? I wanted to cut down on the constant back-and-forth between tabs, the endless browser windows, and that infuriating cycle of copy-pasting. Small tasks, like checking email, sending a reply, or fixing a bug, don’t require much brainpower, but they drain your energy nonetheless.

    So, I created Smart Keys for Mac.

    The goal was simple: stay in my flow, move through tasks without jumping between apps, and avoid losing focus on anything. I wanted to type, hit a shortcut, and keep moving. Proofread, translate, fix code, all without leaving the current task.

    Simple. Efficient. Minimal.

    The Perils of a One-Code Solution

    Now, if you’ve ever tried to port an app from iOS to macOS, you’ll know it’s not as simple as change deployment target and calling it a day. That’s what I thought, but nope. The idea of maintaining one codebase sounded genius: keep it efficient, keep it synced, keep the maintenance low. But here’s the thing: macOS and iOS are like distant cousins. They share some traits but are entirely different creatures.

    “If debugging is the process of removing software bugs, then programming must be the process of putting them in.”

    – Edsger Dijkstra

    “Two platforms, one codebase” sounds like a dream, but I quickly realized that you can’t just slap a mobile UI onto a desktop app and call it a day. The screen sizes, input methods, window management, all these small details had to be adjusted. It’s like trying to fit a square peg into a round hole, but making it work without losing the essence of what you built.

    The Fine Line Between Efficiency and Overload

    Incorporating macOS-specific optimizations wasn’t as simple as resizing windows. The app had to manage multiple displays, adjust for different screen sizes, and still feel fluid while taking advantage of the desktop’s power. Every change, every tweak, led to a cascade of other adjustments. Maintaining a single codebase was efficient in theory, but it created a lot of headaches along the way.

    I spent more time testing than I care to admit, making sure one small change didn’t break something somewhere else. But that’s the process. There’s no such thing as an easy app transition (yet).

    Selling a Quiet Product That Does a Lot

    Now that Smart Keys mostly works, the challenge has shifted. I’m not wrestling with bugs as much as I’m wrestling with words. Building a product that blends into your day is one thing. Explaining it without making it sound like a blender full of features is another.

    It rewrites. It translates. It fixes weird grammar and polishes sloppy code. All in the background, with shortcuts you barely notice. That’s the magic. And also the problem.

    It’s hard to pitch a tool that isn’t trying to impress you. It just wants to help and then get out of the way. Try to summarize it in one sentence and you either oversimplify or overcomplicate. Try to be specific and it starts to sound like five tools in a trench coat.

    “First, write the press release. Then, build the product.”

    – Not me

    So now I’m figuring out how to talk about it without killing the simplicity. Selling a quiet product in a world that rewards loud ones. Making clarity feel exciting without dressing it up too much.

    Still, every time I’m stuck rewriting copy for the tenth time, it’s right there. I hit a shortcut, smooth things out, and move on.

    Sure, half the time I’m fixing the thing I just built, but hey, at least I’ve got good shortcuts for the apology emails.

  • Store Conversion? More like Store Distraction.

    Apple’s polished and carefully curated Benchmark Metrics are an illusion, designed to impress on paper but often disconnected from real-world performance. In other words, BS.

    Apple lays out a glossy percentile system, letting you compare your app’s metrics to others in the same category. It shows if you’re brushing shoulders with top performers (the 75th percentile) or stuck somewhere near the bottom (the 25th percentile). On the surface, it sounds super handy, like a leaderboard in a video game. In reality, some reports can be misleading. Sure, it feels good when you see your app “performing as well as top apps,” until you realize some numbers can be skewed by ads, special promotions, and other wildcards that don’t reflect genuine traction.

    I discovered that the hard way while tinkering on Smart Keys, an AI-powered keyboard I’ve been building to help people (especially myself) type faster and smarter. I was feeling way too proud of myself as I rearranged screenshots, polished keywords, and declared I’d cracked the code. The numbers insisted I was beating the top apps by a mile. Then I realized I was clinging to a metric that was all style, zero substance.

    I obsessed over four data points, hoping my “genius” would unlock the secrets of the App Store. Here’s the quick breakdown, served with a side of humble pie.

    1. Store Conversion: The most BS of all

    I treated this like my personal high score, proudly pointing at it like it was proof I had the Midas touch. Turns out it’s mostly driven by ads, the brute force of a solid marketing push, and unpredictable factors like being featured on popular blogs.

    You can test every ASO tweak in the book, but nothing outdoes a well-funded campaign. That dose of reality bruised my ego, especially when I realized I’d been celebrating a metric that anyone with a decent ad budget could inflate.

    2. Proceeds per Paying User: Almost BS

    This one fooled me for a while. It’s like checking your salary and forgetting about rent. Sure, “Proceeds per Paying User” looks impressive at a glance, but it hides the reality of how much you spent to acquire those users. If each paying user costs you three times what they bring in, you’re basically throwing money into a bonfire.

    Nothing bursts your revenue bubble faster than realizing your lunch budget is leftover ramen packets because you blew all your cash on ads.

    3. Crashes: Gold

    This is where I got a much-needed wake-up call. Smart Keys had an onboarding crash bug that nearly drowned my starry-eyed dreams. On a small team, testing across all devices and iOS versions is no walk in the park, so the crash rate ended up being my loudest alarm. It let me catch the bug before a wave of 1-star reviews hit.

    I’d rather stub my toe in the dark than face that. Crashes might not look sexy on a dashboard, but they show you if your app is on fire before everyone runs for the exits.

    4. Retention (D1, D7, D28): Be patient

    This one’s a slow burn that checks if people actually come back for more. Early on, I’d glance at the retention numbers and assume folks would stick around forever.

    Then I got a reality check: trial periods, paywalls, or freemium strategies can skew these stats, and retention is a marathon, not a sprint. I’m still catching my breath, but at least I know if people keep showing up, I’m doing something right.

    The truth is, these metrics can make you feel important, but they don’t tell the whole story. I’ve been learning more from watching the folks at Every and other brave souls building in public. They share real stories about triumphs and ugly mistakes, ASO magic tricks, and it’s oddly comforting to see the raw, unfiltered process.

    I’m trying to do the same here with Smart Keys, focusing on real-world user feedback that directly shapes my updates and features. If you’re curious how all this no-BS talk translates into an actual product, give Smart Keys a try, or keep an eye on my #BuildingInPublic journey to see how it evolves.

    Is any of these metrics relevant to you? Which metric should I dive into next?

    Have a good week filled with no-BS insights.
    (っ-,-)つ𐂃

  • Can Smart Keys translate other people’s messages?

    Here’s how I started talking to people on RedNote Xiaohongshu (小红书) without knowing Mandarin.

    Well, everything started when I first showed Smart Keys to my psychologist friend, Javad Salehi Fadardi, he hit me with a question I didn’t see coming: “Can it translate other people’s messages?”

    “No,” I said, feeling pretty confident. “That’s impossible.”

    Then he hit me with one of those classic psychologist one-liners designed to keep you up at night: “What makes you believe that?”

    I had no answer. But the question burrowed into my brain and refused to leave.
    Around the same time, I started getting DMs on Instagram from users asking for the exact same feature.

    Dozens of them. At first, I brushed it off. Smart Keys wasn’t built for translating conversations in languages you don’t understand, it’s meant to help you sound fluent in languages you kind of already know.

    But last week, I was checking out RedNote Xiaohongshu (following TikTok refugees) and decided to strike up a conversation with someone in Chinese.

    That’s when it hit me: struggling through copying and pasting user’s messages while trying to have a real-time conversation is painful. That was it. The final push. I couldn’t ignore the signs anymore.

    So now, Smart Keys can translate other people’s messages and suggest responses. All in just one click. It works with screenshots, photos, you name it. Just update the app to the latest version, go to Settings > Keyboard Options, and enable Screen Translator.

    Big thanks to Javad for planting that seed of doubt and curiosity.
    This one’s for you.

  • No-BS Friday Metrics: Store Conversion Rate

    App Store gurus love to talk about ASO tricks and how to squeeze every bit of conversion juice from the app store. But what if I told you it doesn’t really matter?

    Smart Keys store conversion rate is over 50% while the best apps barely scrape 8%. So either I’m a wizard or this is a BS metric.

    We, app builders, love the idea that some ASO tweak will be the magic bullet. A better subtitle, the right screenshots, a catchy promo text. Sure, those things help a little, but I’m sorry to say that you may be spending your time on the wrong task, they won’t move the needle in a meaningful way.

    Then what? What actually happened in October that store conversion sky rocketed? What’s the big ASO secret?

    It’s a three-letter word: Ads. No ASO magic tricks, no growth hacks, no overcomplicated strategy. just Ads iterations that started working well.

    So is this store conversion rate relevant? not really. It looks good on a dashboard, to brag, but that’s about it. Focus on what actually drives growth, not vanity metrics that make you feel good but don’t pay the bills.

    That’s it for today. Next Friday, I’ll dive into retention, the real deal.

    Have a no-BS weekend. See ya. ✌️

  • I just wanted to stop sounding awkward in English, then…

    I believe in a world where communication flows effortlessly, where words can heal, connect, and inspire. But let’s face it, not all barriers are visible. They appear in misunderstandings, cultural divides, and language struggles.

    Even the toughest walls can crack, and in those cracks, there’s a chance for empathy to grow and real connections to form. Whether it’s walls between people, cultures, or even borders between nations, I believe we’re better when we work to break them down instead of building them higher.


    If your organization is focused on breaking barriers, helping people express themselves, fostering inclusion, or bridging divides, we would love to partner with you. We’re offering Smart Keys for free to organizations and their communities to make communication easier, smoother, and more inclusive.

    Let’s build something meaningful together. 🌟