San Jose Rock and Roll Half Marathon

This past Sunday, I ran in the San Jose Rock and Roll Half Marathon, which is my longest running event to date.  For the record, a half marathon is 13.1 miles.  That’s a lot of running for someone like myself who considers running a fairly casual sport.  To be fair, this was supposed to be my big event for the fall, akin to AIDS/LifeCycle in the spring.  I need the lure of a big new challenge to keep me focused on training.  In a lot of ways, the story I’m about to tell shows that, above all else, I need to remember that it’s the act of signing up and committing to an event that gets me in the right mind to train for it.  I waited until just a couple of days before the run to sign up for it, and the result is that I didn’t make training a huge priority.  Really, I didn’t make it a priority at all.  I did some running in Falmouth back in July, and I ran in the Big Gay 10k in August, but I didn’t do any real, structured training for this event.  Part of it was feeling cocky about my cardiovascular endurance.  Another huge part of it was that life seriously got in the way.  In either case, I didn’t run regularly, and while I certainly had the cardiovascular endurance for a half marathon, my body wasn’t prepared for that level of punishment.

I will be kind on myself, though.  I achieved both my primary and secondary goals for the run, and I came close to achieving a “nice to have” goal, too.  My primary goal was to finish without walking, and I did this.  My secondary goal was to finish with a time of 2:30:00 or better, and my finish time of 2:21:34 soundly achieved this goal.  Early on in the run, I passed by the 2:20:00 pace runner and set myself an extra goal of trying to stay ahead of her.  That was a level of ambition my body was simply not up for, however, and I faded behind her in the final miles.

A highly successful day, but there are some major red flags that deserve a bit of review.  The first one of these is how completely miserable I was on the final miles.  I started out, as I mentioned, feeling pretty ambitious, and the first several miles were a complete blast.  In fact, I’d say the first half of the run was a lot of fun and I was seriously enjoying myself.  Somewhere around mile 8, however, things progressively got worse and worse.  My legs kept having less and less power to them.  I was having to shorten my stride.  My mile splits were slowly getting longer, mile after mile, and it was somewhere around mile 8 when they started to tank.  The seams in my Vibram Five Fingers barefoot running shoes were starting to chafe badly.  Nothing I tried to keep my head in the game was really working, and I was mostly holding on for dear life because I refused to give up.  I’m really glad I didn’t give up, by the way.  After the run, my legs were so wobbly and weak that I had difficulty stepping up onto a curb so I could walk home.  Since then, I have struggled with pretty nasty muscle weakness and soreness, tight tendons, and open, bleeding wounds where my shoes rubbed me raw.  Here I am, on the day after, and I’m walking with a very visible limp and shaky legs.  I know I’ll heal, and I’m glad to know that I’ve pushed my body to its limits, but there are, I believe, some lessons to be learned here.

  1. I need to treat half marathons with more respect.  5k, 10k, and 12k runs are all “fun run” distances for me.  They’re the sort of thing I can just do without preparation…just throw on my iPod and enjoy a morning of it.  I even show some signs of being mildly good at 5k runs, though I’d never be a true competitor with them.  Half marathons are a different beast entirely, largely due to the effects of running impact on my body.  I must prepare for them, and I probably should have more running in my week in general if I want my legs and feet to be in good nick for longer runs.  Given that I run barefoot, I likely have an even more direct need for training my body for the impact of running, as barefoot runners use their calves and the muscles in their feet more (or so I’ve been told).
  2. I need to look into keeping a pair of Vibram Five Fingers from giving me blisters.  The ones I have are pretty serious.  At 6 miles, I’ve not had a huge problem with blisters.  At 13.1, and after getting my shoes wet, I’m bleeding on both feet, and I have other large blisters that haven’t ruptured.  I’m sure the solution is as simple as a pair of socks.
  3. Knowing Sunday would be hard, I did a minor amount of tapering.  I went surfing on Thursday, had a lighter workout at the gym Friday, and did nothing of note Saturday…or so I thought.  Casual athletics count as exercise, though, and I spent a reasonable amount of time fencing on Saturday.  Standing en garde and lunging are workouts for the legs and core, and my legs were not exactly fresh on Sunday morning.  I need to be more watchful about my own laziness, it would seem.

I’m honestly not sure at this point if I’ll want to run another half marathon (or train for the big 26.2) at any point in the future.  Right now, as I shamble around the office and my home, I’m mostly just wondering when I can get back to my “normal” life of cycling and surfing.  Another part of me thinks, though, that my time wasn’t bad for someone without training, and these problems are all just new challenges to overcome, and I should do it.  For now, though, I’ll rest and make some decisions about what my life can and cannot support, and then decide if half marathons will fit in there.

Morning Surf at Pleasure Point

It’s been hot the last couple of days.  When I say that it’s been hot, I mean that it’s been hot even for a Florida boy like myself.  On top of that, California’s heat is very different from Florida’s.  Heat in Florida is almost always wet.  The air is thick enough to smack you in the face, and you can smell sauna-like moisture everywhere.  When the sun beats down like God’s flashlight shining directly on your pathetic life, the heat and the humidity trigger natural instincts to stop being stupid and go find some shade and air conditioning.  California heat, by comparison, is very dry and the sun is far more indirect.  It’s a sort of deceptive heat, one that makes you wonder when, exactly, you stepped into a blast furnace.  In my experience, it can sneak up on you and give you exposure almost before you realize it’s happened.

