Sucker Bet

While reading an article about sports, I clicked a supporting link and found myself here, at the NBA futures page at a gambling Web site. I’m curious about numbers and things, so I looked at the odds for a bit.

At this moment, there is an anomaly. “Anomaly” in my newly-minted dictionary of gambling terms is a time when a safer bet pays better than a riskier one.

In the NBA more than any other sport, random luck plays a smaller role in the outcome of games, and of seasons. There are no Cinderellas in the NBA. So when the Golden State Warriors managed to abuse the byzantine salary cap rules to land yet another all-star in Boogie Cousins for a season while the closest competitors went downhill, the gambling world said, “Fuck it, the Warriors are going to win the championship again.”

To bet on the Warriors winning the title next year, Las Vegas is giving you 10/17 odds. That is, the payoff is based on a 0.588 probability that they will win. Well over a coin flip.

But then I noticed this: on that same page the odds Golden State has of winning the Western Conference are 4/9, or 0.444 percent. Hence, a better payoff. Here’s the thing: The Warriors will not win the championship without first winning the division final. Yet somehow the bookies are paying less for the championship?

Yep. If you want action on the Warriors, don’t be a chump. Don’t follow the blind money to “Warriors win it all!”; follow the slightly-better-informed money to “Warriors make me money!”

3

Time Not Well-Spent

Here it is, Whiskey-Exemption Thursday, and my weight is on-target so I can even have beer. The purpose of Thursday is to devote an evening to pushing the writing forward, and hang the consequences.

What have I been writing this fine evening? I’ve been trying to come up with the least-objectionable way to emulate Swift’s extensions to Protocols in php. The answer: there is no way.

Begin geek

Coding with php is coding with flint knives and bearskins; the power of php is in its wham-bam-thank-you-ma’am ability to do a quick task and then to go away.

Bless the movers behind php, they’re trying to evolve their language to catch up with the way people are using it these days. If they had known Drupal was coming along, they might not have been so quick-and-dirty before. Drupal might be slightly less awful as a result.

There are design patterns enabled by Swift that I get a little misty contemplating. Being able to add extensions (with executable code!) to protocols is enormously powerful. Having experienced that, I wanted to do the same thing in php, creating a trait “taggable” and having classes that used it automatically injected with the implementation. Injected, not inherited. Ain’t gonna happen.

End geek

At least now I’m writing prose about writing the code rather than writing the code itself. Progress, I guess.

1

The Thursday Whiskey Exemption

In my days, I’ve only had success with one diet plan: set a target weight each week, lower than the week before. If, when I weigh myself in the morning, I am above the target weight, then I may not consume alcohol that day. Pretty simple, and embarrassingly motivating for me.

I lost more than 30 pounds on this plan, then events intervened, weakness ensued, work pressure ratcheted up, and I have now gained most of the weight back. In January I resolved to get back on the plan, but here’s the thing: While I don’t think my writing is any better after a couple of beers, it’s certainly more prolific. So now I do a dance between health and writing, and lately writing has been winning. But now blood pressure is a factor.

So I have launched my pound-a-week program again, with one modifier. On Thursdays, even if I’m over my weight target, I may have whiskey. I used to call Thursday “Beer-blogging day” — it was an evening where I set aside time to ramble for a bit, and to work on other, more serious projects. Whiskey is a little bit less fattening than beer, so I’ve decided this time around to try to relieve the tension between obesity and creativity by allowing a Thursday whiskey exemption.

For the record, on this particular Thursday I was below the weight threshold for the week anyway. The first few weeks of a new diet are actually pretty easy.

Happy Thursday, everyone!

2

The Journey Home: The Fading Glory of the Southwest Chief

I wasn’t paying close attention at the time, but in the late 1970’s the US government decided to buy out all the failing passenger rail services, with the goal of preserving some semblance of intercity passenger rail in this country. Out west, cities are far apart, and the new czars of rail travel realized that comfort and convenience would be paramount for success.

They took a design from the Santa Fe line, adapted it, made it too tall to work east of Chicago, and the Superliner was born. Superliner I was the last passenger coach built by the renowned Pullman company, while the Superliner II, a smoother-rolling variant that was a little more… judicious with the output from the toilets came along a short time after that.

None have been built since. Sure, there have been upgrades (self-contained toilets retrofitted, electricity available everywhere), but the rolling stock is aging.

