ClassicalCode

I make music and write software

Category: Projects

[Video] I Made a $4 Electric Ukulele

While I was home for Christmas, I was watching lots of ukulele videos on Youtube. Somewhere in my wanderings I came across the Risa Uke Solid and my mind was blown. It’s a small electric ukulele made out of a single solid piece of wood and some hardware. The simplicity of the design made me think: “Hey, I could do that” and so I began thinking about how I could make a simple electric ukulele myself. Two days later, with lots of help from my dad and his tools, I have a working electric ukulele made from stuff I found around my parent’s house and a set of $4 ukulele strings. It’s currently fret-less and the pickup leaves a lot to be desired but my goal was really to create a mock-up so that I would know what I was doing when I built the actual thing.

Read the rest of this entry »

Twitter Bot: UkeChord

Edit (May 18, 2012): This bot is now defunct.

I would like to introduce you all to my new creation UkeChord. UkeChord is an automated Twitter robot who will send you ukulele fingerings for any chord you request. Please share your thoughts or improvements in the comments below.

Goal: To offer Ukulele chord fingerings via text message.

Preparation:

  1. Follow Twitter user “ukechord
  2. Configure Twitter to forward direct messages to your phone.

Getting a chord fingering:

  1. Text Twitter (40404) with: “@ukechord” followed by the chord name.
  2. Receive chord fingering.

Below are the chord names it understands. C can be replaced by any note sharp (#) or flat (b):

Chord Notes
C (Root, major 3rd, perfect 5th)
C7 (Root, major 3rd, perfect 5th, minor 7th)
CM7 (Cmaj7) (Root, major 3rd, perfect 5th, major 7th)
C6 (Root, major 3rd, perfect 5th, major 6th)
C9 ([Root], major 3rd, perfect 5th, minor 7th, major 9th)
Cm (Root, minor 3rd, perfect 5th)
Cm7 (Root, minor 3rd, perfect 5th, minor 7th)
Cm6 (Root, minor 3rd, perfect 5th, major 6th)
Cm9 ([Root], minor 3rd, perfect 5th, minor 7th, major 9th)
Cdim (Root, minor 3rd, diminished 5th, diminished 7th)
C5 (Root, perfect 5th)
Csus4 (Root, perfect 4th, perfect 5th)
C7sus4 (Root, perfect 4th, minor 7th)
Caug (C+5) (Root, minor 3rd, augmented 5th)
C7aug (C7+5) (Root, minor 3rd, augmented 5th, diminished 7th)

It may be able to figure out other chords, but it is guaranteed to understand these.

Refresh Cannon

EDIT: Due to an excess of traffic, I have had to take Refresh Cannon off of this page. Please try again later. I am so sorry folks. Feel free to subscribe to the RSS feed. I will post it again when things cool down.

And… were back.

Inspired by the popularity of Refresh Hero, I am continuing in my exploration of the limits of avatar images. Of course the main challenge is developing ways for the user to have meaningful interaction with only their refresh button. The previous game used the element of time in binary fashion: either you got it right, or not. This new game uses time to allow you to adjust two different variables.

Avatar Cannon is the basic trajectory game of angle and velocity. The amount of time you wait before refreshing allows you to adjust these variable and attempt to hit the target. Each time you hit the target a new terrain is generated. The avatar also displays your standing against all other users. A full live high score list is also available.

Finally, if you would prefer to have your score listed next to your nick name, instead of your IP address, you can register here.

If you plan to play, you will get a better response time if you open the image in it’s own window.

Are your digital memories going to be there when you’re old?

I have recently been reading (auto)biographys of famous musicians. (Dietrich Fischer-Dieskau and Gerald Moore) One of the things that makes these books so enjoyable to read is the quotes from letters that they wrote or received. This lead me to consider how the historians of tomorrow will chronicle our lives and interactions. Not only that, how will we remember our own past?

I am sure that we all have a box somewhere of love letters and mementos of the intimate moments in our lives, but increasingly our correspondences are not written down on paper. Perhaps your email client (Outlook, Mail, Thunderbird) saves all your emails and that seems like a good enough way to keep your memories. But what about when you switch to a new mail program/computer/operating system? Will you make an archive copy of these emails so that you can read them when you are old? Do you know how? Its not that easy. And it gets worse. Read the rest of this entry »

Fixed the two major problems with the MAME cabinet

Finally I fixed the last two major flaws with the MAME cabinet!

Problem: The device that connects the arcade buttons to the keyboard port was not recognised as keyboard, and therefore the computer was not listening for input.

Solution: My brother hacked the kernel so that no matter if the keyboard is recognized or not, the computer listens on that port.

Problem: Since my upgrade to Ubuntu Gutsy, xmame would sometimes not reset the resolution when it exited.

Solution: I found the answer here. By adding “; xrandr -s 1024×768″ to the end of the list of options that wahcade passes to xmame, I essentially tell wahcade to run xmame (with my option) and when xmame closes (when I close a game) to reset the resolution with xrandr. So far, it seems to work.

It looks like we are ready for the xmame party just as soon as these holiday’s are over.