Sunday, December 10, 2023

Create With Code Using TurtleStitch - Getting Started

During Computer Science Education Week 2023, I challenged myself to learn to code with Turtle Stitch - a coding environment that allows you to generate code that can be embroidered with an embroidery machine!  This fits right into my belief that Creating Code You Can Touch is a highly motivating way to introduce computer science.  Today's post will include some getting started tips for beginners when using TurtleStitch for the first time. 

If you have used Scratch, Snap, or other block coding environments before,  you will notice that the layout to TurtleStitch includes 3 main areas.  

On the left you will find a library of CODE BLOCKS, on the right you will find a STAGE with a TURTLE sprite (or actor) and in the middle is where you  write your CODE to control the Turtle.


Let's get started by dragging out some Code Block to see if we can make the Turtle draw a Square.




Tip 1: Start each program with a RESET. This clears the screen and returns the turtle to the HOME position and points it in the 90 degree direction.  Then add a Stitch Type code by dragging out the Running Stitch Code.   If you don't do this, Turtle Stitch will give you a warning that your stitches are too long for the embroidery machine.   Putting both of these under a WHEN GREEN Flag block is a great way to make sure these commands are run at the beginning of every program.




Tip 2: I like to drag out an EVENT code that allows me to run part of my design when I press a key on my computer. In this case, I chose WHEN S KEY PRESSED (since we are drawing a square) then I attach code blocks that will tell the Turtle to Draw a Square. 




Tip 3:  Take some time to understand the X,Y Coordinates 


One way to do this is to have TurtleStitch display the X,Y coordinates of your mouse pointer on the stage as well as the X,Y coordinates of the Turtle.  I, also, like to display the direction that the Turtle is pointing.
To do this Find and  "Click on  "CHECKBOXES" for  each of the following in the CODE BLOCK area. 



Check these in the SENSING Category

When you do this, your Stage area will display location of your pointer and your turtle.
Moving the pointer around on the stage and watching the location info change can help you  place your design elements in the correct elements on the stage. (Hint, You might have to drag  the information blocks around the stage if they are stacked  behind each other)




Tip 4:  If you prefer to work in inches, change the Display Setting to inches. 
Keep the size of your design small enough to fit into the 4 X 4 inch  or the capacity for your embroidery machine

 
The maximum image size for the Turtlestitch stage area is approximately
 3 1/2 inches in height x 4 1/2 inches in width
You can see the size of your image below the stage.
I found that 127 steps created a 1 inch square




Tip 5:  Try this fun challenge to better understand the X,Y positions of your grid and the size limitations of  TurtleStitch graphics.


Create a design that draws and labels   the XY Coordinate grid  on the stage. Make it about 4 X 4 inch in size. 



Use the code blocks we have learned along with these code blocks. 



Here is the approach I took to do this. 
When GREEN FLAG pressed, reset and set a running stitch 


When X pressed, draw the X axis and label it


When Y pressed, draw the Y axis and label it












When H pressed (move the turtle back home)






