Don't worry, I didn't get rid of the truck.


My home is roughly 16' x 6', or 96 ft2. That makes it a little smaller than your average bedroom. In other words, it's in my best interest to optimize how I use my limited space. Two years ago, I talked about consolidating and defragmenting how I laid out my room. The diagram I used looked like this:

By rearranging my things (all three of them), I was able to clear up some space. Not that I actually used that space for anything, it just seemed like a good idea at the time. Though as time went on, my tidy arrangement kinda…fell apart. I shuffled stuff around to help people move, I threw things away, I loaded and unloaded everything to make room for repairs, and just generally accumulated some cruft along the way. If I were to draw the diagram again as of last week, it'd look like this:

There's still some space, but it's certainly not optimal. Plus, that diagram isn't really telling the whole story. For one, Bed is in pretty rough shape. The springs have lost most of their will to spring, and the box-spring cloth is torn to shreds from being dragged back and forth across the truck half a bajillion times.

And Dresser…well Dresser has seen better days. Dresser took a tumble or two on some particularly tight turns, which ripped out my arts and crafts straps. Those straps, I might add, had already been shoddily replaced a few times. Adding insult to Dresser's mortal injury, previous water damage meant that I had to rip out most of the back paneling, making Dresser pretty wobbly. I had attempted to brace it with a spare 2x4, but even that was starting to give way.

Unsurprisingly, Ikea furniture was not meant for the trials and tribulations of truck life.

Dresser was coming apart at every possible seam. The last picture was taken mere minutes before Dresser met its timely death.

And the cherry on my sad truck sundae: the cruft and clutter. I had a big box full of Random Stuff™: bike parts, unsorted Christmas gifts, a Motorcycle helmet, cleaning supplies, a pile of insurance and stock documents, and god knows what else. And my shoes had clearly been wandering, evenly distributing themselves around the remaining space.

Even still, it's not really that bad. At the end of the day, it's still perfectly livable.*

I think at the heart of it, I just enjoy being organized. It's probably a control thing. If my home is organized and clean, I feel like I generally have my affairs in order. Conversely, when the truck looks like a bomb went off in a shared Home Depot/Goodwill dumpster, I feel unprepared.

It's also about keeping up some semblance of appearances. I'm living in a truck, I need to do something to make it look like I have my life together. It's why I try to wear halfway decent dress shirts to work, and (attempt to) maintain this blog. I can't live in a truck and have it look like a war zone. I made a helpful chart to illustrate my point:

Given the irrefutable evidence of the above chart, it goes without saying that something had to change. So I formulated a plan, and last weekend, I threw away all two pieces of furniture I owned.

The Plan

  1. Buy things - I can't just throw away all my stuff and live in an empty truck. That's a bit hardcore for my tastes. I have to find suitable replacement things first. I tried to stick to my general purchasing strategy: Think about what I truly need, and then make a careful purchase of some high-quality, long-lasting items that satisfy those needs.
  2. Assemble things - If you want something done right, do it yourself. Plus, it's cheaper to buy things unassembled. And some pre-built things are harder to get delivered. And you usually learn some stuff in the assembly process.
  3. Throw out things - Complete the catharsis. Kick the old stuff to the curb. If it makes sense to donate it, do that instead.

Straight-forward enough. But, as always, the truck throws some interesting wrenches in the mix. Where do I get large things delivered? Where do I assemble these things? Do I have enough room for both the old things and the new things? How/Where do I even get rid of the old things? I started by buying things.

Buying Things

I went in with a clear idea of what I needed: a bed and a dresser. Nothing more, nothing less. I kept an eye open for ways to make better use of the limited space, and let that inform my purchases. I started with the bed. I knew I couldn't have a mattress professionally delivered to me, I don't have a "real" address, and I don't think they'd appreciate me giving them some random GPS coordinates corresponding to a parking lot somewhere in South Bay. So my options were either 1) shop online and have it delivered to my mailbox, or 2) pick one up in a store. Both options were fine, but after a bit of research it looks like you pay a pretty hefty markup for shopping at a brick and mortar store. Unless I wanted to spend several thousand extra dollars for fun, my choice was pretty much made for me.