It’s been a few weeks since I went surfing, too.  What better way to beat the heat and turn down the stress factor of a workday in Silicon Valley than to go surfing at dawn?

So, I got up this morning and did just that.  I was a little late getting out the door, but not too bad.  Cowell’s Beach has been hit-and-miss (mostly miss) lately, so I decided to expand my experience in the greater Santa Cruz area and went to Pleasure Point.  It’s a truly beautiful surf spot, though I’m not completely sure how productive the trip was.  Basically, I didn’t get any actual wave riding done.  I’m not really bothered by that, though, because I’m still very much a beginner and I did get to work on plenty of my basic skills like paddling and sitting on my board.  My chest and shoulders are deeply fatigued now.  It’s clear I need to add upper body exercise to my weekly schedule!  The other major reason that I’m not bothered by not getting any riding done is that I wasn’t the only one with that problem.  The swells that were coming in kept breaking at different points.  I started pretty far out (wanting the workout of paddling out) and spent a lot of time staring at waves breaking another 100 feet in.  Content to watch the other surfers and learn a thing two, I stayed out.  When I (and a couple of others who were far out) moved in, though, the waves started breaking farther out, and I spent a lot of time fighting whitewash.  Sadly, I didn’t have all morning to just keep waiting and, after an hour, I was actually pretty tired, so I paddled in and packed up.

It was fun, though, popping out in the early hours of the morning to spend time in the ocean and get a workout very different from my usual routine of cycling twice daily.  I took my own trip out with my own gear, which was a first, and I made a friendly impression on the other surfers out there.  Given that this is a sport where safety and basic control come first, I consider it a good use of my time, even if I didn’t get to work on my pop-up outside of my living room.

AIDS/LifeCycle Advice, Part 2: Start Training

Continuing on in my series of thoughts on AIDS/LifeCycle (ALC), training for it, riding in it, raising funds for it, etc, I’m going to talk about the topic that comes up most frequently in conversation, and that’s training.  In all honesty, I think that training is a common conversation to have because the distance of the ride seems so large.  It seems so improbable that you can actually finish a 500+ mile tour without putting yourself through a very serious training regimen.  As I mention in my previous post in this series, try to remember that the mileage is over a week and that cycling is the most energy-efficient method of transportation available.  Those distances look far, but once you start your training and get some rides under your belt, it’ll become clear that the training isn’t going to kill you and neither is ALC.  Since I love tilting at straw men, I’m going to again present my thoughts and advice as responses to statements I’ve heard or am likely to be asked.

I just signed up as a rider.  I have to start training.  What do I do?

First off, congratulations on signing up.  You’re in for the adventure of a lifetime.  I really mean that.  I’d rather ride ALC than pretty much any other cycling activity I can think of.  Of course, you’re going to need to do some work to be ready for the ride, but I promise you that you can do it.  The most important thing to remember through this entire process is that ALC is a ride and not a race.  The goal of your ride is to safely finish as many miles as you possibly can.  You are not concerned with how long it takes you to do it (aside from trying to finish before the trail closes in the evening).  You are not concerned with your finish time.  You are not concerned about the other riders.  You’re concerned about you finishing the course safely.

You’re going to train accordingly.  The two things that your training plan needs to develop are your cardiovascular endurance and your riding experience.  You will most effectively develop both by getting out there and riding.  There’s just no replacement for doing this.  Through this post and others, suggestions I give should be seen as additional to this.  The most important thing for you to do is get on your bike and ride it.  You need to ride it in all sorts of conditions, including at least a little riding in wet conditions, in the heat, in the cold, and in some level of traffic.  You need to ride flat terrain, and you need to ride hills.  Sit down with Google Maps.  Pick a place to go.  Go there with your bike.  That’s a good training ride for ALC.  Pick another place.  That is also a good training ride for ALC.  If you can do your daily commute by bike, even if it’s only one day a week, then do it.  If not, start visiting places by bike on the weekend.  If you’ve got a lazy Saturday and you’re going to your friend’s house, consider doing it on your bike.  See the world from that perspective.

It can’t really be that simple.  I was hoping you’d give me something with some structure to go on.

You’re right that it isn’t that simple, but you’re going to be training for months and there are a few fundamentals to get out of the way first.  You’re a mysterious italic text in my blog, and I don’t know you very well, but I can tell you that the three qualities you’re going to need in abundance on ALC are cardiovascular endurance, riding experience, and dedication.  You won’t finish the ride without all three.  Committing yourself right now to riding as often as possible gets you started on all three of those at once.  As you start riding and start building more confidence in your endurance and in your experience, you’re going to find yourself seeking out more challenging rides.  It’s inevitable once you find it fun.  If you don’t find it fun, then you’re going to have a very long week at ALC.  So, it’s rather important that you actually do as much “fun riding” as you can!  Going out and having relaxing, productive, and fun rides is actually teaching you a lot about your muscle memory for riding.  It’s going to help you understand your pace better, and when you’re ready to get super-serious, you’ll know a few things about how you feel comfortable riding.