Bonus Challenge:  Draw a one inch square in each of the 4 coordinates! `

Hope the following Tips prove to be helpful as you start your Turtle Stitch Journey.

I'm just learning too, so I welcome any advice as I share my journey in the next few posts.





Friday, December 8, 2023

Code You Can Touch using Turtle Stitch

Each year I challenge myself to learn something new and reflect on the process of that learning experience.   I believe that taking off my teacher hat, and replacing it with a student hat, is one of the best professional development experiences a teacher can engage in. 

 
What better time to learn something new than  Computer Science  Education Week!  This week, I pulled out the embroidery machine that I bought during the pandemic, and started to imagine a new Create with Code You Can Touch project. 


I developed an interest in TurtleStitch  when I saw Twitter posts about this platform that allowed you to CODE an embroidery design.  This year, I decided that I would find a project that would allow me to create confidence with TurtleStitch so that I can include an embroidery machine in my Code You Can Touch experiences.  I'm not quite finished my project, but here is what I have done so far, along with a reflection on what I'm learning along the way.



I like to approach learning through creating and making with four types of questions
(What? How? Why? and Who?).






WHY would anyone use TurtleStich to create an embroidered design? 
WHO might TurtleStich invite and empower?


First of all, I must say you would NOT use TurtleStitch if your intention was to easily embroider a specific graphic.  Many embroidery machine come with libraries of designs and fonts you can pick from.  You can purchase embroidery designs on platforms like Etsy for a few bucks.     You can, also, draw your own designs with  embroidery design software or vector graphic software.   Here's an example, where I used  the free Inkstitch plugin to Inkscape to embroider the Create Make Learn logo.

But if your WHY is to learn to code  through physical computing - then TurtleStitch fits the bill.  
If you enjoy block coding using Scratch of Snap, then TurtleStitch provides another block coding platform for you to play with. 

It's accessible and can be used to create fun colorful designs on something you can TOUCH and KEEP! Giving birth to a physical object creates a feeling of pride and produces a reminder of the HARD FUN experience of learning to code! 


Working with textiles can inspire  under-represented populations to learn computer science.  Students who are drawn to color, textile, or artistic expression might be more inspired to learn to code if the results was a physical product they could wear or display. 


Inspired by my WHY and WHO questions, I was ready to move into the WHAT and HOW questions.

WHAT do you need to create an embroidery project with code?

Hardware - Obviously you will need access to an embroidery machine. I chose the Brother 525 for the following reasons.: 




1) Price 
Embroidery machines are expensive.  My goal was NOT to start an embroidery business, so I really did not need an expensive high end machine.  I wanted something school makerspaces might find affordable. The Brother 525 (under $400) seemed to fit the bit.  

2) Stand Alone machine. 
 In my research, I kept seeing that combo machines (ones that sew and embroider) were less desirable and perhaps more prone to problems.  I don't have personal experience with this, but it sounded reasonable, so I ruled out combo-machines.

3) Repair
I would suggest looking around for a sewing machine repair shop near you to see what brands they will service.  Embroidery machines perform a lot of mechanical movements, so I suspect that they might need to be serviced at some point. 

4) USB port
You will need to import your coded design into the machine, so you'll need a machine with a USB port. 


Software


Since my goal was to create with code, my intention was to use Turtle Stitch software. It is cloud based so it works on Chromebooks and its free to use. It is based on SNAP block code, so the interface seemed familiar. 

Code! .. Draw! .. Stitch!

I also checked into embroidery software so I could embroider 'non coded' designs. 
I experienced sticker shock when I saw the price of embroidery software.  Even the price of software plug-ins for vector programs like Adobe Illustrator seemed out of reach.  After some research I noticed that I could use an Inkscape plug in called Inkstitch plugin to convert svg designs into a file format that my embroidery machine can use. 


Supplies

It was obvious that I would need embroidery thread, but a few supplies were less obvious.

Embroidery Thread

I ordered this box to have a nice selection of colors available.  Extra bobbins were also recommended, so I bought a box of these.








Extra Needles

Yes,  even experienced sewers break needles, but a newbie like me broke a needle the first time I used my machine.  I also learned that there are different needles for different fabrics and that you should replace your needles when they become blunt.

Hoops

Make sure you have the right embroidery hoop for your machine.  This maximum embroidery size for my machine was 4" X 4" so I didn't really need the 3 pack with different sizes I bought.  


Stabilizer

I tried my first design without stabilizer and it didn't work out so well. I had never heard of stabilizer before this project, but quickly learned that I would need both Tear away and Water soluble stabilizer depending on the type of project I had in mind. As the name implies, the water soluble stabilizer can be washed away with water and is useful for projects where the back of your project is exposed. 

Tear-away Stabilizer


Water Soluble Stabilizer

Fabric

Having some scrap fabric that you can experiment on is important.  You want to give yourself permission to experiment first! I used an old muslin shopping bag from Waby Parker to experiment with.


Since I  didn't have  quick access to a fabric store, so I purchased some flour sack tea towels for my first project. And since I was in the Christmas spirit, I also picked up some printed tea towels to use in my first project. 


Sewing supplies

You'll also want some basic sewing supplies like scissors, rulers or  tape measures, seam rippers, straight pins, a pin cushion, and an iron/ironing board.  


HOW to get started? 


The first step is to learn the basics of threading and operating your machine. For this I followed the instructions that came with my machine with one of the simple built in designs.  I also found this video very helpful. 


Finally it was time to CODE my own design. 

These TurtleStitch Tutorial videos and these Lesson Plans/Cards were very helpful, especially this one




When it came time to code my own design, I wanted to start with something seasonal, but simple.  A simple Christmas Tree proved to be the perfect design for me to get comfortable with the basics of TurtleStitch without feeling overwhelmed.  The seasonal nature made it especially relevant and motivating to learn.  It allowed me to become familiar with the ESSENTIAL setup code that every project needs.  The design  provided the perfect opportunity to review angles - a very important skill for coding embroidery designs. 

I found that using an Event such as "When I press '__' to draw different parts of my design was helpful for troubleshooting.

I also learned that moving the turtle to a specific XY coordinate and resetting the direction that your turtle points to was key to predictable results. 

In the next blog post on this topic, I'll break down the HOW TO steps with a more detailed tutorial for this project, and other starter projects than can help you and your students create confidence with code using TurtleStitch.












My experience has me re-thinking how and where I might use TurtleStitch in my physical computing approach to coding.  There was a lot more 'non coding' pre-learning needed than I expected -- but I guess that would be true with any new medium.  I'm definitely going to keep playing, and have the perfect holiday project in mind to motivate me to keep on learning through creating, making, and coding. 
 Stay tuned!