Ryan McCue

Hi! 👋 I’m Ryan, a web developer freezing to death living in rainy Edinburgh, Scotland. That’s my goofy face over on the right.

I’m a WordPress committer, and co-lead on the WordPress REST API. I started the project in 2012, and eventually lead to it being merged in WordPress 4.7. I’m also the lead developer on a few other projects, including Requests, a HTTP client for PHP 5.2+ with a focus on compatibility.

I’m also the Director of Product at Human Made. We build massive WordPress sites for clients you’ve heard of, using Altis Cloud, our enterprise WordPress hosting solution.

There’s also a lot more stuff I do. Read about some of that below.

Across the Web

Follow me on Twitter (or maybe find me on Mastodon?), see what I’m listening to at Last.fm, or check out my latest work on GitHub.

If you’re interested in a talk I’ve given recently, check out Speaker Deck for the slides, or one of the recordings on WP.tv.

Latest from GitHub

Most code I work on is available on GitHub. Here's a few of my latest changes.

  • humanmade/altis-cloud Commented on pull request #913: I mean if something had previously called `get_logger()` for the…
  • humanmade/altis-cloud Commented on pull request #913
  • humanmade/altis-cloud Approved pull request #912: Not sure I really understand this, but sure.
  • humanmade/altis-cloud Commented on pull request #913: If there's a backlog of (eg) 20 logs and then…
  • humanmade/altis-cloud Commented on pull request #913
  • humanmade/altis-documentation Commented on pull request #598: Looks like this was accidentally done in dc2a288d4565296c40cea8af1aa76adc6c733d67
  • humanmade/altis-documentation Commented on pull request #598
  • humanmade/altis-local-server Commented on pull request #763
  • humanmade/altis-local-server Commented on pull request #763: ```suggestion **Note**: Only the major and minor versions (x.y) should…
  • humanmade/Mercator Pushed 3 commits

Latest Articles

I write articles sometimes, often on projects I’m working on. Here’s the latest stuff I’ve published.

  • A Stronger Foundation for the Ecosystem The feud between Automattic and WP Engine has continued, with WordPress.org blocking access by WP Engine’s servers. In WP Engine Must Win, I wrote about my thoughts on the legal argument on this battle, and why it is important that WP Engine win the trademark case in order to protect the ecosystem. I also touched on the moral argument: The case […]
  • WP Engine Must Win On stage at WordCamp US last week, Matt Mullenweg gave a keynote presentation which made a wide range of points about contribution, the ethics of open source, and the commitments various companies make to contributing. In particular, he called out WP Engine in what was a fairly clear direction to the community to stop using […]
  • Seamless webviews in Electron Electron has a few different ways to embed web content safely into an existing window. The standard technique is to use a regular iframe, but this doesn’t give you all the power you might need over user content; notably, you don’t get full control over the will-navigate event for user navigation. The documentation notes that […]
  • How WordPress Knows What Page You're On In the spirit of Dan Abramov’s Overreacted blog, where he deep-dives into React on his personal blog, I thought I’d do the same for WordPress. If there’s something you’d like to see, let me know! Since WordPress 1.0, WordPress has supported “pretty permalinks”; that is, human-readable permalinks. This system is built for a lot of […]
  • State of the REST API 2017 As we approach the State of the Word 2017 at WordCamp US, I think this is a good time to look back on the state of the REST API project and core focus over the last year. 2017 has been an interesting year for the REST API with highs and lows, and periods of intense […]

Featured Projects

I work on a lot of projects, so here’s a non-exhaustive list of my favourites.

  • Requests
    A HTTP client library built for usability and compatibility.
  • Falcon
    GitHub-style notifications (with reply-by-email) for your WordPress site.
  • Cavalcade
    Drop-in replacement for wp-cron. Scales horizontally for multi-server setups.
  • Gaussholder
    High-quality placeholder images using miniscule amounts of data.
  • Mercator
    Completely-rewritten domain mapping for the 21st Century.

Contact Me

Drop me an email at if you want to get in touch.

I'm terrible at replying, but I'll definitely read it. Please don't send support requests; those are better off filed as an issue on the relevant issue tracker.

Let’s Work Together

In all of my spare time, I’m the Director of Product at Human Made. Get in touch with our lovely sales team; you won’t regret it.

Did I mention we’re hiring? We’re always looking for awesome people.

Across the Web

Across the Web

Across the Web

Across the Web