Play with Ruby

I need to “play” with a programming language before I find myself really comfortable with it. Playing doesn’t just mean solving some problems or writing an app, but instead simply experimenting with the available functionality — exploring instead of producing.

TextMate has served me well for this, as I can write some code and immediately run it with Command-R, or even selectively run lines of specific code. This is all useful, but knowing the code available to even write requires already knowing the language, or some extensive back-and-forth with reference documents.

Unfortunately, I don’t memorize things quickly (especially programming reference material), so I’ve often leaned on code-completion with other languages to browse available methods and properties. It’s a crutch in many ways, but is perfect for exploring the abilities of code in it’s context, and after a few similar tasks the reference is no longer needed. Unfortunately, there’s no auto-complete in TextMate.

Fortunately, another way to play with Ruby is with IRB, the interactive Ruby shell. I find it helpful to often keep a terminal window open with IRB to construct something and experiment with it before implementing it in a function. IRB by default has no code-completion, but the support is there. Eric Lake demonstrates adding tab completion to Ruby’s IRB.

St. Louis Grove Fest

Grove Fest is a neighborhood festival benefitting the Forest Park Southeast Development Corporation. Saturday we stopped by The Grove for some sight-seeing, which was an drastic change of scenery after taking a trip for some house-related errands in The County — The City hosts a bit more diversity.

Food, drink, and music were plentiful in the neighborhood’s streets and at open restaurants and bars. We came too late to see the street performers and artist village, but the main event that evening was the Crashn’ Fashion Bash by TheTime Boutique (for the 21 and up) and the Arch Rival Rollergirls exhibition: certainly some things you don’t see every day.

2006 Gateway MS-150 Day 2

I was sleeping by 8 PM Saturday night, but with Day 1’s ride still burning my legs, I periodically woke despite exhausting myself with my fastest ride of the year. At 4 AM I was debating on just getting up to start the morning since the alarm was sent for 5, but the hotel bed was oddly comfortable, and somehow staying in bed kept the next day’s ride farther away. The alarm still found me in bed.

I inhaled a hotel breakfast: fresh waffle, cereal, juice, banana, and a cinnamon roll; still feeding hunger after the previous century ride and also preparing for the next one. It was certainly superior to the cold packaged food found at the campground that never seemed to say good morning.

We collected our bikes and were on the road around 7:15 AM. I was thankfully less saddle-sore than on the second day from previous years, which kept my spirits up getting started. The first 7 miles of rolling hills set the tone for the day. They’re awfully fun speeding downhill, and almost as fun racing back up if you have enough momentum and strength to climb to the next peak, but otherwise they’re just awful. I had to fight up many of those hills, along with several others throughout the day. Day 1 was much flatter; had the Day 2 route been used the first day I think it would’ve been easier, but on the second day it was just mean.

We stopped at most of the rest stops for gatorade, bananas, and sugar to keep the body working. We rarely stayed long, typically just enough to fetch fuel and our breath.

I rode with Hans and Kurt for most of the day. We held our own paceline (where Hans most often pulled) and connected with other trains whenever possible to try to keep the speed up.

The sun was out baking the skin more today which contributed to sapping my energy a little faster, and between that and the cumulative exertion, later in the ride I was feeling the effects. Because I’m a pansy, I was partly hoping the forecasted thunderstorms would roll in and “force” me to take the 75 route instead of the 100 mile turnoff — such thinking probably kept the sun out, and around mile 50 I had to make the choice to ride the 100.

I honestly don’t remember much of the ride at this point. There was lots of pavement, some more rest stops, but mostly I just focused on just moving forward. Kurt and I ended up together for most of the last 20, which was great for switching turns pulling, but I lost him returning to the last 7 miles of hills. Again with the racing down and fighting up with the last bits of energy in my body.

I rolled in approaching 4 PM. The finish line held a group of volunteers and riders cheering those coming in, participatory medals were passed out, and I dismounted and walked up the hill to my ride home.

Body and brain were done.

Here’s a few more cameraphone pictures of my deterioration during the day.

2006 Gateway MS-150 Day 1

So, Day 1 of the 2006 Gateway MS-150 is over. Well, they have festivities and food and such, that continues much later but I was done riding at about 2:30. If you’re thinking “that’s all it takes for 100 miles?!,” consider we finished earlier than usual, but we were also much faster this year. My bike computer tells me I averaged 18.8 mph for the 98.something miles (I’ll make up the 2.whatever tomorrow), which is the fastest average I’ve logged all year, so that’s pretty exciting.

