My name is Kris and I love geeky knitting. I know when I say that, people think of things like this:
And that’s fine - I did, in fact, actually knit these - but there’s so much more to it than Dr. Who scarves and Jayne hats. I thought I’d show you some of it today. In my day job, I work at Canva, where (amongst many other things) I help Damon and Harley and the rest of the Engineering team keep on top of bugs, dependencies, and ever-changing priorities. I used to be a frontend dev back in the day, and I still run a couple personal sites. I’m even one of the organisers for Girl Geek Sydney. I’ve also won a blue ribbon for my knitting at the Sydney Royal Easter Show. To some people, this is totally incongruous, like I’m being deliberately anachronistic. But to me it makes perfect sense. After all, knitting is pretty much just code.
Anybody who’s ever tried it knows there’s just two stitches: knit and purl, combined in lots of different ways. So it’s inherently binary. And for those of us geeky computer types, that means we can use it to encode messages in a lot of different ways. For instance, if I combine knits and purls…
For instance, if I combine knits and purls to make ribbing, I can make a beanie. This is a free pattern called Decoder Hat, and it encodes up to 12 ASCII characters in binary at 8 stitches each. Obviously, message length is determined by the size of your head. But what if my message is longer?
How about a scarf? This scarf is actually the source code for ravelry.com, a knitting site. The knitter has used knit stitches to represent ones, and purls for zero. You could represent pretty much anything this way. If you’re more of a “black hat,” you can even knit a virus…
For the Viral Knitting Project, a team of activists knitted the source code to the code red computer virus into a scarf. So much for firewalls. This is contraband code you could carry across a border and no one would notice. All of these are examples of…
All of these are examples of steganography - the art of hiding a secret message in plain view. Nowadays the news freaks out about terrorists embedding messages in pictures on eBay, but did you know in WW2 the Belgian resistance recruited little old ladies who lived near rail yards to encode train movements into their knitting?
Granny doesn’t look so sweet and innocuous anymore, does she? She could be knitting anything into that jumper. Of course, binary knits and purls are only the beginning. There are lots of other ways to encode secret messages in your knitting. Personally I like the look of cables…
Personally, I like the look of cables. The hat on the left represents the numbers from 0-15 in binary notation, depending on where the crosses occur. The scarf on the right uses cables that actually look like little zeroes and ones. Maybe you like colour more than texture…
Another option is stripes. The width of knitted stripes in different colours could be used to represent a character set. The stripes on this jumper, for example, actually spell out the classic first programming exercise “Hello World”. If you want to get super literal…
If you want to get super literal, you can actually knit little ones and zeros into a scarf. You may be interested to learn that your average scarf will hold about 120 bytes of information. That’s just shy of a tweet! Not that the Belgian knitting nanas…
Not that the Belgian knitting nanas would’ve known what Twitter was. But they may have known Morse code! These mittens here use colour to create the dots and dashes of Morse code to spell out “My Left Mitten”; “My Right Mitten”; and “Thumb”. How meta. Another encoding method is to turn your characters into a repeating graphical motif…
Another encoding method is to turn your characters into a repeating graphical motif. Here the word PEACE has been converted to base 6, graphed, mirrored, and tweaked to make a repeating pattern. But what about accessibility? you might be thinking…
But what about accessibility? you might be thinking. Well, these knitted socks take advantage of the texture of knitted stitches to encode in Braille. The pattern repeat is a stanza from Dr. Seuss’s “Oh the Places You’ll Go.” So that’s all pretty cool…
So that’s all pretty cool, but I get that most of you when you see the word “hacker” are expecting something a little more futuristic and “disruptive,” preferably involving an app of some kind. I got that covered.
How about a real working knitted QR code? The mittens on the right - which won me a 2nd place at the Show - encode a URL from my personal site that has the pattern for the mittens. They’re self-replicating! But they’re not exactly subtle.
This is more subtle. This is a jumper I knitted for my husband a few years back using a technique called illusion knitting. From the front, just stripes. From the side, he’s secretly an Autobot from the planet Cybertron. This next one is also subtle. It’s not actually code…
This next one is also subtle. It’s not actually code; more like scientific output. The stripes on this scarf are actually a graphical representation of the emission spectrum of the element Molybdenum.
KnitYak was a successful Kickstarter earlier in the year from Fabienne Serriere. She raised nearly $125K to buy an industrial knitting machine to create provably unique scarves and knits using elementary cellular automata algorithms.
This piece is a crochet version of the Arecibo Message, which was broadcast into space in 1974 towards a star cluster 25,000 light years away. I for one welcome our new crochet overlords…
Sticking to the space theme, this is a scarf I finished back in August for knitting camp. (Yes, we have knitting camp too.) They were running a Mystery Scarf Competition. The details were very vague–basically, you were supposed to knit a scarf of a certain size out of black and either white or cream. I thought it would be fun to try to knit an actual mystery into the scarf. After a lot of research into unsolved cyphers, I settled on the Wow! Signal. This was a strong narrowband radio signal detected by Jerry R. Ehman on August 15, 1977, while he was working on a SETI project at the Big Ear radio telescope of The Ohio State University. When he saw the spike on the printout, Ehman circled it and wrote “Wow!” in red pen in the margins. The signal lasted for 72 seconds. It came from globular cluster M55 in the constellation Sagittarius. It looks pretty much exactly like what we’d expect an interstellar transmission to look like. It’s never been repeated, and we don’t know what it means. I like to think it’s an alien civilisation saying “Hello!”. So I knitted it into a scarf.
And then we come to e-textiles, which is something I’ve gotten into this year. There are now several Arduino-type micro controllers like the Lilypad, Flora, and the Gemma that you can sew into your knits with conductive thread to create e-textiles.
This is the “Know It All” bag, a free pattern on knitty.com. It uses a Lilypad and 10 LEDs to encode each line of your knitting pattern (via different patterns of blinking and flickering), and you can advance through by clicking a button.
This is the “Gemma Sequin Hat” from the Adafruit site. It uses a Gemma microcontroller, which is about the size of a 20c piece, to light up six LEDs on the brim of a knitted beanie. I’ve used this exact setup on my CampJS beanie, and if you come to my session tomorrow, we’ll talk about how to make this. :)
This project isn’t actually knitting at all, but I couldn’t resist showing it. It’s the Canva Comma Club Cushion that I made for our hackathon back in August.
Conductive thread has a couple other great uses too. If you stitch it into the fingertip of your gloves - like on these “In Touch Gloves” from Knit Picks - you can use your touchscreen devices in the winter without taking your gloves off.
I hope some of this inspired you. For those of us who push pixels around all day, knitting can be a creative, tactile way to relax… and even hack a bit. Come to my session tomorrow if you want to learn. Or hey, just call your grandma!
Granny Was a Hacker (CampJS Version)
G R A N N Y W A S
A H A C K E R
P H O T O : L I S A C O C K B U R N
K N I T T I N G
C O D E
F L I C K R : S T E P H A N I E A S H E R
96 st = 12 ASCII
characters in binary at
8 stitches each
“ D E C O D E R H A T ” B Y Z A B E T S T E W A R T
Source code of
“ B I N A R Y S C A R F ” B Y H E Y C A R R I E A N N
“ T H E V I R A L K N I T T I N G P R O J E C T ”
B Y K I R S T Y R O B E R T S O N & O T H E R S
S T E G A N O G R A P H
F L I C K R : B E E P 1 O
R A V E L R Y : C Y NF L I C K R : D E V A B U R G E R