Well, I don’t actually know how to ride a bike.

You’re very courageous to sign up for an event like ALC without prior cycling experience.  They run workshops to help get you started, and I highly encourage you to take them rather than taking advice from my blog.  I am not qualified to teach you how to ride a bike through my writing.  Suffice it to say, though, that as you learn to ride, keep yourself in environments that are safe for your skill level.  Parking lots are your friends, and you can use very large parking lots early in the morning to do safe and long rides.  Find your local bike paths and parks.  Do not get out on the road until you know how to handle your ride.  There are many months in which to learn.  Don’t push yourself.

Should I start using the stationary bike at the gym?

It’s not a bad idea to do so, provided that you’re also taking yourself out on regular rides on your bike.  Stationary bikes are good for a few things.  The first is that you can ride them whenever you want.  The second is that you can control the ride, which lets you have rides that target fitness goals.  A third one is that you can play video games while you ride them.  So, yes.  Go to the gym and get on that bike.  This is an easy way to cram in more ride time.  Just don’t treat it like a replacement for your actual rides, because while you can develop your body riding a stationary bike, you will not build riding experience.

Should I start taking a spin class?

I’m sure you’ll find plenty of benefit in doing so.  That said, I don’t think they’re necessary at all.  I’m a very successful long distance rider and I have attended only one spin class in my entire life.  In fact, your gym’s spin classes may not be focused on helping you develop the way you need to.  ALC is all about staying on your bike for hours and committing yourself to a pace you can keep all day long.  Spin classes are often about intense bursts of effort, pushing you to be a panting, sweating mess.  They’ll help you build leg muscles quickly, no doubt, but you should remember that they’re not the end-all of your training plan.  You don’t make yourself a marathon runner by training for the 500m hurdles.

What about group rides?

If your abilities and your attitude gel with a local group, then you absolutely should do a group ride.  Here in San Jose, we have San Jose Bike Party, who focus on fun and safety in their rides, and that works out really well for me.  I steer clear of clubs full of people who race, because the last thing I want when I’m riding is hearing a bunch of people trying to be competitive with each other.  You might have a competitive mentality, though, and that might be your thing.  Either way, group rides will get you out on real road conditions and riding with others.  You’ll encounter both in ALC.  ALC may even be offering training rides in your area.  You should definitely do some if you can.  You’ll make some friends that way, and having friends on the ride is a very good thing.

How many miles should I aim for?

In all honesty, that’s something you’re going to have to work out with yourself, and it’s going to depend on your fitness level and how much time you have available.  It’s also not about how many miles you do but about the quality of the workout you’re getting.  For most of my ALC training, I was riding 15 miles on the road and doing another 20 in the gym every weekday.  On the weekends, I would do some unstructured riding, have a run, go for a walk, or just take the whole weekend off.  For a few weeks, I was able to sustain 40 and even 50 mile days, all of it over the road, but the reality is that these training days were not the best for my daily schedule and my family life.  Don’t push yourself too hard.  Keep it fun.  Keep your motivation up.  Stay in the saddle.

I really was hoping for a workout plan.  Maybe you could just recommend a book for me?

In subsequent posts on training, I’ll give you some good ideas about workouts and how to prepare for the legendary hills in ALC.  What’s important right now is that you get started and get committed.  That said, there’s an excellent book I recommend you read while you start training.  It’s called Base Building For Cyclists by Thomas Chappele, and I read it when I was starting out on distance cycling.

AIDS/LifeCycle Advice, Part 1: Signing up

For those of you who followed the saga on LiveJournal and Facebook earlier this year, I participated in AIDS/LifeCycle 9 (ALC 9), an epic 545-mile bicycle ride to benefit the San Francisco AIDS Foundation and the LA Gay and Lesbian Community Center.  I was successful in completing the ride and, thanks to my many wonderful donors, helped raise over $5,000 to support the San Francisco AIDS Foundation in their mission to prevent the spread of HIV/AIDS and to help provide quality of life to those already infected.  Participating in this ride is one of the most rewarding things that I’ve ever done, and while I have decided to skip ALC 10, I really do hope to participate in ALC 11 and future events.

A friend has decided to participate this year, though, and it sparked the idea of giving some advice to those considering it for themselves.  So, without further ado, here’s the first installment of my advice for ALC prospectives.  All of these posts are going to take the form of my responses to common statements and questions surrounding the ride.

I’ve decided to participate in ALC.

Good for you!  Unless you’re already fighting major social issues and a veteran bicycle tourist, this is going to be one of the most challenging, exciting, and emotionally moving things you’ve done.  I mean it.  You’re going to get in shape like you’ve never been before, you’re going to do something very real and meaningful to fight a deadly disease, you’re going to make some new friends, and you’re going to have an amazing adventure as you ride through some of the most beautiful and iconic scenery of one of America’s most beautiful and iconic states.  It’s a win-win situation, and you won’t regret your decision for a moment.