I started researching and comparing online brands. I'm not going to link to them because I'm lazy, but I was looking at Purple, Casper, Tuft and Needle, Leesa, Amerisleep, and a few others. After a week of reading reviews and comparisons, I had narrowed it down to Casper and Leesa, based mainly on price and volatile organic compound (VOC) levels. Price is a pretty normal metric to use. As for VOCs, I figured the mattress would be in a much smaller area than the manufacturer intended, with less air circulation. I don't want to saturate my limited air supply with irritants and sadness. In the end though, it came down to which one was cheaper after all applicable discounts, and Leesa came in at a riveting $6 cheaper. Not much of a difference, but fine as a tie-breaker.

Historically, my feet always flirted with the edge of the bed, so I ordered a Twin XL to replace my Twin. This meant I couldn't really reuse my tattered box-spring, even if I wanted to. I found a tall mattress base that looked good, and had the added bonus of giving me some under-bed storage space. I picked up new sheets and a memory-foam pillow for completeness.

To avoid annoying my postmaster with a 4 foot tall, 50+ pound package lingering around his shipping center, I picked it up within an hour or so of it being dropped off (according to shipment tracking). I did the same thing with the mattress base and the barrage of other packages. If there's any one single person I want to stay on good terms with, it's the dude who has complete control over my address and mail situation.

As for the dresser, I had failed pretty miserably with trying to make my own strap securements for the drawers, so I wanted something with a built-in locking mechanism. I guess I played it pretty fast and loose with my requirements, because I ended up getting a six-foot tall, welded steel garage storage unit, which I wouldn't really consider a "dresser".

28.5 ft3 of raw, storage-y goodness.

While unorthodox, this has a number of benefits over any dresser-based solution. For one, this thing is huge. Volume-wise, it's probably twice the size of the dresser I tossed out. That means I can fit all my clothes, and any remaining Random Stuff™ worth keeping. It's also made of steel, so it's more sturdy and durable than any wooden furniture I could have picked up. Even though I don't have any more water/leak problems, it's still nice to have something a bit more resilient to such things. Best of all, this thing locks, which means the doors won't be opening while I'm driving (provided I remember to lock it). It's also more secure, not that I'm worried about people stealing from me.**

Instead of having the 150+ pound unassembled cabinet shipped to me, I went to a local Home Depot to pick it up. Unluckily for me, the first Home Depot I went to didn't have it in stock, which was entirely my fault because I didn't check their handy online inventory system. Luckily for me, not only did the second Home Depot have them in stock, they had a display unit that I could look at beforehand to help figure out how I wanted to organize and store things.

Assembling Things

At this point, my truck has my old bed and box-spring, my new bed (in a box) my new bed frame (in a box), sheets, pillows, and an unassembled ginormous storage cabinet. It's getting pretty crowded in there. So right after I bought the cabinet, on a sweltering Saturday morning, I plunked the truck down in an unassuming, low-traffic part of the Home Depot parking lot and got to work.

I should note that, for better or worse, this isn't my first time assembling things in a Home Depot parking lot. I had done something similar for the Ikea dresser I was now replacing. Not that that makes it any less weird, but it ends up working out pretty well. For one, I'm always missing some tool or piece of hardware, but I never realize it until the assembly process is well underway. It's obscenely convenient to take a 30 second walk and go pick up the part I'm missing.

Case in point: I made nine independent trips into Home Depot that fateful day. The first one was when Home Depot that told me my storage unit was in another castle, but the other eight trips were picking up drill bits, repeatedly buying ill-fitting screws of different sizes, remembering I needed caulking, returning the drill bits I didn't need, buying plastic bins—you get the idea.

Assembling the bed was a breeze. Modern memory-foam mattresses come vacuum-sealed, setting them up is just unrolling them and gingerly evicerating the plastic casing. Bed frame assembly amounted to unfolding it and tightening four wing nuts.

Assembling the storage cabinet was harder, but still straight-forward. It required ~80 screws, which I lovingly hand-tightened with a small, provided hex key before realizing the other doodad in the box was a hex insert drill bit that would have made my work 1,000x more efficient. Such is life.

Throwing Things Out

Post-assembly, the truck was in far and away the most disheveled state it has ever been in. Sure, I had a bunch of shiny new furniture, but I also had all of my old furniture, plus a small mountain of garbage packing materials. On top of that, I had gone through all of my Random Stuff™ and tossed out everything I didn't need, like old building supplies, unnecessary documents, and parts of my now-defunct bike rack.

The truck was looking extra chaotic during (and after) assembly. At one point, large steel panels covered pretty much every available surface.

