January 23, 2012

Stubbing class constants with rspec and Ruby

I had some Ruby code that utilized File::SEPARATOR and File::PATH_SEPARATOR to run on both unix and windows, so I wanted to stub these values to test for both platforms. There are couple examples out there, building on each other. This example adds a feature that saves and recalls the former value and this example builds on that to support class constants. Both expect Activerecord, so there’s a little working around that added here. I’m ripping this directly from my spec_helper.rb before I throw it away because it feels over-engineered and complicated.

def with_warnings(flag)
  old_verbose, $VERBOSE = $VERBOSE, flag
  yield
ensure
  $VERBOSE = old_verbose
end

# http://missingbit.blogspot.com/2011/07/stubbing-constants-in-rspec_20.html
def parse_constant(constant)
  source, _, constant_name = constant.to_s.rpartition('::')

  [constantize(source), constant_name]
end

def with_constants(constants, &block)
  saved_constants = {}
  constants.each do |constant, val|
    source_object, const_name = parse_constant(constant)

    saved_constants[constant] = source_object.const_get(const_name)
    with_warnings(nil) {source_object.const_set(const_name, val) }
  end

  begin
    block.call
  ensure
    constants.each do |constant, val|
      source_object, const_name = parse_constant(constant)

      with_warnings(nil) { source_object.const_set(const_name, saved_constants[constant]) }
    end
  end
end
####################

# File activesupport/lib/active_support/inflector/methods.rb, line 209
def constantize(camel_cased_word)
  names = camel_cased_word.split('::')
  names.shift if names.empty? || names.first.empty?

  constant = Object
  names.each do |name|
    constant = constant.const_defined?(name) ? constant.const_get(name) : constant.const_missing(name)
  end
  constant
end

Then you can perform:

  it "does something when running on Windows" do
    with_constants "::File::PATH_SEPARATOR" => ";" do
      # code
    end
  end

January 20, 2012

Snolon wants you to learn Arduino

_DSC8656.JPG

I know you don’t want to disappoint Snolon. Come learn about microcontrollers at our Intro to Arduino Workshop on Tuesday, February 7th at 7 PM.

The workshop will cover the basics of microcontrollers through the Arduino platform. You can learn to make your own happy Snowlon, or any number of other fun, useful, quirky projects. The Arduino platform is versatile and lends itself to many applications, both small and large in scale. 

In the workshop we will go over both the hardware involved in an Arduino board and peripheral electronics as well as the software and programming to make it all work. No previous knowledge or experience in either electronics or programming necessary. The workshop fee ($60) includes two and a half hours of instruction, an Arduino board, and electronic components for the hands-on exercises. All you need to bring is a computer and your exciting project ideas.

To reserve your spot call Metrix Create: Space or stop by our shop on Broadway.

January 19, 2012

The first Intro to Electronics Workshop of 2012!

_DSC8299.JPG

Besides being fun an colorful, resistors are a very useful electronics component found pretty much in every electrically powered device we use. Want to learn how they work? Been itching to trick-out your old phone/toaster oven/lighting fixture?Interested in building your own electronics devices? 

Come to the Intro to Electronics Workshop on Tuesday, January 31 at 7 PM.

You’ll get to learn about voltage and current, diodes, resistors, capacitors, and more. Through building a variety of circuits, you’ll learn how the basic elements of electronics work and interact with each other. You’ll walk away with some very useful knowledge and a box full of components for you to start your own projects.

No previous knowledge or experience necessary. Call Metrix Create: Space to reserve your spot in the workshop or come by to sign up. $50 gets you two and a half hours of instruction and all the materials for the workshop.

My clock. It ticks.

201_0291.MOV, originally uploaded by metrixcreate.

My clock. It ticks.

Laser precision time[pieces]

My GPS-set ticking digital clock

_DSC8253.JPG

Recently, Metrix has lent its tools to some interesting time piece projects. They both use the sky to get their time readings and they both use high-tech fabrication methods, but they couldn’t be more different in their functionality. One [top] is a digital LED clock that is run by a microcontroller and gets GPS readings through a GPS module for its time calibration while the other [bottom] is the newest addition to the ancient tradition of sundials. Read on to learn a bit more about how these timepieces were made…

GPS-set ticking digital clock

My GPS-set ticking digital clock

This clever little device, designed by Andy Filer, brings together the precision of 21st century technology with the best of old-school grandfather clocks-that soothing tick-tock that gently reminds us of time’s passing. Hear it go: http://www.flickr.com/photos/metrixcreate/6682336961/in/photostream

The main components that make this digital clock run are an Arduino board, which executes the code written by Andy, a TTL serial GPS module, so that the clock can set the time according to GPS data, and a relay in order to get the audible ticking sound. The rest of the electronics components are LED displays, resistors for each of the LED segments, a TIP120 darlington transistor to trigger the relay, and some wires. The real magic happens in the code uploaded to the Arduino board. Andy has been generous enough to make the code available at  https://github.com/afiler/AutoClock 

_DSC8213.JPG

For the digital clock enclosure, he used 5mm-thick cherry veneer pieces. The joinery was created through a box-generator software that accounts for the amount of material taken out by the laser and adjusts the width of the tongue-and-groove pattern based on the desired tightness of fit. In Andy’s design, all the joints are press-fit, eliminating the need for messy glues. The laser cut box pieces are finished with tung oil, which gives them a nice polished sheen.

Old-fashioned polar sundial

_DSC8264.JPG

Compared to Andy’s digital clock, this sundial is quite simple in how it “runs”. Align properly and just add sunlight. Its assembly on the other hand was quite the process.

_DSC8209.JPG

It took over 70 piece to put together the sundial and its box, which also serves as its base. All the joinery is pressfit, including the layered elements. Aligning square openings were cut into the pieces that layer, then laser cut pegs were driven through those openings to attach everything tightly without the use of glue. 

_DSC8224.JPG    _DSC8220.JPG

First, the sundial altitude setting hinge is assembled. The sundial is designed to be able to work anywhere in the world.

_DSC8229.JPG    _DSC8267.JPG

_DSC8270.JPG    _DSC8272.JPG

In order to fit all the pieces in the box, a system of sliding joints was devised that allows the larger elements to break down into smaller components.

_DSC8236.JPG    _DSC8237.JPG

The storage box doubles as the base of the sundial. The timepiece attaches to the lid with a sliding joint.

_DSC8233.JPG    _DSC8231.JPG

_DSC8234.JPG    _DSC8245.JPG

The lid is then secured to the rest of the box with a set of dowels that slide into each other and lock.

_DSC8241.JPG    _DSC8243.JPG

The final steps are to place the dial-numbering plates in their slot and to place the assembled dial plate onto the sundial base by sliding it onto the copper shadow-casting plate[gnomon].

_DSC8239.JPG    _DSC8248.JPG

In order to align the sundial properly with the North-South axis, a compass slides out of the box lid and then stows away when not needed.

_DSC8255.JPG    _DSC8268.JPG

All of the sundial components were laser cut from 3mm and 6 mm birch plywood. It took a total of about 110 minutes of laser cutting including numerous test for fit and several re-cuts. All the pieces are finished with several layers of tung oil. This design can easily be scaled down or modified.

Do you have a fun timepiece you’ve been dying to make? Come down to Metrix and take advantage of all the great tools available. Send us and e-mail if you’d like to know more about either of these project or about the services and tools offered at Metrix Create: Space.

January 13, 2012

Treating CSV files like tables in Ruby

Want to do some quick-and-dirty work in irb on data in CSV format? With the arrayfields gem, you can access array fields by name. I’ve mixed in some code to the CSV library to use the header row to provide fields for arrayfields, e.g.:

employees.csv
1 id First Name Last Name Username
2 1 Andrew Filer afiler
3 2 Ulysses Sername username
irb> require "csvtables"
irb> t = CSV::table('employees.csv')
irb> t.first.last_name
=> "Filer"

The code:

require 'arrayfields'
require 'csv'

class CSV
	def self.table(filename, mode='r')
		open(filename, mode).to_table
	end
end

class CSV::Reader
	def to_table
		struct = Array.struct self.first.map { |v| v.downcase.gsub(/\s/, '_').to_sym }
		self.map { |row| struct.new row }
	end
end

January 12, 2012

Downloading All The Github Repositories

I had a need to grab all of the Github repositories for Cookbooks, which is a Github user maintained by the Chef community for collecting many cookbooks in one place for development. All of these cookbooks should be on the Opscode Community site, which is where you should go if you’re browsing for cookbooks to use yourself. But I needed to grep through a large number of cookbooks to develop statistics on Chef Cookbook usage patterns, so I needed All The Things.

#!/usr/bin/env ruby
# 2012-01-11 Bryan McLellan <btm@loftninjas.org>
# Fetch the list of repositories from a Github user and 'git clone' them all

require 'rubygems'
require 'json'
require 'net/http'

url = "http://github.com/api/v2/json/repos/show/cookbooks"
dir = "cookbooks"

if File.basename(Dir.getwd) != dir
 if File.exists?(dir)
   puts "Target directory of '#{dir}' already exists."
   exit 1
 end

 Dir.mkdir(dir)
 Dir.chdir(dir)
end

resp = Net::HTTP.get_response(URI.parse(url))
data = resp.body

result = JSON.parse(data)

result['repositories'].each { |repo|
 puts "Fetching #{repo['url']}"
 system "git clone #{repo['url']}"
}

December 31, 2011

LEARN TO WORK WITH LOGIC

New workshop time!

Prompted by the shop’s collection of 7400-series integrated circuits, I’m going to be teaching a workshop on digital logic design on Saturday, January 14 2011. Digital logic is the sort of thing that makes up a computer at the deepest, darkest level — we’re talking trues and falses, ands, ors, and nots.

You might have used an Arduino to control a simple circuit before, and thought to yourself “there’s got to be a simpler way”. For many things, there is! If you’re triggering a set of operations in a row, or waiting for certain conditions to be satisfied before another action will happen, then a simple digital logic circuit is probably all you need to use.

In this workshop, we’ll be making a few different things, such as a push-on-push-off switch and a bar-graph display. We’ll go over design techniques like truth tables and Karnaugh maps, which let you design logic circuits with just a pencil and paper.

You should be familiar with electronics before taking this workshop. If you’ve taken the Intro to Electronics workshop, you should be all set!

Like all of our workshops, you’ll walk away with some fun things. You’ll get a breadboard and a selection of ICs, LEDs and buttons and a textbook with information on how each and every 7400-series IC works internally.

December 12, 2011

Inkscape Workshop Dec. 13th, 7-9:30

Did you miss November’s Inkscape for the Laser Cutter workshop?
Well good news for you, the next one is happening tomorrow, December 13th, from 7-9:30!! You still have time to make all those amazing gifts and cards before the end of the month!
Learn how to use Inkscape to cut a variety of materials- wood, acrylic, paper, leather & more!
_DSC6558.JPG

Want to make the perfect gingerbread house? Cut it on the laser cutter. (Yes, this has happened!!) The laser cutter is also great for cards and other gifts. (You can still use the laser for cutting out the chassis of your robot too, don’t worry. :) )
Remember, if you can’t make it tomorrow, it’s okay. Contact me for questions regarding individual lessons- allison@sweetium.com

December 06, 2011

Holiday Card Makeshop Dec. 10th, 2-4

Are you looking for an activity that distracts you (or your child) for a couple of hours, is fun and lets you get something AWESOME at the end that you’ve created? Look no further! I will be leading a Holiday Card makeshop this coming Saturday, December 10, from 2-4. Only $25!!!

_DSC8339.JPG

Never been to a makeshop? The idea is simple. Metrix provides the materials and tools, you bring your computer and your brain and I will be there for two hours to help guide you on how to use Inkscape to cut paper for your cards! This is not the in-depth workshop that I normally lead on Inkscape. The point of this is to be creative, and let me help you out if you get stuck. Make as many cards as you have time for!

_DSC8331.JPG

This is great for the whole family! Start your kids early on lasers! Make up to Grandma for all those missing thank-you notes with something handmade!

_DSC8342.JPG

Call Metrix to sign up!

December 04, 2011

Concept Art

This blog has seen a lot of interviews with people working on really neat electronics, coding, building, and DIY projects. It’s the sort of thing that Metrix was created and is now known for. But those aren’t the only things that happen here! I recently got the chance to talk with Ryan DeMita, a video game concept artist who sometimes uses Metrix as an office for working on his artwork. As someone who has been playing video games for years, concept art is something that I’ve always really enjoyed looking at; it was really neat to finally meet someone who makes it for a living!
40+86 Tablet


I started out by asking him what it takes to become a concept artist. “Concept art is weird because it marries illustration and design. There’s no really good education for it.” He told me that normally people either study illustration or design, and don’t go between. Ryan got his degree in industrial design, but also creates fine art. Unlike some people I’ve read about who get into his industry because of their love for video games, he gravitated toward his job because it’s one of the few ways you can be an artist and make a living in a nine to five job (I wish I was in his position!).
Of course when you work so many hours a week illustrating, there’s always a chance for burn-out. To combat this, he brings paints to the shop to work on something more traditional. And because of his design background, he’s used some of the tools (including the laser cutter) for working on personal projects (he’d love an excuse to try to make something out of glass). I asked him if he thought the store was a good place in general for artists as well as makers, and he said absolutely. “Any of the things in the store can be used as an art medium”, he told me. “You can print sculptures, you can cut out reliefs with the laser, or make little toys.”
_DSC7464.JPG
Ryan comes to Metrix twice a week at least, sometimes more. Like others who hang out at the shop, he has a desk at home, but it can be difficult and repetitive to stay at home to work all the time. “The thing that’s cool about Metrix” he said, “is that it doesn’t feel like an office. It’s not work, it’s not home, it’s a nice inbetween.”
I’m glad the store could fit his needs so well! Are you an artist? Stop by and see how creative you can get!
To check out some of Ryan’s work, you can visit his site, ryandemita.blogspot.com.

If you have an interesting project that you’re working on at Metrix, and would like to be featured in the blog, email me- allison@sweetium.com.

(40+86 Tablet photo by bark)

November 28, 2011

November 27, 2011

Intro to Arduino Workshop: Make everyone green with envy

_DSC8278.JPG_DSC8280.JPG

Feel that a regular holiday card this season just isn’t going to cut it? Make a re-programmable board that displays whatever holiday cheer message you give it. Bonus: Program it remotely to show the appropriate messages of well-wishing at all other special occasions.

Feel that all the time you have to spend with your family this holiday season is taking you away from your social media? Make holiday lights that respond to Twitter feeds.

Determined to beat your neighbors in the holiday house decorating contest? Make a multi-blink pattern, GPS timed lighting display that will be the envy of your whole block, and maybe even the next block over. 

All of this is possible with just one tiny microcontroller board: Arduino!

Come to the Intro to Arduino Workshop, this Thursday, December 1 to learn how an Arduino board works and how you can program it for your exciting holiday projects. We will be going over the basics of the board, how to talk to it with your computer, and how to interface it with hardware. All you need to bring to the workshop is yourself and your computer. We’ll provide the Arduino boards and electronics.

What: Intro to Arduino Workshop

When: Thursday, December 1, 7-9PM

Where: Metrix Create: Space

Why: Because you want to make everyone jealous

How: Call or come in to sign up

Cost: $60 [includes instruction time, Arduino board, and electronics components]

November 26, 2011

Intro to Electronics: Make Awesome Gifts Edition

_DSC8276.JPG

Diamonds are so last year. This holiday season give your loved ones real bling and impress them with your electronics know-how. You can make unique, fun, cost-effective gifts and the skills you need for that are just a workshop away.

Come to the Intro to Electronics Workshop this Tuesday, November 29. You will learn basic electronics theory through building circuits and experimenting with common electronics components. You will get a kit of parts that includes everything you need for the workshop as well as to get started on your very own holiday gift projects. 

What: Intro to Electronics Workshop

When: Tuesday, November 29, 7-9PM

Where: Metrix Create: Space

Why: Because you want your gifts to be way cooler than everyone else’s

How: To sign up, call or drop in. 

Cost: $50 [includes instruction time and all materials]

November 25, 2011

November 19, 2011

Making your winter holiday gifts?

Looking for some inspiration? 

Ken Inoue has been making wonderful presents for his loved ones this year using Inkscape, the laser cutter and some aluminum stock from Online Metals in Ballard.   He’s been nice enough to share the files to this smart and simple Tea Warmer on Thingiverse.

We love to see people make awesome things and share them with others. From the beginning at Metrix Create:Space, we have offered a Thingiverse Discount. If you share with the world, we share with you.  Get up to 40% off your laser cut and 3D printed parts by becoming a Member today!

Tea warmer

Tea Warmer

The best time of the year for making something special for your friends and family is right now, what will you make?

November 18, 2011

November 15, 2011

This Sunday: The College of Lockpicking!

You can pick your friends.

You can pick your beer.
But can you pick… a Lock?

Join us on Sunday, November 20th, from 2-4pm, as we embark on an ancient mechanical adventure to explore the inner workings of a modern lock, first developed by the Mesopotamians and Egyptians over 4000 years ago. Led by lockpickers Eric Michaud and Jamie Schwettmann, this workshop will cover - soup to nuts - everything you need to know about how common locks work… and how to pick them open.

Whether you’re a complete novice curious to find out what pin-tumbler really means, a homeowner protecting your family’s treasures, or a veteran lockpicker with questions about advanced locks and techniques, this event is for  you! With 2 solid hours of history, mechanical diagrams (“lock pr0n”), and hands-on lockpicking instruction… first we’ll open your minds, and then we’ll open some locks!

To properly learn this ancient art, you’ll need the proper tools.  By registering for a ticket with a lockpick set, this guarantees you a seat at the workshop, and reserves - all for you - a brand-new 10-piece custom lockpick set by Southern Specialties, hand-picked by Eric and Jamie to maximize utility for beginners and locksport enthusiasts alike, and offered for only $30.

If you already have some picks you’re itching to practice with, you can bring them along, and your workshop cost is only $50!

Register Now!

BONUS:  Metrix members get $10 off a ticket!  (Visit the Metrix member mailing list to get the discount code)

November 11, 2011

Inkscape Workshop Nov. 15, 7-9:30

What does November mean to you? Remembering our Veterans? Celebrating (American) Thanksgiving? Viewing the autumn colors? For many, it’s all these things and also… shopping! Black Friday is of course the infamous day when many people buy all of their Christmas items at once, causing mass hysteria around the country. I want to let you know that it doesn’t have to be that way! While I won’t preach to you about Buy Nothing Day, you can instead sleep during the time you would have spent in line waiting for your favorite store to open at 5AM, and then come down to Metrix and create your presents instead! I will be teaching a workshop next Tuesday, November 15 from 7-9:30 PM all about how to use Inkscape to design cool things to cut out on Metrix’s laser cutter!
_DSC3982.JPG


You may be wondering what sorts of (amazing) gifts you might be able to make, and I’d be happy to give you some examples. The first thing that pops into my mind are holiday cards. I’ve taught some card makeshops in the past, and my students produced amazing, unique cards to give to their loved ones. With the laser, it would be super easy to make a bunch to send to all your friends and family at a fraction of the price of buying cards in the store. And they’d be hand-made! Here’s an example of a card I made for Mother’s Day. Just imagine the flowers as a door wreath (perhaps with green holly, complete with red berries), and you’d have a simple and one of a kind card for winter.
_DSC6038.JPG


Another popular gift is ornaments. Whether for your tree, or just to place and hang around your home as decor, ornaments are a cute gift for close friends and acquaintances alike. Look at this example:
_DSC4265.JPG


And this one:
_DSC4807.JPG
If you want to put a little more time into your gift you could make a mobile, coasters, wall art, wall clocks, custom sewing projects (yes, the laser cuts fabric!), jewelry, and much more! Come to the class and I will give you all the skills you need to make a special something for the special people in your life. Remember! November 15th 7-9:30PM, call ahead to reserve your spot. If you can’t make it, don’t worry! I do private lessons! Email me allison@sweetium.com

November 08, 2011

DARPA Cyber Fast Track: Saturday, Nov 19th - 2PM

DARPA

Put Saturday, November 19th on your Calendar.  At 2PM, Peter Zatko, AKA Mudge, a hacker and Program Manager at DARPA’s innovation program, will be going over their new funding program, Cyber Fast Track here at Metrix Create:Space.  

If you saw the Blackhat Keynote (here’s the video @32:35), or read the Slashdot post about it, you may know that DARPA is looking to get lighter, faster, and cheaper by reaching out to the hackerspace/makerspace communities.   If not, consider this your notice:  