I think ALC is exciting, but I don’t think I can raise enough money.

Believe it or not, that’s what I said, and I nearly didn’t sign up because I didn’t believe anyone would donate to my ride.  The qualifying mark for donations sounds high, but it really isn’t that bad as long as you’re committed to it.  I was able to raise $5,000, well over the qualifying mark, almost completely through Facebook, family, and friends.  Note that I didn’t go to a single business to ask for support or sponsorship, I didn’t pound the pavement, I didn’t try to latch on to local events, I didn’t work through a team…I basically begged among my family and friends and Facebook circle, and I discovered that, in fact, it is possible to raise that kind of money.  People are generous and most of them actually do want to do something good for the world.  They’re waiting for an excuse to do that.  Your decision to join ALC and train for the ride is their excuse to be charitable.  By committing to this ride, you are not only stepping up in an act of personal heroism but also encouraging heroism in everyone around you as you seek your fundraising quota.  Don’t be afraid of the fundraising requirement…sign up and start getting your social circle involved!  You can do it, and the ALC staff have produced some wonderful materials to help you get there!

I want to ride in ALC, but I don’t think I can ride that far.

I bet you can!  Just like above, you shouldn’t sell yourself short.  No matter how unprepared you think you are, you’re probably more capable than you know.  Did you know that, every year, ALC runs workshops for adults who don’t know how to ride a bike at all?  That’s right…ALC regularly recruits complete beginners to the ride.  On top of that, ALC has been a regular motivator for countless people to win their battles with obesity.  You might not think of yourself as the “athletic type” now, but when you put your bike to rest in Los Angeles, you’ll be singing a different tune.  People of all ages, shapes, sizes, and conditions finish ALC.  Beyond that, cycling is one of the easiest activities to get started in, and touring and distance cycling is one of the easiest aspects of cycling to do well.  Your body is built for long-distance stamina already, and cycling is a low-impact activity that boasts the best energy / mileage efficiency available.  You’re going to be making this trip the most energy-efficient way you can…on a bike!  Don’t be your own worst enemy.  Sign up and give it a shot.  Even if the ride is too hard, you’ll still be a hero to those who depend on the services your ride will fund.

I want to ride in ALC, but my bike isn’t very good.

One of the most unfortunate things about cycling is that it often becomes a sport of conspicuous consumption.  When people think of a cyclist, they think of some skinny and vaguely European guy, decked in his finest custom spandex suit and aerodynamic helmet, sitting astride a bike that costs more than a car, as he charges over some French hill chasing after a title nobody really cares about.  It comes as no shock, then, that those who want to look serious about cycling often buy expensive bikes and tons of spandex suits so that they can look serious as they ride on the local trail at a cruising pace.  If you’re worried about your bike, stop worrying.  Pretty much everything that makes a bike expensive becomes a concern only when you’re trying to go fast (i.e. when you’re racing).  ALC isn’t about going fast.  You can go quite slowly and still finish each day.  Just like all kinds of people finish the ride, all kinds of bikes do.  The person to finish just after me completed the entire ride on a single-speed bike.  That’s right…where I had the luxury of gears, he climbed the hills with nothing but experience, patience, and determination.  People finish the ride on recumbent bikes (which many of them ride due to orthopedic problems), which are often heavier than regular bikes.  I met a rider who was riding a folding bike and another who was on a 1978 Univega…who rode every day in a t-shirt and jeans.  I didn’t look, but I’m sure there were several inexpensive hybrid bikes from Target or Wal*Mart in the ride.  If your bike has brakes and doesn’t fall apart constantly, you can probably finish ALC.

No, really…I’ve thought about this and I just don’t want to commit to that level of training or fund-raising.

I can completely respect your position.  Having done it, I can say that the training and the fund-raising will take your time and attention.  Or perhaps you’ve talked this over with your doctor and you really can’t safely finish a ride like this.  There are many excellent reasons to not ride ALC.  There are more ways to participate, though.  All those riders need an army of supporters to keep them on the road.  You might want to consider signing up as a roadie.  As a roadie, you will have a significantly lower fund-raising target (approximately $500) and you won’t have to worry yourself with training for the ride.  You’ll be out there every day keeping the riders safe, on-course, fed, sheltered, healthy, and happy.  As a once-and-future rider of ALC, I can say this about the roadies– I’d have failed without them.  Without food and water available every 20 miles…without the medical tent helping with a saddle sore…without someone minding my tent and gear…without friendly faces everywhere I turned, I would have never made it.  Maybe, if you’re reading this, your friend just signed up for the ride and you want to get involved.  This is a great way to do it.  On top of that, you’re going to see some very scenic parts of California.  You’ll have plenty of time to relax, enjoy the trip, and take things in.  Roadies come back year after year because it’s essentially a fun and socially beneficial vacation.  If you sign up as a roadie, you’re my hero.

Okay, so I’ve signed up.  Now what do I do?