Which leads me to my previously posed question, where do I put all this trash? Conveniently, there's a public landfill in Santa Clara. It also happens to be a stone's throw from Home Depot…just not the Home Depot I had been assembling things at. Anyway, this landfill has a bunch of different rates depending on what you're dumping and whether or not you're a resident. Since my mailbox is in Santa Clara and that's what's on my license, I get the discounted 'resident' rate. I feel morally ambiguous about this, but not enough to actually stop me from continuing to use it.

The way the process works, they weigh your truck on the way in, and they weigh it on the way out. You're charged based on the difference, at a "general rubbish" rate of ~$20/yd3 for "residents", which usually means I pay like $10 to toss all my junk. Those units are kind of strange though. Cubic yards? That's a measure of volume, but they're charging based on truck weight, which means that they must have some idea of "average garbage density." I haven't the slightest idea what that would be, but I also don't care enough to try and calculate it from my receipt.

Tragically, I didn't get my rate of $20/yd3 though. This time, when I showed up, they asked me to open the back, which was definitely a first for me. The garbage was obscuring most of my actual living setup, so it probably wasn't immediately obvious that I live in there. Not that they would have cared, but I was there to clean out my closet, not to explain the skeletons in there. The only comment they had was that the two mattresses (old mattress and old box-spring) would cost $50 a piece to toss, which is at least 20x the normal rate for their weight. Not sure why this is the case, some sort of premium for not trying to sell them on Craigslist or something? Who knows. I paid my $108 and was on my way.

Good as New

When I got back to my usual stomping grounds, I did a quick sweep and tied up some loose ends, like finishing up some organizational matters and securing the cabinet to the wall. The black finish is so darn reflective it's hard to get a good picture:

Everything I own either fits in the cabinet or, for some of the larger things, under my bed.

Tallying up the cost of this home improvement project:

  • Sheets and Pillows: $79.54
  • Bed frame: $84.99
  • Garbage disposal: $108
  • Cabinet and accessories: $412
  • Memory-foam Mattress: $583
  • Not living in a disorganized truck dumpster: Priceless

*Naturally, this will depend on your definition of livable. The truck still doesn't have plumbing or electricity or anything normal like that.

**I'm always saying that if someone robbed the truck, they'd basically just be cleaning for me.


Source: The icon for this post is weirdly similar to the icon for my last post, I guess change is in the air.

I'm all about consistency, particularly when it comes to my daily routine.

To confirm my own biases, I found some research that agrees with the idea that consistency is good. For example, one study suggests that people with regular routines tend to sleep better, and another study of young children found that regular bedtimes contributed to less obesity and better "emotional self-regulation". I generally like the idea of sleeping well, being healthy, and having balanced emotions, so I do my best to be consistent.

At the same time though, I like to keep myself on my toes. I'm always trying to make sure my consistency isn't devolving into some sort of mindless rut. I want to be consistent for the sake of health and happiness, not just because it's what I'm comfortable with. So I try to keep an amicable tension between maintaining a consistent routine, and trying to switch things up. Every so often (usually once every month or two), I'll sit down and take a hard look at my routine, gauge how I feel about different parts of it, and make modifications as necessary. Usually they're pretty small, like going to bed earlier, swapping exercise routines, maintaining a list of books I want to read, or trying to write or bike more frequently. Sometimes, if something really feels amiss, the changes will be a bit bigger. Recently, I decided I wanted a pretty major change.

Ch-ch-ch-changes (turn and face the strange)

Two years (and a few months) ago, I started my first day of work at my first post-college job. Not so coincidentally, I slept in the truck for the first time that same night. Recently, I left that job for a new one.* I won't really delve into the nitty gritty details of why I left, but I wanted to try something more aligned with my interests, and I had stumbled across a job that fit the bill perfectly.

But what does that actually mean for me? Well, for one, it means I moved to a new office. That's nothing new though. On my last team, I moved with them through four different offices. That's one of the perks of the truck, my commute doesn't change even when I move a city or two over, I just bring my house with me. So this most recent move had very little effect on my routine, and everything else stayed pretty much the same. Changing jobs did present me with a choice I haven't had to think about in a while though.

Do I tell my new coworkers that I live in a truck?

The last time I discussed this was way back in 2015, and back then I came to the following conclusion:

These people are colleagues and coworkers first and foremost, I'm interacting with them on a daily basis exchanging ideas and sending code back and forth. For that to work smoothly and efficiently, my workplace peers need to see me as a competent, contributing member of the team who they feel comfortable collaborating with. Being the dude who lives out back like some sort of trailer park reject MacGyver-ing the workplace to suit his needs is not a great way to foster teamwork and cooperation. I'm sure they'd be more than accepting of the situation if I explained it to them; the vast majority of people I talk to about it are very receptive and understanding, but I'd hate for a personal detail to poison any coworker relationships in the event someone didn't approve.

