Posts belonging to Category Random Ramblings



Annoying Math Geekery

I heard this commercial on the radio the other morning about the three-day walk to raise money for breast cancer research.  The guy in the commercial said something to the effect that he’d walk a million miles to make breast cancer go away.  It’s certainly a worthy project, and I don’t mean to demean their effort.  However, the math geek in the back of my brain started grumbling about it, to the point where I couldn’t help but grab the calculator and do the calculations.  My initial impression was that it would be impossible to do this as it would take longer than the human lifespan to walk one million miles.

In order to determine that, though, we have to establish a few assumptions to feed into the calculations.  First, what is the average walking speed for an adult?  I seem to recall reading somewhere that it ranged from two to four miles per hour.  I know that from my morning dog walks that I have to keep up a fairly decent pace to maintain an average of three miles per hour (although this average includes doggie sniff/pee/poop activities, which means the actual speed is likely higher).  But for the sake of this calculation I will use three miles per hour. 

Using just the average speed would not give us a very accurate idea of how long it would take to walk one million miles, though, since humans are not capable of walking that far without stopping for food, water, and sleep.  Let’s assume that the person treats this like a day job and spends eight hours per day walking.  At this point we face the choice of whether this person also stops for weekends or goes every day.  To simplify this a bit, we will assume that this person walks every day without any days off.  Further, we will assume that a year is 365 days (i.e. we won’t worry about leap years/days).

So, at three miles per hour, one million miles would take approximately 333333.33 hours (damn repeating decimal…  should have chosen 4 mph I guess).  If we divide that by 8hr/day we get approximately 41666.67 days.  At 365 days/year that would come to approximately 114.16 years. 

Just for kicks, here are the results for some other speeds (assuming 8 hours per day and 365 days per year):

Speed Time
4 mph 85.61 years
5 mph 68.49 years

After analyzing this one to death, I think I can say that my original suspicion was correct.  You can’t walk one million miles, at least not at a sustainable pace during a normal human lifespan.

Completely Out Of Hand…

Netflix has a feature where you can rate movies you’ve seen in the past so that they can give you recommendations for other movies you might like.  So while I’m sitting around watching TV or otherwise wasting time I’ll go through the ratings pages and rate movies.

I’m not certain how good the recommendations are, given that more often than not I’m not interested in them.  However, I have found a few interesting movies to add to my queue.

But it’s certainly not for lack of ratings on my part:

image

Hmm… only 17 to go before I hit 500.  And I keep remembering movies I’ve seen so I may get there fairly quickly.

Update: That didn’t take long…

image

A Serious Road Trip

The next time I’m tempted to complain about taking a road trip, I will try to remember the truck that I saw up the street this morning with Alaska plates.  I don’t know what part of Alaska they’re from, but Mapquest informs me that it’s 3379 miles from Juneau and 4129 from Fairbanks to Keller.  Both of those numbers make my eyes glaze over just thinking about driving that far.

The Political Meatgrinder

I’ve been contemplating writing about this topic for a few days now and it was somewhat fortuitous that I came across this piece from The GeekWithA.45.  It brings home an important lesson, which the idealistic often learn the hard way.

Political forces and processes exist, whether you want them to or not, whether you consent to them or not, and whether you participate in them or not.

They can harm you, and are ignored entirely at your own peril.

A common failing among technical people is that they see politics as dirty and beneath them.  They wear their nonpolitical status as a badge of honor.  To them, engaging in politics would mean compromising their principles.  They also can’t see the point of being polite to all those stupid nontechnical people.  They desperately want to live by a code that rewards being right and having the best abilities and where everything is “fair.”

Unfortunately, the real world doesn’t work like that.  There are political elements to everything that happens in the business world.  Ignoring that fact will eventually cause a technical person to run into a brick wall.  Usually head first. 

It also doesn’t help that amongst geeks technical discussions are carried out with little regard for social niceties.  Solutions are arrived at through a process that seems rude, mean, and nasty to an outside observer.  Non-technical people don’t understand how people can go into a room, demean each other’s ideas, and then emerge without anyone having been killed.  Unfortunately, when a geek gets exercised about something he tends to forget that non-geeks don’t appreciate this form of discourse. 

So you end up with the worst of all possible combinations:  someone who sees it as a virtue that he doesn’t play politics and who regards social niceties as a sell-out of his values.  And I almost forgot to mention a dogged determination to be right, regardless of the consequences.

I know all these things because I’ve seen it time and time again.  Worse, I’ve been that way myself, before I wised up.  I was luckier than he was in that it didn’t cost me a job to learn the lessons of how to get along.

