article

145 Posts

DN.com Escrow services review

Recently I was approached by a buyer based in China interested in purchasing one of the domain names owned by Double Negative. After a prolonged back and forth we agreed on a sales price and agreed to complete the transaction through an Escrow service. Why not Escrow.com? The transaction

Don't Repeat Yourself - iOS

Don't Repeat Yourself (DRY) The Don't Repeat Yourself principle is one of the most important concepts that a software engineer has in his/her arsenal (in my opinion). I previously worked on a legacy PHP project whereby a complete disregard for DRY has resulted in a

Stateful enumeration in Android

Whilst clever solutions to complex problems are always interesting and insightful, sometimes the answer is a lot more simple. When gearing up to release our first app to the Google Play store we engaged in some real world testing. The results were generally positive but it made apparent one large

Android fragments and memory

This post was initially entitled "Android fragments - the important stuff". It will hopefully provide an overview of the less obvious things associated with utilizing fragments in Android. What is the difference between attach/add and detach/remove? Detaching a fragment essentially dissociates a fragment from its activity.

Value. The data, or the packaging?

For one of my web based projects I needed to acquire some data. Data in the modern day and age is often the most valuable asset of a company... it got me thinking. The Royal Mail here in the UK offer a Postcode Address File (PAF) to any entity who

Social implementations of three-legged oAuth

I was implementing some functionality utilizing the Twitter API and found the documentation to be extremely lacking/unclear. Given that the oAuth protocol seems more complicated than it actually is, I thought I'd document some extra explanation to accompany Twitter's sign in implementation docs. 3 Legged
End of post list
You've successfully subscribed to Thomas' Blog
Great! Next, complete checkout to get full access to all premium content.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.
Error! Stripe checkout failed.
Success! Your billing info is updated.
Error! Billing info update failed.