Good for you!  Go get a friend to do it with you.  No, really.  That’s not a joke.  You’re going to share a tent with someone, so why not make that someone a friend?  Having a friend with you is going to make things easier from both a logistical and an emotional point of view, and it’s the one thing I really wish I had done on my ride.  Outside of that, you’ve got two tasks ahead of you: fund-raising and training (presuming you’re a rider).  I’ll be tackling those in subsequent posts.  Stay tuned!

TED Talks and Revolution

Out in the wilds of Facebook, a friend directed my attention to this article on Salon.com which presents a perspective on TED from the inside.  Given my audience, I don’t need to spend much time on explaining TED.  Pretty much anyone who uses the Internet and thinks of him/herself as “smart” has seen at least one TED talk at some point.  In fact, they’re such a staple of the Internet that they were recently lampooned by stuffwhitepeoplelike.com.  I am, of course, no exception to the rule.  I’ve seen quite a few of them, and while I have generally enjoyed most of the ones I have seen, somewhere around the 5th TED talk I watched, I felt like I was seeing a pattern in the presentations.  I confess, however, that it was a pattern I couldn’t put a serious critique to until I read the Salon article.  Now that I have, I definitely have lost a lot of the zeal I felt I had left for these talks.  They’re still interesting little bite-sized ideas, but it’s probably very much worth it to back up for a second and really look at TED for what it is.

I think the first thing that really bothered me about TED was TED itself.  After watching a few talks with my wife, we became very curious about the conference.  I work as a designer-of-gadgets and she works in cultural politics, and we started to wonder if maybe this was the sort of conference we could attend.  Of course, we were quickly surprised to discover the staggering cost to attend the conference, which really is small potatoes compared to the fact that admission is by invitation only.  Of course, those not able to acquire an invitation can attend a satellite conference at a steep but somewhat reduced price.  I certainly understand the need for people putting on a conference to cover their costs and to attract their core audience (since conferences are all about networking), and so I do understand TED’s admission policy and price, but I also think it’s fair to stop and ask what this policy says about the people who are considered a good fit for TED attendance and what it says about TED.  Its primary target audience are what the Salon article appropriately calls “creative elites,” and TED is an opportunity for this class of people to talk to themselves about how they want to revolutionize the world.  If you’re not sufficiently in the TED elite, your money’s still good to them, and if you’re not part of that elite and don’t have TED-level money, then your place is consuming the talks TED publishes online.  While that’s very generous of them to do so, I think it’s also fair to say that it’s still pretty elitist.  I also don’t have a problem with a little elitism, but let’s not mix it with the aesthetics of openness, democracy, or the individual.  TED wants to be about those things, but it repeats a system that is not.

This, too, is forgivable.  I’m a pretty morally generous person sometimes.  The next valid question is really about the general message of TED talks.  I do certainly believe that every person who has stood up to give a TED talk has been out to promote an optimistic and humanistic view of our near-term future.  In the TED world, we question, invent, innovate, and design a more perfect tomorrow.  I’m pretty sympathetic to that whole “World’s Fair mythos,” and its message of optimism and individual creativity struck me at an early age and produced a lifelong fascination with computers.  There remains, though, two major questions on my mind.  The first question is, and the easier one to discuss is this: What if a new, big innovation isn’t what we need? The second one is this: Can the TED creative elite recognize how the system which made them elites may have contributed to the injustices they seem interested in correcting?

The first question I see as the easier one to frame and the easier one to discuss, which is why I brought it up first.  It’s a valid question to raise because it strikes at the core of what TED is out to do.  Is this a conference about changing the world, or is it instead for the creative elite to produce an echo chamber for their values?  The reason why this is particularly valid to ask is because making the world a better place requires a “best tool for the job” mentality, and it’s not always the case that the best tool for the job is the most technologically advanced one.  The world is still a very large, diverse, and often self-contradictory place, and this alone means that the solution to a serious regional or global issue is often not one solution at all but rather a mix of tools and social structures which must be tailored to fit well within the material and cultural landscape in question.  Given my background, I can think of no recent project which expresses the clash between the TED values of “innovation will set us free” and the experience of those combating social ills on the ground than One Laptop Per Child (OLPC), so I’m going to use it as an example here.  Please keep in mind that I do know OPLC has developed since its first major publicity campaign and distribution push, and it will no doubt continue to improve its technology and its foreign relations and achieve some flavor of its goal, but I still feel the example is illustrative.

A couple of years ago, OLPC went on one of its “give one to get one” campaigns, timing it with the holiday season.  It led to a number of conversations I had with boosters of the project where I noticed that the conversations were not about the OLPC project, its technology, or its aims, but about a set of values that went behind them.  At the time, I was designing a smart phone for Motorola, and between working on issues from optimizing battery life under long-lived network conditions and sorting out how the Navajo deal with daylight saving time, I was learning to conceive of my project as a physical artifact that will really exist in the world…something that someone might call 911 on.  As a product engineer, I began wondering about the OLPC XO-1 (their first laptop model) as a physical artifact that people would use, and how this would relate to the goal of giving an education to those who might otherwise go without.  Would the children least likely to receive an education actually get and keep a laptop?  How could it be assured that a parent might not take it away from the child in need (perhaps a daughter) and give it to a child less in need (perhaps a son)?  What if the region in question becomes unstable, and some militia steals the laptops from the children because they’re a sign of American influence?  Can the laptop deliver meaningful education without the support of a school, which will have to purchase the means to service the laptops?  Would developing more libraries and schools, which have a significantly reduced cost per child, actually create more of the necessary society-changing education?  I didn’t honestly expect answers to these questions.  They’re very, very hard questions to answer.  I certainly don’t have answers to these questions.  In many cases, I don’t even know how to begin answering such a question.  What surprised me, however, was not the lack of answers to these questions but how hard it was to get others to recognize these questions as good ones to ask.

