rinsemiddlebliss

Close-up photo of a yarn swatch made of a fuzzy red yarn.

User stories for legible knitting patterns

Knitting patterns could be a lot more legible and enjoyable to use if they broke free of the constraints of print

by AK Krajewska

Knitting patterns are code

Knitting patterns are written like minified code. Take this example from a sweater I've been working on for the last 10 years:


Next row: *Place marker (pm), k2tog, work across 88[98, 108, 118, 128, 138] sts 
in patt as set, ssk, rep from * one time more. 180[200, 220, 240, 260, 280] sts
Cont in patt as set until work measures 14[14.5, 15, 15.5, 16, 16.5] inches, 
ending on an odd-numbered row and stopping 5[6, 5, 6, 5, 6] sts before beg of 
round.

I don't think I need to make the case that knitting patterns are code, or at the very least pseudocode, but just in case you doubt me, look at the way the bit between asterisks is a simple function. It tells you what to do and then how many times to repeat it. The numbers in brackets work like parameters. Earlier in the pattern, the different possible sizes are defined, like this

XS [S, M, L, XL, XXL]

Then, every time a set of measurements is given in that format, they indicate the action you need to take for that particular size. There's more, but I think that's enough. I assume someone else has written some careful argument about how knitting is code, however, I couldn't find one online to link to.

My struggle sweater

People don't normally read code when it's minified, but we knitters have to follow these compact patterns. While stitch counters and stitch markers help keep count of repetitions, that's not enough. I'm not sure what other people do, but I tend to print my patterns and scrawl notes all over them.

Scanned image of a portion of a knitting pattern with messy notes to self about mistakes and how to fix them, places left off, and hash marks keeping place.

I still make tons of mistakes, and have to go back and unknit and knit again, like some Penelope. As a result, knitting goes very slowly for me. I've found this pattern particularly difficult, because it combines complex shaping with lace and cabling.

After struggling with the back top of the sweater for a month or so, I came to the instructions for the front which just said:

Work as for back to row 25 of Chart B.

Oh no. So, I decided to expand the instructions. I pulled out just the part that applied to the size I'm knitting to remove clutter and then put each row on its own line. I unminified the knitting pattern:

Scanned image of a portion of a knitting pattern with neat notes listing the action line by line.

It was easier to read and it let me check off each row as I finished it. Wouldn't it be nice if we could get patterns already formatted like that with nice, meaningful white space?

Knitting patterns are squishy for a reason

Knitting pattern conventions developed for the constraints of print. If the way you distribute your pattern is in a print magazine or a handout from the knitting store, you want to fit as much information as possible in a small space. And knitting does tend to be repetitive, so it doesn't necessarily make sense to write out every single row.

As difficult as modern patterns can be to read, they've got nothing on the previous centuries' patterns which are a downright eyebleeding nightmare. Maybe paper was more expensive.

Many patterns are still distributed in print, nonetheless, I think knitting patterns could be a lot more legible and thus knitting a lot more pleasant, if we took advantage of the affordances of digital distribution. Why should an online magazine follow the same rules as a print magazine?

Knitter user stories

In addition to meaningful whitespace, online knitting patterns could also do with a selector so that you could select your size and see the pattern just for your size. A step by step unminifier thingie could be another option on the selector.

I also prefer patterns given as diagrams and charts and then measurements to check as you go. I realize that's probably not suitable for many beginners, however for advanced patterns I think it would be preferable. Even though not all knitting patterns follow the same exact abbreviations, they always define them, so I think it should be possible to create code that takes in a pattern in words and produces a diagram.

And I've just written a spec for a knitting software and or standard that I'd like, so I might as well go all the way and write some user stories:

I'm aware of some sweater design programs that fulfill some of these user stories. You give them a set of measurements and they spit out instructions for a sweater in just your size. I haven't seen anything like what I describe here.

If I could have just one of these stories fulfilled, it would be more and more meaningful whitespace in patterns.

The struggle sweater lives on

In the meantime, I have a bit of sweater to unknit. It turns out I misread Chart B and put extra stitches in between the yarnover Vs, when they were only supposed to be at the edges.

A blue sweater in progress with a complex lace and cable pattern. In the background, the edge of a knit doily.

It's a pain, but I know I can do it. Because you see the edge of that doily? I knitted that thing on double zero circulars using fine cotton yarn and following some weird German charted pattern. That thing was so stupidly complex you couldn't even use a safety line. I have no idea how I did it. I've lost the pattern (though not the needles), and frankly after I did it I felt satisfied that I could and didn't make another. Nonetheless, it's evidence that my stubbornness is powerful.