DARPA wants YOU to make cool stuff you were thinking about making already, will FUND you to do it, and you get to keep commercial rights to it.

Come down, find out from the source how this works and see if you should apply for some DARPA dollars.   I know from the projects that I’ve seen at the shop that many of you should be down here for this.

Want to get started early?

DARPA-RA-11-52 

Anyone feel like putting together a cram session before the meeting?  Drop a comment.

October 25, 2011

Intro to Arduino is here again!

IMG_20111024_200654

Want to make a pocket digital translator? Wondering what makes robots do useful or entertaining things?

The answer to all your [technical] curiosities is Arduino!

We are teaching our monthly Intro to Arduino class at Metrix Create: Space

on Broadway, tomorrow

Tuesday, October 25 at 7 PM

We’ll be going over the basics of the hardware of the Arduino board as well as getting into some of the programming necessary to get your Arduino to make fun things happen. 

If you are intrigued but don’t even know what is an Arduino board, it is a programmable mini robotic brain that you can use in all kinds of awesome projects to make things happen your way. 

All you need for the class is your computer and your awesome ideas. We provide the rest.

To sign up give us a call or just come down to our shop.

October 18, 2011

P-Wave Detector Now On GitHub (Open Source)

You can also check out my home P-Wave detector software and hardware howto on building your own detector. If you get it working, shoot me a message and perhaps we could set up a network. I can also probably help you out. The hardware is all off-the-shelf. Heck, you can find it on amazon.

https://github.com/spaceneedle/P-Wave-Detector

Internet Radiation Detector (Now Open Source)

I have decided to publish the code for my internet connected radiation detector located at http://nwrs.net/radiation/

You can find it on GitHub: https://github.com/spaceneedle/Radiation-Detector

Let me know if you end up using it!

October 17, 2011

Thank you for helping us celebrate!

_DSC7883.JPG

Many thanks to all of you who came out to celebrate the Metrix Create:Space 2-Year Anniversary! And those of you who couldn’t make it: Shame on you! You missed out on a seriously fun night of drinking and making.

We know you are all dying to find out who the winners are of the very first

                           Metrix Create:Contest/Tangram Edition

It was rough out here for a Tangram creation, and a few sadly did not survive the judging process (given the somewhat impaired motor skills of our fine judges). But all were nonetheless judged…

…and here are the winners by category (as defined by the judges):

Most Creative (set of clear glass space invaders)

_DSC7838.JPG

Tallest (blown glass bowl)

_DSC7871.JPG

(the creation in the center-Adam)

Most Surprising (Sack of Neon Audience)

_DSC7837.JPG

(Austin)

Simple yet Novel (Gift Certificate)

_DSC7848.JPG

(Terence Tam-creation on right)

Most Intricate (Small blue print)

_DSC7910.JPG

(Terence Tam?)

Most Colorful (set of three ceramic shot glasses-from our newest batch)

_DSC7881.JPG

Best Use of Axial Symmetry (Taco Bell print)

_DSC7911.JPG

All winners please come claim your prizes at Metrix before they get buried under our ever growing pile of things that might be useful someday.

Thanks again for sharing in the fun and we hope to see you all soon at Metrix with some awesome projects!

October 15, 2011

2nd Year Interviews

Metrix’s second year anniversary party is coming up tomorrow (be there at 7)! I thought I would take the opportunity to interview a couple of people close to the shop and get their takes on how Metrix has grown and changed, and a little of where the shop is headed in the future.

The first person I interviewed was Matthew “Wilson” Wilson. A longtime friend of the owner, Matt, Wilson has “been at Metrix before it even existed”. If you’ve ever stopped by the store on Wednesday evenings you’ve probably seen a group of geeks chatting and hacking away. This is Hacknight (which I’ve written about before), and Wilson has been going to these meetings for at least 10 years. It was at one of these Hacknights that the idea of Metrix: Create Space was born.
front counter


According to Wilson, “Matt got the laser cutter, and was trying to figure out what to do with it. He asked everyone what they would do if they had a laser cutter, and they all said something different. So he decided to start Metrix”. And here we are, two years later! I’ve asked him what he thinks has changed the most over time. He told me that there’s more space, more tools, and an interesting community has formed around the shop. And yet, he said, “everybody is still cool. Still friendly and helpful. This is a good place to come if you’re working on something and you need help or inspiration or are just stuck for whatever reason. You can come down here and get unstuck.”

Those were also some of the reasons that he thinks makes Metrix special. He said it was a safe environment where awesome projects happened. He cited the Clonedels as one of the coolest projects to come out of the shop, but also mentioned one project that never got finished (so you may not have heard about it). A few months ago several people got together to try to turn the giant CNC router in the back into a 3D printer. Unfortunately it eventually ran into some problems, and the project had to be halted. “It didn’t matter that it didn’t work, it was just so audacious”, he told me. People at Metrix have neat ideas and try to make them happen, usually no matter the odds.
tour starts here
I also chatted a bit with Plamena, the store’s newest employee. Since she interacts with many people who stop by, I asked her what newcomers are generally most surprised by. “People are really shocked that you don’t have to be a member. The fact that you can sit here, and it doesn’t cost you anything.” Most places of this sort operate on a membership only basis, and that’s actually what she thought Metrix would be like before she stopped by for the first time. She was looking to use a laser cutter, and found the place through the Internet. Since she started working there four months ago, she’s gotten to use all of the tools (I’m jealous!), and has “met tons of cool new people”.
the main
I asked her what she thought the future of Metrix would be like. She said that she thinks the shop is going to become a much more fabrication oriented place, rather than just mainly electronics and robotics. “Some of the recent tools that we’ve acquired are allowing us to experiment with materials, various methods of production, and pushing new ideas of fabrication forward.” She’s been trying to push that experimentation with materials, and “taking things that are standard and using them, applying them in nonstandard ways.” Plamena thinks that fashion and industrial designers are seeing Metrix as a place that helps them realize their creative ideas.
I’m so glad that Metrix has survived its second year! Not only has it allowed me to create things I never thought would be possible, there are new people every day discovering its amazing-ness. Here’s to another (at least!) two years!

Metrix 2-Year Anniversary - Create:Contest

_DSC7811.JPG

Besides commemorating our 2-Year Anniversary with a range of apple beverages, we will be holding the very first

                        Metrix Create:Contest / 3D Tangram Edition

Contest Rules:

  • each entry must use at least one 3D Tangram kit; no maximum limit
  • unlimited number of entries per person
  • each entry can win only in one category
  • $4 per kit
  • winners do not have to be present at time of judging; contestants must label creations and leave contact information if leaving before judging
  • judges will not be employees of Metrix Create: Space

Categories (subject to change at judges’ discretion):

Most Creative

Tallest

Most Surprising

Simplest yet Novel

And now the best part…

PRIZES!!

Set of Custom Cast Glass Space Invaders

_DSC7777.JPG

These awesome glass space invaders have a nice weighty feel to them and combine digital and analog fabrication methods developed right here at Metrix.

One of a Kind Ceramic Shotglass

_DSC7781.JPG

You can own one of 10 unique shotglasses that combine centuries old techniques of ceramic casting and hand glazing with cutting edge 3D digital design and production methods. 

Signed photograph by Matt Westervelt: high quality print on canvas              (5 small and 1 large)

_DSC7784.JPG

Matt owns many fancy cameras and he knows how to use them WELL. These are well worth getting creative with some cardboard geometric pieces.

$25 Metrix Create: Space Gift Certificates (2)

_DSC7785.JPG

The possibilities are endless! Some ways you can use your certificate:

  • 3D print a miniature replica of yourself
  • laser cut a likeness of your favorite constellation 
  • buy enough LEDS and electronics components to spell out your name in lights in your entryway
  • embroider 2.5 hours worth of patches stating your various opinions
  • make an epic sculpture for your private neon audience (see below)

Sack of Neon Audience

_DSC7796.JPG

Whether you have visions of grandeur or like your quiet time, the Sack of Neon Audience provides you with the silent adulation everyone needs sometimes. Carry it around with you and assemble as needed anywhere anytime.

Ten Tangram Kits

_DSC7788.JPG

Make a monster Tangram creation.

Don’t miss out on all the fun! Come down to Metrix Create: Space and help us celebrate. 

Saturday, October 15, 7 PM until….

October 11, 2011

Two Years of Making

poured shots

Metrix Create:Space opened up two years ago this Saturday.   To commemorate the event, we are throwing a party.   Just like last year, we are shutting off the laser, cutting power to the kiln and breaking out the booze.  Safety is important.

Show up at 7 to get first crack at the cider and join the Create:Contest.  There will be prizes…

10/15 Saturday night. 7pm through Midnight.

Metrix Create:Space
623 Broadway E
Seattle, 98102 

October 07, 2011

Getting our Ducks in a Row

_DSC7493.JPG

Many of you who have come into Metrix over the last few months have wondered about the ducks. As this post unfolds, it will uncover the story of the Metrix ducks, so read on…

The concept behind our army of ducks is to have a single object as a sample of the various production and fabrication methods we offer at Metrix Create: Space. Using the same object allows for easy comparisons of texture, flexibility, strength, production time, and material characteristics such as shrink rates.

First things first: In order to do 3D production, you need a 3D model. I found a STL of a rubber ducky and modified it a bit. You can find the final file as well as the 3D files for the molds discussed below at the following link:

http://www.thingiverse.com/thing:12224

The files are scaled to produce a duck that fits into a cube that is about 2x2x2 inches. The mold files take the original duck 3D file and build a box around it that is thick enough to account for the strength of the material from which it will be produced.

The original duck:

_DSC7609.JPG

The first ducky is printed in powder on a ZCorp Z400 powder printer. We use hydroperm for the powder material, which is a mix of plaster of paris, portland cement, and silica. It behaves like plaster. The binder used to fuse together the layers of powder in the printer build bed is a mixture of water and alcohol. The duck is solid throughout and takes a little under 2 hours to print.

_DSC7611.JPG

Because the powder material tends to be brittle and pretty fragile, printed objects can be dipped in paraffin, which infuses the top layers and makes the objects stronger. The light gray tint to the duck above is due to the paraffin infusion.

_DSC7612.JPG

We also printed a ducky on our MakerBot. This one is printed in ABS. The horizontal striation is a product of the way the machine lays down and layers the extruded plastic. The ABS ducky is very durable, waterproof, and lightweight. It takes the same amount of time to print as the powder one; a little under 2 hours.

The great thing about powder printed objects is that they behave like plaster cast object, which makes them excellent for making molds for ceramic slip casting.

_DSC7622.JPG

The casting process starts with a two part powder printed mold. It has to be made in two parts because of the complex curvature of the object we are casting. Being able to pull the mold apart allows for the object to be pulled out as one piece. The two parts of the mold come together, as aligned by the circular registration marks. Then the casting material is poured through the opening in the mold. The mold above is actually shown upside down. The pour hole is at the top so the ducky gets cast upside down.

_DSC7621.JPG

This is one of the actual printed molds we used to slip cast some ducks. it took 4.5 hours to print. The large funnel at the opening facilitates pouring the casting material. The initial casting tests we did were with clay slip. This method of casting is a standard one in ceramics. Clay is mixed with water to make it liquid enough to pour into a mold. The porous plaster, or in our case hydroperm, absorbs the moisture from the clay slip, pulling the solid clay particles against the walls of the mold. As more of the moisture is sucked out, the cast object starts to separate from the walls of the mold. At that point the mold can be pulled apart and the object extracted. The resulting ducks are hollow and vary in wall thickness based on how long the slip was allowed to sit in the mold before some of it was poured back out. Each duck pour was allowed to sit between 10 and 30 minutes before pouring the left over clay slip out of the mold. 

_DSC7613.JPG

These are some of the resulting ceramic ducks. Once a slip cast duck is pulled out of the mold, it sits for a few days in order to lose more of the water still contained in the clay. Once it is sufficiently dry, it goes in the kiln to be fired at Cone 4 temperatures. This process takes about 7.5 hours and is called the bisque stage of the ceramic object. Once it comes out, a bisqued duck is bright white and can be glazed with just a clear overglaze, like the white duck on the left or it can be painted with various color glazes and then covered in overglaze. Once the glazes dry, each duck goes back in the kiln to be fired for 8.5 hours at Cone 6 temperatures, which completes the ceramic ducky process. The ducks that come out are waterproof, fairly durable, and vary in weight based on their wall thickness. Each duck loses about 18-20% of its original size in the drying and firing process.

Using different glazes and layering them produces some pretty fancy results.

_DSC7614.JPG

We had the opportunity to also slip cast with porcelain slip, which produced a lightweight, very durable duck with a light gray tint. After firing it, even before glazing, this porcelain has a smooth, satin finish to it.

_DSC7615.JPG

After the porcelain firing process is complete, the duck loses 25-30% in its size due to shrinkage.

Once we started casting, we figured we would use our molds for casting some non-ceramic materials.

_DSC7616.JPG

In order to cast a urethane rubber ducky, the mold had to be dipped in wax multiple times. It’s good to space the wax dips so that the wax layers, rather than just getting absorbed by the hydroperm. The thicker the wax layer inside the mold, the easier the urethane object will release from the mold. Also, it will have a smoother texture. This urethane rubber duck is durable and quite bouncy. It sets in about 24 hours and reaches its full curing cycle in 48 hours.

We also did a silicone cast version.

_DSC7617.JPG

We used Smooth-On DragonSkin, which is a platinum grade silicone and takes 3-4 hours to set fully. It’s strong and highly heat resistant. It is also very flexible and has a nice translucent quality. Thoroughly waxing the mold for the silicone cast is also recommended. It doesn’t so much affect the release, which is very easy due to the nature of this silicone product, but rather makes for a nicer surface texture.