And, in fact, they are.  They’re good enough to be part of a college curriculum in the social context of technology.  When they’re asked, the initial goals and first steps of OLPC don’t shine as well as one might think.  I certainly won’t say it fails, but I would say that it shows problems with the initial ideals.  Asking these questions, however, among my cohorts…let’s say we’re the creative bourgeoisie…did not lead to a discussion about the issues they raise or a conversation about the XO-1 as a physical artifact.  Instead, the conversation would generally drift into a conversation about a set of values that the XO-1 represented– self-education, independent thinking, pulling oneself up from one’s bootstraps, and enabling an otherwise lost genius who will change the world.  They’re exciting and comforting ideas, and some flavor of them have been at play among anyone in the creative bourgeoisie or creative elite, but choosing a project because it feels good and reflects your values, without thorough thought about its viability to achieve its goal or the possibility of more successful alternatives, is not an optimal way to change the world.

And, at some level, that’s what TED is about– creative elites cloistering themselves to network and give self-congratulatory talks about the power of their values to change the world.  Selected talks are shared online to encourage a perpetuation of these values.  It’s not a wholly bad thing to get people fired up about innovation and the human spirit, but it also has the power to promote inefficient solutions to serious social issues simply because TED is not about the rather boring, tireless, and eternal effort to make a dent in social issues.  TED is about quick-fire world of ideas, and ideas rise, fall, and become world-known based largely on their ability to resonate with TED-values.  This is a good thing and a bad thing, but I think the “bad” side of it needs acknowledgment, especially when you consider that an idea popular in the TED community will have very low friction to implementation.  From the Salon article:

And in an impressive show of the networking pizzazz of the “TED community” as well. After awarding Jamie Oliver (“The Naked Chef”) the annual $100,000 TED prize this year, TEDsters leapt into action after Oliver delivered his wish onstage that every American child be taught to cook healthy foods. One audience member offered to donate trucks to repurpose as mobile cooking labs. Another volunteered to introduce Oliver to his friend Sen. Tom Harkin, D-Iowa, who sits on the Senate’s Agriculture Committee.

These are powerful and connected people.  They are a Get Stuff Done Elite.  If change can only come on things that connect with their values, then a huge opportunity for real change could easily be squandered for simply not being fashionable enough.

The second question actually follows from my coverage of the first.  The people invited to TED are, by and large, a certain cream of the crop in our current world.  As should follow from the example of how easily such a community can run to the aid of an idea they admire, they have been the beneficiaries of the status quo.  Upton Sinclair famously stated that it is very difficult to get a person to understand something if his or her paycheck depends on not understanding it, and indeed this has a great deal to do with the blindness that privilege delivers.  Privilege is maintained only through contribution in the system which grants it, and it takes a rather broad vision to see beyond one’s own condition.  I actually wouldn’t begrudge anyone invited to TED for not being crystal clear on the rest of the world’s experience.  They’re people, with jobs and families, and their attention is limited.  The question is whether or not this causes TED to become a forum suitable for social change if what must change is the system that gave rise to those TED community members in the first place.  Does TED challenge the injustices of the status quo or ignore them?  Some passages from the Salon article seem to give an interesting picture of this:

According to a study by Northeastern University’s Center for Labor Studies, unemployment for those in the top income bracket was at 3 percent in the fourth quarter of 2009 — nearly full employment. This may or may not help explain why after a year in which the economy shed almost 8 million jobs, there were no talks at TED this year that focused on employment, on bailouts or on corporations or politically connected financial institutions as impediments to reform or innovation.

[…]

A Google employee, after giving a mouthwatering demonstration of the various remarkable functionalities of the new Google phone, asked the audience, “So maybe what the world needs now is — more smart phones?” It wasn’t a rhetorical question. This year Google donated 2,000 phones to all conference attendees, a huge marketing coup any way you slice it, putting these phones in the hands of the chattering, creative classes.

True, it takes more than two incidents to talk about broad trends within a community, but when you consider that employment is on the minds of most Americans these days, it does seem a very curious omission, and while smartphones might likely be a second revolution once they become as ubiquitous globally as cellphones are now, I think it’s fair to question the motives of someone from a company backing a major mobile platform asserting that the world needs more smartphones.  This can be of critical importance in the question of the power for TED to change the world, because if the people invited to TED are, in fact, the beneficiaries of an inherently unjust system, then their efforts may be able to fight the symptoms of injustice but won’t see its cause.

