My Blog
I deliver revenue-boosting digital solutions that fix your problems.
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 DataFour 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 AnalyticsWriting 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 WritingWeek ending - 11th October
There are a few things I discovered this week worth noting: - [ Docker empty volumes](#-docker-empty-volumes) - [Starting React](#starting-react) - [Profile refresh](#profile-refresh) - [Debug](#debug) {/* */} ## ...
Read moreweb developmentdockerreactSeptember 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%. The main reason appears to be that Google down ranks speed when including...
Read moreFixing 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...
Read moreTop 5 Website Performance - July 2015
The site I write the code for, [approvedfood.co.uk](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...
Read moreWriteDaily 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 AnalyticsLIWCFix node privileges when using brew
Fix node privilege issues when installed via brew. User will be constantly receive permission denied without this fix. ```bash brew update brew upgrade brew cleanup brew install node brew link --overwrite node sudo chown -R whoami /usr/local ```
Read moreOptimising NGINX & PHP-FPM
Some notes from another round of performance optimisation of our server stack hosting our online platform that dramatically improved customer experience too. {/* */} The environment is a set of dedicated front end webhosts running...
Read moreNGINXphp-fpmserverunixperformance