Explaining MySQL’s EXPLAIN

The MySQL explain plan is a great tool to help developers and database administrators to improve the performance of specific queries happening against a database. It is very easy to use, but its output can be confusing, so I thought I’d show a very simple example. Continue reading

Simple CRUD with MongoDB

When I meet a new technology, I like to experience it “just as it comes”. I’m happy at the command line and I like to type actual commands and see man pages before I use any wrappers or helper tools. So when I met MongoDB for the first time, I did exactly that. This post shows those first steps of creating a database, and inserting, reading, deleting and updating data.
Continue reading

API Serving JSONP

disclaimer: I am not a client-side developer, and I don’t write javascript. However I am committed to supplying useful APIs of all kinds, and JSONP falls into this category

Early in the development of the new Joind.In API, someone else started consuming the service to populate the javascript widgets they were making*. Since these scripts are intended to be used on many external pages, and they retrieve data from the joind.in API, cross-domain issues were a problem. Continue reading

Flattr-y Will Get You Everywhere

For many years, I’ve been convinced that micropayments are the way of the future. The internet has brought us so much that is freely available, but often it’s nice to show some appreciation for something someone has given us. This is true both for the open source software without which I couldn’t do my job, and for the excellent content that makes me think or guides me through a particular issue. Continue reading

My Book is Published: PHP Master

PHP Master Cover ShotI am truly delighted to announce that “my” book is published. Technically it’s really “our” book since I had the pleasure of co-authoring with friends and PHP rockstars Davey Shafik and Matt Turland. The book is “PHP Master” and it’s a broad-ranging text covering a series of topics that we felt were relevant to PHP developers who aren’t beginners, but who are looking to fill in some gaps and get a good grounding in creating whole applications in PHP.
Continue reading