Of course, as fate would have it, everyone eventually found out anyway. But that was two years ago, and I don't make many media appearances these days, so it stands to reason my new coworkers wouldn't know much of me or my questionable housing choices. I've been working on the new team for about two months now, and as far as I can tell, nobody is onto me. Which leads me back to my question: do I tell my new coworkers that I live in a truck?

Of course not.

No. Nah. Nope. I 100% do not tell them. I say n-o-t-h-i-n-g. Everything I said in 2015 is still valid: these people are my coworkers, they don't need to be privy to the weirder details of my personal life. That said, I do still want to be friendly with them, and topics around housing and commuting do still come up, so I have to be prepared for talking about such things. To that end, I've developed a small collection of conversational half-truths for use in these situations:

Do you live in the area?

Totally, I have a small place near campus.

With roommates, I take it.

Nope, just a one-bedroom.

Ooh, that sounds pricy.

You'd be surprised, I get a pretty good deal on rent.

Nice! Must be a short commute.

Yeah, I usually walk or bike in.

Oh cool, so you're really close by.

I practically live on campus.

So you don't have a car then?

Actually, I do. I have a two-seater Ford.

Nothing in that conversation is an outright lie, but it's certainly not entirely truthful. In any case, I'm under no illusion that my co-workers will never find out about my truckliness. I know as time goes on, the likelihood of someone on my team seeing me do some weird, truck-related thing goes way up. And I have no intention of trying to hide it, if people find out, then they find out. I'm proud of the life I'm building for myself. If I was really concerned, I probably wouldn't be maintaining a very public blog. I'm just not trying to evangelize to my coworkers.

*I guess technically, I work at a company owned by the same holding company as my previous company, but it's a new project, a new team, and a much smaller company.


Source: I couldn't think of what image to use for this post, so I made this abomination. Using no image would have been a far better choice, yet here we are.

While it's not an outright lie to say I have a car, it's probably a bit disingenuous. As recently discussed, calling it a two-seater with some generous trunk space is definitely pushing it (but technically correct).

More accurately, I have an eleven-and-a-half foot tall, four-to-five ton, screaming metal death trap on wheels. From that description (and my past ramblings), it's not particularly shocking that I try not to drive it, but there's actually a whole host of reasons I stay away from behind the wheel.

So Many Dead Dinosaurs

1. The thing is an environmental nightmare, a fact I've talked about before. Seriously though, a coral reef dies every time I turn on the ignition. Plus, less driving means I spend less on gas. But even given the utterly dismal ten-mile-per-gallon fuel efficiency, I only ever top the truck off once every three months or so.

Recently, I accidentally killed the battery by sheer force of my own idiocy. After AAA came and jumped it, I had to leave the thing running for a while to make sure the battery was recharged. Watching the monstrous box idle for half an hour was…painful.

Keepin' the Rent Low

2. Not driving it keeps my insurance premiums stupidly low for, you know, basically being my rent. The price has gone up and down over the years for a bunch of different reasons (discounts, speeding tickets, proof of mileage, etc), but for now it's settled at a perfectly palatable $492.88 per six month policy.

Cha-ching

3. The less I drive, the more it's worth when I sell it. This isn't a big deal, because with 160,000 miles on it, the additional mileage doesn't really result in much depreciation. I just need to treat it well enough to not cause any major mechanical malfunctions in the mean time.

"Redecorating"

4. Despite my best attempts to secure stuff, things will move around when I drive. The less I drive, the less reorganizing I have to do. Even with earthquake-proofing straps and stuff, there's no telling what kind of torque I'm putting on random key structural components of the truck, and I'd rather not find out by bending something important and suddenly have it start leaking (again).


So, if I only have one "car", and I do my darnedest to not drive it, how do I get around?


Bikes, Not Boxes

My trusty partner in crime is a fairly modest machine, the same used road bike I haggled into my life nearly two years ago. Reading over that post, it's funny to see just how far we (the bike and I) have come. By my estimates, I've put at least 1,500 miles on it, and likely much more. And if the bike was "hardly used" when I bought it, I'd describe it as "well-worn" nowadays. I've definitely put it through its paces, for everything from the daily trip to work (~1 mile), to the weekend jaunt over to one of my usual cafes (~10 miles), to the excursions up to San Francisco/Sausalito I try to make at least once a month (50+ miles).

