building https://xitter.cf/t.co/QnzWVfYNHE • I build AI tools that save time & replace manual work.

Joined January 2021
ChatGPT used to wait for your prompt. Yesterday, OpenAI stopped waiting. DevDay in 11 lines: • Dots: agents with their own computer, working 24/7 • Give them a job. Get finished work back. • GPT-6.1 Sol: near-Astra brains, 1/5 the price • Codex works while your laptop is closed • Agents can click through any app • Decisions API: offload the repetitive calls • Ultrafast: Codex up to 8× faster • ChatGPT Space: you, your team, your agents, one room • Plugins that feel like native apps • Sign in with ChatGPT: one login, 16 tools • Pro 500: 25× the usage of Plus Prompting AI is easy. Handing it the keys is the product 🔑
2
5
1,994
Your app looks perfect on your MacBook. Your users are on a $150 Android, on a bus, with one bar of signal. Your MacBook has 16GB of RAM, fast wifi, and a 1,500px screen. Their phone has 3GB, mobile data, and 360px. Claude built for yours. Ask Claude to: - Test every screen at 360px wide - Ship images as WebP, sized to the screen - Set width and height on every image so nothing jumps - Lazy-load everything below the fold - Cut the JS bundle. No 400KB library for one date picker. - Show a skeleton within 1 second - Make every tap target 44px - Remove every hover-only action - Use the system font. Custom fonts load last. - Make inputs 16px so the phone doesn't zoom - Show the number keyboard for number fields - Keep forms usable with the keyboard open - Respect the notch and the bottom bar - Shrink sticky headers. They eat half the screen. - Time out slow requests and show a retry - Show a message when the connection drops - Compress every API response - Cache what doesn't change - Load analytics and chat widgets last - Cut animations that stutter on a weak GPU And one thing YOU do, not Claude: Open DevTools. Set the network to Slow 3G and the CPU to 4x slowdown. Use your own app for five minutes. Your MacBook is the demo. The $150 Android is the market 📱
3
9
2,307
Mohammed Junaid retweeted
Claude spent 400K tokens on one bug. The bug was a missing comma. Here's how that happens, every time: - The chat was 3 hours old. Every message re-sent all 3 hours. - You pasted a 2,000-line log. It rode along on every request after. - Nobody said which file. Claude read the whole repo to find one function. - It ran the tests 14 times and read the full output 14 times. - "Fix it" with no error. Every guess is a full read and a full rewrite. - The biggest model, for a comma. Nobody wasted it. Claude just never got a map. Keep every session under $2: - One task per chat. Close it when done. - Clear the context between tasks, compact it when it's long - Paste the error, not the log. 20 lines, not 2,000. - Name the file. "The bug is in auth.ts" saves a repo read. - "Read only these 3 files. Don't explore." - Ignore node_modules, build folders, and logs - "Show me the plan before you write code" - "One file at a time. Show the diff, don't rewrite the file." - Run the tests yourself. Paste only the failing line. - "If it fails, stop and tell me. Don't retry." - Small model for renames, comments, and formatting - Put the rules in CLAUDE.md so you never re-explain them - Check the cost mid-session. Over $2? New chat. The last one is the whole trick. A fresh chat with a clear task beats a 3-hour chat with a tired one. Claude isn't expensive. A 3-hour chat is 🧾
5
1
10
2,005
Claude spent 400K tokens on one bug. The bug was a missing comma. Here's how that happens, every time: - The chat was 3 hours old. Every message re-sent all 3 hours. - You pasted a 2,000-line log. It rode along on every request after. - Nobody said which file. Claude read the whole repo to find one function. - It ran the tests 14 times and read the full output 14 times. - "Fix it" with no error. Every guess is a full read and a full rewrite. - The biggest model, for a comma. Nobody wasted it. Claude just never got a map. Keep every session under $2: - One task per chat. Close it when done. - Clear the context between tasks, compact it when it's long - Paste the error, not the log. 20 lines, not 2,000. - Name the file. "The bug is in auth.ts" saves a repo read. - "Read only these 3 files. Don't explore." - Ignore node_modules, build folders, and logs - "Show me the plan before you write code" - "One file at a time. Show the diff, don't rewrite the file." - Run the tests yourself. Paste only the failing line. - "If it fails, stop and tell me. Don't retry." - Small model for renames, comments, and formatting - Put the rules in CLAUDE.md so you never re-explain them - Check the cost mid-session. Over $2? New chat. The last one is the whole trick. A fresh chat with a clear task beats a 3-hour chat with a tired one. Claude isn't expensive. A 3-hour chat is 🧾
5
1
10
2,005
Mohammed Junaid retweeted
Your app works. That's not the same as safe. 12 security holes AI leaves in your app: - Keys in the frontend - Secrets in Git history - Database open to anyone - Auth only in the UI - Any ID, anyone's data - Trusts the request body - No rate limit on login - Input checked in the browser only - Queries built from strings - User content rendered raw - Uploads accept anything - API returns the whole row Nobody breaks in. They walk through the door AI left open 🔒
1
1
1
13
2,362
Mohammed Junaid retweeted
Jev Explained in 3 Minutes, Visually.
1
8
2,093
Claude built your login in 10 minutes. Give it 15 more so users can actually get back in. Ask Claude to: - Verify the email before first login - Resend the verification link - Expire verification links in 24 hours - Say "wrong email or password," never which - Rate limit login attempts - Lock after 10 failed tries, unlock by email - Keep users logged in for 30 days - Refresh sessions silently - Store sessions in httpOnly cookies, not localStorage - Send expired sessions back to the page they were on - Add "log out everywhere" - Show active devices - Reset password by email - Expire reset links in 15 minutes - Make reset links single use - Kill every session after a password change - Confirm email changes from the old address - Never reveal if an email is registered - Email the user on every password or email change - Let users delete their account Logging in is easy. Getting back in is the product 🔑
1
13
2,327
Jev Explained in 3 Minutes, Visually.
1
8
2,093
Your app works. That's not the same as safe. 12 security holes AI leaves in your app: - Keys in the frontend - Secrets in Git history - Database open to anyone - Auth only in the UI - Any ID, anyone's data - Trusts the request body - No rate limit on login - Input checked in the browser only - Queries built from strings - User content rendered raw - Uploads accept anything - API returns the whole row Nobody breaks in. They walk through the door AI left open 🔒
1
1
1
13
2,362
Forward Deployed Engineer Explained, Visually.
1
7
2,290
It works on your laptop. It dies on Vercel. Here's why, and the one-line fix for each: 1. Env vars aren't on the server Your .env stays on your laptop. Add every variable to the hosting dashboard. 2. localhost is hardcoded somewhere Search your code for "localhost" and "3000". Replace with env vars. 3. Different database SQLite on your laptop, Postgres in prod. Use the same one in both. Always. 4. Files saved to disk Serverless has no disk. Uploads go to S3, Supabase Storage, or Cloudinary. Never "/uploads". 5. Migrations never ran Your prod database has old tables. Run migrations as part of deploy, not by hand. 6. Case-sensitive file names Mac doesn't care if it's Button.tsx or button.tsx. Linux does. Match your imports exactly. 7. Wrong Node version Your laptop runs Node 22, the server runs 18. Pin the version in package.json. 8. Timeouts Your function takes 40 seconds. Serverless kills it at 10. Move slow work to a background job. 9. CORS Your frontend and backend are on different domains now. Allow the real domain, not "*". 10. Dev mode hid the errors npm run dev forgives. npm run build doesn't. Run the build locally before every deploy. One prompt fixes most of this: "Read the whole project. List everything that will behave differently on Vercel than on my laptop." Your laptop is a lie. Production is the truth 🚀
1
2
7
2,119
Mohammed Junaid retweeted
API in 2 minutes, Visually.
1
5
23
2,402
API in 2 minutes, Visually.
1
5
23
2,402
You don’t need to read code. You need to interrogate it. Senior engineers don’t read every line either. They ask questions until the code confesses. Ask Claude these after every feature: - Explain this file like I’m 12 - What happens if a user does the wrong thing here? - Where exactly do you check that this user is allowed to see this? - What would a hacker try first on this page? - Show me the 3 riskiest lines you wrote” - What did you NOT test? - What did you assume that I never told you? - What packages did you add and why each one? - If this breaks, where will the error show up? - What would a senior engineer change about this? Then close the chat and do these yourself, no code needed: - Click every button - Type garbage into every form (emojis, 5,000 characters, empty) - Log out and try to open a page you shouldn’t - Change the ID in the URL to someone else’s - Turn your wifi to slow and watch what loads - Open it on your phone - Do the main task 3 times fast If something feels wrong, it is. Paste what you saw into Claude and ask why. You don’t need to read code. You need to ask better questions 🔍
2
5
2,127
How the internet works, Visually.
1
5
1,991
Stop asking which one is best. Ask which one fits where you are. LOVABLE — the browser builder - You type, it builds the whole app with a UI and a database - Zero setup. First screen in 5 minutes. - Best for: non-technical founders, MVPs, landing pages, proving an idea - Where it hurts: complex apps, custom logic, anything where you need to touch the code - Signal to move on: you’re fighting it more than using it CURSOR — the AI editor - VS Code with AI built in. You stay in the driver’s seat. - You read the code, it helps you write it. Tab to complete, highlight to edit. - Best for: people who can read code, small precise changes, learning what the code does - Where it hurts: big multi-file tasks. You’re still doing the driving. - Signal to move on: you’re giving the same instruction across 12 files CLAUDE CODE — the agent - Runs in your terminal. You give it a task, it reads the whole repo, edits many files, runs tests, commits. - You review, it works. - Best for: existing codebases, refactors, backend logic, anything with tests, “build this whole feature” - Where it hurts: no visual builder, you need to be okay with a terminal - Signal it’s right: you’re delegating tasks, not typing code The honest path for most people: Start in Lovable to see if the idea works. Export to GitHub. Open in Cursor to understand what you have. Hand it to Claude Code to actually ship. All three change every month. Judge by fit, not by the latest feature list. The tool isn’t the skill. Knowing when to switch is 🔄
1
5
1,903
Mohammed Junaid retweeted
Git Vs Github, Visually.
1
5
40
3,857
Git Vs Github, Visually.
1
5
40
3,857
Clients don’t judge your code. They judge the 404 page. Before the demo, ask Claude to: - Deploy to a real domain - Seed realistic data (real names, real-looking products, not “test test”) - Remove every “lorem ipsum” - Add a favicon - Add a custom 404 page - Add empty states (“No orders yet” with a button, not a blank screen) - Add loading states on every button and page - Check every screen on a phone - Test on Safari (clients use iPhones) - Put the client’s logo and colors in - Create a login the client can use themselves - Delete your test accounts - Remove every console.log - Check what emails go out and who they say they’re from - Add error tracking so you know before the client does - Write a 1-page handoff: what’s built, what’s not, what’s next - Write down who owns what: domain, hosting, database, Stripe - Document every env var (names only) - Record a backup demo video in case the wifi dies - Prepare the scope doc so “can you also add…” has an answer - And one thing YOU do, not Claude: Click every single button yourself, one hour before. Clients forgive missing features. They never forgive a broken demo 🎯
3
12
2,303