Welcome! I'm Lorna Jane Mitchell, a web developer, working particularly with PHP, the LAMP stack and related technologies. My main interests lie in working with open source software and building excellent APIs so that data in one system can be used in another. I'm freelance, so if you want to work with me as a consultant, developer, trainer, writer or evangelist, then let me know.


Work With Me

Senior Developer

Need a senior developer? I have years of LAMP experience and love to lend a safe pair of hands to get a team through a tight spot.

API Design

I'm mad about APIs! If you'd like some advice with creating yours or integrating with someone else's, then you're in the right place.

PHP Services

Time for better tools or better practice? Time for a new version of PHP? Let me lend a hand to make your transition go smoothly.

Training

If your team needs to gain or improve their technical skills, I can help. I can work with your team, but I also run public courses, if that suits you better.


From The Blog

Copy/Pasting and Vim

I'm a vim user and I somehow completely missed this excellent feature until much more recently than I care to admit! Usually vim has its own clipboard, but it doesn't share with the operating system. You will need a vim-gtk install, this isn't available in really basic vim (I'm a little unclear exactly on the dependencies).

To paste between vim and something else, use the + (plus) buffer in vim. It contains the contents of your system clipboard, and you can also write to it. If you're not already using buffers in vim, then you should probably read the excellent documentation but for a very quick start:

  • To copy something into the buffer, select it in visual mode and type "+y
  • To paste from the buffer, type "+P

I had no idea how I'd missed this really fundamental trick, so I thought I'd share!

Quick Switch Between Git Branches

Today's little-known git feature (or maybe everyone knows but me? I only found this a few months ago) is for quickly switching between branches. Usually I would switch branches with:

git checkout [branchname]

However if you switch from one branch to another and want to switch back again (this happens when I'm reviewing changes and wondering if a bug is present on master as well), then you can do so by just doing:

git checkout -

Just a little timesaver in case it's useful to anyone else - I know I've been using it quite a bit!

Wireshark Capture on Remote Server

The joind.in project uses a really nice vagrant setup for its dev platform - which is much needed these days as we move away from a single LAMP stack install to a website plus another website, which talks to an API and caches in redis and deploys with .... you get the picture :) This is great but having everything on the VM can make it a bit trickier to debug what's going on - and with a website that talks to an API that talks to MySQL, that all lives on a VM with port forwards, you can see the problem :)

To get an insight into the traffic going around the place, I've been using Wireshark and it's ability to capture remotely, it's really simple so I thought I'd write down my "recipe" on how to do this in case it's useful. Continue reading


Talks, Articles, Podcasts, and More

Slides

A Community API


APIStrat, March 2014
Article

Git Flow vs Github Flow


Net Magazine, March 2014
Slides

Debugging HTTP


PHPUK, February 2014
Article

Create a Dashboard Using Guzzle


Net Magazine, January 2014
Slides

The Pains and Gains of Upgrading PHP


PHPNW User Group, December 2013
Slides

Git, GitHub and Open Source


NW Drupal Camp, November 2013