Archive for April, 2009

14 April, 2009

Book Review: The Manga Guide to Databases

by gorthx

Everybody’s reading it!

I admit, I was skeptical at first. But, The Manga Guide to Databases is not just a lightweight illustrated treatment of RDBMSs. Detailed text follows each chapter in the story of Princess Ruruna and her servant Cain as they attempt to bring order to the chaos of the Kingdom of Koa’s fruit export business. Don’t skip those text sections, there’s additional info in there (I learned something new: the definitions of DDL, DML, and DCL as types of SQL queries) and the study questions are relevant to the material. I like that the book covers different data models, and includes a discussion of some relational operations. The explanations of transactions and ACID principles were very concise & clear. My only complaint is the somewhat confusing explanation of joins.

This book gets bonus points for having a thorough index and a “frequently used SQL statements” cheat sheet.

Bottom line: Entertaining yet educational.

3 April, 2009

Friday Happy Hour: Gimme some sugar, baby.

by gorthx

Time for some more fun with managing user data, of the “who was connected where and when” type. I’m going to use PostgreSQL row constructors & subqueries to filter my data.

I have a table that contains switch names & ports which are connected to other switches:
testytest=# SELECT switch_name, switch_port, connected_to
FROM switch_connections;
switch_name | switch_port | connected_to
switch-1 | 1 | switch-2
switch-1 | 2 | switch-3
switch-2 | 1 | switch-1
switch-3 | 1 | switch-1
(4 rows)

Another table contains hostnames found on each switch port at a given point in time:

read more »

2 April, 2009

Nike+ iPod

by gorthx

3 months ago, I acquired a Nike+. The basics, for those of you who don’t want to deal with the flash-only website: it’s a piezoelectric sensor that goes in (or on) your running shoe and links up with your iPod to record running distance, pace, etc. You can then upload this data to Nike’s website, and share it. You can also set it up so that you get verbal feedback through your iPod on where you are in your run (e.g. “point five miles completed”).

I don’t wear Nike shoes, so I have a lacelid. Which, apparently, Apple is trying to prevent me from using. Which I find hilarious. [Article from last Sept; haven’t been able to find followups.]

I started writing this review in my usual “things I like, things that could be improved” format and realized that the “things I like” section was really really short, which would probably give people the impression that I don’t like it. I do, a lot. It’s great to have an idea of how far I’ve run, especially having a notification that I’m at the halfway point. And if I set aside my aversion to flash-only websites, the tool to view my completed runs is pretty slick.

So, yeah, it’s cool, BUT.

Things that could be improved:
– I would like to be able to save my custom distances, as the defaults are a bit limited. Having to change it every time with the touch wheel is annoying.
– When I “end” my workout, the volume control is unusable for at least 30 seconds. Sometimes I have the tunes cranked up a bit, but I don’t want the coach guy yelling at me, yanno.
– Even though my workout distance is in miles, the you’re-getting-close-to-the-end-don’t-give-up-now coaching is in meters (“200 meters to go”). Seems silly.
– I can’t calibrate on distances longer than 2k (1.25 miles). I would like the option to calibrate on a longer distance, or average my last 3 calibration runs, or something.
– Changing the music during the run is not intuitive. menu -> change music takes me to my playlists. I select a playlist, and that pops me back to the ‘resume workout/pause workout/change music/end workout’ menu, where I select ‘resume workout’ to start the new music. Sure, it makes sense *now*.
– I would like the option to have Fabio tell me how far I’ve run.*
– Nike’s website for the data upload is flash-only. :shudder: The privacy settings are also globally on or off – if I want to share my run data with someone, I have to make it globally viewable. Some of the effort that went into creating the flash would have been better spent on a more flexible privacy implementation.
– Luckily, the data is stored in XML format. :) I am currently tinkering around with uploading it to rrdtool and making my own graphs, instead of dealing with the icky flash.

*Think about it: “Only three more miles, daaahling.”