Just shipped my new developer portfolio ⚡
Built it to feel less like a normal portfolio and more like an experience.
Web apps, mobile apps & Shopify all in one place.
Would love to know what you think 👀
https://t.co/WJ5LsEebKs
#Elsehand
The screen-reading command hung forever. I blamed Apple’s accessibility system.
Turns out, it was my code: group.wait() blocked the thread the work needed.
The fix? Let Swift concurrency run it instead.
#BuildInPublic#Swift#macOS#AI
The most expensive bugs don’t crash. They return nothing and report success.
A crash tells you where to look. Silence makes you trust that everything is fine.
I’m learning to treat “no error” and “no problem” as two different things.
#BuildInPublic#SoftwareEngineering#Debug
ElseHand lets you speak into your Android phone and have your Mac do the task.
To act, it needs to understand what’s on screen. Instead of taking screenshots, it reads the window’s text and controls, much like a screen reader does.
#BuildInPublic#Accessibility#Android#macOS
3 things that slow down Shopify stores:
1. Huge product images
2. Leftover code from uninstalled apps
3. Too many sliders and fonts on the homepage
Slow mobile pages lose sales.
I fix Shopify stores. DMs open.
#Shopify#webdev#ShopifyDev#ecommerce#Frontend#BuildInPublic#AI
Just shipped 4F Farms for a local dairy & grocery business. order milk, fruits and veggies online, pay by UPI or cash, and the owner runs it all from one dashboard.
https://t.co/9xshG234W9
Need a website for your business? DMs are open.
#webdev#freelance#smallbusiness#website
I’m building Elsehand — hold a button on your phone, speak, and your Mac does the work.
The phone labelled each recording in lowercase. The Mac wrote it in uppercase. The audio never matched its recording. No error. Silence.
#buildinpublic#Swift#Kotlin#macOS#AndroidDev
ElseHand lets your phone control your Mac. Pairing starts with a six-digit code shown on the Mac and entered on your phone.
The code itself never travels over the network. Sharing Wi-Fi doesn't mean someone can see it.
#BuildInPublic#IndieDev#AndroidDev#macOS#App#ElseHand
Elsehand’s Mac and phone apps must agree on message formats. Maintaining two copies caused mismatches.
Now the Mac generates test messages to validate against the phone.
First test caught a bug: one side omitted empty fields while the other expected them.
#BuildInPublic#DevLog
Most AI agents use screenshots to figure out where to click. Each step costs ~1,500 tokens and a few seconds.
But desktop apps already expose their UI structure to screen readers.
AI agents can use that instead, reducing token usage and response time.
#BuildInPublic#AIAgents