The last time I brought it in for a tune-up, the mechanic basically told me to not even bother. He said it'd be marginally more to buy a nice road bike than to fix all the thoroughly worn pieces of my current bike. To really drive home his point, he threw in an overly detailed and itemized list of each repair he recommended to bring my bike to a safe and reasonable condition. The list included pretty much every imaginable bike component except the frame.

Exhibit A

And this was nearly six months ago, it's only downhill from here. Which is terrifying, because the brakes don't work all that well.

With all the above in mind, I'd describe my current plan as "ride it until it literally falls apart from underneath me."

And while I'm fine with that plan, I understand it sounds…not ideal. I swear, it does have a few redeeming qualities though. For one, I've gotten used to how much effort it takes to get my bike moving, and just how few of the gears still work. So as my bike gets harder and harder to ride, it just means I'll be more and more surprised by how awesome my next bike is. Plus, if this bike can still make it to San Francisco, it can't really be that bad, can it?

Other Transportation

But alas, there are times when the bike, try as it may, just doesn't cut it. If I need to show up somewhere not looking like a sweaty, truckly mess, the bike isn't a particularly good candidate. Or if I need to haul stuff around, like picking up a package from my mailbox, the bike is, at best…awkward. Historically, I've filled in these gaps with corporate cars*, the truck, and the occasional rental car, but these cases come up surprisingly infrequently.

Renting Cars

In my past travels, I've always rented cars from the usual suspects, namely National, Enterprise, and Hertz. It makes sense, they're present at all the major airports and I've always gotten generous corporate discounts booking with them, even for personal trips. And while that's all well and good for air travel, I've always been curious if there are better options when I'm just running a lot of errands or doing a semi-local weekend trip. Clearly, I hadn't been curious enough to actually do anything about it, but this past weekend I finally got around to doing a little bit of experimentation.

One of the benefits of living in the Bay Area is that it's a hotbed for random start-ups testing their services out. That may seem like a bit of a non sequitur, but it just so happens that some of these random start-ups operate in the travel/rental car space, like Getaround and Turo. The service they offer is basically like Uber or Lyft, but for crowd-sourced car rentals. People can list their cars at a daily rental rate, and people can go on and rent them.

I had never used either of those services before, but Halloween-related party planning meant I had to do a bit of running around, and the bike wasn't up to task, so I signed up for Turo. There was a bit of a communication/logistics problem with the first car I tried to book, which was unfortunate, but the second one ended up be cheaper, nicer, and closer to where I was, so overall it was definitely a win. And compared with the more traditional options above (even after all my usual discounts), I got a better car, more conveniently, for a better price, meaning these car-sharing apps are definitely going to become a part of my travel playbook.

All of this has gotten me scheming thinking: could I buy a car, and then just list it on one of these sites to make a few bucks on the side? The past two years have shown I only need a car at infrequent and sporadic intervals, so I could heavily subsidize the cost of owning a car (or even profit), with a minimal amount of legwork involved on my end.

I could even take it a step further, and catalog the going rate for rental cars of different makes, models, and years, and compare that to the current cost of buying one of those cars outright. This would tell me which cars would be the most profitable to list on a given platform. Another (related) idea: since these apps allow you to offer car delivery, I could mount a bike rack on the car, drive it to wherever the renter is, and then bike back, and do the same thing in reverse to pick the car up at the end of their rental.

Obviously, I need to look much harder into the details (associated costs, insurance, risks, logistics, etc), but it's certainly an interesting proposition.

*My company has a fleet of cars we can borrow between like 7 am and 8 pm on weekdays, which are useful for errands and meetings on different campuses.


'Tis the season for belated blog posts! Seriously though, I know my posting track record is terrible to begin with, but it's especially terrible November to January…which I understand is a non-negligible chunk of the year. If it's any consolation, most of that time goes to building gag websites of questionable utility as gifts for my friends and family, and traveling to and from the east coast to showcase said gifts. Anyway, I'm glad to be back, now let's get to the topic du jour: managing truck expenses.


In my experience, the most common reason people consider living in a vehicle is to save money. And I agree that it can be an attractive premise:

Cut out your largest expense with this one weird truck trick!

