Articles
Optimising and Debugging Paid Advertisements
Ways metrics mislead you; how to overcome low reach/low quality score/high CPC etc.
Strategic Principles in Paid Advertising
Rationed views, gas pedals, per person frequencies, when to trust platform reps
A Tour of Targeting
The general principles of targeting followed by a tour of the available options on the major platforms
Staying Organised When Advertising
How to structure campaigns, why to not delete data, when to schedule reviews
Introduction to Paid Advertising
Where I try to convince you that advertising isn't always an annoyance (and that you shouldn't be afraid of ad blockers)
Email Marketing
The relevant laws, some growth-hackery tips, and suggestions about good emails to send
SEO and Internationalisation
Separate language from territory; clarify your international site structure to Google
SEO in Image Search
SEO-ed *text* enters you into the main event, but you might also want to compete in Google’s alternative races, such as Google Images, Google Videos, or Google Maps.
SEO on Each Individual Page
Rich snippets and all the basics about keywords in title tags, URLs, etc.
SEO Steps To Take Before Writing a Single Line of Code
You need to bake two things into the heart of your web app: keywords and a clever scalable content creation strategy
Taking Data Integrity Srsly
Data Validity Spot Checks, No-Delete Policies, Database Constraints, and Care with NULLs vs. FALSEs etc.
A Guide to Testing Web Applications for Developers Who Care about Overall Profitability
Presented in the form of 10 axioms
Application-Level Documentation Beats Code-Level Documentation
Or how to dramatically reduce training time, speed up recovery during disasters, and make future programmers love you
7 Keys to Systematic Debugging
Learn to recognise the various bug breeds and build awareness of how they appear in packs.
Minimum Viable Backups for Web Apps
A list of the various nooks and crannies needing backing up followed by a look at the most common failure modes of a backup system
Excelling at Exception Notification
Fighting inadequate exception notification– do your background queues, assistive servers, and OS report issues?
Dworkinian Integrity and (Sub-)Symbol Minimisation: Prescriptions for Consistent Software
How the perfect unbuilt API already exists, floating in the zeitgeist, and how it is up you to pay attention to the totality in front of you
WWW vs. Naked Domain?
When starting a new website, is it better to choose domain.com or www.domain.com?
Project-Level Attribute Normalisation
Why you should introduce a software layer close to your object relational mapper that formats attributes into clean, standardised forms
Replayability
Why your code should be capable of remembering and replaying inputs in the event that something goes wrong
Silent Failures Must Be Given a Voice
The most dangerous bugs are those you remain chronically unaware of–as all too often occurs with failing scheduled scripts
Web Developers: Harmonise Your Time Zones
How it's all too easy to wind up with divergent time zones across a modern web stack
Hidden costs of accepting online payments
How hidden fees stack up so as to quadruple the cost of using online payments providers
Deliberately Shopping for a Configuration Strategy
7 Factors To Consider When Choosing How To Manage Your Web App's Credentials and Configuration Options
The Key to Good Documentation: Broaden Your Definition of Software
Or how to avoid frustration configuring, debugging, and rescuing servers and third-party services
Why I Stay Behind the Version Rat Race
Whereas updates *sometimes* bring improvements, they are *guaranteed* to bring changes. And, as any programmer knows, software is allergic to change.
4 Ideas For Improving Testability in Web Apps
Backdoors, interface hooks, explanatory dry runs, and deep reachability
Dealing with Test Leakage
Strategies for pinpointing and extricating indeterminacy from software tests.
Tips for Programming Accounting Features in Web Apps
Learn about representing money, rounding algorithms, and anticipating oddball transactions.
Adminimisation: Tips for Building Great Admin Dashboards
How to build a robust administrative area that'll help you automate away the boring and routine tasks involved in running a web site
Non-Traditional Ways of Thinking About Targeting on Inbound.org
Fresh mental models to help with finding the right targeting for your online advertising.
Check Out My Guide to Statistical Significance on Kissmetrics
Fun, example-filled guide, aimed at building intuition
A Lasting Marriage: Lessons Learned After 7 Years With Google Analytics

A deep guide to developing a loving relationship founded on clean data, great communication, and appropriate caution
A Thorough Guide to Website Copywriting

From psychology to rhetoric: copywriting tips for those who don't know what to say
The Conversion Surgeon: A Guide to Conversion Rate Optimization

A High-Level Catalogue of The Main Areas to Fiddle With When Optimizing Your Conversion Rate
Debugging Rails with Pry Console
Tips and tricks for snooping about your codebase with the Pry console. You'll learn how to view the source code of ANY method on demand, see global variables, or change "self" to another object.
Debugging Rails with Pry Debugger
Master the universal debugger commands "step" and "next" and learn how to crack open a Pry session at any point.
Debugging Rails with Operating System Tools
Unix/Command-Line level tools for making web-developers' lives easier– lsof, nslookup, gdb, tcpdump, ctags, ack, strace, and top
Debugging Rails with Online or Third Party Tools
How Google Webmaster Tools, Google Search, New Relic, and email delivery reports can help you uncover errors in your web application
Debugging Rails with Memcached
Many apps use Memcached in their infrastructure so it's important to know how to debug thorny caching errors.
Debugging Rails with Logs
Everything you ought to be looking at when interpreting the Rails built-in logs. Also looks at other logs, such as Amazon S3 access logs and scheduler logs.
Debugging Rails with Git
Source control software gives us a unique insight into changes in code and the human intention behind them.
Debugging Rails with Custom Instrumentation
Why settle with the debugging tools built into Rails? Why not create your own custom tools to ease the load?
Debugging Rails With Chrome DevTools
Chrome DevTools gives you yet another angle for debugging your software, especially the CSS and JS.
Debugging Rails With Built-in Tools
Lesser known tools built in to the standard stack - such as the middleware lister, Gemfile.lock, Ruby compiler checks, rails dbconsole
A Comprehensive Guide To Debugging Rails
Feedback systems for finding errors in your web application.
Automating Popularity
Can handing your Facebook profile to a computer program make you more popular in real life?
Janki Method — Using SRS to Improve Programming

Using spaced repetition systems to learn and retain technical knowledge.
Why Bother With Cucumber Testing?
The disadvantages of using Cucumber and its widespread use as a poor man's integration test.
Textmate to VIM
Where I explain how to reproduce over 110 commands from Textmate in VIM.