-
Generating PHP library code from OpenAPI
20 November 2018
Read moreI'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!
-
How NOT to Review a Pull Request
22 October 2018
Read moreExamine the diff and comment on it, a line at a time
-
Managing Environment Variables in PHP
15 October 2018
Read moreNow 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!
-
Make a POST Request from PHP With Guzzle
18 September 2018
Read moreI 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).
-
Muffet: quick and easy link checking
05 September 2018
Read moreIn 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
-
Support for Speakers
26 August 2018
Read moreI'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.
-
Vim settings for working with YAML
15 August 2018
Read moreHaving 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.
-
Using Config Files with Ngrok
13 August 2018
Read moreI'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.
-
Kitchen Island Project
14 July 2018
Read moreWe 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 :)
-
Presenting from PDF
09 July 2018
Read moreI've been using PDF as a file format for presentations for the last ~8 years and I LOVE it. The clue is in the name: Portable Document Format: it's an open standard, and works everywhere. You can embed your fonts, images, whatever ... if you end up presenting it from another machine for some reason, everything is going work, even when you want to upload the slides afterwards. Yet, it's still a pretty unusual choice, I think because people don't know much about the tooling around it - so I thought I'd share some of my tips.
Today: tools for actually delivering a PDF presentation (I make them with rst2pdf ).
-
Bind Services to OpenWhisk Packages
31 May 2018
Read moreWhen working with serverless actions, often we'll still need to access some sort of service, whether it's object storage, a database, or whatever. Here's a quick overview of how this works for IBM Cloud Functions (plus some gotchas ....)
-
Relative Links with IBM Cloud API Gateway
22 May 2018
Read moreI work quite a bit with serverless tech, particularly on IBM Cloud since I work there. At the moment I'm building a microservice using web actions. When a user creates data with a POST request, I want to redirect them to the URL of the new thing they created - but for that I need to know the URL that it was accessed with. This is a relatively new feature on API Gateway so here's a quick howto for grabbing that URL in both JavaScript and PHP.