-
From MySQL to MailChimp via CSV
13 November 2012
Read moreDon't you hate disclaimers? I do, but before I do anything else, I must ask that you don't use the techniques below unless you are emailing responsibly.
Today I needed to pull email addresses for people who had signed up to a thing out of MySQL and into MailChimp so that I could actually email them about the thing. MySQL actually has a very cute feature for exporting the results of an SQL query as a CSV file, which I had to look up to remember how to do it. It goes something like this:
-
Confident Coding Report
29 October 2012
Read moreLast week I had the pleasure of speaking at Confident Coding in San Francisco. This was a one-day event for mostly front-end developers, covering the things everyone seems to know but which seem like silly questions to ask - and it has an all-female speaker lineup.
-
Ada Lovelace Day 2012: Estelle Weyl
15 October 2012
Read moreHappy Ada Lovelace day! Technically that's in about half an hour as I write this in the UK but as I'm speaking at FOWA tomorrow morning, I will post this now before I get distracted. Ada Lovelace day is a day of celebrating women in science and technology, and one …
-
PHPNW Tutorial Day
09 October 2012
Read moreI've spent the last few days at PHPNW - it was amazing and inspiring and incredibly sociable from beginning to end but I wanted to share some thoughts about tutorial day in particular. For context, I delivered a full-day tutorial at PHPNW this year, entitled "PHP Tools", containing the following topics:
git
apache virtual hosts
api documentation
static analysis tools
profiling with xhprof
deployment with phing
Somewhere along the line my attendees were unexpectedly efficient (or I was impatient) and we ended up ahead of my planned schedule, so I asked if anyone had any questions to fill the final hour or so.
-
Git Cheat Sheet
26 September 2012
Read moreToday I thought I'd share my "cheat sheet" for git - the commands that I use on a day-to-day basis. I've used entirely the command line tools, since those are the same on every platform. GUI tools and IDE plugins are available for git so it is worth taking a look at what is available for the development environment you use.
-
Github API Access Tokens via Curl
25 September 2012
Read moreI'm working on some demos for a tutorial I'm giving next month and since I'd like to show off Github's API, I needed an access token for it. They have the usual web flow but I'm cutting as many corners as I can to keep the demos nice and quick, so I looked into the support Github has for generating an API key programmatically.
-
API Documentation with IODocs
18 September 2012
Read moreI write a lot of APIs, and I also preach that your API isn't finished until it has excellent documentation. Which is great, but that means I therefore have to lead by example and document my APIs :) Enter iodocs from the talented folk at Mashery.
Iodocs is a node.js application (which is fun for a PHP developer. Most developers write a bit of JS, but this one hasn't). You describe your API and all its methods in JSON, and then iodocs presents an interface for you to enter API keys, add parameters to each request and press the "try it!" button. This makes your API call and shows you the results on screen, which seems like a great way to demonstrate what all the various parameters do!
-
Do Open Source with Git and Github
06 September 2012
Read moreThis article originally appeared in the May 2012 php|architect magazine.
Often I find absolutely competent programmers, who aren't involved in open source, either because they don't know how to approach a project, or because they just aren't sure how the process even works. In this article we'll look at one example, the conference feedback site joind.in, and how you can use GitHub to start contributing code to this project. Since so many projects are hosted on github, this will help you get started with other projects, too.
-
Posting Raw Data with Curl
31 August 2012
Read moreThis week I've been working on a feature which handles an incoming API call from an external source (actually Paypal's IPN service). Making external calls into my development platform isn't how I usually work, so instead I captured the body of the request that was being sent, and replayed it …
-
The Quest for a Payment Gateway
28 August 2012
Read moreAlthough I've been "making websites" for a lot of years, I've mostly avoided the kind where people actually pay for anything. The result of this is that I built Bitestats (elevator pitch: sign up and get a printable summary report of your web stats every month by email) but then got busy and never built the bit where people can actually pay to use it.
I recently carved out some time to correct this situation, and fell into an absolute pit of confusion when I tried to figure out what my options even were. My requirements are that my customers are global, I am UK-based, people will set up a regular subscription, and I don't have (and I think I don't want) a merchant account at this point. I'm not PCI compliant and have no intention ever to attempt that. This post is an attempt to round up some things I found out along the way.
-
Two Years of Trading
01 August 2012
Read moreTwo years ago I quite literally gave up the day job. I had no clients, no experience of being anything other than a salaried employee, but I did have an urgent need for change! Two years on I've just done the end-of-the-year reporting and I'm struck by how far I've come and how much the numbers surprise me (there are no actual numbers in this post, it doesn't feel appropriate somehow - but there are graphs!).
-
Lesson Learned: Look in the Pull Request Queue
12 July 2012
Read moreIf you follow me on twitter you might have seen some overexcitement when I managed to edit and compile a vala application recently. I use a great deal of open source tools, but many of them don't seem open to me, because I don't have the skills to modify the code. Regardless of that, it's still vitally important that it is open (this is a whole other post and I'll avoid that tangent right now).
