10/29/2007

When I am King: Neighborhoodwinked

When I am King...

Housing developments will have more accurate names.

There's a small townhouse development in my town called Hidden Oak. I walked around the whole development once (it took 20 seconds). There not only wasn't an oak tree – there wasn't even a spot of earth from which a tree could grow. It was all parking lot and townhouses crowding in upon each other like kids under a busted pinata.

I suppose the name of the place wasn't actually wrong – if there was an oak there, it really was hidden. But what does that have to do with the name of the place? Just because something doesn't exist doesn't mean that we have to name a housing development after it. We might as well call it “Jimmy Hoffa,” or “The Honest Politician,” or “Paris Hilton's Brain.”

Let's examine some samples of current housing development names, just to hammer the point home. Now remember; these are new developments, the ones where there's a bunch of barren clay covered mostly with slab foundations, sidewalk, and tarmac. If they're really fancy developments, maybe there are some starter trees planted and some new sod rolled out. But there is never anything remotely like real natural surroundings. So here they are, real samples of new housing development names:
  • The Anchorage at Marina Bay
  • Cortina at Live Oak Ranch
  • Woodbridge
  • The Heights at Grain Crest
  • Garden Walk
  • Ivy at Montage
  • Crossings at Eden Shores
  • Bella Vista Gardens
  • Seacliff at Point Richmond
  • Oak Court
  • Teal Cove at Cypress Grove
  • Ponderosa Estates at Ironwood

The last of these is particularly good. I guess it's supposed to conjure up images of western ranches, maybe a few hundred head of cattle, and limitless horizons. But I've seen this development and I know for a fact that it's a compressed neighborhood directly across the street from the local dump.

After looking at these names for a while, I realized that most of them use a simple formula. I could even write a program to create these names, and maybe that's what the developers use. Here's the way it works:

  1. You take the name of a tree, like Oak
  2. You then add the name of some kind of land feature, like Shores
  3. Put them together, and you've got a housing development: Oak Shores

Let's try some examples:

  • Redwood Cliffs
  • Elm Grove
  • Acorn Plateau
  • Maple Glen

Wouldn't these make lovely housing development names? Wouldn't you like to live in places with names like these?

There's another formula that's used when developers want to make their property sound fancier to justify pumping up the house prices a couple of hundred grand. This formula produces names that are more formal-sounding, unlike the patently casual and down-market names above. Here it is:

  1. Start with The
  2. Add the name of a tree OR a land feature, but, and here's the important bit, pluralize it, like Oaks or Shores
  3. Add a crucial preposition, like at
  4. Add the name of a place, either real or imagined, like Summerville
  5. Put them all together, and you've got an exclusive housing development, like The Shores at Summerville

Let's try some names of our own with this formula, to see if we could be rich land developers:

  • The Beaches at Larchmont
  • The Hilltops of Sinvale
  • The Forests of Gwymn (note the unpronounceable ending word here; this ensures that the unwashed masses will be unable to even find the gated community, much less try to break in)
  • The Birches at Fresno
  • The Palms of Duluth

Things have clearly gone too far. It's high time that we had a bit of truth in advertising. Why can't we have housing development names that actually reflect something of the surrounding community? Don't developers think that people are smart enough to figure out, when they first enter the development, that there is no Oak at the Shore? Or that the nearest Shore is a four hour drive away? Why not pick features that more accurately describe what the place is all about?

Here are some names that I would like to see. They don't come from any formula, but rather from simple observation of many of the new development areas I've seen springing up in my community:

  • Dump View
  • Across from the Landfill
  • Shaky Grounds
  • Moldy Valley
  • Fault Zone
  • Flood Plains
  • Tornado Alley

When I am King, I'll enforce truth in advertising for these places and ensure that the names reflect their surroundings. My people would be far happier with their homes, knowing that this was all there was in their lives. Or if not, it would at least be nice if they didn't waste their time looking for the nonexistent Oak or Shore.

10/25/2007

Male Pattern Boldness

Note: This is a seriously geeky entry, non-programmers beware.

Note2: I've taken a lazy approach to writing this post, and have simply copied this piece wholesale from my Java blog. I understand that sometimes clicking through a link is just more than someone can manage. Also, pasting the whole thing here makes it look more substantial than just linking providing a to it. And if it's funny once, it must be funnier twice, right?


Longtime readers of my blog will know that I'm a huge fan of Design Patterns. Patterns wrap complex architectures with simplistic descriptions. They create wonderful buzzwords that we can use instead of resorting to actual human language descriptions. And they help enforce that feeling that we're all a part of an elite clique shunned by society not by their choice, but by ours.

So it is with much happiness and joy (refer to the Joyous Configuration pattern for more background on this emotion) that I hereby announce more patterns to help the software community in the tedious and underappreciated lives that we lead.


Refactory