On electricity — long ago I took a ride and there was exactly one electrical outlet available to coach-class passengers. A little community grew around that outlet, and while the cafe attendant tried to regulate us, we worked out a better system on our own.

But while the cars have been superficially modified to evolve with the needs of the passengers, there’s really no denying that they are getting older. Train 4 from Chicago to Los Angeles brought that home to me. Some cars had trouble with toilets. The public address system was spotty — at one point the attendant for my car got on the PA to say that the rest of the announcements were’t coming over our PA. Apparently there were a couple of dicey almost-missed-stop moments in my car.

The dining car’s air conditioning failed; my waiter said that on the last leg of the journey one of the crew knew what switch to throw, but now he was gone. Sounds to me like a circuit breaker.

The cars themselves still felt solid, we moved along smoothly. But it’s the little things, the door latch that required coaxing, the outlet that just won’t let go, that give you the feeling that maintenance is falling behind. And as the cars get older, the maintenance requirements are just going to increase. It’s going to require commitment to keep these cars comfortable and safe, and when the little things start to slide, it’s an indicator that the commitment is not there.

Twice on my journey east I heard a rumor that Amtrak would be canceling the long-haul western routes. If that’s true, I’m glad I took this ride. The subject of California’s high-speed rail also came up often. To which I said, “I’ll believe it when I see it.” I would honestly prefer it if the state spent maybe one percent of that cost to upgrade the low-speed rail already in place along that line (California has already pitched in to pay for other Amtrak upgrades in the state.) It’s beautiful country. Slightly-less-slow service would attract a lot of new customers, at a price the high-speed option could never touch.

I look forward to rolling along the coast in a brand-new Superliner III, then turning inland on the Southwest Chief, its rolling stock gleaming in the desert sun — the iconic journey that everyone must do at least once. The Route 66 where someone else drives.

Those will be the days.

2

Not a very Remember-y Day

Went to sleep early last night, after a day of restraint and sobriety. Woke up this morning, had a bit of an epiphany, then set about my day feeling perky and downright sharp.

So far today, I have locked myself out of my room not once but twice. Then I walked from the residence hall down to Massachusetts Street, only to realize I didn’t have my wallet.

To make things worse, during my walk down a woman on a park bench had complimented my shirt and then as an afterthought had complimented my beard. Then I passed a nice lady who was raising money for a church-based project to house the homeless, who remembered my “beautiful beard” from the previous day, when I had made a donation.

I couldn’t go back the direct route, or I would pass these people twice more. I had to go around. Putting some serious mileage on my new shoes today.

1

GDPR Announcement

I’ve got no idea who you are. Even if I did know, honestly, I wouldn’t care.

1

Voted. It was a little weird.

I vote by mail these days; it costs the state more money but is more convenient for me and it is less Russian-style shenanigable. Mail-in votes are more vulnerable to local-asshole shenanigans — just ask my Arizona-based nephew, who has been directly shenaniganized — but I’m pretty confident my vote will be counted.

Secure in that thought, I did my best to study the issues and make good choices. The propositions were the most important votes, at least in my mind — I’ll touch on the major political seats shortly. Two of the propositions came down to car vs. not-car. Easy peasy.

Locally, B and C asked us, collectively, whether we were willing to give up open space and embrace sprawl if a fraction of the housing created was dedicated to affordable housing for seniors. Affordable housing is a critical issue here; rent is fucking ridiculous. But a few token units in a luxury expansion that stretches city services is not the answer.

I voted to increase the state’s debt to help people move around without cars. Overall the state’s debt burden is down lately, due to prosperity — even as the federal government siphons money out of the state so Kansas can boast a balanced budget. State balanced budgets are a sham, propped up by the federal deficit and states like Texas and California.

On another prop there was one argument in the pro vs con section that said (more or less), “They might not use the money to make roads better! They might use it instead for public transport and bike lanes!” Yeah, bunky, whatever you’re opposing, I’m in favor of.

After the props there came a judge — you’ve heard of him — and I couldn’t kick him in the balls so I only did what I could to make sure his career was over. His defense said we shouldn’t let a single decision in a career that was not flagrantly biased be cause to eject a dedicated public servant, that it was a slippery slope to make the judiciary subject to the mob. (The actual argument was far less articulate.) But I’m with the mob on this one. Democracy is mob, and it’s at its best when things are ugly. The mob says rapists should not get off lightly. Let other judges take note.