I know a lot of people deride most of the self-help courses, but I have to credit being sent to the Seven Habits course with helping me change.  The most important thing I learned was that I was in control of my reactions.  I think it had reached a point where people would come into my office and bring up my “button pushing” topics just to see me take off (kind of like a wind-up toy).

I learned that taking control of my reactions, remaining calm, and listening to what the other person was saying before responding (and not just waiting to get in a rejoinder) allowed me to get further than bullheadedly charging forward and demanding that the other person yield because I was right.  It also showed me that the person who responds calmly and with reason will be taken more seriously than the guy who is ranting.  Saying, “I’m not certain that the approach you’ve outlined is the best one for the problem,” will get people to listen to you better than saying , “That’s a stupid idea and it won’t work.” 

It all seems pretty damn obvious now, but it takes a while for the idealistic geek to come around to these social niceties.  Unfortunately, I’m watching someone I know run himself into this meatgrinder.  It’s a vicious cycle.  He gets upset with some code he sees as inefficient or inelegant and proclaims loudly to all who will listen that the code is a piece of crap.  When he’s denied the chance to make wholesale changes (management wouldn’t fund the testing costs for these kinds of changes to an app with half-a-million lines of code) he gets frustrated and gets more angry.  As he gets more angry he gets louder and less polite, which means they’re even less likely to listen to him.  That, in turn, gets him more frustrated.  Repeat ad nauseam.

All it would have taken to head off this impasse would have been a bit of political understanding.  All he did was couch his desire for changes in terms of how he felt about the code, not in terms that the management understood.  They don’t really give a damn if he’s happy with it.  They just see an application that is working in production.  Understanding the needs and wants of management would have allowed him to rephrase his request in a way that demonstrated the benefit to them of these changes.  While he may have viewed this as a sell-out, I view it as a way of creating a win-win situation (Seven Habits again).  The management gets something they want and he gets to do something he wants.

Of course, it’s probably impossible to set up a win-win situation with a malicious person, like the one GeekWithA.45 encountered.  That’s where your awareness of politics plays its part as a distant early warning system.  It’s no fun to have to play the defensive in this sort of situation, but it’s better than being blindsided and swept aside altogether. 

I hate politics, but rather than butt heads with it, I’ve learned that it’s a necessary evil and how to at least work around it.  It doesn’t matter whether you play the game or not, the game will play you if you’re not at least aware of it.

I Blame The Self-Esteem Pushers

What do I blame them for?  The excreable American Idol “performances” of those fools who think they can somehow become famous despite having no talent or skills.  I don’t watch the damn show, but I can’t help but be exposed to it while watching the news on the local Fox affiliate.  It seems that every other commercial is a promo featuring some damn fool belting out an off-key (perhaps that is too generous as it implies proximity to a key) rendention of some song that is nearly unrecognizable.

True self-esteem comes from having a talent or ability to something well.  It also means knowing one’s limitations and capabilities.

Pumping kids full of self-esteem simply for the sake of them having high self-esteem does them no service.  It renders them incapable of accurately assessing their own abilities and failings and leads them into a trap of unrealistic expectations.  Or perhaps we’re simply breeding a generation without the ability to be ashamed.  Whatever it is, we need to stop doing it before we have to endure more American Idol-style nonsense. 

And The Number Of Thy Counting Shall Be Nine

I’ve always wondered why the snooze button on an alarm clock goes in nine minute intervals.  I was hoping for some psychological or physiological explanation (e.x. nine minutes was just “odd” enough that people wouldn’t get completely comfortable or something to that effect), but the real explanation is much more mundane.  It turns out that the first clock with a snooze button was a mechanical one and the gear configuration was such that they could either choose nine-plus minutes or ten-plus minutes (it wasn’t possible to make it exactly ten minutes).  They chose nine-plus because it was closer to ten minutes without going over.  When digital clocks came out it appears that the chip designers just copied the interval from the mechanical clocks, although with digital it was possible to make it precisely nine minutes.  And hence a standard was born.

If You’re Indispensible You Can’t Move

It always annoys me a bit when someone pops up with a question about some code I worked on five years ago and thinks I should remember the complete details of some method or function that I wrote.  Hell, I can barely remember what I did yesterday at times.

Of course I also make a convenient “authority” to cite when someone wants something that may not have been intended, since I’m no longer on that project.  The current project manager sent me a portion of an IM session with someone who claims I told them a particular thing would work (or that they told me that a certain thing was a requirement).  I suppose they didn’t realize that the current team would ask me about it.  Not that it helps anyone, since I don’t have any memory of it after all this time.

