My First Pull Request – I’m 55 Years Old
Tags: development, php, wordpress
Published: 2020-02-14 09:59:07

---
title: My First Pull Request – I’m 55 Years Old
published: true
date: 2020-02-14 09:53:50 UTC
tags: Development,PHP,WordPress
canonical_url: https://www.chicagoitsystems.com/my-first-pull-request-im-55-years-old/
---

# Old Dogs

I wrote my first line of computer code in 1977, 43 years ago as of today. Back then, when I was 13, a friend and I would go to our local [Radio Shack store](https://en.wikipedia.org/wiki/RadioShack) after school or on the weekend and fool around with the [TRS-80](https://en.wikipedia.org/wiki/TRS-80) they had on display. We were end users, loading games from the [cassette “drive”](https://forum.quartertothree.com/uploads/default/original/2X/5/52d4888378838a3d16da50efe48546b5cb66dcff.jpg) connected to the machine, but we both had the desire to make the computer do something more. We wanted to make it draw pictures!

A few weeks later, my friend’s father bought a TRS-80 for his son. Victor and I spent the day learning to use it. We immediately sat down and started writing [WET code](https://en.wikipedia.org/wiki/Don%27t_repeat_yourself#DRY_vs_WET_solutions), bugs, and printing it all out on a [dot-matrix printer](https://static.bhphoto.com/images/images1000x1000/1427978555_1133598.jpg) to make sure we had typed it in properly. I remember I went to his house shortly after lunch. By dinner time, after not having left his room for hours, our progress was, well, about what you would expect from two kids who had never done a programming tutorial in their lives (because they didn’t exist) and who were not terribly fond of [RTFM](https://en.wikipedia.org/wiki/RTFM).

After all those hours, the only thing we’d managed to make the computer do was draw an outline of a house on the screen and save the instructions on the cassette. IIRC, we were so uninformed about programming that our program consisted of something like: GO TO 1,1; PRINT 1; GO TO 1,2; PRINT 1; GO TO 1,3; PRINT 1, etc. until we’d managed to turn on every pixel in the form of [an outline of a house](http://res.freestockphotos.biz/pictures/16/16120-illustration-of-a-house-pv.png). Needless to say, fourteen years passed before I attempted programming again.

## New Tricks

In 1991 I bought a [Mac LC](https://en.wikipedia.org/wiki/Macintosh_LC) with 4MB of RAM and a 20MB hard drive (and a color monitor, which was a novelty at the time). It came with HyperCard (“[magic](https://en.wikipedia.org/wiki/HyperCard#HyperCard_2.0)“) and my employer at the time gave me a licensed copy of [Macromedia Director 3.1](https://en.wikipedia.org/wiki/Adobe_Director)! Although Director could barely run on my low-powered Motorola 68020 processor, my world was changed forever, and for the better.

Over the course of 4 years I produced a bookkeeping system to balance my checkbook in HyperCard, two [interactive multimedia games for learning Spanish in Director](https://www.chicagoitsystems.com/multimedia-el-telefono/), and even ventured down the path of trying to write a document versioning system in HyperCard (so students could see how their documents were changed after a teacher’s review – I gave up pretty quickly on that one). And then in 1995 I received a copy of [Claris Home Page](https://en.wikipedia.org/wiki/Claris_Home_Page), and again, my life would never be the same ever after.

## Another Old Dog

In 1996 I was asked to build more than [a few](https://www.chicagoitsystems.com/web-site-susan-sexton-photographer/) [web](https://www.chicagoitsystems.com/web-site-chicago-philanthropy/) [sites](https://www.chicagoitsystems.com/web-site-aldo-castillo-gallery/). I soon realized that Claris Home Page, although it was actually a reasonably good WYSIWYG editor, was not the right tool for interactive sites or sites consisting of more than a few pages. I started hearing about [Perl](https://www.perl.org/) and then soon after, [PHP](https://www.php.net/), and this really frightening thing called [Linux](https://www.linux.org/) (and open source – shareware had existed for a while, but licensed open source was still relatively new to me).

In 1998 I created my first interactive web site that included a [proper (open source) search engine](https://en.wikipedia.org/wiki/Ht-//Dig). I was so fascinated by it I started to participate on the mailing list, trying to help others to understand and make use of it. I even wrote a bunch of [classes in PHP that abstracted the ht-://dig interface](https://www.phpclasses.org/package/536-PHP-model-an-htdig-search-request-as-a-PHP-object.html) and published them on phpclasses.org. ht-://dig really was my first experience working on an open source project but all I did was participate on the mailing list, test beta versions, and create a Mac OS X package to facilitate installation. I didn’t submit patches (what we used to call pull requests) and certainly didn’t have any kind of write access to the repo (which was probably in [CVS](https://www.gnu.org/software/trans-coord/manual/cvs/cvs.html) IIRC).

## Fast Forward 20 Years

Since those early years I’ve “contributed” to a variety of open and closed source projects including [Sequel Pro](https://www.sequelpro.com/) (financial support and translations), [Dreamweaver](https://www.adobe.com/products/dreamweaver.html) (I was a beta tester in the late 1990s), [BBEdit](https://www.barebones.com/products/bbedit/) (PHP Clippings, [I’m even in the credits on that one](https://www.barebones.com/support/bbedit/arch_bbedit9.html)), PHP Documentation, PHP Fusebox (a PHP port of the Cold Fusion Fusebox web application framework), and more, a lot more, more than I can actually remember TBH.

But over all these years I’ve **never** , _ever_ submitted a pull request, [until now](https://github.com/wp-cli/scaffold-command/pull/249)!

I’ve been an avid user of [wp-cli](https://wp-cli.org/) for years. I’ve been active on and off on the Slack channel and tried to report bugs and suggest changes but never went all the way. A year ago, when I was first experimenting with the [wp scaffold plugin-tests](https://developer.wordpress.org/cli/commands/scaffold/plugin-tests/) command, I discovered an irregularity that I found frustrating, and finally [reported it](https://github.com/wp-cli/scaffold-command/issues/228). Months went by with apparently no action on the bug (but the maintainers didn’t close the bug, to their credit). A few weeks ago another user chimed in with signs of similar frustration and I decided it was time to do something about it.

I read some instructions on how to submit a pull request and low and behold, I got some traction. James Nylen reviewed my code and left some suggestions on how it could be improved. I followed his lead and submitted my changes. Then, the principal project maintainer, Alain Schlesser, chimed in with more changes, which I addressed as best I could. This back and forth went on for a few weeks and finally, my pull request has been accepted and merged onto master. **My first PR at 55 years young!**

## Lessons Learned

1. It really is never too late
2. Every action paves the way to the future
3. Go easy on maintainers. It’s often a thankless job, so be sure to thank them along the way.

I’m feeling empowered now and you know what they say: a little knowledge is a dangerous thing… If you’re an open source maintainer and you’re reading this now, be prepared. I’m coming your way!

The post [My First Pull Request – I’m 55 Years Old](https://www.chicagoitsystems.com/my-first-pull-request-im-55-years-old/) appeared first on [Chicago IT Systems, S.L.](https://www.chicagoitsystems.com).