Pew Pew Laser Blog

Code. Glass art. Games. Baking. Cats. From Seattle, Washington and various sundry satellite locations.

Live Coding.


Live coding can be a tempting way to fill up time when you're speaking on stage. But it is very well done, live coding is one of the most painful things you can put your audience through. Doing live coding well probably takes more preparation and practice than writing your slides.

However, if you must code live, here are some tips to make things a little smoother:

3D Printer Notes.


I used to be a member at a local maker space (it's since closed) where they had certification classes for their 3D printers. Here are the notes I took during that class, and while working with the printer a half dozen times or so. The shop had MakerBot Replicator2s, and so your mileage may vary for other 3D printers.

The MakerBot Replicator2 uses fused filament or PLA type material. A "voxel" is a 3D pixel; .04mm for this machine. It will overcome a 45° overhang of empty space. The base material is food-safe, but printed things can't be food-safe because they're so porous that they can't reliably be cleaned. You can paint or finish printed things.

Set up:

From the Repbot's menu, choose Utilities, then Level.

  1. Pull out the .09 fin from the level gauge.
  2. Slide the gauge between the Repbot's nozzle and the build plate. Adjust the plate up or down using the screws underneath the plate (directly below the nozzle) until the level slides between nozzle and plate with just a wee bit of friction. The screws release tension on the page; less tension means the plate moves up.
  3. Push Repbot's M button to advance to the next point. Repeat above 2 more times.

It's OK to just set the first 3 points, and then skip the rest of the set-up.


Makerware on the host computer can import .stl or .obj file formats. You can also use an SD card directly in the Repbot.

  1. Choose File > Make it
    • Choose Low, Standard or High. (Higher resolution is slower.)
    • Check or uncheck Rafts (physical "helper" structures that help the printer overcome physical overhangs) and Supports (scaffolding for negative space. These scaffolds are meant to be removed from the item after it's printed.
  2. Check Preview before printing. The preview will show you how long the print will take.
  3. Make It!
  4. In Quality, set the Infill and Number of Shells.

Useful Commands

To customize the infill pattern for your print: Try catfill!


Export: gcode, slices only. In Makerware, File > Make from File. Or just bring it into Makerware.


Other related software:

Where Ideas Come From.


When a writer is asked "where do you get your ideas?", they might answer "Poughkeepsie" flippantly. I've done some speaking over the past year, and I thought that aspiring speakers might be interested in knowing exactly where I got my ideas for talks.

A month or 2 after I'd gotten my Sparkfun Inventor's Kit, I was talking with a non-developer friend who asked how long it took me to get set up. "A few hours", I said, "But now that I've done it, I could probably get someone running in about an hour." At the time, I thought "Is this a good talk idea" about pretty much everything, but it seemed like "From 0 to Nodebots" was a pretty good title. I could share what I had learned in these first stages, and give them a road map to fun with hardware. I gave a 25 minute version of this talk at Seattle JS (my local JS meetup) a few months later, and a 45 minute version at Nodevember 2014 a few months after that.

"Color in the Real World" came from a different place altogether. As I got more and more into blowing glass, I realized that my complete lack of drawing abilities hampered my ability to take "notes" for such a visual medium. I picked up Art Academy - a handheld video "game" that will teach players how to draw. I worked though the lessons from time to time, practicing sketching and learn some interesting things art history and color theory. As I learned about highlight coloring and atmospheric perspective I thought, "these ideas definitely apply on our modern screens". I gave a 15 minute version of this talk at SassConf 2014, and an expanded 30 minute version at CSS Conf AU 2015 just last March.

If you are looking for speaking ideas, try thinking about what you chat about when you talk with your friends and colleagues after work. When you get excited and passionate about something, or you see folks lean forward and nod when you're talking, that's something you should consider speaking about.

Building Community.


Here is a collection of thoughts and resources for building your local technology / development community.

Organizing Conferences & User Groups

Building an online community

CSS Conf AU 2105 Talk Notes.


March was a busy month for me. In addition normal work, curating CascadiaFest (closing the CFP and reviewing all the talks) and various meetups in Seattle, I spoke at CSS Conf AU 2015. I was absolutely gobsmacked to that my talk proposal was selected, and thrilled to present a full-length version of my lightning talk from SassConf. CSS Conf AU was a wonderful conference - my deepest thanks to the entire organizing team who did an excellent job of making the speakers feel welcome and putting on a first class conference for their attendees.

As seems to be my habit when speaking, I had a fairly serious case of the "speaker dumbs" and didn't manage to pay the greatest attention to the other talks. Oh well, here's hoping for the videos to come out! Here are the notes that I took away from CSS Conf AU 2015:

CSS for Humans - Matt Sawkill

4 1/2 Methods for Theming in (S)CSS - Harry Roberts

Newton Meets CSS - Evangelina Ferreira

Delivering Responsibly - Scott Jehl

Fundamentals of Front End Ops - Ian Feather

Bye-Bye Bootstrap Bloat - Fiona Tay

Let's move! - Benjamin De Cock

Building Better Interfaces With SVG - Sara Soueidan

Sara's talk was outstanding. I took so many notes for her talk that it deserves to be broken out in its own post. So I will publish something in the future.

Efficient Web Type, c. 1556 - Kenneth Ormandy

Invisible animation - Steven Fabre

Systems Thinking (Going Out on a Limb) - Claudina Sarahe

A CSS Eulogy - Michael Riethmuller

Clean and Simple - Justin Ouellette

Moving towards web components - Andrew Betts

Open Source Design: A Call to Arms - Una Kravets

Notes On Image Spriting With Compass And Sass.


I found some old notes from the last time I had to sprite some images using Compass for Sass. It was a success, and I noted two things to share with you.

Dice Masters Rainbow Draft Strategies.


A rainbow draft is a nice format for a Dice Masters event. Each player gets to open 12 booster packs (always fun) and choose cards from among the packs that all the players opened. (Details). Players make a tournament-legal team from their drafted cards and any 2 Basic Actions from their collections, and then play some games.

With the draft format, players can't use the deadly Super Rare cards from their collections, so the format tends to be a little more even than fully-constructed tournaments. It's also an excellent way to fill in holes in your card collection. But there are a few strategies to keep in mind: