Categories
Uncategorized

Twitter Monkey

Twitter Monkey

Behold… the Arduino Powered Twitter Monkey!

The Twitter Monkey is powered by an Arduino and two servo motors. He patiently monitors Twitter for a specified keyword, and when he sees that keyword, he goes bananas, flapping his arms up and down like a maniac. (For his debut at Web414, the keyword is web414.)

Twitter Monkey was made possible with materials from Adafruit Industries and the local Dollar Tree. The code is heavily based on Alertuino code from MCQN Ltd., creator of the Bubblino.

Update: There’s also a video.

Categories
Uncategorized

Wooden Cameras

Photojojo Wooden Camera Gift Set

Did you see this Wooden Camera Gift Set over at Photojojo? It’s pretty damn cute. I mean, a wooden camera…. who would come up with that!?

But wait… I present to you… a Wooden Camera!

This isn’t a “Wooden Camera Gift Set” but it is a “Wooden Camera Gift” because this is the present that my kids gave me for my birthday back in June.

I’m pretty sure they never saw the “Wooden Camera Gift Set” mentioned since: 1. Photojojo mentioned it in October, and 2. They don’t subscribe to the newsletter. Why do they not subscribe? Heck if I know!

This camera is black, which means it’s a “professional camera” and it shows a photo of me from my younger days (possibly taken by senator dingdong) which depicts me shoving something into my face. Probably birthday cake. Also, mine came with a case, which is also black, which means it’s a “professional case” obviously.

Whenever my kids ask what I want for my birthday, I usually respond “Whatever, you don’t have to buy me anything, just make me something!” so I’m glad that they finally did make me something… and, they also made me proud. :)

Categories
Uncategorized

Defending Perl

I stand here today not to condemn Perl, but to defend it… Perl

And when I say “Perl” I want you to feel free to substitute any other language you see fit… Visual Basic, Fortran, Lisp, COBOL, Smalltalk, or even… Java.

I was given a programming assignment this week. Given a list of 2000 names, I was to provide 400 names randomly. (Yes, this was for work, and was a real-world assignment, not just some exercise.) I proceeded to open my ~/scripts folder, which contains well over 1,000 Perl scripts, and grabbed some existing code, and wrote some new code, and ran a few tests, and quickly had the list of 400 names.

I used Perl because it worked for me. I probably could have written in it PHP (as it’s another language I am pretty comfortable with) but since I’m more familiar with Perl, and have done very similar thing before with Perl, and had a gigantic library (nearly 15 years worth) of Perl scripts to pull from… I used Perl.

I’m sure others could tell stories just like this substituting Java, or Python, or Erlang, or whatever they have around, that they are the most familiar with… and that’s fine.

This is about using the appropriate tool for the job, and this case, with the job being performed by me, the tool was Perl.

I wasn’t creating some new framework, or building upon an existing application, or pushing some code to GitHub that I wanted others to collaborate on… it was a quick ‘n dirty task that needed to get done as fast as possible.

Much of the programming world (maybe it’s mostly in the web-programming world) gets hung up on the latest and greatest. There’s a chance that using Ruby someone could have completed this task in half the time… but that person would not have been me, as I’ve spent probably less than an hour using Ruby and I’m not familiar enough with it to bang out the needed code quickly. I’d like to have some time to dig into Ruby (or, whatever, pick a language) and get familiar enough with it to use it effectively, but I don’t know when that will happen.

I’m not even a programmer… I’m a hacker, and I think Perl is a hacker’s language. Make something work. Solve a problem. Do it quickly, and move on.

To some degree you could say I’m trapped in Perl, because it is so easy for me to get what I want done quickly, and yeah, there’s a module for almost everything… Where I mainly feel the pain is when I look for example code and narrow my search to Perl (or PHP) because I’m most familiar with them. I needed some code this week to do some serial port communication, and found only one good example written in Perl. I should probably task myself with re-writing the code in Ruby, or Python, or some other language I’m not as comfortable with as an exercise in forced learning.

And then there’s a part of me that just says “screw it, I’m gonna work with what I know, and get things done, and move on.”

Categories
Uncategorized

Cheap Arduinos (USB)

The last time we looked at Cheap Arduinos we focused on Arduino compatible boards you could put into a project permanently, as long as the project was stand-alone, and didn’t require connection to a computer. (They all used USB-TTL cables/connectors to connect to a host computer for communication/programming. The USB-TTL devices typically cost between $15 and $20, so if you keep one permanently attached to an Arduino, you’ve probably doubled the cost of the project.)