Let this be a lesson about why it’s a good idea to keep good requirements documents as well as project logs (or a “decisions” document).  This old project was one that grew “organically” out of some smaller application and it was never documented and the customer wasn’t interested in spending any money to create documentation.  That was also the reason that it was such a cast iron bitch getting myself out of it.  If you are the one who best understands the code and there isn’t any documentation, then they don’t want to let you move on to other work.  But after five years on the project they’d reached a point where it was all maintenance and I was going a bit nuts.  It took a full year after I requested a new assignment before I was allowed to move.  I moved to another project in January 2001 and it took until late 2002 before they were really self-sufficient (the really annoying part was that I had to give them the same lessons several times, usually after they claimed to have “lost” their notes from the previous “knowledge transfer” session). 

A Cold Day In Washington

I was trying to watch the FoxNews streaming feed from Washington, DC but it kept cutting out so I gave up a minute ago.  But from what I saw it looked pretty cold there.  The Marine Band was playing in the background while people filed in for the ceremony.  I kind of felt sorry for them having to perform in that kind of weather.  I’ve done that sort of thing and it’s not easy.  My biggest problem was cold hands.  It makes them stiff and you have to really work to keep them warm (I was a percussionist).

The other annoying fact of physics is that cold instruments go flat.  The seemed to be compensating pretty well so far (but I wonder how far those brass players have their slides pushed in).  I recall one performance when I was in college when I was in the pit where it was so cold that I had to stop playing the marimba because the band had collectively gone flat (it was probably about 15° outside).  At least I was able to detune the tympani to match the band (the advantage of a continuously tunable instrument).

Old Habits Die Hard

I thought that after more than a year working from home I’d eradicated the habit.  However, spending just half-a-day in the office yesterday has reawakened my almost automatic impulse to dial ‘9’ before phone numbers (which our PBX requires to get an outside line).  Unfortunately, doing this at home results in a screwed up call.

It’s amazing how such a small bit of reinforcement can cause an old habit to come back full force. 

Web Frustration

One thing that will turn me off to a website almost instantly is when that website attempts to drive you into a local store to get basic information.  The other is a website that forces you to submit some sort of contact form to get info, which I almost never do.  But I don’t want to get into that right now as I’m concerned with the first case.  In my searches for home organization “stuff” I’ve tried to use the websites for both Home Depot and Lowe’s, with little success.

Home Depot’s site only seems to show items that they sell online.  For other items they force you to go into their stores just to get information.  I can understand that they wouldn’t want to sell certain items online, but they could at least give information on their products online so I can do some basic research and generate ideas.  By refusing to put their full product line online they effectively remove their site from consideration for me when I’m trying to come up with a solution, since I never know when a search of the site will turn up a useful item or a message telling me to go to the store.  Worse still is that items that they do carry online don’t seem to be in the stores.  I looked on their site to get an idea of the types of shelving hardware they carried.  I used the items I found to create a list which I took to the store.  But when I got to the store I couldn’t find that brand of hardware anywhere.  Fortunately they had almost equivalent items from Rubbermaid (wall standards, shelf brackets, and shelving).  But in the end, their website wasn’t even useful for my visit to the store.  I had to revise my plan in my head to fit the available items which weren’t on their site.  Finally, their site has some kind of bug with regards to item links.  If you’re browsing a category page and want to open an individual item’s page in a separate window you will instead get the category page again in the second window.  I tend to browse like this so I can examine an item without losing my place on the original page.  Because of this bug I have to wait for the (slow) category page to load in the second window and then wait again while the (slow) item page loads. 

As for Lowe’s, they are somewhat better, but only marginally.  They demand your ZIP code as soon as you start looking at items to determine if the items are available at the nearest store.  But I ran into an infuriating situation where when I clicked an item it informed me that it wasn’t available in the nearest store and my choices were to search again or continue browsing.  I interpreted the “continue” option to mean that I could see the item anyway, but selecting it returned me to the home page.  Frankly, that’s a crappy thing to do and it kind of ticked me off, since it interrupted my flow. 

In general a website should provide as much information as possible about the company’s available products.  The marketers may want to drive local store visits and revenue but this desire should never get in the way of the customer obtaining information.  Trying to make the customer fit into the company’s mold of how business should work will only annoy the customer and potentially drive that customer to look at a competitor. 

I kind of prefer Lowe’s over Home Depot, at least in that their stores seem to be a little nicer.  However, whichever of them that would allow me to browse their product line without hassling me about going to the store to get information would get more of my business.  If they want to drive store visits they can put messages on the product descriptions about store availability as long as they don’t prevent browsing the item based on that.  As an example, Radio Shack’s website is good about this.  It will show you the availability of an item both online and at your three closest stores.