Housing dominates the the average person's expense list, doubly so for those in high cost-of-living areas. I did a bit of lackadaisical "research", and it looks like the general agreement is that spending more than 25-30% of your income on rent is "excessive" or "financially unbalanced". But when the median cost of a one-bedroom apartment in San Francisco is ~$3,500/month, you'd need to make $140,000 a year to only be spending 30% on rent. That's a far cry from the actual median of $77,734 a year.*

It's fair to say that if rent is eating 40%+ of your income, you stand to gain a lot from…well, moving into a car and not paying rent any more. But as a cost-cutting technique, there are certainly some caveats worth considering before making the leap.

Personally, I've lamented that it can be tricky to figure out just how much I'm saving. It's hard to know what costs of living I've avoided by not choosing a certain lifestyle. But the inverse is a bit easier to figure out: I know exactly how much it costs to live the lifestyle I did choose (and continue to choose every day).

The problem is that I'm not always 100% forthright with acknowledging all of those costs. I've certainly made best-effort attempts at tracking expenses down, and I know how much I spend on major repairs, home improvement projects, insurance, etc. Even still, I feel like I sweep certain costs under the rug. Costs that are a direct result of the way I live my life, that I ignore for one reason or another.

And that's what this post is for. I'm a big proponent of aligning my spending with my priorities, which only works if I'm honest with myself about what I'm spending my money on, and where my priorities are. Part of the whole "know thy enemy" thing, if you're aware of the costs of your lifestyle, you can work on fixing them.

So I'll spend the rest of this post talking about some of the expenses I've incurred as a direct result of my lifestyle choices, some obvious, others less so.

Cost Calculus

I put the vast majority of my purchases on two credit cards: one that gives me 2% cash back on everything, and one that has 5% cash back on categories that change every few months.** This has a few benefits: I get at least a 2% discount on everything I buy, and all of my expenses are available to be imported into finance management software like Mint or You Need a Budget. Personally, I use Mint, and I'll reference some of my Mint-derived financial figures in analyzing my expenses.

Eating Out

Every single month, without fail, I'm shocked at the balance I've managed to ring up on my two credit cards. Shocked to the point that I'll go through each expense, confirm I recognize it, and manually sum them all up, only to find (to my complete disbelief), that the balance is indeed correct. And without fail, the most common expense is food.

I think the reason it sneaks up on me every month is because I don't eat a lot of fancy food, and I don't even eat out during the week because I can grab meals at work. But it's death by a thousand bite-sized cuts, and eating out for all of my weekend meals adds up, especially because I eat enough to feed a small village. It may only be $15-20 each time, but three or four times a day, two times a week is ~$150/week. And sure enough, Mint independently claims that I spent $7,316 at restaurants in 2017, or ~$140/week.


Of course, not every meal on my credit card is for me and me alone. There are (hopefully at least a few) dates to account for, and large group dinners where I picked up the tab and everyone paid me back after, to make the server's life a little easier. But I'm sure the inverse has happened too, so Mint makes a fine first-order approximation here.

Also, I never configured reasonable budget limits in Mint, so the greenness of that "budget bar" is totally meaningless.


Again, it's hard to know what my life would be like if I didn't live in a truck, but it's not unreasonable to think I could stock a refrigerator-equipped apartment with a weekend's worth of similarly nutritious food for way less than $140/week.

And another thing: None of this is to say I'm happy with my food spending. To be honest I think that it's actually kind of ridiculous I've let it get so out of hand and it's extremely un-Mustachian too. I guess my problem is that I just brush off a lot of excessive expenses with, "well, it's cheaper than rent", which is fine to an extent, but it's one of those things that becomes less meaningful every time I say it. I'm very much one for experiences, and I agree that a meal out can be a great experience, but if I'm just looking to nourish myself before starting my day, or while I'm on the go, restauranting is far from the most efficient approach.

To that end, I've switched things up the past month or so. I may have a "No Food" policy for the truck (for good reason), and the truck may not be even remotely appropriate for storing food, but I've found that meal-replacement powders fill my weekend needs perfectly. Basically, I store the Not Conspicuously Sized Tub O' Powder™ in my desk, and portion out a weekend's worth of meals in airtight containers every Friday night. Then, when I go to the gym on Saturday/Sunday mornings, I bring a shaker bottle and a serving of powder. I keep the other servings in my backpack and prepare them throughout the day.

And for the few weekends I've tried this, it's worked out surprisingly well. I have enough confidence in the containers that I'm not worried about keeping them in the truck for a day or two, and it means I'm spending ~$20 a weekend on food instead of the ~$140 from above. On top of that, it's quicker and likely healthier. That's enough about food though, let's talk (more succinctly) about other truck expenses.