The Refactory pattern, a spin-off of the earlier Factory pattern, is useful for engineering teams that enjoy the infinite redesign cycle of software. While the code may work perfectly well in some configuration, chances are great that the entire code base can be completely refactored to have the same functionality, but with different class hierarchies, indenting styles, and naming conventions. This pattern provides for such standard refactoring methods as arbitraryRename(),
codeRestyler(), classHierarchyFlattener(), and classHierarchyExpander(). This single pattern is often credited with being the cornerstone of our entire industry.

Delicate

The Delicate pattern, like the traditional Delegate pattern, is signified by its extreme use of indirection and object layering, where a successful implementation will be comprised of so many layers of API and object wrappers that the final result is apt to break easily and nondeterministically. As Chris Campbell pointed out to me, the Delicate pattern is a critical part of the trendy Fragile Programming methodology.

Obliterator

The Obliterator pattern is a combination of the Iterator pattern, which is useful for walking through a list of objects, and deletion functionality. When applied to any list
of objects, it automatically walks the list and deletes all members, then removes the list, the calling function, and the application itself. Variations of the pattern have been known to also destroy the operating system, the computers running the system, the networks on which the pattern is deployed, and the universe in which the pattern exists. Use with care, or at least ask your users to test it for you before declaring the product final.

Veneer

The Veneer pattern is a thin, attractive wrapper on top of a rat's nest of spaghetti code. The pattern is similar to its forerunner, the Fa├žade pattern, except that it avoids the use of special internationalized letters that make correct spelling difficult for English programmers.

Disfunctional

Contrary to the related Functional Design pattern, the Disfunctional pattern requires every component of a system to know about and perform every possible operation. Variants of the pattern exist, such as the Gossip and Nosey Parker patterns.

Lethargic Initialization

Like the Lazy Initialization pattern, the Lethargic Initialization pattern delays creation and calculation until such time as it is needed. However, the Lethargic pattern adds the additional requirement that operations be carried out slowly, if at all, and may not actually complete when the information is needed by the system. This approach has distinct advantages over the Lazy pattern. Systems using the Lethargic approach can never suffer the performance hit that is possible with the Lazy pattern, because at no time is the system actually doing much, if any, work.

Single

Like the Singleton pattern, the Single represents objects of which there is only one instance in the system. However, the Single pattern has the important distinction that its objects are constantly on the search for other objects to combine with, in a desperate attempt to avoid being stuck on their own. A Single object will print any line, tell any recursion tail, or go into any foo bar as it tries to pair off with other Singles.

Cunning Plan

Like the earlier Strategy pattern, the Cunning Plan pattern cleverly selects the implementation of an algorithm on the fly. However, this more radical approach automatically selects the most devious and subversive methodology, designed to undermine the entire system from within.

It's clear that there are many more patterns that we can invent if
we just set our minds to the task and find appropriately obscure
words with which to name them. But hopefully the selection above will invigorate
the community to begin implementing brave new architectures based
on proven, robust buzzwords.

10/24/2007

Driving Me Crazy

My car died last night.
Oh no - was it auto immune disease?
No, it had a caronary.
What happened?
A wagon struck it - it was a cart attack. Then the little wagon took off. It was a hit and runt.
That's too bad - was it a young car?
No, it was old and retired.

10/18/2007

Happy Thoughts for Friday

They say that you can never understand another man's problems until you've walked a mile in his shoes.
Try to understand how much worse he feels, now that you've stolen his shoes.


Some say that rain is the angels crying.
But teardrops are tiny things. Rain has much larger drops and streams. Like pee.


Happiness is like a sunbeam. It's comforting at first, but stay there long enough and it'll give you skin cancer.

10/16/2007

When I am King: A Stirring Tale

When I am King...

Frozen lunches will be packaged with live frogs.

Microwaves are great. In just two minutes, they can turn a completely frozen block of food into a mass of scalding hot pools simmering in frozen passageways, like a volcano in the antarctic. If you average out the temperature over the entire volume of food, the meal is reasonably warm for eating. But if you try to eat the meal exactly as it comes out of the microwave, you would both break your teeth and cauterize the wounds.

Inevitably, you have to deal with the food as it cooks, taking it out and stirring it intermittently, so that you equalize the extremes in the final result. Wouldn't it be nice if the microwave automatically cooked the food evenly instead?

Of course, the solution of fixing microwave technology so that it addressed the root problem would be best. But don't hold your breath. The last time the industry tried to address the issue, we got the spinning-tray workaround, where your food now twirls in the oven like a ballerina, if she were frozen and then bombarded with subatomic particles until she boiled from the inside.

No, if we're going to fix this problem, we'll have to do it ourselves.

That's why I've had my top scientists looking into the problem, and we have a solution on the way: Frogs.

Did you realize that the Wood Frog can survive both freezing solid and thawing out? When my team discovered this fact, we knew that we had stumbled on the perfect solution to this nagging culinary problem.

Here's the idea: we will freeze frogs and pack them in the same container with frozen entrees. Then later, when the food container is microwaved, the frog will automatically be thawed out during the reheating process. And, being an water-dwelling creature that has suddenly woken up inside a lunch container packed with random non-frog food particles, and having the unusual feeling of being nuked alive, they will naturally thrash around in a state of panic. This, in turn, will effectively stir the food as it cooks. They will be particularly effective at the job; frog's legs are powerful tools for both jumping and whisking.

