Knitting and coding, part 1

purple socks
Socks I made for myself

This summer I learned how to knit socks. And not just socks, but two-at-a-time magic loop socks. Which if you’d asked me two years ago, when I’d made a couple of scarves (and as it turned out, was actually doing the knit stitch wrong), whether I could’ve done such a thing…I’d’ve been exceptionally skeptical.

When I started that project, I didn’t know anything about sock construction, and I’d never used the “magic loop” technique. And even with a group of fellow knitters working together, I just got too frustrated (there was a LOT of cursing, and not just from me). So I used one of my favorite debugging techniques: picked out the smallest possible piece of the project, and figure out what’s going on with that. I made a coffee cup cozy, so I could understand the magic loop part. (Magic loop involves doing some weird stuff with a reeeeeally long circular needle instead of several double-pointed needles (DPNs). It’s actually easier in the long run than using DPNs in some ways, but it’s a different way of thinking about the creation process.) That got me to the point where I understood enough to try two at a time, and socks start out as just plain old tubes, so that gave me enough time to get really comfortable with all of those parts before I tackled the weirdness of sock heel construction.

The first time I made a sock heel (which in this particular style has three components: a flap, a turn, and a gusset), I was basically just following along by rote, as I’ve done many times particularly with JavaScript. “Cargo cult coding” — just copy this thing and if it works, it works, if not…who knows? The sock heels were the same way, reading the instructions very meticulously and just doing exactly what they said.

I’m on my sixth pair of socks now (although that includes two pairs of baby socks for my nephew), and now I understand the process and the technique enough to even second-guess a pattern or make up for a mistake I may have made earlier. (Or most importantly: how to adjust a pattern designed for DPNs to magic loop.) There’s parts I can’t always keep straight in my head, not unlike knowing that a function exists but not being 100% sure how it’s spelled or whether there’s a underscore. (Damn you, PHP.) Which side of the sock gusset should be SSK and which side should be K2tog? Sometimes I just have to do one and see if it looks right. Sometimes knitting could really use code hinting…perhaps the material itself is the code hinting.

With every new technique (language, stitch, etc) I’m full of frustration and self-doubt: nothing makes sense, I can’t believe this could possibly work, I’m not smart enough, dextrous enough, etc., etc. I cuss at the materials/tools, myself. And then it just CLICKS. I don’t know how that happens, really, although a lot of it is getting the right help.

I’ve learned over time what kind of help works for me. I had the worst time learning JavaScript. THE WORST. I was a full-time webmaster, writing quasi-applications in PHP, and I still couldn’t make heads or tails of JavaScript. It was the saddest cargo-cult coding when I even tried. Then I read DOM Scripting (mostly on a looong bus ride from Lakewood to Auburn, IIRC) and it made the critical connection I’d been missing, which was to tie it to something I understood really well (HTML) AND to use it in contexts that I actually needed.

Similarly, the whole Ajax thing seemed sort of strange and magical and confusing — and then I was a tech reviewer for Adding Ajax, and that connected what I already knew about writing little PHP things to the JavaScripty bits, and I realized it actually wasn’t that big a deal. I mean, yes a big deal that it can be done, but not as huge as I’d made it out to be.

I mentioned earlier that I spent the first few months knitting wrong. For the knitters in the audience, I was knitting into the back of the loop; which is a subtle enough mistake that it doesn’t look totally wrong, especially when you’re just learning it at all. But it throws off the gauge and the feel of the knitting, so things don’t fit quite right. And it also meant I had a hard time understanding how to increase stitches, which is what I was trying to learn when I discovered my problem. And what I discovered, in addition to the solution to my problem, was the kind of learning materials work best for me with knitting.

Surprisingly enough: not video at all or photos generally, but the right sort of drawing, ones that show the three-dimensionality of both the yarn and the needles (and fingers, to be honest). Along with text that uses the things I already know, written clearly. Not unlike what I need from coding help.

I’ve been sitting on this post for a couple of weeks, so I’m just going to leave it here. There are some other connections in my experience of both knitting and coding, that I’d like to write about later:

  • Picking patterns is a lot like picking modules, plugins, and other open-source tools.
  • Craftsmanship in general, knowing your tools and materials.

Xmas Scarf #2

I tried several other patterns before this, including some improv, but really would’ve needed bigger needles.

But this works out really nice, and definitely shows off the colors of the yarn!

Xmas Scarf #1

Didn’t have 10.5s, so cast on with 10.

Knits up fast & lovely. Although I did switch directions a couple of times early on by accident.

mostly finished about a week before, took time off to work on Ashley’s scarf.

Yarnaggedon Socks

July 3 – re-cast-on!

July 8 – seems to be getting tidier, have gotten cuffs finished & am working main pattern.

August 13 – turned the heel weekend before last. Since then, 6hr drive + 4hr presentation have gotten me pretty far along with the feet.

Tubular Goth Scarf

Got inspired by stitch in “Stitch ‘N Bitch Superstar Knitting”, hoping to have red stripe at one (?) end, grey on one side, black on the other.

4/17 – restarted after a long break. (2 mos?)

8/19 – re-restarted.

8/21 – swapped colors

Ended up doing black/grey stripes until the black ran out, then joined back in the last of the red. Had a bit of a weird spot (backwards?!) with the join, but it looked interesting enough that I left it in.