Garbage Disposal

I've talked about Waste Management before, so I won't spend too much time rehashing it here. The general gist is this: taking things to a landfill is time-consuming, fuel-consuming, decidedly unpleasant, and on top of that, costs actual money. Throwing away mystery bags of garbage (apparently called "general rubbish") is actually fairly cheap, you could dump a truckload of hot, steamy trash for less than $50, but there are premium rates for certain things, like mattresses. So the less stuff you buy, the less stuff you have to throw away, the more money you save.

Repairs and Maintenance

Cars break, it happens. In my experience, they tend to break more when you live in them. Whether it's accidentally killing the battery by leaving the lights on, general wear and tear, preexisting damage made more noticeable because you live mere inches away from it, or random acts of wrathful intervention by the Automotive Gods, stuff is going to need fixin'. And if you can't live without it, you're going to have to foot the bill to fix it.

Between little "improvements" to the truck (insulation, a sunroof, desiccants, noise-reducing foam, a raised bed frame, etc), major upgrades/repairs, administrative fees (insurance, registration, parking tickets, my blasted aftermarket catalytic converter), and regular maintenance (flushing fluids, changing tires, replacing filters) I've spent ~$7,500 maintaining my (originally $10,000) truck. It all comes with the territory.

There's no way to spin it: that's a hefty chunk of change. Not to mention the fact that some of those costs are recurring, which can act as a real headwind against any financial goals you're trying to achieve. I've argued before that I'll probably see some sort of return on those repairs when I sell it, but there's no guarantee that'll be the case. The key takeaway here is that the cost of owning a vehicle is far more than the sticker price, doubly so if you live in it. Think carefully about what you need out of a vehicle, and do your research before you make the purchase to help keep this class of costs in check.

For example, since I knew I wanted an easy and secure way to get in and out of the truck, I could have initially purchased a box truck with an interior door, or swing-open doors instead of a roll-up door, which would have saved me money in the long run. Or, for example, if I had known that California only allows a short list of approved catalytic converters, I wouldn't have gotten a truck with a non-approved, aftermarket catalytic converter. These things are certainly easier to recognize in hindsight, but with a bit of proactive research, you can catch them earlier.

Your Time

For most of us, time is the most valuable resource we have. And I'll say it outright: living in a vehicle can be an incredible time-sink. I'm quick to point out that living near work makes my commute basically non-existent, which is great, but there are tons of activities that get a bit slower because of the truck. Things like laundry and showering require more thought and energy than if I had those resources in my home with me.

Aside from normal every day activities that get a little slower, a lot of those maintenance-related activities I listed above are specific to living in a car. Even for the ones that aren't particularly monetarily expensive, they do require a bit of time.

I like to consider my Home Improvement projects to be great learning experiences, but they also occupy a lot of my time. Figuring out the logistics for getting a bed delivered, driving to a suitable place to set up new furniture, measuring/cutting wood and foam paneling for bike racks and insulation, it all takes time. For example, I worked on and off for months before I finished up my insulation project.

I legitimately enjoy working on this stuff, I treat it like an investment in myself. But for people who aren't interested in DIY projects, that could very easily feel like (and indeed, be) a waste of time.

Parting Thoughts

Living can be an expensive hobby, but thoughtful tweaks can go a long way towards making some prices more palatable. The best advice I can give to someone living out of a car to save money, or out of necessity is this: plan ahead. Sometimes just sitting down for an hour and thinking about some of your biggest expenses is enough to help reign them in. Recognize what resources you can leverage, and then use them to your advantage whenever possible. To end things on a pithy and faux motivational note:

Live simply, live happily, and live with purpose.

*I'm doing a bit of sloppy math here, because that $3,500/month in rent is money that's already been taxed, whereas people generally talk about salary in untaxed terms. That means the picture is actually a bit grimmer than I painted it.

**I only use the 5% card for purchases in the currently active category. Neither card has a yearly fee, which is important to me because I'd feel incentivized to spend unnecessarily otherwise. I hope it goes without saying, but I pay the balances in full every month.

Side note: This post took longer to write than I'd generally like, and that's partly because I bit off a bit more scope than I care to chew. I'll shoot for shorter, more frequent posts as we venture into 2018.


Source: Weirdly enough, I didn't even have to make this image. It was already a part of the the big icon collection I subscribe to.

