by afc on 5/9/24, 11:29 AM with 29 comments
Right now I only implemented on simple pattern: Sophie scarfs. After knitting one that came out somewhat … asymmetric, I decided to just write some software to help me (1) easily adjust the length/width of the scarf (using Bézier curves), and (2) keep track of which row I'm on (so that I can make sure I apply increases/decreases at the right places). In the future, I expect to extend this with many other knitting patterns for other types of items.
The application is 100% browser (JavaScript, tested in only in Chrome in Linux/Android) based (no server-side component): all state is kept in the URL hash. I've used it to knit two scarves, including https://github.com/alefore/knit/blob/main/images/000.jpg.
The current state of knitting patterns is far from optional, stuck in pre-computer times. Perhaps knitters are not the most technically minded group. Most knitters just download patterns as PDF files. These files will show multiple numbers from which you should choose one depending on the size you're knitting, saying things like "Purl 24 (32 38 42 50 64) times" (you're supposed to pick the right number depending on the size you're knitting). They'll say things like "repeat rows 4 to 6 sixteen times".
I think software can display patterns much better (including not being limited to a few pre-selected sizes, but letting you choose the _exact_ size you want, and adjusting everything accordingly), and keep track of your progress much more easily. For example, for my scarf, the user inputs the desired number of rows (based on the desired length, which makes the pattern agnostic to the needle size), and the software computes where to apply increases/decreases.
I have many other ideas for improvements (e.g., track how much time I've spent in each row, show a clock), but I figured I'd share this early and ask for feedback. Hopefully there are other fellow knitters in HN. :-) Check it out and let me know what you think!
by munificent on 5/9/24, 8:38 PM
If you're a software engineer, I think it scratches a lot of itches:
1. Knitting patterns are sort of like a tiny little programming language, with loops (as in iteration, not as in, uh, loops of yarn) and choice.
2. Knitting charts are a lot like pixel art.
3. There is a very fine-grained skill progression where you can ease your way in by starting with simple patterns that only use a few techniques. But there is always a next level of skill and challenge. The lore is incredibly deep and there is a ton to learn. You'll never run out of ways to improve your expertise. At the same time, even as a beginner, you can make objects that are useful and beautiful.
4. If you're tired of staring at a screen and crave something tactile, it is an excellent counter-point. It's extremely tactile, hands-on, and texture-oriented. It just feels good to knit or play with yarn and textiles. There are so many rich colors and color combinations at a level of vibrance that a screen never attains.
5. If you're mentally tired at the end of the day but still want to feel like you're making progress on something meaningful instead of just scrolling on your phone, you can always pick up a project and knit a few more rows without needing a lot of brainpower. At the same time, you can also choose projects with enough complexity that it doesn't feel totally mindless like a coloring book or something.
6. Unlike software where much of our output is intangible and meaningless to the world, everyone can see and appreciate knitted objects. The things you make are instantly beloved and appreciated.
7. If you are introverted and prone to anxiety, knitting is a very nice therepeutic escape.
I highly recommend it.
by bo0tzz on 5/9/24, 1:14 PM
Another program I made (and unfortunately lost) was one to generate bespoke sock sizings (and corresponding pattern instructions) from measurements I put in.
by Caradjine on 5/10/24, 12:21 PM
Being a long time knitter and also a designer (not a professional designer, but just someone that likes to design her own patterns and doesn't like to follow other patterns), I did several knitting tools using LibreOffice Calc (may be you can call that "old school"), you can download them here: https://www.aiguilles-magiques.com/-Outilsde-creation-?lang=... Sorry but they are mainly in French. Well, the sweater calculator is in English too.
For these tools, I just ask the knitter to enter the gauge and, yes, all the necessary measurements. The sheets make all the maths. Obviously there are way perfectible, and they don't show the shape of the finished as you did for your tool (notice the picture on y tools were made with Inkscape).
All this tools are under licence CC by-sa.
by candiddevmike on 5/9/24, 12:01 PM
Any interest in expanding the scope of this to include other designs? Double knitting? PRs welcome?
by mrosethompson on 5/9/24, 4:12 PM
- KnitCompanion is a complex but extremely powerful app to take PDF patterns and turn them into very efficient, effective digital patterns. You can designate specific steps, walk through steps and charts with voice control, extensively reformat a pattern, etc. I use this for all moderately complex knitting.
- TinCanKnits is a pair of pattern designers who have recently released an app for their own patterns that customizes the pattern (showing only your size, changing chart colors to match your yarn, etc.)
- CustomFit by Amy Herzog is a tool with a collection of sweater designs that can be fully customized to your own gauge, measurements, design preferences, etc.
- There are a number of calculators out there for sock knitting (how many stitches/rows for heel flap, gusset calculations, etc.).
by mk12 on 5/9/24, 10:59 PM
by algasami on 5/9/24, 12:58 PM
by 082349872349872 on 5/9/24, 7:52 PM
Syntax like this is probably why wartime censors disapproved of mailing knitting patterns.
EDIT: someone needs to write a short story procedural in which the plaintext turns out to be a knitting pattern.
by anonzzzies on 5/9/24, 11:30 AM
by brettermeier on 5/9/24, 5:06 PM
But in the example in your Github, was does "2K KFB 6K WYIF 3SLP" mean? The explanation is "The rest are the steps for this row.". I don't understand. Can somebody explain?
by terpimost on 5/9/24, 12:00 PM