Next we thought we’d try casting glass. It took a few tries to get that process right. We had to produce a fully enclosed version of the duck mold because the glass leaked out of the two-part mold once it melted in the kiln. The glass casting process is a bit different since we start with a solid state product. The trick is to weigh out the right amount of glass pieces to fill the volume of the duck. We fit all the pieces in the funnel part of the mold and everything gets placed in the kiln. The firing happens at Cone 10 temperatures. It takes about 20 hours for the whole process during which the glass is melted and flows into the mold. Once it cools off, the fired hydroperm of the mold breaks away very easily, revealing the glass duck.

_DSC7619.JPG

The texture of the mold gives a stippled quality to the surface of the glass ducks. This can be left as it is or filed to a smoother finish.

So there you have it! Hopefully our ducks will inspire you to make some fun things of your own. Want to cast something we haven’t done? Bring your material in and we’ll give it a try.

Stay tuned for more ducks to come. 

If you have any questions about any of our processes or materials used feel free to come in and ask :)

September 30, 2011

Seattle Earthquake Early Warning Detector Now Online

You have probably heard all about the Japan Earthquake Early Warning System system. If not, the prior link has a great article on the subject. Unfortunately, the United States has nothing like this. It might be coming soon, but in the meantime, we are all flying blind here.

After the Japanese earthquake, I begin to look around for some equipment to do the same. I first turned to a company called Seismic Warning Systems, who has yet to return any of my inquires to purchase hardware. So, I had to set my sights a little lower for the commonly available Quake Alarm. After connecting it to an Arduino, writing a python script, and scanning for the first sign of a P-Wave, and filtering out local vibrations, I am proud to say that we have not seen one false positive! We have not had an earthquake to test with, but after simulating a P-Wave by slowly oscillating an exterior wall, I am quite certain that it will work just fine.

Originally, the system used an iPhone app to push notifications at the moment a quake was detected. It turns out, the Apple notification system has very, very low latency, ranging from 0 to 2 seconds (Up to 2 seconds if the device display is off in standby mode). I wrote a nice little app to provide notifications, but this proved to be not ideal. First, I would have to deal with the AppStore approval and maintenance of an application, and second, I would be leaving out a chunk of users.

The system I have put online uses traditional SMS notifications through an SMS aggregator I use. The delay is usually very low, so its a close second to iPhone alerts. I have had a few folks on this system testing it, and I think I am ready to open this up for anyone else interested.

If you want quake early warnings, visit this link to sign up.

Note that this thing isn’t going to go off with one of those little quakes, but you may see notifications on 5.0 and larger. You know, the ones you might want a little warning before hand.

Since I only have one sensor (anyone else want to put one up?), I cannot provide estimated arrival time, intensity, and likelyhood of advance notice. If the quake happens close to you, but far from my sensor, you may not see any advanced warning.

UPDATE Oct 17, 2011: Software and hardware guide now on GitHub! https://github.com/spaceneedle/P-Wave-Detector

Mod Your Plush Makeshop POSTPONED

Unfortunately due to a number of factors beyond our control (apartment upheaval; extended family funeral) this Makeshop is POSTPONED.  Watch for it closer to the Winter Solstice holidays, and keep thinking of new and different things to do to improve on your stuffies!

Mod Your Plush Makeshop

Thursday October 6th 7pm to 9pm

Metrix 623A Broadway East  Seattle WA 98102

$25 with all materials, guidance, and inspiration included!

A July 4th 2011 Radiation Anomaly

After the Japan earthquake, there were (unsubstantiated) fears of radioactive clouds engulfing the west coast. Since I did have a SparkFun USB Geiger Counter laying about, I figured it would be a fun project to set up a monitoring station and post results to a web page with graphs. The Geiger counter is sitting on the table, indoors, facing the exterior corner of the house, perpendicular to the ground, with the Puget Sound about 1000 feet in that direction. There couldn’t be a worse location.

But some really, really boring data collection ensued. *yawn* 9 counts per minute, 7 counts per minute, 5 counts per minute. I’m glad to know the Ikea table wasn’t radioactive, but it was very boring to watch. Lacking any radioactive sources to play with, I just ended up leaving it on the desk collecting data continuously since March 25th 2011. Over the next few months, it was completely flat. No up trending. Nothing.

Fast forward to the end of September, I was investigating what I thought was an unusual cpm event between 30-50 CPM on late August, when I did this ‘grep’ command:

$ grep "] 40" radlog.txt
[Mon Jul 4 07:45:24 2011.1309790724.28] 400
[Mon Aug 1 15:46:59 2011.1312238819.67] 40
[Fri Aug 26 18:18:09 2011.1314407889.55] 40

Oh crap!? What the heck? 400 counts per minute? The warning threshold in Colorado on Radiation Network is 100 CPM, and mine is near sea level indoors in suburban Seattle!

Here is a dump of the log file:

