I am here in Salt Lake City. Chilling at the library because it is a beautiful building and neatly downtown. In the auditorium I can see they have the projector working.
Archive for the ‘Uncategorized’ Category
Mountain West Ruby Conf Day -1
Friday, March 13th, 2009Behavior Driven Behavior Driven Development
Wednesday, March 4th, 2009Like all true CS aficionados I have a thing for recursively applying layers of abstractions on top of themselves. Makes for interesting stories.
I have been using much more javascript than I ever thought I would. And, I like it for the most part. But, there is this niggly feeling in the back of my head because I’ve been doing so without a snuggly net of tests. Or even specs.
I looked at jsunit, jsspec and Screw.Unit. But, I didn’t really like the way they worked. So, in the usual way of things. I started on my own.
The first thing I didn’t like about the frameworks when I started looking at them was that they tried to avoid adding things to Object.prototype
. Which makes it more difficult to do rspec style expectations like(ruby not js)
"foo".should include('oo')
because should is not available to “foo”
mostly, they get around this by using wrapper functions.
expect("foo").to(include("oo")
and
value_of("foo").should(include("oo"))
when what I want is
"foo".should("include","oo")
It is silly, I know but I got use to rspec and I want my javascript specs to be as free of line noise. Hanging stuff off of Object.prototype is the easy way to do this, but it can break things. Mostly for (… in … ) loops. Arguably, you shouldn’t use those for much anyway. They are dangerous in some circumstances. That’s mostly an opinion thing, though.
The other problem I had was finding coherent documentation. All of the js testing frameworks have fairly good documentation, but I had some trouble figuring out what was the most current practice. Some jsspec looks a lot like what I am looking to do. But now I have started, and it is an interesting project.
The project I am using it for is a gomoku game, maybe backed up by sinatra at some point, but for now it is just js.
I am planning on posting some code later, right now it doesn’t even have setup hooks.
Mountain West Ruby Conference
Wednesday, March 4th, 2009Too Many Drafts
Monday, March 2nd, 2009One of guidelines I have been sticking to in my newly reborn blogging adventure is to avoid using drafts where possible.
Honestly I don’t know what I have against drafts, except that I have this pile of them from when I was in Japan, 2 years ago now.
I started this blog then, thinking that it would be good to have a journal of all the things I did while I was there, the second semester anyway. Along the way I left unfinished many stories of my travels. Some more unfinished than others.
That pile of drafts I ought to finish was a part of why I didn’t write much here in the intervening 581 days or so(Date.parse('january 5th 2009')-Date.parse('jun 5th 2007')
). Since I have begun blogging again, from time to time I look at the list of old orphaned things and wonder if I shouldn’t post the good ones and get rid of the ones I will never get around to.
So, if you see any posts that start with funny characters and seem to talk about my time in Japan, that’s why.
Keyboards and Doom
Tuesday, February 24th, 2009So, I have become ambikeyboard. I use Dvorak, like a crazy person on my ‘nix machine at work and qwerty on the windows. It took a while but, now my brain has figured out how to deal, more or less(I am on qwerty atm). But, I also combined this with learning emacs, so now I have the most common emacs commands memorized and I feel fairly comfortable with it–on dvorak. Qwerty + emacs == stumbly fingers.
On the other hand, the key placement for some things makes more sense on qwerty.
maybe I should try vim next. Just to show those motor control neurons who is boss.
Weather that’s too mild
Saturday, February 21st, 2009Weather here in the midwest is mostly boring. Except for the whole freezing rain thing.
I miss real snow.
like when I took this picture.

Bike on Main St Bozeman
Much better.
I guess it might snow here tomorrow, but I bet they won’t even need to salt the roads.
Bah.
Wii Fit w00t
Thursday, January 15th, 2009After looking half heartedly for months. I found the amazon fitmob SMS service that lets you know when they have the Fit in stock. They sent me a message 5 min before I could buy it and then I went to the mobile site and bought it.
w00t
According to the Fit, I am 24 which isn’t bad I guess, since I am 23 1/2 really.
The balancing games are especially interesting in how they map actions onto a different control mechanism than I am use to. This one isn’t as intuitive as the Wiimote, but is almost as approachable. On the other hand, things that would be trivial to do using a regular controller become more difficult because they use a different set of motor skills.
The interesting thing is that I feel like though the low level mapping is different, the internal model of the game I am using hasn’t really changed–I am just using a, currently, less sophisticated system to drive my interactions than my hands. With practice, my wetware should adapt.
In other words, I should improve my balance using the Wii Fit.
Scanty Blog Development
Tuesday, January 13th, 2009I am finally getting around to working on customising a little blog app for use on my site. I am still not quite sure what I want to do with everything, but getting a development environment up is the obvious first step.
So, I installed sinatra.sudo gem install sinatra
and got thisERROR: http://gems.rubyforge.org/ does not appear to be a repository
ERROR: could not find gem sinatra locally or in a repository
and went to look for a solution. I set my wireless access point, opened firefox and copied the error into google. A few forum questions later I realised my problem. I hadn’t been connected to the ‘net. Classic mistake. Like working for an hour trying to get a machine to boot and discovering the outlet didn’t work.
Or, more recently, that the problem I was having while trying to fence electric epee was not either of my weapons or my body chord, but the scoring machine( of course I didn’t check this until I had taken off my jacket twice and got all of my gear out of my bag).
So, I tried again and got this
ERROR: Error installing sinatra:
sinatra requires rack (~> 0.4.0, runtime)
I then installed rack$ sudo gem install rack
Successfully installed rack-0.9.1
1 gem installed
Installing ri documentation for rack-0.9.1...
Installing RDoc documentation for rack-0.9.1...
But, it still gave me that error.
Argh. So, I googled around abit, and tried using$ sudo gem install sinatra -y --debug
which told me that I was missing rack, which I had just installed, but also told me I was missing the ruby openssl library, so I tried installing that.--debug
gave me fewer errors but suffered the same problem.
So, I changed tactics. I knew where the current version of sinatra resided on github, so I looked up how to get a gem from github. turns out it is really simple:
add github to your sourcesgem sources -a http://gems.github.com
and install the sudo gem install bmizerany-sinatra
After that, I just had to install sequel and thin and I was good to go(thin needed g++, which was not installed yet–fresh ubuntu install).
Cool.
Now I just need to put all the pieces together. and use the import script.
What I am reading now
Friday, January 9th, 2009Tired, and unable to think of anything else for today’s post, I thought I would share what I have been reading over the past few weeks.
- The Blank Slate — Stephen Pinker I read how the mind works last year and wanted more. It was fun, but whenever he wrote about things he didn’t know much about, there were problems.
- Godel Escher Bach — Douglas Hofstadter The classic, it covers many concepts important in cs and elsewhere. I am taking my time to read it, because I want to go through the exercises in it and thoroughly grok it.
- Bill of Wrongs — Molly Ivins and Lou Dubose Makes me feel that most dangerous of emotions, righteous indignation. Molly Ivins will be missed, is actually.
- Tom Strong — Alan Moore one of the best comic writers creating a science hero who has adventures in styles that span the life of comics itself. Or something like that. Mostly, its fun.
- Code Generation In Action — Jack Herrington
I haven’t really learned anything new from this book, but that was more or less true of the Pragmatic Programmers Guide too. Reading about building code generation helps me to see when it might be useful and what its limitations are.
And that is a small selection of the dead tree media I have consumed recently. My internet meanderings will have to wait for another day.
Still Alive
Monday, January 5th, 2009Happy new year everybody.
Its been a long time since I last posted on this blog and much has changed.
- I’ve graduated from the University with my BS in CS and Minor in Japan Studies, etc.
- I moved to Illinois to live with Sara while she goes through library school and started working at Wolfram Research
That was a much shorter list than I thought. More then that has happened of course, but those are the two big things.
I have adjusted to living here mostly, but it is too flat and though I am about a mile from one of the premier CS campuses in the US I have not gotten to know any new geeky friends besides my coworkers(though there is nothing wrong with them)
My goals for this year (gotta list them, its new years)
I want to become a better Software Developer(who doesn’t)
I have gotten caught in the daily grind too much and let some of the things I should be practicing/learning go for a while. Well, vacation’s over. I had my months of cooling off after the hell that was my senior year(figuratively speaking). Now, I want to something to do for myself.
One of those things is this site, which is currently languishing in a lack of attention from me.
I had this grand plan of writing my own blogging software as an exercise, but having looked down that road afew times and gotten lazy I think I will compromise by moving to something more my style–like scanty.
Get Back in shape
I have put on a bit of weight over the holidays–stopped fencing for a while, stopped biking to work once the air got too cold–and now I need to get my systems back up to par. Better weather will help, but I really need to find more activities that I can do in cold weather.
Play some damn music
I got some good pipes, I like chasing after oral nasal resonance as much as the next man, but lately I have been out of the loop. This happened to me when I was in Japan too. Maybe I need 6 months in a place before I get sick of just being/exploring and want to get back to doing those things I can’t do without.
I play the guitar too.
Become more electronically social
Better living through electronics, and better friend tracking too(is that creepy?). Facebook sucks, but atleast some of the people I know are on it.
For a while I was somewhat active on the ruby usegroups. I learned alot about ruby from that experience. I should do more stuff like that, maybe through stackoverflow.
Twitter. I have less than 100 tweets and I have been on since march, whats up with that?
This blog counts too. I would like to post everyday–need to set up a time.
Finally
Through all that, I need to be myself, or atleast a reasonable simulcra thereof.