This, finally, brings me about to the fascinating contradiction of our age, and it also brings me around to why I am not openly condemning TED.  The author of the Salon piece has been invited to speak on behalf of the Yes Men, a group who are internationally famous for using pranks to expose what they see as large-scale institutional social injustice.  Their experience at TED shows a pattern– when speaking about a system that perpetuates our modern problems, the audience is silent.  But when discussing the pranks of the Yes Men and the desire to produce a new army of culture jammers, the TED audience is amused and rapt.  The reason for this is clear.  First off, the Yes Men are really funny.  Epic pranks.  Everyone loves a good prank.  Secondly, it’s because their model of protest comports with TED values– it focuses on individuals acting in creative and innovative ways to do something amusing to shake up the way people think about the world.  Most importantly, it’s non-threatening, because it’s just performance art and you can always look away.  And so, the result is that the talk was successful once it wasn’t a downer or strictly about the problems of the world.

Even more interesting is that, afterwards, “the secret radicals” of the audience were ready to help launch the project.  It’s a fascinating question to ask why, at a conference dedicated to spreading ideas that change the world, anyone would have to be a radical in secret.  The other thing that brings to light, though, is the curious paradox of our era– it takes the participation of an elite to make real progress, even when it comes to progress in leveling the playing field.  The Salon article closes by suggesting that this is, ultimately, the power of TED– elite though it is, it’s a place where an anti-capitalist provocateur can give a sales pitch to a number of other people and network.  Perhaps, and it’s a good step, but the question I would ask in return is if it’s really that great of a thing.  I’m a pragmatist, so I’m glad to see the Yes Men getting more attention and more connections, but is it really a good thing that it takes a sales pitch that comports with the values of an elite group to recognize that perhaps it would be a good thing for a more fair set of rules to dictate society?

ArcanOS pre-FOOL: Boot Summary and Heap Allocator

Last night, I did a push to the code repository for ArcanOS which represents the last of the work needed for its first heap allocator.  I inherited the majority of my bootloader code (please see the project website for my acknowledgements), so I decided that my first milestone for ArcanOS wouldn’t be “it boots and can run C code.”  That’s an amazing luxury, I might add.  The x86 boot process is rather arcane, as is learning how to read from a hard drive.  In short, the bootloader has to do a few things.  First, it has to set up a stack.  Then, it has to enable the A20 line so you can access some real memory.  Then, it has to set up some sort of segmentation as a prelude to switching to protected mode (so that 32-bit code can be used, among other things).  After all of that, being in 32-bit mode and armed with a stack, it can run the rest of itself in fairly standard gcc C, and you can thus more easily do the final task– loading and dispatching a bigger binary to do more meaningful work.

ArcanOS currently has no file system, so the kernel is just stuffed on the sector after the boot sector.  The kernel is an ELF binary, and the headers for ELF give the necessary information about where to load the kernel and how to jump to it.  The entry point to the kernel is actually in assembly because the first thing the kernel does is re-do memory segmentation so that the kernel loads into the higher memory addresses.  The boot loader actually loads the kernel at roughly 1MB, but the kernel is linked to be loaded at address 0xf0000000 + 1MB, so the first thing that’s done is that a new descriptor table is loaded to map all the low memory to high addresses.  This actually moves the video memory buffers up into the higher addresses as well, which is why the ArcanOS “console driver” must offset its writes by KERNBASE.

I’m going to skip over my experiences writing the “console driver” for now.  Suffice it to say, when you are implementing your own kernel, you quickly realize how little you have to work with.  I was once told that, ultimately, there are only two debugging tools — cleverness and printf( ).  I actually repeat that to rookies on my team, because, generally speaking, it’s true.  Well, guess what?  On day 1 of your kernel, you don’t have printf( ), and you have to go make one for yourself.  That starts with a functional screen console of some kind, and some bits of library code, such as itoa( ), that you’ve likely taken for granted your whole life.  So, a fairly considerable amount of time went into just getting some basic screen printing for debugging purposes.  I have no doubt that the “console driver” is, ultimately, throw-away code in favor of a far more robust console system, but necessity dictates.

The other thing I wanted to go ahead and get out of the way was a kernel heap allocator.  If there’s another function we all take for granted, it’s malloc( ).  There is no malloc( ) in your kernel if you don’t write it yourself.  This itself was an interesting journey, because the first challenge is finding a place to start the heap.  Placing the heap wrong might mean overwriting the kernel or running into memory dedicated to hardware I/O.  Fortunately, there isn’t much hardware to dodge once you’re above the 1MB offset, so the question is how to find where the kernel ends.  The way I’ve solved this is by extending the linker script called “kernel.ld”.  The PROVIDE( ) function in linker script language is particularly useful, and it lets you store information gathered in the linking process into C variables which you declare “extern”.  You can see the code which “receives” this information in kern/init.c.