Then there were the candidates. For only the second time in my life, I paid attention to party affiliation while voting. This is not a normal state for me. But until the Republicans purge themselves of Trump, and of the forces that allowed Trump to happen, none of their candidates at any level will get a vote from me. None. That’s just how it has to be.

3

A Set of Facts That Might be an Opportunity for the Right Person

A simple, unordered (perhaps obfuscated-ordered) list:

  • I tried to read Feeding the Eels on this site from start to finish but I could not.
  • I am growing seriously tired of spending my weekends fiddling with code
  • At this time, I have only indirect influence on hiring php programmers at my company—I can recommend, but there are no openings in my group.
  • At this time
  • I know php upside-down and sideways
  • I have decided that this is a year for finishing things.
  • I like to teach
  • I seriously don’t want to dig into the guts of my WordPress theme to figure out why I can’t read all of Feeding the Eels
  • I write software for a living
  • There are a lot of punk kids out there who can dance with WordPress and php even though only grandads seriously think php is cool
  • Feeding the Eels has been dangling, almost-finished, for years.
  • I would never ask a kid to work for free
1

Maybe this is Why Americans Celebrate Cinco de Mayo

The Battle of Puebla occurred on May 5, 1862. It was an unexpected victory for about 4,000 Mexican soldiers facing about 8,000 well-equipped French troops. Although it was a stirring victory, the outclassed Mexicans were eventually overwhelmed, and the French installed a new government in Mexico a few months later.

So… let’s climb on the alternate history bus and wonder what would have happened if the French had won at Puebla. Without that crucial lift to morale and Mexican national pride, would the French have won more easily? Would Emperor Maximillian have been able to hold his seat more comfortably for a couple of years?

A couple of years is all it would have taken. The Americans were slaughtering each other in their own civil war. Given a little breathing room, an enterprising European colonial power might have found it worthwhile to aid the southern states, and in return have a friendlier partner on Mexico’s northern border.

But, in part emboldened by their success at Puebla, the Mexicans never let Maximillian get too comfortable in Mexico City. As the US Civil war drew to a close, with France dealing with Prussia back in Old Europe and the Mexican Guerrilla warfare gaining intensity, Napoleon III bid adieu to Maximillian, and not long after that the emperor was executed.

Honestly, I don’t think for a minute that the French would ever have held Mexico with or without the Battle of Puebla. The colonization was a doomed endeavor from the start, and turned out to be a costly mistake for France.

So the Battle of Puebla may not have turned Mexican history that much. Maybe the Emperor would have lasted a couple more years, but that’s about it. That couple of years, though, may have been HUGELY significant to the United States.

So if you’re hoisting one tonight to celebrate Drinko-de-Mayo, stop for a minute and consider: about 4,000 hungry, ill-equipped Mexicans may have saved our nation. Now that’s something to celebrate.

3

The Best Friend You Didn’t Know You Had

I was reading the other day about how some hackers found a serious security flaw in php. php is a language used on Web servers to deliver content to your browsers; WordPress is written in php and thus every time you load a page here at MR&HI, code written in php is being run.

A LOT of the Web is written in php, so finding a security issue in that language is significant, but this episode is not so much about one particular flaw as it is about the constant battle between good and evil. This article gets technical fast, but there are a couple of important takeaways that you don’t need to be a geek to understand.

Pornhub offered $20,000 to anyone who could hack them, via the site HackerOne. This was a big enough incentive for a group of hackers to really go after them. They discovered one questionable practice by the programmers of that site, but it took a lot of long, hard work for them to turn that into an actual hack, digging through the source code of php itself until they managed to create an attack that could load and run code on the server.

Immediately they disclosed the vulnerability through responsible channels, earned their reward, and both Pornhub and the wardens of php moved to close the bug. Pornhub paid up the $20K, and HackerOne threw in a bonus.

And even shorter version: Pornhub paid some real dollars and made the Web safer for all of us.

You and I are fantastically lucky that there are people out there who will use their skills for a low-five-figure payoff, rather than exploiting that weakness for potentially millions. These are the white-hat hackers, incredibly skilled people who can write php-unserialize fuzzers to discover “unexpected” responses, but use their skills to make the world a better place.

Eventually these guys will have the hacking weapons that our own government lost control of, and when that happens, the Internet will become far more secure. In fact, if I were king of this country I’d give the good guys those tools right now. It can’t be only the Russians using that stuff. Worth noting: our government has discovered many security holes in the software that makes the world run, and they didn’t report those discoveries, leaving the holes wide open for them (and everyone else) to exploit. Our own government is not White Hat.

When you hear about a new terrible hole in security, remember: that’s when honest people found the hole. It’s geeks like Evonide that found it, and reported it. Often they chased that hole because some site like Pornhub gave them a reason to. So let’s stop and appreciate what the unsung good guys have done for us.

2

Checking Out the Sharks’ next Opponent

While working on, well, work, I’ve got the Nashville-Winnipeg game on. It’s been a pretty good game. Gritty but not dirty, some good skating, each team making the other pay for mistakes. Hockey.

The winner of this game will play the Sharks, after San Jose despoils Cinderella.

I’m not sure who I’m rooting for. On the one hand, Winnipeg may be the most miserable sports city, and as a former resident of San Diego I have to feel for people whose teams always lose the way San Diego teams do, but who also don’t live in San Diego. That would really suck.

But Nashville fans have a song for everything. Seems like every tape-to-tape pass has the fans singing the “Nashville Tape-to-Tape song.” And the whole damn arena sings. It might be the best fan experience in North American sports. (Don’t tell Las Vegas, because dang they’re building an awesome fan experience in the way only Las Vegas can.) Nashville is the hockey arena I’d most like to visit for a game.

On the other hand, I’m more afraid of Nashville. This might be naive; Winnipeg is really good this year. But Nashville has been a problem for a long time now.

On the other hand…

There are an infinite number of hands. I’m enjoying a good hockey game, and both these teams deserve to be here. Either will be a challenge for the Sharks. Either will make for a fun series.

____

A few thoughts about the Sharks/Knights series currently under way:

One of the great things about being a fan of a team is having rivals. I hate the Ducks and I HATE the Kings. Then there’s fuckin’ Buffalo, a hapless team that somehow keeps beating the Sharks (although now we have their best player). Las Vegas is new; they have no historic slights to fume over. I volunteer my team to be the team the Las Vegas Knights fans learn to hate. Step 1: Knock them out of the playoffs.

I call the Las Vegas Franchise the “Las Vegas Knights”. It is a far better name than the official title: the “Vegas Golden Knights”. “Las Vegas Knights” speaks to the character of the town itself; it echoes the allure of being there. It sounds like the title to a novel — or a memoir — or a song — or… It sounds like Las Vegas. Eventually the Las Vegas franchise will fix their name.

Talk about home ice advantage — whoo boy that city knows how to put on a show. To build the drama before the opening game of this series, they had a really cool lighting effect that made it look like a huge shark was swimming under the ice. Of course in their show the shark was eventually slain, but San Jose should seriously steal that effect.

While I think you would be hard-pressed to find a resident of the Las Vegas metropolitan area who agrees with me, there is supposed to be hardship when a team is first getting started. Without that hardship you can’t have fans who can say “I was with the team back when…” It’s the lean times that scar a true fan. (Scars are cool, right?)

I kind of feel sorry for the Raiders, trying to move football into a rabid hockey town.

3

Took My Data Privacy Training Today

The European Union is enacting a new policy concerning the way companies treat the personal information of their customers. Today I went through the training to make sure I understood what those rules meant to me.

Spoiler: nothing new. But there are a lot of other companies in this neighborhood that are probably scrambling. I’ll name names later.

The new privacy training was pretty much exactly the same as the previous data privacy training I have gone through, with the exception that there is a new report to fill out to make the decision process on using customer data visible to the outside world. There is also a new portal so people can see all the data my employer has collected on them, and request that that data be deleted.

But overall, the new privacy regulations in Europe might have been written by my company, they match our existing policy so closely.

Remember back when Google was “accidentally” collecting information about open home WiFi networks? Accidentally in this case means accidentally creating database tables and queries to store that information. I mean hey, accidents happen. That was a while ago, but that shit is really not going to fly now.

Hey! So much for “later”. I’m naming names.

The regulations go something like this:

  1. You have to spell out what you will be using the data for BEFORE you collect it.
  2. You have to protect that data.
  3. You have to let people see the data and tell you to delete it.

