Pinned Tweet
Himpunan projek-projek peribadi saya:
1. Perlu Kopi
Sebuah direktori pemanggang biji kopi tempatan, terutamanya biji kopi yang dipanggang untuk filter coffee. Saya nak mudahkan diri pilih biji kopi dan senang rekomendasi kepada kawan-kawan.
xitter.gq/afiqsazlan/status/1829…
🎉PerluKopi dah ada UI baru!
Terima kasih @afifsohaili buka mata saya mengenai kesilapan DB-dump-to-UI. Kena lebihkan penyampaian visual.
Terima kasih juga @ImnNazri untuk mockup design yang padu.
Juga terima kasih kepada semua yang menyumbang kepada perkembangan ini.
afiqsazlan retweeted
So far AI has not made me relax more.
Sure AI has made my work at work faster and easier. But AI has also made progress outside of work so much faster that I spent all the energy saved from my day job into a constant upskilling and reading and thinking.
Tired boss.
afiqsazlan retweeted
I'm not convinced that senior software engineers are pushing code without reviewing it in some way. So I'm going to tag eleven experienced engineers in this thread, who are building high stakes software, to see what they do. Let's see what we learn.
The age of agents is going to be amazing for most programmers, but it'll be hard times for the cantankerous ones.
Specialized knowledge and rare skills will no longer offer immunity for those who are a pain to work with.
Best learn some basic people skills.
afiqsazlan retweeted
If I took anything from poteto's interview with Matt Pocock, is that I should spend a lot of time working on the verification steps. And boy was it worthwhile.
I've just continued working on my mobile app for Groceror and spent a major part of planning the frontend implementation on verification steps.
Eventually, I decided to have the AI build a tool that lays two different screenshots, one exported from my design tool and one exported from the mobile simulator and diff them. The work will only pass if the two screens are within a margin of error (I set to ~5%, which was just nice).
Tested on a few initial screens and it looked good, so I was then able to let the whole thing run overnight. 65 screens later, the implementations for all of them were almost pixel perfect (duh!). I still went screen-by-screen and reviewed them individually, of course, and aside from some paddings that are off by a few px that I had to correct, everything else was done really well.
all hail poteto
afiqsazlan retweeted
pacman took @BitcoinerMY through the history of DIY signers
From left to right
- DIY @BlockstreamJade
- @satochip Java cards
- @selfcustodykrux
- @SeedSigner new ESP32-P4 kits and Pi Zero
- @SpecterDIY
- @BlockchainComns LetheKit
- plugged in: @picosigner
Next stop and workshop: Kuala Lumpur, Malaysia
with @BitcoinerMY community🦾
There’s 100% a kind of mania you can get into with coding agents, where it feels like you’re getting a lot done and working all the time but nothing is really happening.
I think it's often a form of avoidance of something else in life.
Most of a QA tester’s time goes into setting up, not testing. Before they can check a single screen in our app, they have to create a booking, switch to a carer account, apply, switch back, approve, pay, start the job, and so on.
I wanted to fix that with Claude, both for the QA team and to verify my own work faster.
The answer: a Claude chat connected to an MCP server loaded with QA scenarios. Now they just tell Claude the state they need, and start testing.
You might guess it just writes rows into the database. But an app action is more than a database write: there are notifications, cascading updates, queued jobs and more.
So Claude plays the customer and the carer step by step, through the same API our apps call. Everything that happens in real life happens here too: push notifications, KiddoPoints earned, the review prompt. One run sends about 20 notifications across the two phones.
The states that took QA longest to build are now a single sentence. A carer who has to accept the parent’s edits halfway through a fee negotiation. A tuition class that starts in 30 minutes. A customer with 5,000 points, some expiring in 3 days, and a 3x promo running.
The tool will keep on growing as our features grow.
On safety: the scenario server only exists on QA. Production doesn’t register it at all.
A tool that can run whole user journeys is too much uncontrolled power for production. If you build something similar there, build small, narrowly scoped tools that each do one thing, and gate each one by permission.
That’s what we do on production: each write tool changes one setting, shows a preview first, and only saves after you confirm.
afiqsazlan retweeted
i wanted a faster feedback loop for giving feedbacks about my app to a running opencode session.
my workflow before was:
1. check the UI, found something to fix
2. screenshot/copy the selector/page url/etc whatever looks relevant
3. find the right project and the agent session
4. describe the bug, paste everything
which is slow, so i built a chrome extension that talks straight to my opencode, called browsertalk (duh)
point at an element. it automatically captures a screenshot crop, the page url, selector, text, attributes, and bounding box, then gives you a comment box. drop your comment, hit submit, and it queues the feedback to the opencode session you pick.
the agent gets the comment plus the facts it needs to find the code.
it's been genuinely helpful for me. i can just rapid-fire the feedbacks from the browser without breaking my flow of checking the UIs page-by-page.
publishing the working version on github for you guys. it's very rough, but usable enough. PRs welcome. should be able to trim the msgs more (usually the url is the most important and enough for agents to find what element I'm talking about).
opencode is the default backend (cos I use it), but you can extend it to your agent of choice: fork it, ask your ai to implement the strategy, and send a pr. pi and more are next. again, PRs welcome.
30s video demo montage below, powered by deepseek 🤣
github.com/afifsohaili/brows…
More choice doesn’t always help customers. Sometimes it leaves them stuck. That's something I've realised working in Kiddocare.
We’ve all got used to AI. We ask it a question, it suggests an answer and explains why, and then we decide whether to accept it or change it. The final call stays with us.
I think businesses should move the same way:
1. Inform: give customers the information they need to understand what they actually need
2. Suggest: offer one best option based on what you know about them, especially their needs, and explain why
3. Hand over the decision: the customer always makes the final call
Most businesses have done step one. They get stuck at step two, either because they don’t have enough data or because they don’t know what to do with the data they have.
afiqsazlan retweeted
If you’re burned out and tired from using AI, you’re spreading yourself too thin. Your brain isn’t made to juggle ten different context windows at once especially when each of them contains challenging work. Moving back to one thread at a time has led to me shipping so much more.
afiqsazlan retweeted
jev new Box primitive is Yolo for everything
your favorite mug, your cat, your specific plant, it can take all that and more as inputs and find it



















