Archive
- Why AGENTS.md Gets So Long
- My Cloudflare Tunnel Config Is My Local Dev Directory
- If You Vibe Code an App for Work, Put the Backend in Charge
- Magic Link Sign Up and Login for SaaS
- DevSnoop — Browser Access for Coding Agents
- Writing Coding-Agent Skills for External Services
- Claude Code vs Cursor vs Codex: Which AI Agent Should You Use?
- Don't Let the LLM Verify. Make It Build the Verifier.
- Two Ways to Direct Coding Agents
- Why I Self-Host My SaaS Apps
- Terraform for Indie Hackers: Just Enough Infrastructure as Code
- One-Command Deploy: How Kamal 2 Changed How I Ship
- Magic Link Auth vs Google Login: When to Use Which
- How to Write an AGENTS.md That Actually Works
- Setting Up a Telegram Bot for System Notifications
- How Coding Agents Actually Work
- What Coding Agent Should You Use?
- Browser-to-Agent: Edit Your Site Without Leaving the Page
- shotpath: Automatically Copy macOS Screenshot Paths
- How to Use Coding Agents While You Are Still Learning
- Using Anthropic's Skill-Creator Skill to Improve Existing Skills
- How I Write and Maintain AGENTS.md for My Coding Agents
- Why I Use tmux Instead of Warp
- My Complete Agentic Coding Setup and Tech Stack
- Let Your Coding Agent Finish for You
- A Lighter Way to Review and Fix Your Coding Agent's Work
- Auto-Renaming tmux Windows for AI Coding Agents
- Build a Spec Skill for Your Coding Agent
- Save URLs to Apple Reminders the Right Way
- Using a Second LLM to Review Your Coding Agent's Work
- Skills Are the Missing Piece in My AI Coding Workflow
- How I Set Up Droid, Claude Code, and Codex with Shared Configuration
- Dev Toggles for Simulating UI States
- MyOG.social - Automatic OG Image Generation
- Using Factory Droid with Claude Max & OpenAI Codex Subscriptions
- Using reMarkable and Claude Code to Triage My wip.md
- Configuring Cloudflare Tunnel to Expose Servers for Local Development, Webhooks etc
- Using tmux with Claude Code
- How I Set Up PostHog Analytics Across Frontend and Backend
- Automatically Copy macOS Screenshot Path for Claude Code
- Using z.ai with Claude Code for Cheaper
- How I use Claude Code
- Things I'm Learning as a Solopreneur Starting Up Again
- The Foo Playground Controller
- SimplyWM Update to support Apple Vision Pro Mac Virtual Display Ultrawide
- Terraform and Kamal for Digital Ocean Demo Repositories
- WIP Git Commit Shortcut
- How I use tmux
- I made a Website/Service Uptime Monitor
- Tweaking XcodeGen Project to Check Xcode Project is not Outdated
- I'm making a Tiling Window Manager
- I Finally Adopted XcodeGen Across my Projects
- Moving Safari Tabs with Keyboard Shortcuts
- Fixing gx for Neovim with a Ruby Script
- Add Support for Drag and Drop to SwiftUI-based macOS App
- The git Script I Use Everyday, All the Time
- Speed up macOS App Development Live Reload with Injection III
- Effortlessly Switch Between Low and High Power Modes with Custom Scripts
- Streamline Opening Neovim from the Shell
- Finding Battery Capacity for reMarkable Tablet
- Double Click File in macOS to Open in Neovim
- Migrate from Blogofile to Jekyll
- Notes on listening to location changes in WKWebView
- Notes on Configuring a Keyboard Shortcut to Close Notifications on Big Sur with Phoenix
- Notes on Configuring Both Apex and www Subdomain for GitHub Pages
- Notes on Web3 Providers Engines and Implementing a Web3 Wallet
- Overload NSLayoutConstraint.activate to Accept Arrays as Elements
- Zhi — Swift Library for Live Reloading Auto Layout Constraints on iOS
- Becoming a better software developer
- Mobile App Development
- boom - maintain your OS X desktop
- genie – Run commands bound to directories
- Apps Leaving the Mac App Store
- New OS X App Launcher — Commander Ling
- iOS App Icon Colors in the Year 2015
- Iconica+ App for iOS — Compare iOS Logos
- Story behind Ligify — One-Tap Save or Share Your Live Photos as GIF or MOV
- Ad Blockers
- New OS X App — Wilfred, a MailChimp Client
- DiskWarrior
- Using terminal-notifier to Improve Shell Workflow
- Navigating Tabs With The Keyboard for MacVim and Other Apps on OS X
- mLogger — a Simple Log Server for Development
- Difference between CFBundleVersion and CFBundleShortVersionString
- simtool – Add Photos to iOS Simulator Photo Library
- purplish-layout – a RubyMotion wrapper for Auto Layout on iOS and OS X
- Fix for Objective C oauthconsumer Library Crashing on 64-bit
- Sensor Tower Review
- Different Code Paths For RubyMotion Ad hoc Builds
- RubyMotion Tutorial for Objective C Developers
- Bool Attribute Accessors in RubyMotion
- Weak Attribute Accessors in RubyMotion
- Marketing a Cafe
- A Color Inspector in RubyMotion
- Migrating to New Macbook Air Using Migration Assistant and Thunderbolt
- 2013 and Onward
- RubyMotion Retain Bug RM3 Workaround
- Jawbone UP Review
- Supporting Different Orientations Within an iOS App
- Different Settings for Development and Adhoc Builds in RubyMotion
- Stuck at OS X Startup, loginwindow Keeps Crashing
- Write Synchronously to Campfire Room for Debugging
- iOS Development Nuggets Weekly Newsletter
- Latency Between Heroku (AWS us-east) and Linode
- A Craftsman and His Tools
- How a Developer Spent a Weekend With His Developer Wife
- How does Square know my name in their app's registration process?
- I don't use Interface Builder
- Comments about Straits Times iOS app
- Trying out Safari again
- Migrated from Posterous to Blogofile
- In-app Purchase Patent and What iOS developers Should Know About It
- Using ctags with MacVim for Objective C on OS X
- Glass Buttons in iPhone Apps Without Using Image Files
- My SimplyTweet Punch Card
- How to Report a Bug in a Software to the Developer
- You can copy and paste from/to the iPhone simulator
- Can't Download Xcode Because Session Keeps Expiring
- Disable Callouts for Links with Custom Schemes in UIWebView
- Script to Remove Core Data's SQLite Database File During Development Cycles
- Registered http://settingsapp.com/ a Few Days Ago
- Automating Internet Sharing on OS X Snow Leopard
- Speeding up iTunes-iPhone Synchronization
- The Wonderful Review Process
- The Power of 48 Minutes
- Book about Search User interfaces, full text available free online
- Detailed, well-written, informative iPhone app reviews by Stephen Ingraham
- CEO Letter to Zappos employees over the Amazon acquisition
- Interesting blog by startup letting customers make their own newspapers
- SimplyTweet 2.0, iPhone Twitter App with Push
- A Color Picker for Developers on the Mac
- How to act when you are 25 and Over (Tomato Nation)
- The best introduction to Git which I have read so far - The Git Parable
- Preparation for SimplyTweet to handle Twitter's new milestone of 2^16 status IDs
- How to be a good developer