Obligatory warning: This post is about some of the inner technical workings of the site. If that doesn't tickle your fancy, you might find this unfathomably boring.

Sometimes, when I've exhausted all other interesting or productive things to do, I'll blow the dust off the code that makes this site hum along, and tweak it in one way or another. I've got to say, it's a pretty thankless task. Brandon in 2015 didn't really know what he was doing when it came to building web services in Golang, so the core codebase has historically been…unkempt, to say the least. To say the most, it looked like it was haphazardly slapped together by a team of monkeys banging on typewriters in the wee morning hours at the end of a hackathon.

But with a few more years of professional experience working with these tools, and a couple late nights refactoring the site into submission, making changes and adding functionality isn't nearly as painful these days. So I decided to sit down and fix one of the weaker parts of the site: the search functionality.

I've talked about my original search implementation before. I was (slightly) young(er) and ambitious, and I wanted to do everything myself (except the frontend, because HTML/CSS/JavaScript are the devil). The search code looked something like this:

func buildATerribleSearchIndex() map[string]map[int64]bool {
  // Our "search index" is a big map from words to the post IDs that they
  // appear in.
  invIndex := make(map[string]map[int64]bool)

  for _, post := range getAllOfThePublishedPosts() {
    for _, word := range extractAllTheWordsFromThePostButDoItPoorly(post) {
      // If the word isn't in the index yet, make a submap for it.
      if _, ok := invIndex[word]; !ok {
        invIndex[word] = make(map[int64]bool)
      }
      invIndex[word][post.ID] = true
    }
  }

  return invIndex
}

I removed some of the error-handling for brevity, and made the function names obnoxious because that's who I am, but this is basically what I had. There are a few major problems here:

  1. It's not persisted anywhere. It's stored in-memory. This was pure laziness on my part, and it means we have to rebuild the index every time our server dies. By virtue of the way App Engine manages server instances, it's pretty much guaranteed to kill your server randomly for fun and sport.
  2. We go through allllll the posts. Now I'm not the most prolific writer, but there are over 100 posts, and some of them are fairly long, and App Engine servers are small (by default), and the parsing/delimiting operation isn't exactly cheap. Reindexing all the posts before a page load was actually noticeably slow, on the order of a second.
  3. Index invalidation is hard. Say I want to edit a post (because someone points out I've spelled the word "truk" wrong, for example), how do I update this index? Well, I blow it away and start from scratch obviously! Instead of just removing references to the edited post and reindexing that, I reindex all the things. Again, because laziness.

So, how do we solve any/all of those problems? Well, we put our huge ego aside and leave searching up to people that know what they're doing, let's say, Google, for example. Sure enough, Google has a search API for Go on App Engine, which is exactly what we want. Ripping out my own search code and subbing in calls to Google's API was fairly straightforward, with each post mapping to a unique document.

The result is a faster search system that's easier for me to maintain. The search results are also more accurate, thanks to Google's smarter tokenization rules. And since I'm not indexing anything crazy large, it's also free for me to run. Definitely a big win for the site.

There was just one little problem left to fix: keyword highlighting. When someone searches for something, they're probably interested in finding the text where that keyword occurs. Previously, I had home-rolled a simple (but highly questionable) highlighting system on the backend that would that would find the keyword and wrap it in a <span class="highlight"></span>. This worked except when your keyword also matched something inside an HTML tag (because I write my posts in normal HTML), at which point it would just unceremoniously clobber the HTML and mangle the search results.

I figured, if I'm putting in the effort to make search better, I might as well make the whole experience actually work. So I sprinkled some mark.js magic on the search page in the frontend, and all was well with the world end-to-end search experience. Well, except for the fact that the search box got moved into obscurity at the bottom of the page after my last site redesign, but I'll probably fix that in a future update. Until then, feel free to scroll allllll the way to the bottom of the page and give the search functionality a try. As always, email me or drop a comment if you have any problems.

Next Up

Like I alluded to in my last post, I spent a lot of time the past few months not writing blog posts building different websites as Christmas presents for my friends and family. This was mostly an excuse to learn how to use modern frontend technologies for building responsive single-page applications, including actual frontend tests and minified/productionized assets. I'm currently in the process of rewriting the blog as two separate pieces: an API server that speaks a basic CRUD protocol to serve posts, questions, etc, and a static frontend that makes calls to this API server. If all goes well, nobody will even notice when I roll it out.



Subscribe

If you want to get emailed when I write a post, add your email here. Don't worry, you can always unsubscribe.