After eight years with
— and nearly ten years, all
told — I’ve moved my site (and its podcast) away from
Textpattern. I promised
myself I’d do this in 2014.
Missed by an hour; still pretty happy.
Ikiwiki, the CMS I moved to, reflects my
preferences for writing in
vim, checking my thoughts into
and storing and serving static content as simply as possible. That’s
probably not what most folks secretly wish for. But if you do, and
you’d use a static site generator
if only there were a sufficiently flexible one, investigate ikiwiki.
And if you know you’re going to want to hack on whatever system you
choose, take a look at how I improved ikiwiki’s
My goal in doing that work was to be just barely as good as
— which is to say very good. Thanks to Textpattern and
I was able to share a decade of significant moments as honestly and
directly as I knew how. Now that my memories and creations are
preserved more reliably, and I can publish my writing and music
more easily, I feel a whole new level of safety and comfort about
sharing the significant moments to come. I look forward to continuing
to share them with you.
To a wonderful 2015!
Schmonzcast #17: I'm proud to have been a speaker at this year's Pittsburgh Perl Workshop, a two-day conference for fellow practical-minded Perl programmers. As one who has striven to code in a modern way — TDD, expressive objects, type-checking, and the like — in a non-modern environment, I'm sensitive to Perl being pigeonholed. So it was gratifying to see talks about familiar and timeless ideas (systems programming, asynchrony, inversion of control, simplicity, automated testing) as well as envelope-pushing new ones (everything Ingy said, native-extension performance, high-performance serialization). I also appreciated getting to meet the author of Higher-Order Perl and help him set up an ikiwiki to play with.
My talk was half explication, half topical demonstration: on Saturday morning we learned about Ingy's new Swim format, and here I was on Sunday morning attempting to live-code ikiwiki support for Swim input. Would I get it working? Would I be able to give a demo? Would I eventually come to understand
mjd's suggestion that I sing as I code? Here's the full screencast of my presentation (or watch on YouTube).
In When I might not TDD, I posed myself the following question:
If I’m trying to be effective and efficient, when wouldn’t I practice TDD?
In response, I enumerated degenerate cases, false negatives, and conjectures, but was unable to come up with anything simultaneously true and nontrivial. Carrying out Alistair Cockburn's Elephant Carpaccio exercise yesterday uncovered an answer I had forgotten.
In How to efficiently learn a programming language, I noticed early on that not doing TDD was probably slowing me down. So I tried adding it, started making progress and having fun, reversed my performance problem, finished early, and got to help my neighbor.
Early in Elephant Carpaccio, my “Coaching in an Agile Context” class partner and I noticed that doing TDD was probably slowing us down. So we tried removing it, started making progress and having fun, reversed our performance problem, finished early, and got to chat for a bit.
I'm relieved to know that when the environment produces a signal to consider not practicing TDD, I'm able to receive and act on it. This indicates my strong feelings about the practice are truly a matter of context, as I hope they remain. For your reference and mine, the forgotten context where I probably wouldn't TDD is: tiny projects.
Apparently I've even forgotten that I remembered that context just fine in When is refactoring a good decision?. At least I still remember that my forgetfulness is one of the reasons I prefer to test first.
I've lost over 30 pounds since this project began in early 2013. This morning, when I weighed in, I saw a number that used to mean
- I'd been eating a little too poorly for a little too long,
- I needed to strictly avoid carbohydrate for a week or so, and
- I could expect to snap right back to my healthy weight.
Seeing this number now means
- I've been eating very carefully for a long time,
- I'm at my lowest weight in over five years, and
- I'm finally within striking distance of my goal.
Agency and patience
My weight has decreased so slowly, and retrogressed so frequently, that I've sometimes doubted my ability to bring about the desired result. But I felt confident enough in my mental model of my metabolism — and certain enough that other diets would serve me less well — to stick it out.
For a variety of reasons, I haven't been strength training for several months. One reason is that my easily enraged sinuses have been angrier more often, disrupting breathing (mainly when I'm trying to sleep) and general functioning (when I'm trying not to). Turns out I have a significantly deviated septum, which, along with a couple other longstanding nasal demons, will be surgically corrected in a week and a half. I expect to be useless for about a week, in exchange for which I hope to be much better at breathing, sleeping, and functioning for the rest of my life.
One new form of exercise lately has been cycling to my local coworking space a few times a week. It's not much, but it pretty immediately feels good to do it.
How I feel
- Pants and t-shirts fit much, much better
- I'm wearing nicer clothes, including some new ones, because they're comfortable now
- My face has progressed another stage, now looking almost exactly like my face
- My belly no longer feels like a foreign object that keeps getting in the way, but merely a slightly oversized version of my own belly
- Bekki and I hiked for a couple hours with dogs through hilly terrain, and I had plenty of energy the entire time
- I hadn't been put off by the mere idea of going hiking for a couple hours
- I'm excited to once again be physically comfortable with exercise, and to be able to concentrate more on activity and fitness than on weight per se
If you want to lose weight like I have, you need to do all the things I've done, in case any of them (alone or in combination) are responsible for the outcome. Go live with your partner, get a dog, quit your job, ride your bike now and again, and everything else in this post. And if none of those changes winds up helping you lose weight, hey, I'm sorry, that's really unfortunate!