[Mon Jul 4 06:53:32 2011.1309787612.03] 6
[Mon Jul 4 06:54:33 2011.1309787673.27] 14
[Mon Jul 4 06:55:34 2011.1309787734.47] 16
[Mon Jul 4 06:56:35 2011.1309787795.05] 7
[Mon Jul 4 06:57:36 2011.1309787856.5] 13
[Mon Jul 4 06:58:37 2011.1309787917.82] 12
[Mon Jul 4 06:59:38 2011.1309787978.8] 8
[Mon Jul 4 07:00:39 2011.1309788039.19] 7
[Mon Jul 4 07:01:40 2011.1309788100.16] 11
[Mon Jul 4 07:02:41 2011.1309788161.26] 11
[Mon Jul 4 07:03:42 2011.1309788222.31] 17
[Mon Jul 4 07:04:43 2011.1309788283.22] 13
[Mon Jul 4 07:05:44 2011.1309788344.34] 11
[Mon Jul 4 07:06:45 2011.1309788405.6] 17
[Mon Jul 4 07:07:46 2011.1309788466.7] 11
[Mon Jul 4 07:08:47 2011.1309788527.86] 13
[Mon Jul 4 07:09:48 2011.1309788589.0] 13
[Mon Jul 4 07:10:50 2011.1309788650.27] 9
[Mon Jul 4 07:11:51 2011.1309788711.27] 10
[Mon Jul 4 07:12:52 2011.1309788772.98] 17
[Mon Jul 4 07:13:53 2011.1309788833.7] 14
[Mon Jul 4 07:14:54 2011.1309788894.11] 14
[Mon Jul 4 07:15:55 2011.1309788955.3] 19
[Mon Jul 4 07:16:56 2011.1309789016.31] 16
[Mon Jul 4 07:17:57 2011.1309789077.85] 10
[Mon Jul 4 07:18:58 2011.1309789138.29] 10
[Mon Jul 4 07:19:59 2011.1309789199.2] 19
[Mon Jul 4 07:21:00 2011.1309789260.91] 15
[Mon Jul 4 07:22:01 2011.1309789321.99] 20
[Mon Jul 4 07:23:02 2011.1309789382.3] 21
[Mon Jul 4 07:24:03 2011.1309789443.33] 35
[Mon Jul 4 07:25:04 2011.1309789504.1] 27
[Mon Jul 4 07:26:05 2011.1309789565.37] 33
[Mon Jul 4 07:27:06 2011.1309789626.8] 23
[Mon Jul 4 07:28:07 2011.1309789687.42] 36
[Mon Jul 4 07:29:08 2011.1309789748.3] 45
[Mon Jul 4 07:30:09 2011.1309789809.0] 238
[Mon Jul 4 07:31:10 2011.1309789870.97] 212
[Mon Jul 4 07:32:11 2011.1309789931.35] 75
[Mon Jul 4 07:33:12 2011.1309789992.2] 81
[Mon Jul 4 07:34:13 2011.1309790053.93] 207
[Mon Jul 4 07:35:14 2011.1309790114.54] 205
[Mon Jul 4 07:36:15 2011.1309790175.05] 119
[Mon Jul 4 07:37:16 2011.1309790236.44] 229
[Mon Jul 4 07:38:17 2011.1309790297.45] 229
[Mon Jul 4 07:39:18 2011.1309790358.02] 322
[Mon Jul 4 07:40:19 2011.1309790419.33] 203
[Mon Jul 4 07:41:20 2011.1309790480.06] 92
[Mon Jul 4 07:42:21 2011.1309790541.24] 114
[Mon Jul 4 07:43:22 2011.1309790602.27] 258
[Mon Jul 4 07:44:23 2011.1309790663.04] 298
[Mon Jul 4 07:45:24 2011.1309790724.28] 400
[Mon Jul 4 07:46:25 2011.1309790785.02] 49
[Mon Jul 4 07:47:26 2011.1309790846.14] 229
[Mon Jul 4 07:48:27 2011.1309790907.77] 457
[Mon Jul 4 07:49:28 2011.1309790968.03] 192
[Mon Jul 4 07:50:29 2011.1309791029.48] 211
[Mon Jul 4 07:51:30 2011.1309791090.57] 384
[Mon Jul 4 07:52:31 2011.1309791151.94] 100
[Mon Jul 4 07:53:32 2011.1309791212.64] 175
[Mon Jul 4 07:54:33 2011.1309791273.01] 269
[Mon Jul 4 07:55:34 2011.1309791334.19] 150
[Mon Jul 4 07:56:35 2011.1309791395.37] 101
[Mon Jul 4 07:57:36 2011.1309791456.16] 118
[Mon Jul 4 07:58:37 2011.1309791517.03] 385
[Mon Jul 4 07:59:38 2011.1309791578.68] 705
[Mon Jul 4 08:00:39 2011.1309791639.44] 496
[Mon Jul 4 08:01:40 2011.1309791700.8] 89
[Mon Jul 4 08:02:41 2011.1309791761.26] 84
[Mon Jul 4 08:03:42 2011.1309791822.78] 20
[Mon Jul 4 08:04:43 2011.1309791883.46] 16
[Mon Jul 4 08:05:44 2011.1309791944.6] 13
[Mon Jul 4 08:06:45 2011.1309792005.46] 14
[Mon Jul 4 08:07:46 2011.1309792066.03] 16
[Mon Jul 4 08:08:47 2011.1309792127.57] 13
[Mon Jul 4 08:09:48 2011.1309792188.87] 26
[Mon Jul 4 08:10:49 2011.1309792249.96] 31
[Mon Jul 4 08:11:50 2011.1309792310.28] 33
[Mon Jul 4 08:12:51 2011.1309792371.12] 12
[Mon Jul 4 08:13:52 2011.1309792432.0] 25
[Mon Jul 4 08:14:53 2011.1309792493.3] 7
[Mon Jul 4 08:15:54 2011.1309792554.22] 16
[Mon Jul 4 08:16:55 2011.1309792615.91] 15
[Mon Jul 4 08:17:56 2011.1309792676.99] 19
[Mon Jul 4 08:18:57 2011.1309792737.47] 10
[Mon Jul 4 08:19:58 2011.1309792798.71] 7
[Mon Jul 4 08:20:59 2011.1309792859.04] 17
[Mon Jul 4 08:22:00 2011.1309792920.0] 13
[Mon Jul 4 08:23:01 2011.1309792981.52] 17
[Mon Jul 4 08:24:02 2011.1309793042.13] 16
[Mon Jul 4 08:25:03 2011.1309793103.18] 9
[Mon Jul 4 08:26:04 2011.1309793164.73] 21
[Mon Jul 4 08:27:05 2011.1309793225.54] 22
[Mon Jul 4 08:28:06 2011.1309793286.1] 10
[Mon Jul 4 08:29:07 2011.1309793347.07] 14
[Mon Jul 4 08:30:08 2011.1309793408.19] 9
[Mon Jul 4 08:31:09 2011.1309793469.99] 14
[Mon Jul 4 08:32:10 2011.1309793530.59] 14
[Mon Jul 4 08:33:11 2011.1309793591.35] 14
[Mon Jul 4 08:34:12 2011.1309793652.16] 13
[Mon Jul 4 08:35:13 2011.1309793713.18] 25
[Mon Jul 4 08:36:14 2011.1309793774.96] 31
[Mon Jul 4 08:37:15 2011.1309793835.77] 26
[Mon Jul 4 08:38:16 2011.1309793896.35] 14
[Mon Jul 4 08:39:17 2011.1309793957.17] 15
[Mon Jul 4 08:40:18 2011.1309794018.79] 9
[Mon Jul 4 08:41:19 2011.1309794079.26] 11
[Mon Jul 4 08:42:20 2011.1309794140.97] 19
[Mon Jul 4 08:43:21 2011.1309794201.17] 17
[Mon Jul 4 08:44:22 2011.1309794262.18] 48
[Mon Jul 4 08:45:23 2011.1309794323.23] 43
[Mon Jul 4 08:46:24 2011.1309794384.21] 28
[Mon Jul 4 08:47:25 2011.1309794445.2] 26
[Mon Jul 4 08:48:26 2011.1309794506.02] 19
[Mon Jul 4 08:49:27 2011.1309794567.07] 18
[Mon Jul 4 08:50:28 2011.1309794628.0] 24
[Mon Jul 4 08:51:29 2011.1309794689.08] 137
[Mon Jul 4 08:52:30 2011.1309794750.0] 93
[Mon Jul 4 08:53:31 2011.1309794811.71] 261
[Mon Jul 4 08:54:32 2011.1309794872.74] 210
[Mon Jul 4 08:55:33 2011.1309794933.04] 67
[Mon Jul 4 08:56:34 2011.1309794994.88] 106
[Mon Jul 4 08:57:35 2011.1309795055.44] 86
[Mon Jul 4 08:58:36 2011.1309795116.47] 48
[Mon Jul 4 08:59:37 2011.1309795177.51] 60
[Mon Jul 4 09:00:38 2011.1309795239.0] 14
[Mon Jul 4 09:01:39 2011.1309795299.71] 7
[Mon Jul 4 09:02:40 2011.1309795360.44] 13
[Mon Jul 4 09:03:41 2011.1309795421.72] 11
[Mon Jul 4 09:04:42 2011.1309795482.01] 13
[Mon Jul 4 09:05:43 2011.1309795543.8] 10
[Mon Jul 4 09:06:44 2011.1309795604.08] 16
[Mon Jul 4 09:07:45 2011.1309795665.94] 11
[Mon Jul 4 09:08:46 2011.1309795726.54] 11