meeting knitting addendum 2

One more feature of a good pattern for meetings: short rows* or circular knitting. I’m working on a hat right now that’s mostly knit flat, and the rows are fairly long. That means I have to judge at the end of each row whether I think the meeting will continue all the way through the next one. (Or if it’ll change in such a way that I’ll be writing or whatever.) And that can get a bit annoying.

* not “short rows” in the technical knitting term, just small number of stitches per row.

meeting knitting addendum

Another thing about patterns for knitting in meetings: they shouldn’t look too complicated to other people.  So the piece I’m working on now — a pair of fingerless mitts worked in the round — is really simple, but DPNs (double-pointed needles) look freaky complicated. And that distracts other people, even if I’m just fine.

(I finished my last meeting-friendly project; a Fibonacci scarf for C. I need to start something new before next week! I have a hat/bonnet in mind that is mostly a pretty straightforward rib.)

Conversely, the nice thing about taking knitting to a meeting — and being early — is that it makes something of a conversation piece, a good topic for friendly chit-chat.

meeting knitting

So I’ve found that I can focus in meetings where I’m not participating much if I have something to knit. It keeps the fidgety part of my brain out of the way, keeps me from doodling about things not related to the meeting or futzing about on the internet. So I actually listen better. But there are a few key points.

Some particularly formal meetings or groups just aren’t a great fit. It helps to show up a little early and already be knitting when the meeting starts, especially if one’s habit isn’t widely known in the group. And I think it’s helpful to occasionally stop to make a note or whatever when there is something that’s specific to why I’m there.

As for the knitting itself, it should be relatively small (no afghans!) and simple; scarves, shawls, and the bodies of hats (not the crowns) seem particularly well-suited. Patterns shouldn’t require any noticeable counting, either of stitches or rows. Basically, it should look like you’re not really looking at the knitting, just doing it.

Probably my favorite pattern for meeting knitting so far has been something called the Fibonacci Scarf. It’s a ribbed scarf, but with a bit of variation, the ribs being in Fibonacci sequence: Slip knitwise, knit, purl x2, knit x3, purl x5, knit x8, purl x5, knit x3, purl x2, knit, knit; then the other way around for the even-numbered rows. It turns out really pretty, and has a bit more variation than the usual ribbed whatnot. Plus math!

Theories of Fidgeting

Reposted from Twitter, with edits:

  1. Bracelets are a superior form of jewelry: less noticeable and make it less likely that earrings will be fidgeted.
  2. In lower status meetings, knitting is the best form of fidgeting. (In higher status meetings, a pen is an acceptable alternative.)
  3. Having a single focus object (example) is good for desk work, but can cause emotional trauma if misplaced.

In a reply to a question — is tweeting about fidgeting a form of metafidgeting? Well, possibly; more that I’m attempting to bring a semi-conscious process into the forefront. A longer rumination follows….

I have been fidgety for as long as I can remember: I fuss with jewelry, pens, zippers, anything handy. And I don’t always realize it, and it’s totally obvious to others.

When I was in high school I was in Academic Decathlon, which has a speech component and an interview component. After my (favorite!) teacher watched me progressively fidget with every single piece of jewelry I was wearing (and I wore a lot more jewelry then) over the course of my practice speeches, she insisted that I remove all of it before the actual competition. She would stand outside the room with her hands out, and I’d take off everything for her to hold until I was done. According to at least one of my sisters, she used that as an example; I’m guessing while talking about ums and ahs, knowing your own weaknesses, and how to be more composed while speaking. Which sounds embarrassing, but since I remember the experience with fondness, it isn’t really.

I’ve only recently discovered the three rules listed at the beginning of this post. Rule #1 came from the MetaFilter Craft Exchange: one of the items I received was a lovely bracelet that I started wearing initially as a reminder of the goodness of humanity. (Or something.) But then I discovered that if I was wearing it, I tended to fiddle with it instead of with my earrings (especially if my hair was down), and that that fidgeting was significantly less noticeable, because it keeps my hands down away from my face.

I think I may have already written some about knitting as an advanced form of fidgeting; what I’ve discovered is that if I knit while I’m in a meeting or listening to a webinar, it keeps the distractible part of my brain occupied, so I actually listen instead of zoning out making (unrelated) notes. (I totally would’ve retained way more in college if I’d been knitting then.) FWIW, this also works with expository sequences in D&D games. The trick, of course, is not being seen as rude. First aspect of that is to be knitting something that doesn’t itself require much if any concentration, so you can maintain eye contact when necessary. I’m currently working on a tablet cover that’s 99% seed stitch; it’s been great for that. Long stretches of stockinette or garter work too. The second aspect is to feel out the social status signals and meeting function. So far I’ve been trying to err on the side of not knitting.

And finally, I’ve had that fidget object linked earlier for quite a while, and it’s in my left hand pretty much any time I’m at my desk and not actively typing or writing on paper. I will say that a few times I’ve misplaced it in odd spots in my cubicle and freaked myself out. Security blanket? Mind focuser? I don’t know. I just accept that it’s an important part of my work environment.

At this point, I’ve also accepted that this behavior is part of who I am, and what I can do is be conscious enough to stop when it’s a problem (LEAVE YOUR JACKET ZIPPERS ALONE) and to redirect those tendencies into things that are either less noticeable or more useful.