Are you Creating, Curating or Consuming?

I've been thinking lately about my own interactions online, especially around content. There are three main ways that I work with content: creating, curating and consuming. Each has their own place but I'll start by outlining each one.

Creating content is all about putting your own creations out for others to share. I've had this blog longer than I care to discuss and certainly since before microblogging was really a thing. It's much lower investment to throw out a quick tweet about something and in lots of cases it's a more appropriate medium Continue reading

Generating PHP library code from OpenAPI

I'm working with a bunch of OpenAPI specs now I am working for Nexmo and so far I'm loving working with API descriptions. OpenAPI is the next iteration of what used to be called "Swagger", a machine-readable way to describe your API and from that description create docs, code libraries, tests, and all sorts. Today's post is a quick writeup of how I generated some PHP code so that I can refer back to this next time I want to do it! Continue reading

Managing Environment Variables in PHP

Now I work with more programming languages, I start to miss features from other languages when I come "home" to PHP. One that I hadn't seen in PHP before I saw it in other languages such as NodeJS (I think Ruby had the original implementation) was: a way to easily control setting your environment variables, particularly in development. In NodeJS the dotenv library is great for this; handily in PHP vlucas has already created phpdotenv so we are all set to apply these tricks to PHP applications! Continue reading

Make a POST Request from PHP With Guzzle

I work extensively with APIs and a variety of serverside scripting languages, and best practice does change over time. Many of the most popular posts on this blog are 10 years old, because apparently I was interesting in 2008. Two in particular from around that time relate to making POST requests from PHP ... and I'd do it completely differently today. So, in an attempt to overcome some of the past crimes of the Internet in general and PHP in particular: here's how to make a POST request in PHP, today, in a PHP 7+ world (it probably works in PHP 5 too). Continue reading

Muffet: quick and easy link checking

In my not-so-new job I work on Nexmo's developer portal and that means a lot of documents, a lot of links, just a lot to keep track of! One thing I worry about is changing something and breaking links from somewhere else, so I wanted to be able to check for existing links, broken links, and to include internal links like http://example.com/home#something as well since all our titles are linkable in that way.

Enter: muffet Continue reading

Support for Speakers

I've been a conference speaker for 10 years; I've given many talks, been to many events, organised a few events, and now have Opinions (TM) about conference speaking. This tweet showed up in my feed when someone tweeted at me to thank me for my support in their talks.

My approach to supporting other speakers is not really about the audience I would like (we're all different!), but more about making two things happen:

  • someone being the best they can be
  • them getting credit for that

In fact I've been a speaker coach and mentor for a few years and have variously watched rehearsals, suggested where to stand and not stand, walked nervous speakers around outside before their talk, fetched water ... all sorts of things. However this twitter thread (I got a bunch of tweets and the replies are also great) shows that _anyone_ can give great support to any speaker, whether you know them or not. Here are my favourite three things to do to support anyone giving a talk. Continue reading

Vim settings for working with YAML

Having managed to avoid YAML until quite recently, my vim installation wasn't well set up at all for working with it. It needs more config settings than plugins, so I thought I'd write down what I found helpful. I'm using it quite a lot now I'm working with OAS (used to be Swagger) API definitions. Continue reading

Using Config Files with Ngrok

I'm a huge fan of Ngrok, a tool to create a secure tunnel to your laptop. It is brilliant for testing, well, anything running locally really. Someone asked me about my setup recently and I'm using a couple of config files to keep things quick and consistent, so I thought I'd share here what I shared with them.

You can use a central config file for ngrok, and/or specific config files for each project. I use both, so I'll show you around my setup. Continue reading

Kitchen Island Project

We built our first "big" project (well, since the play kitchen a few years ago) since moving to this house nearly a year ago: a new kitchen island! I used to blog a lot about the house and crafts and things, then I got better known for code things and got stagefright and stopped ... but I love this stuff and I'll blog it if I want to :)

One Home Made Kitchen Island Continue reading