Click here for my giant 2328×1280 graph.

That’s right! We hit a 705 CPM here, indoors, near sea level, with no circulating outdoor air, while everyone was sleeping, which is almost 100 times the normal level in my house. It was a beautiful day, no rain. All times are in PDT. Did I catch some cosmic burst from space? A radioactive bug? Some uranium dust? Sensor error? Can anyone guess what happened here?

September 26, 2011

September 25, 2011

Everybody loves robots part 2

Awesome things you can do with your Arduino driven robot:

1. Connect it to the internet, get visual feedback from it, and control it through your computer or phone.

http://www.youtube.com/watch?v=HsvqQ5h7QMY&feature=player_embedded

2. Attach a Wii nunchuck to it.

http://www.youtube.com/watch?v=Qlukl5fLi7s&feature=player_embedded

3. Or make it remote controlled.

4. Make your robot detect obstacles and change its trajectory based on them by adding wire “whiskers” or an IR/distance sensor to your robot.

Learn how to get started at the Intro to Arduino workshop, Tuesday September 27th, 7-9 PM (repeated every month).

September 24, 2011

September 19, 2011

September 15, 2011

Everybody loves robots!

Making your very own servo robot is only a workshop away. Did you always want to make awesome things with microcontrollers but thought it might be too complicated or didn’t know where to start? No idea what a microcontroller does but like the shiny robot in the picture?

Come to the Intro to Arduino workshop, Tuesday, September 27th, 7-9 PM.

You’ll get your very own Arduino board and all the instruction you need to make your very own programmable robot.

Think this might be too complicated? Check out the simple parts list for the robot. You can get most of them from your local hardware store:

Best part about taking our workshop: We have a laser cutter and all kinds of fancy acrylic so you can make super snazzy custom parts for your robot.

Are you a great programmer but are intimidated by the electronics part? Don’t be! You can create robots and other projects with very basic electronics and no need for soldering.

Does the programming part of this seem scary? We will help you get started. Only minimal programming is needed to make your robot go.

Stay tuned for ways you can expand your robot’s capabilities.

This project was borrowed from oomlout on Instructables http://www.instructables.com/id/How-to-Make-an-Arduino-Controlled-Servo-Robot-SER/

September 14, 2011

Resistors, Capacitors, Integrated Circuits, oh my!

Want to know how to turn this:

into your very own cool light fixture…

or a super sneaky spy robot?

Come to the Basic Electronics workshop, Tuesday, September 20th, 7-9 PM

You’ll get the foundation in electronics that will get you started on your path to all kinds of awesome projects. With a few basic, cheap components you can create the beautiful light fixture above or start making that cool robot you always wished you had so that you wouldn’t have to dress yourself in the morning. 

The workshop will go over a number of basic electronics concepts through hands on projects and circuit building. We’ll provide the materials, you just need to bring you awesome ideas.

September 12, 2011

Lightroom Lua Shell

I’ve just written a quick lua shell plugin for Lightroom, mostly to help me write other plugins, but I think it will also be an easy way to manipulate photo metadata. Writing it was pretty easy, though my one frustration was that the Lightroom plugin API does not appear to provide a way to make scrollable dialogs, so the output view will fill up and have to be cleared. The famous Lightroom plugin writer Jeffrey Friedl appears to have solved this by writing his own scrollbar widgets, so I may have to do that eventually.

To get the code/plugin (I’ve left the Lua uncompiled), head to https://github.com/afiler/luashell.lrdevplugin.

Pre-loaded extras provided in the shell environment include:

  • catalog => LrApplication.activeCatalog()
  • target => LrApplication.activeCatalog():getTargetPhoto()
  • targets => LrApplication.activeCatalog():getTargetPhotos()

Of course, you can still call import() just as you would inside a plugin.

Note that commands that would normally need to be called asynchronously (within an LrTask) are silently wrapped, so that:
x = target:getRawMetadata(‘fileSize’)
becomes:
LrTasks.startAsyncTask(function() x = target:getRawMetadata(‘fileSize’)) end)
Note that in the result window, normal return values are prefixed by “->”, while asynchronous return values are prefixed by “=>”.

September 11, 2011

Sunset, Poland, near the Ukranian border


I found this photo by Panoramio user bajtomir on Google Maps.

September 09, 2011

Ruby: including class methods as if they were a module

Ruby’s File class has many public class methods named like their shell command counterparts, like chmod, chown, basename, stat, etc. These are very convenient when writing a shell script in Ruby, but typing “File.chown” isn’t as convenient as just “chown”. Now, if File were a module, I could include this module and I’d be done. Many file-related methods are available in the module FileUtil (third-party in Ruby 1.8, standard in Ruby 1.9) as well as FileTest. Methods like basename and stat are available in neither, so I thought a quick solution might be to also include File’s class methods. There doesn’t seem to be any straightforward way to do this, perhaps because File may be one of the few classes with so many static methods that don’t come from a module. So, a quick, dirty, Ruby metaprogramming solution:

def include_class_methods(klass)
  eval -EOF
    class  self
      klass = eval('#{klass.name}')
      klass.singleton_methods.each do |sym|
        define_method(sym) do |*args|
          klass.send sym, *args
        end
      end
    end
  EOF
end

Note: this doesn't seem to work in Ruby 1.9, as File.singleton_methods is empty. One possible replacement for File.singleton_methods is (File.public_methods - File.public_instance_methods - File.ancestors.reject { |x| x == File }.map { |x| x.methods }.flatten). Yeesh.

September 03, 2011

Open 7400 Logic Competition and the Logic Counter at Metrix

7400

Dangerous Prototypes just announced their Open 7400 Logic Competition, and it just so happens that Metrix Create:Space has recently acquired more logic than Vulcan.

We’ve been sorting and cataloging what we have over the past week and putting it on the LogicCounter wiki page.   

Are you working on a project?  Do you want to win prizes and fame on the Internets? Come on down and make something awesome!

My new internet radio



My new internet radio, originally uploaded by afiler.

It has knobs like a real radio, but yet it plays modern radio stations. There’s no screen yet, but one is coming.

I use an Arduino to connect the switches and selector knob to the computer inside, and it uses mpd (the music player daemon) to tune through a playlist of internet radio stations. Code for that is at github.com/afiler/filko.