The Google thing was years ago. (There are plenty of current investigations, however.) But hey, remember last week when an Android user discovered Facebook was recording the recipient and duration of all his phone calls? Yeah, the beat goes on. In the aftermath of that I downloaded my own information and there were only a couple of surprises, none shocking. Hint: I don’t use Android.

At Google they must HATE Facebook for being so damn sloppy and leaking data all over the place, rather than just efficiently selling it. Regulators are swarming! Maybe now Google might consider putting in place basic security measures to prevent apps from rooting through shit that is none of their business.

My Facebook information was mostly unsurprising, but I suppose it’s possible that in the last few days Facebook has decided that fraudulently withholding some of the data they have collected on me is better than confessing to all of their shenanigans. Ironically, the ability for people to download their information was probably implemented by Facebook to comply with the new regulations. Sadly for them, the more people who download their personal info, the more trouble will arise for Facebook.

I encourage everyone to request a data download from Facebook. And from Apple, and from Google, and from Amazon. Probably Ebay, too, and the list goes on.

For the rest of this episode, I am full-on partisan. Just so you know. But there’s nothing I’m going to say that is not easily documented.

Google has a vast amount of data on you. If you use Google Wallet, downloading your data might be downright scary; if you use ApplePay instead you will find a big empty nothin’ concerning your spending habits. Apple built it so that it was not possible for them to learn anything about you from your spending. It was not easy to do.

I work for Apple. I am proud that my company puts privacy over profit — that HomeKit is slow to be adopted because it protects privacy and home-gadget manufacturers want to profit from personal data (and the hacking-resistance of HomeKit is more expensive to implement — something I’m also fine with), and I am proud that ApplePay was first out of the gate but isn’t growing as fast as the competitors because privacy requirements make it harder for banks to join in. Apple is losing money protecting privacy.

Unless protecting privacy becomes law. Then, suddenly, my employer is in the catbird seat, having built its information structure around privacy from the get-go. Apple has put a lot of systems in place to make sure they cannot collect large categories of personal data. Currently that data is an asset that they are failing to exploit. In the future, that data will be an onerous responsibility for any company that holds it. I hope so, anyway.

2

My Visit to One of the Most Expensive Buildings in the World

Most of the top ten most expensive buildings in the world are opulent resorts or mighty skyscrapers. There is a nuclear power plant in the mix, and then there’s Apple Park. The new headquarters for my company doesn’t soar up to scrape the ionosphere’s belly, and it doesn’t drip with ridiculous lavishness. The cost came not from coating everything with gold but from building to design tolerances that the construction industry simply doesn’t do.

To make everything fit so tightly in earthquake country first meant resting the whole damn thing on shimmy-shake pads. Thinking about that puts the scale into perspective: The building is a ring; the whole of the new football stadium for the San Francisco 49’ers fits in the “garden” inside the ring.

When I first got through security and walked up to the building, the soft morning rain and the sun at my back produced a rainbow that seemed to emerge from the middle of the giant ring. One prone to symbolism might find that portentous. I took a picture, but I can’t show it to you. (I might have cheated but the picture’s not that great.)

Inside, it feels like the future. Like the fictional sets of many, many science fiction movies, but real, and… functioning. Considering that this whole thing was built on so many simulations, so many never-been-done-but-it-should-work-probably ideas, the whole thing has come together quite nicely.

I was on the third floor and I stepped out of the elevator to see the treetops of the cafeteria. The cafeteria was indoors at that moment (there are stunningly massive sliding glass doors — four stories tall — to open the cafeteria to the outside on good days), but it still felt arboreal.

One thing that enhanced that feeling was the near invisibility of the fence at the edge of the balcony looking down. Glass, clean, almost invisible, making me feel like I was floating over the space below. Happily, I am not prone to vertigo.

It is a building that glorifies glass. The stories you may have heard about distracted employees running into walls is true. Glass and pale cool stone define this quiet world.

I walked through the center of the ring, the path making satisfying crunching sounds beneath my feet. I saw places that had not been ready for the recent rains, standing water on top of newly-planted ground cover. And there is no place in the area built with Apple’s beer bashes in mind. (*WHAAT?*) Yet, there was a serenity in those rolling hills that I really enjoyed. I can imagine a monastery feeling that way.

When we started our stroll through the center of the ring the sky was offering a gentle sprinkle, but by the time we got to the path to the duck pond it was dumping rain and I was more inclined to get back inside. From the organic chaos of grass and trees and rain to the quiet, controlled world of glass and stone once more.