We hit the hotel for showers, then Olive Garden for handfuls of carby breadsticks and pasta. Back at the hotel, Serenity was on for some entertainment while preparing gear for tomorrow, and now (7:15 PM) it’s about bed time, which I’m procrastinating a bit while I can. Just for you.

Today the weather was kind, which helped my performance. It stayed between the low 60s and high 70s and was overcast all day, which is perfect for me — the heat burns me out quickly. The humidity was high which made breathing harder, but that cleared a little after some drizzling that lasted a little after passing 65 miles, and I popped some pseudophendrine pseudoephedrine to combat the general allergens (lots of cut grass, farm-land, nature…). Around the last quarter of today’s 100, my legs started burning pretty badly from the aggressive riding. The Gatorade we’re constantly downing wasn’t enough to keep the lactic acid from building up, so I upped my intake of bananas; the potassium helps. After a rest stop for some fuel, rest, and leg massaging (sadly had to do it myself), a few miles of high rpm spinning (85-95) seemed to clear the pain.

I took some ibuprofen at the end to head off any additional pain, and I think I’d like to try and get to sleep before that wears off. I’m pretty beat, so we’ll see what happens tomorrow. The 75 and 100 route share paths until about mile 50, so I might wuss out at that point and just do the 75 if my legs are empty. Cursed legs of meat.

About 3,500 people apparently came out this year. I don’t have any fundraising totals for everyone yet, but thanks to many generous donations, I’m bringing in $940 for the cause. Thank you all!

Here are a few pictures taken from the camera-phone today.

Prelude to the 2006 Gateway MS-150

I dread tomorrow morning so very much.

I fear I am less prepared this year than previous MS-150s, and I don’t recall those being enjoyable despite relatively pleasant weather. Why I return for my 4th year I cannot say.

During lunch we recalled lasting memories of pain including getting on the bike the second day, and the few miles experienced after taking each break. The mornings are wet and cold, the body fights commands to operate, and returning to the saddle after already wearing yourself out is uncomfortable. Other memories are blurred or don’t exist — after a while rational thought is simply replaced with staring blankly at asphalt, avoiding potholes, counting the road’s paint lines… stripe… stripe… stripe…

This week I’ve been drinking like mad, and as of today loading carbs. Dinner will likely be a feast of more pasta. Between that and the fat already stored, I’m certain I’ll have enough fuel available to ride, I’m just not sure how well the fuel-to-energy conversion will go. Recent carbs go pretty quickly, and the fats follow with time, but also require energy to convert so I must consume constantly. From experience I know I burn around 12 to 13,000 calories for the weekend on the bike, minus those from peanut-butter-and-jelly sandwiches and gatorade from rest-stops all day. I’d love to retain the inevitable weight-loss, but regardless of what I burn, I’m certain to replenish whatever is lost due to the hunger that follows the ride. Doesn’t that sound healthy?

I’m about to leave early for the day so I can gather everything for a weekend on the bike, and this time my body is as nervous as my brain. Or it may just be too much pasta for lunch.

I hope you have a pleasant weekend.

2006 Gateway MS-150

On September 8th I’ll be driving 2 hours into to the middle of Missouri for the 2006 Gateway MS-150 bike ride. This two-day ride benefits the National Multiple Sclerosis Society and most people do 75 miles each day for 150 miles total, hence the name. If I’m feeling particularly crazy (it’s been known to happen), I can opt for the century route each day for a full 200 miles.

Please consider supporting me and this cause with a tax-deductible donation to the National Multiple Sclerosis Society.

I’ve been riding very differently this year logging shorter rides, but a few more than last year, so I’m not sure how it will go. I feel pretty strong for the majority of those rides pedaling aggressively, but the longer they get the more I wear out. I’ll have to pace myself, or just draft all day (which isn’t very different from my average ride, thanks hans).

Update:
Related Posts:

  1. Prelude
  2. Day 1
  3. Day 2

RE: soda taken from the hot car

Dear Kelly,

I’m sorry I thought the cases of soda left in the car during our heat wave would be fine going from nearly boiling outside to cooling in the fridge. You’re not here right now, so you don’t yet get to see that they in fact did sort of explode.

You were right.

Love,
Ryan