adding the perl-support section to my CPAN modules

July 2, 2021  📚 🐪 🧑🏽‍💻

I have quite a few Perl software libraries available on the CPAN. I’ve written these at different points over the last twenty years, but almost all of them, until pretty recently, were written to support perl v5.8, which was released about 18 years ago. Perl v5.10 took almost four years to come out after v5.8. It had some teething problems, and then v5.12 took another three years.

my git branch manager

June 13, 2021  🔀 🐪 🧑🏽‍💻

Like a lot of people, I have not been great at cleaning up my old git branches over time. Sometimes they get merged but I don’t delete them. (The “delete branch after merge” option in GitLab and GitHub help, but they’re not 100%). Sometimes I forget I even had a branch, because I never filed a pull request. Also, with all those already-merged branches lying around, it’s easy to overlook the not-even-requested branches, especially if I haven’t touched them in a while.

I took some time off!

August 12, 2019

With a lot of PTO hours piled up, leave accounting somewhat in flux at work, and MoMA incredibly closed until October, I resolved to take some time off from work, during which I would stay home and work on stuff that I’d been ignoring. For example, my big queue of “conference presentations to watch” and my backlog of articles to read, personal coding projects to poke at, some little quality-of-life fixes to my home setup. Then, of course, I also wanted to do some actually fun things: hang out with my family, have some nice meals, watch some movies, go to a museum or two, and so on.

drawing (but not generating) mazes

May 6, 2019  🧑🏽‍💻

I’ve started a sort of book club here in Philly. It works like this: it’s for people who want to do computer programming. We pick books that have programming problems, especially language-agnostic books, and then we commit to showing up to the book club meeting with answers for the exercises. There, we can show off our great work, or ask for help because we got stuck, or compare notes on what languages made things easier or harder. We haven’t had an actual meeting yet, so I have no idea how well this is going to go.

PTS 2019: I went to the Perl Toolchain Summit! (index)

April 30, 2019  🐪 🧑🏽‍💻

Once again, it is spring in the northern hemisphere, and so time for the Perl Toolchain Summit, aka the QA Hackathon. I’ve made it to most of these, and have usually found them to be productive and invigorating. Everybody shows up with something to do, most of the people you need to help you are there, and everybody is interested in what everybody else is doing and will offer good feedback, advice, or just expressions of appreciation (or sympathy, as the case may require).

PTS 2019: Testing PAUSE by Hand (5/5)

April 30, 2019  🐪 🧑🏽‍💻

Writing tests is great, but sometimes you’re not sure what you’re looking for. Maybe you don’t know what will happen at all if you try something new. Maybe you know it fails, but not how or where. This is the kind of thing where normally I’d fire up the perl debugger. The debugger is too often ignored by programmers who could solve problems a lot faster by using it. I love adding print statements as much as the next person – maybe more – but the debugger is a specialized tool that is worth bringing out now and then.

PTS 2019: The PAUSE Test Suite (4/5)

April 30, 2019  🐪 🧑🏽‍💻

All that Module::Faker and Getopt work was really in furtherance of PAUSE work. When I arrived in Marlow, I had been given just request by Neil: sort out PAUSE!320, a change in behavior we’ve been slowly getting right for years now.

PTS 2019: Module::Faker (3/5)

April 30, 2019  🐪 🧑🏽‍💻

In 2008, I wrote Module::Faker. In fact, I wrote it at the first QA Hackathon! I’d had the idea to write it because at Pobox, we were writing a PAUSE-like module indexer for changing our internal deployment practices. It became clear that we could use it for testing actual PAUSE as well as other code, and I got to work. Since then, I’ve used it (and the related CPAN::Faker) quite a lot for testing, especially of PAUSE. At first, it was just a quick way to build a tarball that contained something that looked more or less like a CPAN distribution, with the files in the right places, the package statements, the version declarations, and so on.