Swapping CTRL and CAPS LOCK in Mac OS X
The CAPS LOCK key is useless. How many times during your typing career have you actually used it? Your hands will be much happier using it as an additional ctrl or command key.
To change the functionality (mapping) of this key, go to System Preferences -> Keyboard -> Modifier Keys. Below is a screenshot.
Optimizing bus routes to improve traffic flow
Problem
Everyone knows that traffic sucks in LA - too many cars, and too few public transportation options. There are currently a few proposals to alleviate traffic woes and prepare LA for growth:
- Increase the Metro coverage area with new lines (Los Angeles’ subway system. Yes, LA has a subway system)
- Convert more streets to one-way streets, e.g. Olympic, Pico. This improves flow by increasing the number of lanes of flow traffic and reducing the opposite-direction turning lanes. Basically, you can get rid of the middle turning lane and assign it to one-way non-interrupted flow traffic.
Solution
- increased fulfillment percentage: In an ideal world, buses are full or nearly full a majority of the time
- faster vehicles: Even if the smaller vehicles have to make the same stops, smaller vehicles have better acceleration and get to their top speed quicker
- environmentally friendly: air-conditioning large, unoccupied spaces wastes energy and this exactly what large buses do
Implementation
- On non-peak hours, have all routes only use the mini-buses. This one is easy - buses on non-peak hours have very few people on them, just start using the smaller buses.
- During peak hours, every other bus (or every third bus) is a mini-bus.
- Poll the bus drivers to figure out which routes could benefit from a bus size reduction. I think the bus drivers opinions would rival any computer model - they’ll have an intuition about the congestion because they’ve driven the route many times before.
Conclusion
LinkedIn confuses me
Is anyone else confused by LinkedIn’s messaging metaphors? Not only do I have an inbox, I have all of these:
- Inbox
- Messages
- InMail
Sometimes I get messages, sometimes I get InMail and sometimes I get mail in my InBox. But it goes on: I also have these:
- Invitations
- Introductions
I really just want one central Inbox with labels, gmail style.
Installing JRuby on Mac OS X Leopard
1. Get a copy of JRuby. I got the 1.1.2 (latest as of this writing) from http://dist.codehaus.org/jruby/
2. unzip it and put it somewhere. I put it in /Applications/jruby-1.1.2/
3. configure your shell environment. Edit your .bashrc and add JRUBY_HOME=/Applications/jruby-1.1.2 and then add JRUBY_HOME/bin to your path. This will end up looking something like this:
JRUBY_HOME=/Applications/jruby-1.1.2
export PATH="$PATH:$JRUBY_HOME/bin"
4. open up a terminal. Now that jruby is on your path, you should be able to do issue a “jruby –version” to tell you the version - this is a sanity check.
That’s it - pretty much just like installing any java jar.
Recursively delete all .svn directories
Sometimes those .svn files just get in the way, especially when you want to ship your code off to someone else. Here’s a quick way to delete all of them from the command line. We’ll use the find command to locate all the .svn directories and then pass them to xargs, which will execute the “rm -rf” command for every line of output from the find results.
find . -name *.svn | xargs rm -rf
Measuring speed in terms of relative flow instead of miles per hour
One of the big causes of traffic is that cars and trucks are travelling at different speeds relative to each other. This creates minor slowdowns that have consequences for cars up to a mile behind. How can we get people to get on the same page and travel at the same speed? I think the solution is a in-dash guage like a speedometer that measures your relative speed to cars around you. It would basically be like the temperature guage - you can see how much “hotter” or “cooler” you are compared to drivers around you. The “hotter” your guage, the faster you’re driving compared to your neighbors. The “cooler” your guage, the slower you’re driving relative to the flow of traffic. This would help slow and elderly drivers be more mindful of staying in sync with the adjacent traffic flow. It would also subconsciously influence more aggressive drivers to stay in harmony.
I think this would improve traffic flow and reduce accidents because there would be less surprising speed changes. And this has a positive-feedback element - the less accidents, the better the flow of traffic.
Or maybe I’m just tired from rehearsal and need some sugar. I can’t tell if this is asinine or brilliant.
Adding a blank / default item to an ASP.Net dropdown list and making it required
Here’s the declarative way to add a default first item to an ASP.Net drop down list:
Notice the important attribute: AppendDataBoundItems. This just tells ASP.Net to add your dynamically data-driven list items after any declarative markup items.
Now to make it required, you can just add a Required Field Validator:
Note, you just have to set your initial value to the value of your declarative first list item in the drop down. This tells the required field validator that this value doesn’t count and that the user haven’t selected an item yet.
Declarative markup is easy!
Shhhhh….recording in progress
Everyone’s been asking about the new Seneca Hawk record so I thought I’d post an update. Here’s a status matrix of the songs
| Track | “main street”* | Las Cruces | Light from Light | “Wind that bends all things”** | Bloodburner | Hot Sky |
|---|---|---|---|---|---|---|
| Takes | 2 | 1 | 2 | 1 | 1 | 3 |
| Drums | y | y | y | y | y | y |
| Bass | y | y | y | y | y | y |
| Rhythm Guitar | y | y | y | y | y | y |
| Lead Guitar | y | y | y | y | ||
| Aux Guitar | y | y | ||||
| Aux Track 1 | ||||||
| Aux Track 2 | ||||||
| Aux Track 3 | ||||||
| Lead Vocals | ||||||
| Background Vocals 1 | ||||||
| Background Vocals 2 |
To summarize this table, we have bass and drums for 6 songs, guitars for 4 songs. For these six songs, we still have to track vocals and some additional auxiliary parts like piano, organ, tambourine, etc. One we complete tracking for these 6, we’ll record another 4 - 6. We’re going to finish tracking the next time we see Adam Lasus.
Recording has been really fun and challenging for me. Because we’re using analog 2-inch tape, I can’t really f*ck up. And if I do f*ck up, we have to stop taping and start over again. Kyle and Jonah can punch in if they need to (they didn’t really need to though - Kyle punched-in maybe twice), but drums is a different story. The reason you can’t punch in drums is mainly because of the complexity of micing drums. We used 4 close mics, 2 overhead mics, and 3 room mics. Getting a seemless punch-in on tape would require me to play the drums with the exact same time, volume, feel and pressure on all drums. If I were good at this, I’d probably be a professional studio musician. This is why you just start over. Because by the time it takes you to punch-in, align the two different drum tracks, get them to sound seemless, you could have just recorded 10 more versions of the same track. In the digital world, punching in is easier (mainly because sewing up parts is easier), but is still very difficult for drums.
Tape forces you to keep tracking until you get the take you’re satisfied with. This is unlike digital recording where you can settle for a decent take and just rely on post-production to clean up the mess-ups. But that’s not to say there aren’t a few mess-up on the record. There are, but these are the good mess-ups, the accidental “i didn’t mean to hit that drum, but it actually sounds really cool” mess-ups. This is exactly why the old recordings have more character than the new pro-tools era recordings: they had more mess-ups, more imperfections, more idiosyncrasies. Most drum recordings today sound perfect, too perfect - all the cymbal hits sound exactly the same and the pressure of each bass drum note is exactly the same. Also, most singing today sounds too in-tune. It’s lost a bit of that human feel, as if a real person were singing to you. The recording process has been mechanized and digitized. I read an interesting quote by a producer whose point was that today’s producers and engineers record with their eyes, not their ears. This is exactly true - I’ve recorded 2 prior albums, and we spent a lot of time looking at the waveform in pro-tools to see if the bass and drums lined up and to see if it “sounded” good. That’s pretty idiotic. It’s like trying to listen to your computer noise to see if your photoshop work “looks” good.
Hmmm…I ended up ranting about pro-tools. Anywho, back to the recording. Even though tape is harder to record to, I’m very proud to say that we nailed some songs on the first take. This we can attribute to our chemistry, our recent tour and our collective improvement as musicians. I’m a much better drummer now than I was when I recorded my first record. So far, I’m most proud of Las Cruces. We just nailed the feel of that song, and we got it on the first take. It has a bottomless pocket, a feel I’ve been trying to achieve for years. I’m excited to share it with everyone…hopefully we’ll release some early cuts and mixes…
I have a lot more to say, but between recording, helping to launch myspace’s developer platform, and the holiday season, I’m spent.
* So we don’t have a name for this song yet. In true band fashion, I gave the song a crappy (yet somewhat catchy) working title which we used during recording so Adam had something to call it.
** We don’t have a title for this song either, but we’re temporarily using a line from the song.
Bananas are a ticking time-bomb
Here’s the problem: You buy a bunch of bananas at the store and initially, they’re all green. Then one day…BOOM!!!…they’re all ripe at the same time. Now it’s a race against time. You might even have to eat two in one day. It’s banana overdose. Then you get sick of them and don’t want to buy bananas for a month. Then you miss them and the whole process begins anew.
Here’s my solution: Bananas should be sold individually, like apples. And stores should keep bananas at a variety of ripeness stages. This way, I could buy several bananas and enjoy them immediately and for the rest of the week. This doesn’t preclude stores from selling bananas the old-fashioned way, but it just offers the CHOICE of enjoying a bunch of bananas on MY schedule.
Ultimately, it’s a question of power. Why do bananas make the rules? And why do they all gang up against me?
This is a pointless rant on bananas. I’m sorry if you read this all the way through. God help you.