The people I was meeting with — now residents of this place — pointed out spots where trim was missing or small finishing tasks were incomplete. I imagine it will be a year or more before the miles-long to-do list is completed.

My group will not be moving to the new campus; even before ground was struck Apple had outgrown its new headquarters. It holds something like 13,000 people — similar to the Hewlett Packard campus that was razed to make room — but where the old buildings stood between parking lots, the Apple Campus leaves much of the real estate for parkland which I look forward to exploring. Apple was named for the local orchards; in part it was Apple’s success that destroyed them. Nice to see at least a few acres of them come back.

I may not work over there, but I will be finding excuses to visit.

2

The Purpose of the Human Race

The other day, as I was riding home from work, I had an interesting thought. One thing about riding as slowly as I do — you get plenty of time to think about stuff.

Although, when the wind is at my back, pretty much the only thought in my head is “Whee!” and when the wind is in my face the cursing leaves no space for other thought. However, during the non-raining wind-from-the-side portions of my ride, I had time to chew on an interesting thought.

It started somewhere on Homestead Avenue, when it occurred to me that the Information Age was the inevitable consequence of being an organism that uses language. Our brains are built to interpret the world around us, breaking it down into the symbols that allow us to communicate abstract thoughts. We are biologically hard-wired to process symbols that represent the world; we are as hungry for information as we are for food.

But we didn’t stop at reducing the world into symbols, we began to recreate the world, using those same symbols as the building blocks. Early religions might be the first recorded attempts at building a symbolic world on top of the observable one, but any good story is a new world.

Facing a rainy headwind while I pushed down Park Avenue (a pleasant street), those thoughts were forgotten for a while, but by the time I reached Bird they had grown. We are now creating worlds entirely out of symbols. Worlds built purely out of language. World of Warcraft is an obvious example.

While WoW is crude compared to the (presumably) atom-based world we occupy most of the time, it’s easy to imagine that as we build ever-more eloquent languages (in this case programming languages and the frameworks that provide them vocabulary, which in turn express the desires of designers who communicate with more traditional languages) we will create more “real” worlds built solely with language.

By the time I’d huffed over the Curtner Hump and turned into the cemetery, I came down to a core question: Is this what we set out to do a million years ago?

Did we grow brains that had language so we could build better worlds, or was the ability to communicate mundane information twisted to introduce fiction? Are those cave paintings we know so well simply recording history, or are they expressing something larger that we all understand — the desire to build new worlds using the symbols we developed to understand the physical world?

What happens, then, when the world is entirely composed of symbols? What comes next? Are we finished?

1

My Last Car

My faithful little Miata is getting long in the tooth; I purchased it new off the lot in the summer of 1999. Eighteen and a half years is pretty old for a car, but these days not exceptional.

Still, after spending the weekend replacing ignition components and discovering oil on my hands more than once, I have to admit that the car is not as mechanically tight as it used to be. It’s only a matter of time before it crosses the line from “reliable transportation” to “hobby”. I don’t need another hobby.

From time to time I peruse the Internet, fantasizing about the car that will replace the Miata. Convertible is an absolute requirement, two seats a preference. There are some pretty cool cars in this space, but the frontrunner remains the Mazda Miata. I could spend a lot more and get a somewhat more exciting car, but the Miata remains an excellent intersection between fun and economy, with no serious challengers.

But boy, that F-type purrs like a kitten. A tiger kitten.

As I consider the expected lifespan of my next car, the expected lifespan of me, and trends in technology, it occurred to me: It’s quite possible that this will be the last car I ever buy. Twenty years from now my driving skills will be degrading, and as long as I live in a town of any size, it’s entirely possible that self-driving on-demand cars will be significantly cheaper than car ownership, especially when you take into account how few miles I drive.

My last car. Wow. But…

I don’t really need to replace the Miata at all. There is almost never a time when both the family cars are out of the garage, and the few times it does happen could easily be handled with transport alternatives. I could rent a convertible for road trips. Perhaps I have already bought my last car. Wow.

Often, when I take the old girl out for a spin, I first have to remove the tool boxes and other items piled on top. Home repair and crafts projects lead me to pull items off the shelving next to the car and put them on the top or on the hood for access.

A typical look at the Miata

Perhaps the next four-wheeled item to occupy that slot in the garage will be something like this:

The next thing to live on the right side of the garage?

1