The result? A steaming hot meal that comes out of the microwave pre-stirred and adjusted for all hot and cold spots of the microwaving process.

There is a small issue to work out here where the frog-stirred meal will taste, well, froggy. And the thrashing about might put some measure of frog slime into the surrounding food. This result is perfect for meals where frog is part of the desired result; testing in the French market has been quite favorable so far. It has not yet panned out as well in user testing with, for example, vegetarian entrees or delicate desserts. Work continues apace and we expect to have a general solution eventually.

Rest assured, we will solve these problems: To poorly-cooked meals, our society can finally micro-wave goodbye.

10/12/2007

Crisis Mode

CRISIS IN MIDLIFE
World Leaders Unite. Bush Declares War.

(This text was the background script for a standup gig I di; that video is posted in a later entry here)

I'm thinking about starting my midlife crisis. I figure it's a good time for having one. I'm 42, so if this is mid-way through my life then I'll die when I'm 84. I thought about having one when I was 21, but it's a good thing I didn't since I'd be dead now.

Wouldn't it be nice if you could plan when your midlife crisis would happen? But it's just something that starts when it feels like it and keeps dragging on and on and on. Like a public radio membership drive. Or puking.

Why does someone even have a midlife crisis? Everything may be going very well in life:

  • You may be happily married. For the second or third time.
  • You may have kids. They may even not hate you. Yet.
  • You may feel very healthy and completely unaware of your terminal illness.
But we get bored with success. We feel the need to just screw it all up. Like "New Coke". Or Britney Spears's career.

There are usually three ways that people go about it:
  1. You can change your partner
  2. You can change your stuff
  3. You can change your self

Option #1: Change your partner

I don't know where you stand on the issue, but I envy all of those people having clandestine affairs. I mean, think of their awesome time management skills!

Where would I fit in an affair? Or even a quickie? Maybe I could manage it if I could figure out how to do it over Intimate Messaging.

But regardless, my wife would certainly find out, and then she'd kill me. Then it would be an end-of-life crisis, which isn't what I was after.

Option #2: Change your stuff

This usually entails getting a ridiculously expensive sports car, in a desperate attempt to look cooler than we actually are.

I could drive home in some new expensive sports car like a friend of mine, who spent his wife's kitchen remodel money on a new BMW Z3. Then six months later, he drove home in a new Z4, with the Z3 still sitting in his driveway.

At this point, he should have considered going for both options 1 and 2 and driven home with a new wife, because his previous wife situation wasn't working for him anymore.

I personally couldn't go the car route. For one thing, I'm too cheap. Why buy a convertible when I could get the same effect for free by just messing up my hair and squishing some bugs on my forehead?

But more importantly, I couldn't because my wife would kick the crap out of me for wasting so much money.

Option #3: Change your self

There are a few things I could do here:

  • I could go radical and have a sex change. But frankly, I think I'd make a really ugly girl. I wouldn't even go out with me.
  • I could change my appearance. I could get glasses. Wait - I'm a programmer; I already have glasses. I am that cool already...
  • I could change the inner me.

I'm opting for changing the inner me. I'm going to get a little dark and subversive. I'm going to get into leather, and studs, and piercings. And then bondage and S&M.

I figure, my wife's going to hit me anyway. I may as well enjoy it.

10/09/2007

Little Jokes for Tuesday

I met a woman last week who uses a PO Box because she's concerned that unknown guys should not know her real address.
So apparently she uses her PO Box because of male problems.


Don't you think that each member of an orchestra is instrumental?

10/05/2007

Dog Is My Copilot

I went to the vet the other day to get some medicine for my dog.
It went something like this:

Me: Hi - I'm here to pick up some pills for Tempo.
Her: What's his last name?
Me: I don't know, he's never told me.

Her: Do you have his license?
Me: No - we don't let him drive.

Her: What kind of medicine is it?
Me: Pills. Brown-ish. About a half-inch square.
Her: What are they for?
Me: My dog. They're supposed to be swallowed.

Her: Do you have a prescription?
Me: No, they're for my dog.
Her: Do you have a prescription from him?
Me: No - he can't write. And I don't think he's allowed to give them out without a license. Which he doesn't have.

We finally worked things out and she gave me the pills.

Her: These are to be taken with food.
Me: Okay, I'll tell him.

I went home and was greeted at the door by my dog.

Him: Did you get my medicine?

10/01/2007

Little Jokes for Monday

What do you call dull research findings?
Banalysis

Did you hear about the man who didn't believe Egypt had a river?
He was in de-nile.

I've seen this product in the dairy aisle, "Nonfat Half & Half".
Half & Half is half cream and half milk.
And cream is the fatty part of milk.
So shouldn't nonfat Half & Half just be called "Half"? Or maybe just "Milk"?