This week we collaborated to make a video that combines Monster High and digital fab! When I told her about the Othermill (a CNC milling machine that my partner works on the software for), she asked if it would be possible to make nail stamping plates. I didn’t know what those were, so she showed me: little metal plates with embossed decorative designs which can be filled with nail polish and transferred to your nails with a silicone stamp. We are pretty sure that the commercial sets are chemically etched based on the smoothness of the grooves, but after some experimentation we figured out that engraving works just fine!
Here’s the video:
I’m awkward on camera 😛 I’ll get better at that eventually. In the meantime, isn’t this SERIOUSLY COOL?! I have a spirograph set planned: gears for the thumbs and a different hypotrochoid for each finger.
Here’s a wee reference book for Processing, with half blank pages to write in your own things-to-remember. The cover is a procedurally generated composition book (written in Processing, of course!) Link to download here. To make one, print double sided on one letter sized sheet of paper, cut out doubled pages along lines, stack and fold all in half, staple or sew at fold.
Code for the procedural cover is here. I’ll post some downloadable ones as soon as I fix the print size!
For fun: I will send a little book to the first 3 people who request one in the comments. 🙂
I suppose this isn’t a hack since this IKEA piece is already made of unfinished wood ready to be decorated, but it does use only IKEA parts! I had to give away my dresser after our recent move since it wouldn’t fit in our new space. I replaced it with a tall, narrow chest of drawers from IKEA called the TARVA which fits in my little closet next to hanging clothes. While I was at IKEA, I fell for these really gorgeous paper napkins (SOMMAR) and decided to grab them for no particular reason (I was very good otherwise and only bought things we actually needed!) When I got home, I decided they would be perfect to decorate the chest of drawers.
Lots of iteration followed! I tried Mod Podge first, but it was really difficult to make the napkins lie flat and I didn’t like the plasticky feeling of the finish. I tried ironing the napkin to Heat-N-Bond double-sided fusible adhesive and ironing that onto the wood, then spraying with acrylic sealer, but it made the layers of the napkin peel apart and form bubbles.
What finally worked: peeling the napkin apart and removing only the top decorated layer, ironing that to the fusible interfacing, ironing some interfacing to the other side of that, and using a mix of PVA and Nori to glue it (bookbinding-style) to each panel. Sort of like the reverse of this technique for making bookcloth. Some process pics!
Ironing Heat-N-Bond to the single-ply napkin (after stopping to decorate my ironing board cover <3)Heat-N-Bond backing removed: Ironing on interfacing:Gluing: Glue brush is key: Bookbinding corners: All 5 drawer fronts:If I were doing this again, I would paint the panels white before applying the napkins – I’m not super thrilled with how the wood shows through in some places (depending on how much I melted the Heat-N-Bond through the layers, I think).
Currently testing different finishes and planning to paint dresser. Stay tuned…
I’m in the midst of unpacking and quarter grading so this week’s post shall be brief.
A huge life lesson that it took me too long to learn: if where you live is making you miserable, move. Do it as soon as you can.
I know it’s a huge privilege to be able to, and often it’s really truly not possible. But in many other situations, it’s only massively inconvenient, complicated, and difficult. The dauntingness of the task makes persistent low-level discomfort seem bearable. But you’ve traded the possibility of joy for convenience. That’s a pretty cruel way to shortchange yourself.
Years ago I stayed far too long – twice! – with roommates with incompatible styles of discussion and preferences about how we lived in the space, and we learned that lesson at some cost to our friendships that could have been avoided if we’d all acted sooner. This time around, I stayed four years with carpet that grossed me out and a space that really didn’t have enough light or air. I thought the problem was me for not being appreciative enough of having a space to live in the Bay Area. I should have gotten creative and prioritized finding a way out sooner.
I am so, so joyful and and grateful for my new space.
An assortment of things from my first trip to the Computer History Museum in Mountain View (with apologies for the photo quality).
Mechanical Card Punch machine: I love that they had one you could play with! The mechanism is surprisingly smooth and it required little pressure to make perfect-looking holes.
A reference to one of the first ever spam messages – sent by telegraph in 1864! The sentiment about them has not changed much.
The Kitchen Computer, (pedestal version with built-in cutting board!) an unsuccessful product from 1969. “For 10,600 you got the computer, a cookbook, an apron, and a two week programming course.” <3
This “Silicon Valley Napkin” for an instant napkin business plan is so much in the spirit of today’s Silicon Valley it surprised me that it was from 1986. Instructions: Fill in product specs on side 1; Fill in business plan on side 2; Start the company in your garage; Throw huge rock parties, temper tantrums, anything you want—you have now joined the rich and famous of Silicon Valley!
This absolutely gorgeous little stock ticker machine. I want to make one!
All in all a fun trip! I do wish they had more things you could touch and interact with, though. It would be a really fun project to build replicas and emulators of various machines so you could really understand how they worked. Maybe a good future class project!
Last night I went to Code for San Francisco‘s weekly Civic Hack Night. I wanted to learn more about some of the projects and share what I learned with my class. My students are currently researching Open Source projects to contribute to as part of a “Collaborative Computing” unit. I had looked at some of C4SF’s projects online and joined their Slack list. However, I didn’t feel like I had enough information to guide students. What projects were currently being actively worked on? What kind of contributions were they looking for, if they hadn’t listed them under the project issues? Would they welcome remote contributions from new programmers?
The hack night is held at what I later learned is Code for America’s headquarters, a short walk from Civic Center BART station. It’s a good location if you’re thinking about San Francisco’s civic challenges: there are a lot of homeless people in the area, and despite the many well-to-do tech companies nearby, it is a fairly run-down looking neighborhood.
When I arrived, I was greeted at the door and asked to fill out a red nametag designating me a “new member.” I was then pointed towards the beer and told that food would be ready soon (oh hey, food!) I had arrived early, but everything was already laid out and ready to go: tables in the main room with signs for specific projects and a presentation room with plenty of seating. As a very shy person (though not actually introverted! these are distinct things), I always dread the “mingling” and introducing yourself parts of events like these, so it was lovely that the layout made it easy to find a quiet spot to park myself and get situated before the presentations.
Presentations were roughly as follows: general sorts of updates including announcement of the CodeAcross hackathon, a couple of focused presentations on specific topics (a “civic project lifecycle framework” based on Agile principles, a prototype for a “city agencies leaderboard,” a project called ShelterTech aimed at alleviating homelessness-related problems), then brief pitches for projects looking for contributors. Finally, there was a new member orientation! The facilitators had us all introduce ourselves (about 20 of us). They gave us a definition of Civic Tech: data + a need + tinkering. Then they went over a list of existing projects and offered to personally introduce anyone interested to the relevant project group.
A few of my take-aways from the presentations:
I should have students search through all the Code for America projects and even Civic Tech projects in general rather than only the Code for SF projects. I learned about this useful Civic Tech Project Search, which in itself is a Code for America project. They should join the Slack discussion group, and I will also suggest they actually attend one of the meetups or the hackathon.
Data is big! I had overlooked the idea of data in thinking about open source projects, but it’s central to civic projects and there are a lot of interesting problems to be explored in data collection, access, and wrangling. Code for America has a whole Data Science team.
They were warmly welcoming of all kinds of skills and explicitly didn’t assume attendees were all developers or tech-savvy. I especially liked the example of the variety of valued contributors to the Local Free Web project: designers, MUNI riders, front and backend developers, librarians (!), testers, translators, flyer-posters, actors.
I was impressed at the level of organization, and also how welcome I felt at the event. It was very shy-person friendly! It also was a fairly diverse group.
My one critique (and this applies to a lot of tech meetups!) is that when your working day starts at 7:45AM and you’re sometimes up at 5 for class prep, events that go until 10PM and require a lot of brainpower are not ideal! I suspect a lot of service jobs start and end earlier in the day than the typical tech job. I had class the next day so I didn’t stay and hack, but I might be back! In the meantime, I hope these projects catch some of my students’ interest. Planning to report back on how that goes.
I got pretty desperate for chocolate during last year’s no-sugar-November, and even the super-dark dark chocolate bars contained sugar. I was lucky enough to run across this intriguing “brewing chocolate” from Crio Bru at one of those shmancy SF corner grocery stores. You were supposed to brew it like coffee, but lacking much coffee brewing experience or equipment, I made it more like chai tea with milk boiled in with the water. The result is, in my opinion, rich and chocolatey and better than regular hot chocolate. I was surprised that it works with so much water (I find those just-add-water instant cocoa packets watery and gross), but the amount of cocoa butter left in the ground beans must help!
Bring 8oz (1 cup) of water to a boil.
Lower heat and add 2 tablespoons of ground cocoa beans. Simmer for about 4 minutes.
Add 4oz (1/2 cup) of milk. Bring back to almost boiling, then remove from heat.
Slightly unrelated but on the chocolate theme: I took my sister to Dandelion Chocolate‘s** wine and chocolate tasting event last year for her birthday. It was so good I literally cried. If you splurge on a single thing in SF (and like chocolate, but I suppose you wouldn’t be reading this if not) I would make it this event.
Also on the theme: why is Peets’ hot chocolate so awful??? This post is turning out to be full of opinions…
I discovered Desmos while subbing a math class. It’s a nifty, nicely-designed online graphing calculator. The students were working on a project where they had to create designs and animations by combining mathematical equations (such as a bicycle and a stick figure dribbling a basketball). I immediately thought “you could fab these shapes!” By which I mean you could use a CNC tool (milling machine, lasercutter, vinyl cutter, embroidery machine, 3D printer, etc) to make them physical.
First, make something! I googled “beautiful parametric equations” and rather liked Lissajous curves (also hypotrochoids, but I wanted to try something new 🙂 ) Plug the formula in, play with parameters:
Next, turn off the graph and bold the lines. Click the wrench (settings). Choose Projector Mode, and click on X-axis, Y-axis, and Grid to turn these off.
Click Share and then Image to save as a PNG.
Click on the image to download it:
Now use the Trace function in the software you usually use to make designs for your CNC tool (eg. Inkscape, Illustrator, CorelDraw) to turn the bitmap image you downloaded into cutting lines.
I did some lasercut tests in acrylic and bamboo. These could make good jewelry or coasters!
(To get it to recognize the shape in the PNG, I had to color it in black and white first. The edges were quite jagged at first because of the pixelation, so I saved out the traced version at a higher resolution before uploading and the final result was smoother).
I think it would actually be really fun to make a cookie cutter but I haven’t figured out how to make the trace feature work in Cookie Caster yet. You could also use a vinyl cutter / craft cutter to make stickers or stencils.
I’m not sure where I got this idea, possibly I made it up! In any case, the “pair programming circle” has turned out to be one of my favorite class activities. It helps students practice working with different partners and in different roles, helps spread individual knowledge around the class in a way that supports the shyer students, and (I think) is quite fun.
Here’s how it works:
Set up pairing stations: one computer for every 2 students. Number or label the stations in some way.
Students are randomly assigned to stations to work on a project in pairs. One student is designated the navigator, one the driver. After a set period of time, the navigator moves to the next station and becomes the driver for that station. The driver stays at the same station and becomes the navigator for a new driver from the previous station.
The computers stay where they are, and the code on that computer is built up by everyone who works at that station. One of my favorite things about this is watching students take a technique they figured out with their partner and teach it to their partner at the next station.
To help keep track of the stations, I wrote a Processing program to randomize pairs and tell everyone when to change stations. I display this on the projector. It looks like this:
Here’s the source code. Install Processing to run. Edit the code to choose the length of time and teacher/student names (the teacher is included in the rotations if there is an odd number of students that day).
I put some thought into the switching order before setting this up. I like having the driver stay and become the navigator because it positions that person as an expert on the latest code who can catch the new driver up. I think it can boost confidence in students who feel less confident about their programming skills, and can help mix up any subtle power dynamics that the group has gotten stuck in. Especially if the teacher ends up in the rotations.
The biggest challenge with this activity is having enough time! I’m still figuring out the best timing for each rotation. I think around 15 minutes is a pretty good start. I set up the pairing stations ahead of time when I can because it’s amazing how much time that can take (takes students a little while to transition into class, understandably…and then there is always some unanticipated technical issue with student computers). The first time I ran this activity, I gave students some starter code and asked them to build on it however they wanted. I forgot to account for the time brainstorming & design take! Now I give them slightly more structured goals for this particular activity. If I had an extra prep day, I might have them do the brainstorming and design during the previous class in preparation for the activity.
I like to play this video to help explain the roles of driver and navigator. I’m still looking for the perfect pair programming video though. I like this one because it’s fun, short, and clear, but I really want to find a few minutes of video of programmers working on some specific code together to model what kinds of things they communicate about as they are working. They don’t show enough of the girls’ project here for that. If any programmers out there would be up for letting me film them during a pairing session to share with my students, please let me know! 🙂
(Side note about the comments on this video: it makes me sad to see peoples’ bizarre and straight-up harmful beliefs about what “coding” is and isn’t. Especially the programmers, who should know better! Scratch is Turing complete y’all!)