My Blog
Writing about software, product building, and practical AI.
-
WriteDaily Architecture Upgrade: Moving to Laravel with Gamification and Cached Sentiment Analysis
After years of incremental maintenance on the original PHP codebase, WriteDaily is getting a long-planned architecture upgrade to Laravel. The new stack brings Eloquent models, a gamification engine, cached sentiment analysis, and proper multi-user support — all while the existing product keeps running.
Read moreWriteDailyDaily WritingLaravelGamificationSentiment AnalysisWriting AnalyticsProduct Development -
Preparing WriteDaily for Migration: Database Hardening and Security Hygiene
Before the Laravel migration goes live, there's groundwork to do. Here's how I'm approaching database hardening, backup verification, and security hygiene for a tool that holds years of personal writing.
Read moreWriteDailySecurityDatabase MigrationLaravelData Integrity -
Still Writing 750 Words Daily — and the Data Proves Why It Works
Five years of daily writing on writedaily.co. I pulled my own stats to see if the habit was actually delivering what I thought it was. The data was more revealing than expected.
Read moreWriteDailyDaily WritingWriting HabitProductivityPersonal Data -
Four Years of WriteDaily: What Keeps a Side Project Alive
WriteDaily has been running for over four years. No revenue, no team, no venture backing — just regular maintenance and a small, loyal user base. Here's what I've learned about keeping a side project alive when it's never going to be a startup.
Read moreWriteDailySide ProjectsDaily WritingProduct LongevityWriting Analytics -
Writing Privacy in the Age of Cloud Tools: How WriteDaily Thinks About Your Data
As cloud-based writing tools multiply, the question of who can read your private writing becomes more urgent. Here's how WriteDaily handles your data, what we protect, and what we don't collect.
Read moreWriteDailyPrivacyData SecurityWriting ToolsDaily Writing -
Week ending - 11th October
There are a few things I discovered this week worth noting:
Read moreweb developmentdockerreact -
September Page Speed
Hitting 100 on Google Pagespeed feels like it's impossible to hit right now. Despite a lot of effort to hit & maintain the current rating it's really hard to push past 97%.
Read more -
Fixing Git checkout line endings
Recently when I was trying to run `brew update` on my Mac I was hitting errors that claimed I had uncommitted changes to my local brew and yet I hadn't made any changes. It didn't matter what I did, the changes would not revert and the errors would not go away.
Read more -
Top 5 Website Performance - July 2015
The site I write the code for, [approvedfood.co.uk](https://approvedfood.co.uk), on my own is consistently ranked Top 5 for performance in the UK! We beat eBay in July! [IRUK 500: Web Performance Tracker](http://internetretailing.net/iruk-500-web-performance-tracker/) for PageSpeed.
Read more -
WriteDaily at Year Two: Lessons from 25,000 Writing Sessions
Two years and 25,000 writing sessions into WriteDaily, the daily writing tool at writedaily.co has taught me more about habit formation, product design, and the gap between what builders find interesting and what users find valuable than any client work. Here's a look at what's working, what's evolving, and what comes next.
Read moreWriteDailyDaily WritingProduct LessonsSide ProjectsWriting AnalyticsLIWC