Since the cost of the USB connection seems to be the bulk of what makes an Arduino more expensive, what are our options if we want/need USB on board?

Boarduino
Photo from Adafruit Industries

We’ve previously mentioned the BoArduino from Adafruit Industries (there are two models, one with DC power but no USB, and a USB version.) They just updated the USB BoArduino, and replaced the big USB jack with a mini-USB jack. While this is a kit and needs some assembly and soldering, it’s a very minimal amount.

Adafruit has it for $25.00 + $3.99 shipping. (Occasionally Adafruit offers 10% discounts on kits, so if you’re lucky you could get it for $22.50.)

Pros: Affordable – $25.00, Small, Chip is socketed, “No-Wait” bootloader, USB protection fuse
Cons: A bit more expensive than the other options, Can’t use standard shields

Seeeduino
Photo from Seeed Studio

Seeed Studio Depot has two cheap options for you. The Seeeduino V2.2 has an ATmega328 for $22.50 + $3.02 shipping. If you don’t need the 328, there is also a Seeeduino V2.2 with an ATmega168 chip for just $19.00 + $3.02 shipping. Both have non-socketed chips, but the boards are the standard size to accept shields. Both of these are not kits, but come fully assembled and ready to use out of the box.

Now, a few notes about Seeed Studio Depot. They are based in China (if that matters to you) and the “cheap” shipping option does come with a disclaimer saying “10-30 Days.” There are faster/more expensive options obviously, but we’re going for cheap here, remember? They also offer free shipping world-wide for orders over $50. Unlike most other verndors, they do not seem to offer discounts when you buy in bulk.

Pros: Cheap/Affordable – $19.00-$22.50, Can use standard shields, Assembled
Cons: Chip is not socketed

Freeduino USB complete KIT
Photo from NKC Electronics

You want Freeduino? We have a Freeduino option for you… It’s the “Freeduino USB complete KIT” (catchy name!) and like the BoArduino, you will need to assemble/solder it together, though this one will require a bit more work than the BoArduino. Like the Seeeduino, it’s the standard size to accept shields. A nice fit right between the BoArduino and the Seeeduino.

NKC Electronics has it for $22.99 + $4.75 shipping.

Pros: Affordable – $22.99, Standard size, Chip is socketed, “Fast” bootloader, USB protection fuse, Can use standard shields
Cons: Kit needs to be assembled, Vendor/web site does not seem as “big” as others. (This may not be a con.)

Since we’re talking cheap, our friends at Modern Device have what they are calling “Vintage Italian Arduinos” on sale for $24.95. (It’s actually an older model of the “official” Arduino, the Duemilanove. Not bad for a 100% compatible full-sized real Arduino with USB.

Again, if you are just starting out and getting your first Arduino, you really can’t go wrong getting the Arduino Uno, which costs $30 and comes fully assembled and ready to use. In fact, many vendors offer “starter kits” which include breadboards, sensors, jumpers, books, and other “nice to have” things for beginners.

For projects where you want a cheap Arduino always connected to a host computer via USB, these options may fit the bill. I’ve ordered one of these for a project, and once it arrives I’ll post a bit more info about it.

I also wanted to call out my only “con” for the Freeduino board from NKC Electronics. Vendor/web site does not seem as “big” as others. As noted, this may not be a con. In a future post I’ll talk a bit more about this, and the various places you can get an Arduino from. Until then, keep on hacking!

Categories
Uncategorized

New Office Setup

New Office Setup

I recently replaced my iMac with a Mac Pro, so I figured it was time to rip the entire desk apart and redo it all. I’m still not at the level of those “ultra-clean keyboard, mouse, display and nothing else” desks, but that’s OK, I don’t really want that… those are too damn clean.

So in the photo above you’ll see the Samsung 22″ display, and to the right an Apple 20″ display. I’m still not sure on the placement, and I may swap them. I’d also like to raise them up just a little bit, as I’m used to my displays being slightly higher. I’ve also moved most of the external drives and cabling underneath the desk. (There is a 7 port USB hub behind the monitors, but it’s fairly unobtrusive.)

Also, if you want to compare, here’s the details of my last desk remodel (2009), and the one before that (2008), and before that was the embarrassing cable nightmare of 2007. I’d say things are improving.