What about the allocator itself?  Well, I decided that determining the amount of RAM on the target platform was a fish too big to fry right away.  RAM detection requires that I either give up my boot loader in favor of GRUB or that I add RAM detection into my boot loader before I go into protected mode (since it requires BIOS calls).  Both are non-trivial, and I also don’t plan on doing any massive allocations any time soon.  Given this, the heap just naively assumes it’s got 1MB of space in which to work.  I’ll correct this in future releases.

The allocation algorithm is incredibly simple.  The allocator will check to see if it’s got a free chunk that’s already the right size and will return that if it’s available.  Otherwise, the last member of the free list is always the “frontier” of never-before-allocated space, and it will carve off a new hunk from it.  The algorithm for freeing space it so simply move the chunk from the “allocated list” into the “free list” for future use.  There’s no provision for coalescing chunks together in the free list or anything like that, and I have some reasons for not doing this.  The first reason is because, frankly, I expect that I will rewrite this heap allocator when I have RAM detection and other goodies of this nature available to me.  The other major reason is because this allocation scheme is, in reality, enough to keep development moving along for now.  ArcanOS currently just services itself, and its allocation needs are small, and the 1MB space is likely to be plenty for a while.  Moreover, I expect most of my allocation needs will be a handful of objects of regular size.  If I were allocating lots of things of different sizes, this would eat into memory pretty badly, but if I’m just allocating structs of the same type over and over again, this system works pretty well.  Finally, a more complex algorithm means more chances for bugs…at a time when my available debugging options aren’t huge.  It’s unwise to invite extra bugs for functionality you don’t need when you expect you’re going to rewrite it anyway.

A crummy malloc( ) is, by the way, WAY better than no malloc( ) at all.

And now, armed with console out and a heap allocator, it’s time for me to attack the last feature for the FOOL milestone — writing ISRs and turning on interrupts.

An Introduction

It has occurred to me that the majority of people who read this post may, in fact, not already know me.  So, while I could tell the story of starting over on a personal blog outside of my former one at LiveJournal, it wouldn’t be highly relevant.  That’s a story I’ll save for another post and another time.

Hi there.  I’m Rhett Aultman.  At the time of this post, I’m 31 years old.  I’m a software engineer for HP.  I currently work in our Palm business unit.  Generically speaking, I work on WebOS.  I have a Masters in Computer Science from the University of Florida, having opted for this degree after withdrawing from the doctoral program.  I have no particular hard feelings about my time in that program, and I’m still on quite friendly terms with Dr. Boykin, one of my former advisers.  I have a love for operating systems design and implementation.  I was the staff coordinating teaching assistant for the University of Florida’s undergraduate operating systems course for several semesters.  I also was an engineer responsible for kernel and driver implementation of the Motorola Q9h.  My love of operating systems is, of course, why I’m happy to be an engineer within the Palm business unit of HP.  In my spare time, I am working on a hobby OS called ArcanOS.  I expect a number of posts here will come from my wrestling with ArcanOS development.

I’m also an athlete.  It’s taken me a long time to come around to saying that, but it’s true.  I’m a nerd-jock.  Or a jock-nerd.  Or something.  My primary event is long distance cycling, which I do for charity rather than for competition.  In 2010, I completed AIDS/LifeCycle, a 7-day ride covering a 545-mile route from San Francisco to Los Angeles.  I also am becoming more of a runner, where I’m finding moderate distances the most rewarding.  I really prefer 10k and 12k runs, where I do a bit better than 9:00 miles.  I’ll be attempting my first half marathon in October.  I exercise nearly every day, with most of it coming from 20 miles of commuting by bicycle every day.  This is something I have to do for myself to ward off obesity, which seems to plague many members of my extended family.  A good number of my posts will likely surround this, as well.

I’m also learning to surf.  Fail is likely to ensure.  Watch this space.

I have an active avocation in video production.  The majority of my efforts have involved events video for roller derby leagues.  I’ve done four season-long tours of duty with local leagues in Florida and most recently with the Silicon Valley Roller Girls.  On occasion, I’ve used my video skills in a professional setting, most notably with HP, where I’ve produced training and demonstration videos.

Finally, there’s the whole “mystic atheist” thing.  That may seem like a contradiction in terms, but I hope that, over time, that comes to seem less so.  I’ve been active in Pagan pursuits of some flavor for over 15 years now, but somewhere in my early 20s, I came to conclude that my belief in the existence of any form of deity, and indeed in the existence of most metaphysical constructs, was indefensible.  This is not to say, however, that I find the concept of spiritual pursuit to be pointless, though I think that healthy spiritual progress does necessitate outgrowing one’s naive belief in a number of things.  I’m currently learning more about what is broadly known as the Western Mystery Tradition and I am actively pursuing the curriculum of the Open Source Order of the Golden Dawn.  I’ve found a wonderful community within this group, and I also believe I’ve found within them a means for learning more about western occultism in a framework where my atheistic cosmology is respected.  Believers are likely to see me as deluded; more “serious” atheists are likely to see me as only playing at atheism.  I prefer to think, however, that I’ve rather thoughtfully reconciled my passions for atheistic existentialism and spiritual pursuit.  You be the judge.

I very much appreciate you taking the time to read this introduction.  I’m quite happy to have finally started a blog on my own domain.