Morning pages: Day 44

After hitting ‘post’ yesterday, BTC proceeded to rip everyone’s faces off, ending up something like seventeen percent on the day. I must have gone to bed at one thirty this morning, drinking sake and watching it blast up to 9200 before going to bed. It’s retraced slightly since then, but my, yesterday was glorious. My equities portfolio is back to where it was in early February, before the COVID panic set in.

And speaking of everyone’s favorite coronavirus: cases in our state continue to rise. It’s probably more indicative of testing availability than anything. Since the Governor is using a 14-day decline in cases as an indicator before relaxing social distancing guidelines, we’re likely going to be shut down for a while more. The curve hasn’t even flattened.

Source: bing.com/covid

My final is coming along. I was able to implement my LU Factorization solver, and am working on Gauss-Sidel, Jacobi and SOR solvers. Besides that, the test is all questions on GMRES, based on which I’m not even really sure my professor understands. I have until noon Sunday, so things are looking good.

I’m going to publish my new professional web page today. The portfolio stuff isn’t done yet, and I want to add more job history and projects to it later, but I want to post it on LinkedIn and see if anyone else wants to hire to make one.


Via @doctorow: 68 Bits of Unsolicited Advice from Kevin Kelly. There’s some wonderful gems in here. I can’t wait to share it with the girls. I will try reading it out loud with Elder. There’s some great professional, financial, and parenting advice in here. Kelly is a great thinker. I really should spend more time reading his blog. One of the bits: “don’t be the best, be the only”, made me think of something that I picked up recently: get good at something, master anything. Becoming really good at something will open the doors to more opportunities. I really hope I can instill this in my children.

We’ve been relaxing the home-school work the past week or so. We got Elder’s most recent report card, and even though they have another six weeks or so till the end of the school year, it seems that her teacher has only been reading Harry Potter to them. She had to cancel yesterday, and I told Elder to spend some time on Khans Academy. I showed her the other courses that they had on there, and she wanted to look at the Art History course. She though it was art training, and was a bit disappointed. I remembered that I had a copy of Drawing on the Right Side of the Brain saved in a cache of books I downloaded some time ago, and started going over it with her. I’m thinking about heading out to the store to pick up some of the recommended supplies, but it’s probably best to make her go through a few of them first to see how serious she is. She’s also been asking for a sewing machine, which is interesting.

Finally, my wife’s birthday is next week. I ordered some stuff weeks ago, and let Elder order some more things off Amazon that came in earlier this week. I guess we will be baking a cake soon.

BTC/GBTC arbitrage

There are certainly worse things to wake up to:

Bitcoin blowing through $8K this morning.

Cryptotwitter has been full of anticipation the past few days. The bitcoin halving is just days away, and people are going mad with predictions on how price action will go. Is the halving priced in? Will there be a post-halving dump? Will less-efficient miners get priced out of the market?

On top of that, QE actions by the fed (money printer go BRR) has everyone convinced that $100,000 BTC is not just possible, but is very probable at this point. Some are predicting it before the end of the year, with others on a more conservative projection between now and the next halving.

Personally, I’ve been watching this upward channel curve for about two weeks now.

There’s a couple of important trend lines here to note. We’ve just breached the mega-dump that took place March 12. I’ll be looking to see if we breach the upward channel and test the next resistance at 9200. The green and red lines running up from the left is the multi-year trend line from August 2016. Getting back above this would be very significant, and would indicate that BTC has fully recovered from the COVID panic. This trendline intersects the higher curve on May 31st.

The news feed in Trading View is already full of coverage about this event; most of CT hasn’t woken up yet I’m guessing. Taking a look at arbitrage opportunities for trading with GBTC shows a couple opportunities. The GBTC estimator shows a price of $8.86, there’s been some pre-market activity at 8.75, which would have been a maximum of $111 in potential profit. It looks like most of this would have been taken by fees, as there were several orders for 200-300 shares.

Now that the timkpaine/TDAmeritrade project is moving forward with websockets, I’ll be adding additional functionality to my estimator. Right now it only pulls yesterday’s equity data and crypto markets via a REST call. With websockets, the program will be able to monitor price action, and take action on any deviations as they occur. This may take me a while, since we still need to develop the TDA functionality, integrate the new CCXT library, and figure out how to do asyncio calls properly. The opportunity here isn’t huge, but will make a good demonstration of my coding abilities. And if we make $20-100 day on moves like these, then that’s a bonus, right?

Nothing punny today: Quarantine day 42

So we’ve begun week six. Writing has proved difficult recently, as I’ve been getting up roughly the same time as the girls and have been unable to focus on writing until later in the day, after my day seems to have filled up with tasks. Saturday marked the first real bit of restlessness I’ve felt since we started the lockdown, a bit of ennui and listlessness about what to do.

We’ve rearranged the room over the garage. My wife’s desk is setup and she’s able to telework. I took one of my old workstations and set it up for Elder. I tried using Wine for the first time, but had trouble with some fonts and wound up wiping it an installing Windows 10. I’m hoping she’ll take interest in computer art or music production, but she’s mainly interested in playing Roblox. I gave her a free pass yesterday and asked her what she wanted to learn about. She said “music”, so I threw on a YouTube video lesson for children.

She’s been accepted by the gifted program and will be going to the city’s gifted center for third grade. Her teacher called me Sunday to ask if I would be interested in letting her be part of a small group in the class that would be doing more advanced math, and of course I said yes. I’ve managed to get her to do piano without too much fuss, but I haven’t pushed too much. I can’t say for sure, but it seems that there’s been fewer tantrums.

We’ve discovered Amazon Music and that it has Trolls and Disney music, so the girls have been playing that a lot.


I’m in the midst of my final exam for my numerical methods class, and have been getting my solvers working. Right now the Gaussian elimination is the only one working, and I’ve got 3 more days to get the others working. The professor wants us to generate surface plots in Excel, of all things, and to turn those in for our answers. Since all the solvers are supposed to return the same results, I could just turn in the answers I’ve generated thus far, but I still need to turn the solvers in for assignment credit. The problem here is that I’ve built a large build and test suite in CLion, and my professor just wants a single CPP file that he can run in CodeBlocks. I’ve painted myself into a corner, but I’m not concerned with grades since I think the professor is going to grade on a massive curve.

One of the graduation requirements is financial aid counseling, and I got the first look at my student aid totals in a long time: over fifty-seven thousand dollars. There seems to be some discrepancies that I’ll need to review, but this is obviously a lot more than I was expecting. I hurt myself by taking cash payouts for personal expenses. These went to pay credit cards, and quite a bit to bitcoin. I’ve already accrued five grand in interest charges. It puts my post-graduation plans in a bit more context. The status quo will not hold.

I’ve got until next year before I’m expected to start paying these loans back, but the interest is well over four percent, so the first thing I’ll be looking to do is refinance.

I’ve decided that I need a proper professional presence online, so I’ve registered a few domains and started setting up a new CV site. This blog will remain separate for now, but I’ve started reposting some articles on Medium, and will be linking to my Github repo on it. I’ll worry about the ramifications of a recruiter seeing my Tweets and blog posts later. For now, the only thing that comes up when you Google my real name is my political work, so I’ve got to work on changing that.

I’ve also started trying to use LinkedIn more. There are a lot of jobs for software developers and engineers lately. About twenty new ones a day. I’m not saying I can take my pick, but there’s been about one or two each time I look that I’d be interested in. Not that I would necessarily be qualified for, but once I get through my exam and independent study requirements, I’ll be finishing up my resume and applying to some. Not that I really have any desire to work for another firm full time, but I doubt I would turn down an eighty thousand dollar a year position right now.

Or would I?

Underpromise, but overdeliver

Yesterday we gave the final demo of our two-semester professional workforce development project. It did not go well. We had fifty minutes to present, but our demo only took about five. One of the professors, who had been receptive of our pitch last semester, was very disappointed. We basically failed to deliver. I was defensive, and tried not to make excuses cause she was totally correct.

During the last few weeks of this semester, we were more focused on what was right in front of us than on the big picture that we had promised last semester. And by that I mean technical issues. As system architect I was more focused on getting the architectural components up and running than I was on whatever particular use case this person was expecting to see. So in that sense, yes, we failed.

There were a number of roadblocks that we had to overcome. Our team was made up of six members, two of which were complete dead weight. Another member had issues with her local development machine and was unable to contribute directly to the source code. This was fine, as this was a writing intensive course and there were several written deliverables, including specifications and testing plans. So we basically split the work: I lead the technical development and contributed to the written work as needed, but pretty much left management of the final written work to others on the team.

We relied heavily on Cookiecutter Django for our base deployment. In the long run, this was probably the way to go versus using vanilla Django, or another framework like Flask, but it hurt us in the short term. No one on the team besides myself was familiar with it, although I don’t think we could have avoided that with another solution. We wound up spending an inordinate amount of time trying to get the others on the team up to speed on deploying it via Docker and managing that through various IDEs. I spent a lot of time mentoring the two teammates who were assisting with actual code commits. And it had been so long since I had worked on Django that I had to relearn its model-view-template architecture all over again.

And this is where using Cookiecutter really slowed us down. The package implements several best practices on top of Django: overriding the default user model, implementing updated authentication forms, even deploying a Traefik load balancer on top of the production web server. All of these slowed us down.

In all, we spent less than forty five days doing actual development work on the project. That was following more than thirty days trying to get the framework up and running between local and production environments. The semester was actually focused more on the written deliverables and put off actual development work till the last half of the semester. In retrospect, holding to this schedule was a mistake, and it was probably a bit of hubris on my part not to start work a bit earlier.

We got an email from our instructor this morning:

“From a development (i.e., architecture, tool, collaboration, and project) standpoint your team has met all the requirements for the course. While your demo was less “interface oriented” than the other groups the evaluators referenced, the foundation of your prototype is more substantial. It was clear to me that there was a bias during the evaluation based on discussions that occurred […] last semester. Keep in mind that I have been equally critical of groups in the past (albeit in a less heavy-handed fashion). Your group as a whole should not worry about failing the course.”

So maybe I’ve been a little hard on myself, but I think it more likely that they were as much invested in our project as we were. Obviously there’s some University politics at play there.

So the question is, what comes next? We had hoped to pursue a grant to continue working on this project on behalf of the university post-graduation, but given the tepid response from the skeptical evaluator, I don’t see that as forthcoming without many additional changes. I’ve broached the subject with my other teammates, and I’m not sure there’s any desire to continue forward with that. Maybe after the semester is over. I still have two more classes to complete, and others have a full case load. At least one of them has taken a job, so it may just come down to me and one other person.

All in all, I know the experience was a positive one for me. I know that learning GitLab, Docker and Django for app deployment will come in handy in future projects. And we’ll just have to see if any of the relationships with the team members will last past this semester. Any decision about the future of our project will be on hold for now.

Ternia Blockcard: pre-paid crypto credit card

The Devil’s in the details: fees, murky exchange rates and other issues mar what should be a promising crypto to fiat instrument

This sponsored tweet has been coming up in my feed a lot:

I’ve been very interested in crypto-backed credit cards for some time now, (remember TenX, anyone?) and thought I would take a deeper look at this. And since my wife and I are no longer that interested in hacking frequent flyer miles, I’m very interested in something that advertises six percent back in rewards. So I signed up for a BlockCard account and did some testing with it. Let’s just say there’s a couple hiccups with it.

The Blockcard is basically a pre-paid Visa card. You can deposit funds from 13 different tokens including BTC, ETH, LTC, and others, and while they say you can “stay in crypto” until you need to spend your funds, all deposits are converted to the Ternio utility token, TERN, upon deposit. What is TERN, you ask? That’s what I wondered as well, so I took a look at the whitepaper.

Ternio background

The paper, published sometime prior to the TERN token sale in April of 2018, describes it as “built to transform and ultimately disrupt the $224 billion per year digital advertising approach.” Basically, they’re building a platform to connect advertisers, publishers and users, providing scalability, auditing, and payments. Of course, TERN tokens are used for the payments, and must be front-loaded to participants accounts. According to the whitepaper, Ternio relies on an internal blockchain called Lexicon, a modified version of IBM’s Hyperledger protocol, and the public token, TERN, on the Stellar network. Lexicon purportedly runs over a million transactions a second, and was accepted by Amazon as an AWS Advanced Technology Partner a little over a year ago.

The rest of the whitepaper describes the projected use case for the Ternio netowork, token sale and airdrop and social bounty program. The BlockCard is also described. That said, the Ternio team seems to have dropped their focus on advertising, and now seem to be focused primarily on building a payment network and driving adoption of the BlockCard.

Using the BlockCard

The Fees

I signed up for an account a few days ago and was immediately struck by the fee disclosure. First off there’s a $5 monthly “subscription” fee if you don’t spend at least $750/ month. Deposits, withdrawals, and point of sale (swipe) transactions are free, but using the card as a debit, with a PIN transaction, will cost you, as will any ATM cash transactions, even declined withdrawals. They also charge ten dollars for a physical card, or you can get a metal one for fifty.

Source: BlockCard FAQ page.

To BlockCard’s credit, they claim that theses fees are required by their banking partners.

Conversion confusion

I needed to load at least ten dollars on the card to make it usable, so I sent eleven dollars of BTC over from Ethos wallet when I ran into what seems to be BlockCard’s biggest problem. BlockCard undervalued my deposit. I was surprised when the transaction completed and my card only had a total balance of $9.37. The transaction history actually showed the value at a more reasonable $10.71, but it still showed an inexplicable deposit amount of 1.52 BTC (I wish!) instead of the actual 0.00156. This still left me with sixty cents under the ten dollar threshold, so I went ahead and sent a transaction in ETH. There seemed to be less lost on the conversion, $9.98 sent versus $9.85 deposited.

In total, I deposited $20.99 cents to my account (not including on-chain transaction fees), after which my account showed a $17.99. This was quite concerning, but after a few more minutes the balance updated to show $20.56. Less dramatic, perhaps, but still a problem if one is expected to spend $750 a month on the card. That’s a lot of slippage, likely more than a $5 monthly membership charge. On top of all this, the UI for the website seems to be extremely slow to update the conversion. I noticed several times when I logged in and the balance didn’t update for almost fifteen minutes.

A few days after my initial deposit and my balance flipped back to eighteen. I’m not sure if this is the buggy UI or just fluctuation in the price of TERN. The FAQ indicates that the value of TERN is pegged against the USDD stablecoin and is “tied to TERN on the BlockCard ecosystem”, independent of trading on any other exchanges. “As users deposit on BlockCard, the value of TERN increases. Β As people spend, the value decreases. TERN is never issued at less than $0.008”

This is all very problematic from a transparency standpoint and seems very ripe for abuse, especially since their use agreement allow up to 36 hours for deposits to clear. Without any clear exchange rates as part of the deposit process, users are basically at the mercy of BlockCard to treat them fairly. With no clear indication of the TERN/USDD price, users are left to do the math to make sure they’re not getting ripped off. Even by my own calculations, my current balance is being valued at 0.0069.

17.699 / 2570.33 = 0.006999, an immediate loss of 14% value on deposit.

So does this mean that incoming transactions are converted to TERN at the 0.008 exchange rate, but then immediately lose value upon being credited to a user’s account? If this is accurate, it seems like a very bad deal for users.

Rewards?

The marketing for BlockCard touts the six percent rewards on spending. While on the surface, this seems like a deal, until you find out that these reward levels depend on staking TERN.

Source: BlockCard Rewards Page

At the base rate of $0.008 TERN/USDD, that’s a minimum of $240 worth of TERN for the bottom tier, and almost twelve hundred dollars required for the top. Granted, one might be able to cut that quite a bit if one is able to acquire TERN at a discount on a exchange, but given the hype that BlockCard is putting on the rewards aspect of their card, it’s disingenuous not to mention the staking requirements on their marketing.

The main exchange market for TERN is BitMart, ranked 24th on CoinMarketCap and based out of the Caymans. Source: BitMart, Apr 22, 15:34EST

Conclusion

There’s other issues with BlockCard as well that are worth mentioning. For one, I’ve been unable to use the card since I don’t have the option to complete KYC on my account. I’m guessing I have to request a physical card to do that, but I’m hesitant to do so since it’ll cost me ten dollars. I’ll likely reach out to BlockCard for confirmation on this, and just to be fair I’ll give BlockCard’s CEO Ian Kane a chance to respond to this article and address any inaccuracies.

The last issue is related to taxes. Sending depositing crypto to your BlockCard account and automatically converting it to TERN qualifies as a taxable event. Spending the funds on the card does as well. Kane said in a tweet that they plan on adding CSV export for transactions, but for now users will have to copy and paste the details manually.

Finally, I want to be clear that this post is not just meant to be a complete dump on the work that Kane and the BlockCard team have done. They’ve done well so far to put together this link between cryptocurrency and traditional payments system. While I’ve yet to use BlockCard for a payment, it does seem to be one of the fastest ways to spend crypto to fiat. My concerns are mainly with the execution of the crypto components of the system. Using TERN as an intermediary currency, without clear indications of how either deposit or balance calculations are converted, is especially troublesome. And the prospects of their so-called rewards system is completely offset by the staking risk, which is again compounded with the lack of transparency in the exchange value.

For now, I’m going to hold off further judgement on BlockCard until they’ve had a chance to respond.

Five weeks in: day 35

I’ve found myself thinking about stories like Swiss Family Robinson, or Lost in Space, those where a family is trapped or abandoned somewhere and forced to hunker down for a long period of time. I suppose the analogy between those and our current situation during this Great Lockdown isn’t quite apt for a variety of reasons, but I don’t have any personal frame of reference. Hopefully we’re not in the Donner family. All I do know is that this period is likely to have a long-term effect on our culture, one which I imagine will soon be reflected in our art. There’s a scene in Devs where they’re looking back thirty thousand years a family of cave dwellers gathered round a fire an noting that some of the cave paintings were separated by five thousand years. “Imagine staying in one place for that long.”

I don’t feel like I’ve been as productive as I should lately. It’s hard to focus with two small children running around the house constantly, so I can only find small slivers of twenty or thirty minutes here and there with which to try and get into the zone. No more two or three hour blocks, unless it’s after everyone has gone to bed. By that time I’m drained. Perhaps that’s because I fell of the wagon last week and have been drinking in the evenings again. Perhaps it’s just the drain of fighting with Elder about everything, or just the constant cooking and cleaning, or having to manage groceries shopping twice as much. Or maybe it’s just the cumulative stress of worrying about losing my job, finishing my degree, and the numerous unfinished projects around the house that need to be addressed: replacing the dishwasher, the rotting boards on the deck that will need to be replaced soon. Trying to get a goddamn tomato seed to sprout.

I believe I’ve been successful disassociating myself from the action in the equities and crypto markets. I still check the price of bitcoin several times a day, and equities at least once daily when I trigger my value averaging program. I don’t stress about it; I might allow myself to be a bit elated when things skyrocket, but I haven’t freaked out or let it ruin my day when things tank. I guess I’ve been doing this long enough now that I’ve gotten good at compartmentalizing it. That said, I really do need to do some calculations and figure out what my gains have been over the years and compare it to what they would look like had I simply invested in an index fund. Then I’ll know whether I have any business in this game, or whether I’m simply a bad gambler.

Since I’m on the subject of the market, let me just make a note about the significance of yesterday. It was the fortieth celebration of Earth Day, the twelfth anniversary of the Deepwater Horizon spill, and oil prices crashed so hard that futures went negative for the first time ever. It really is ironic.

So here we are, finally able to isolate ourselves, and idiots around the country are already trying to reopen the country. Thankfully our Governor isn’t as stupid as those elsewhere. I’ve been seeing charts of the Spanish Flu epidemic; the second wave is the worst one, and I fear that’s what we’re facing. Since the lockdown is working, it makes our efforts seem unnecessary. On top of that you have the portion of the population who’ve been feed the line that COVID is a hoax out there protesting the right to re-open Applebee’s. We’re no where near the end of this thing.

At least we hope that the girls will be able to see their grandparents in a few weeks. Elder has been using the Messenger Kids app to chat with family, so maybe we’re not quite like the Robinson’s yet.

COVID from Home: Day 34

My bronchitis seems to have cleared up this weekend. I was actually able to work out for the first time in ages, and even took Elder on a three mile bike ride yesterday. I’m pretty proud of her for trekking it out. It was fun, and good for her to get our of the house and get some exercise. Both of the girls are having problems getting to sleep on the weekends since we don’t give them melatonin Fridays and Saturdays, so I figured I’d see if physical exhaustion would do the trick. She did have trouble falling asleep, but here it is almost eight AM and she’s still in bed. Like clockwork, Monday comes around and she sleeps in.

We watched the last trio of the Star Wars movies this weekend. The Last Jedi is my fave of the bunch, especially the encounter between Luke and Kylo Ren in front of the salt mine. I was expecting problems going into Rise of Skywalker, having seen spoilers and reviews on Twitter. As a result I wasn’t too disappointed. The plot was contrived, and the whole movie was just too much for me. The girls liked it. Not sure if I want to go back and watch the prequels with them; we’re near the end of season one of Clone Wars, so we’ll probably just stick to that for now.

My mind seems to be pre-occupied with work. My boss had dismissed my comment about shuttering two weeks ago, but I noticed that payroll had been slipping again, from Thursday or Friday until the following week. I haven’t checked for this week yet, but I seem to be working out what my response is going to be. I’m not going to be working for free. I’ve been on unemployment before, and assuming the state’s infrastructure is holding up with the number of claimants, I have no problem going back on it for a while. Ultimately this is all unnecessary worry; I’ll have my degree in two weeks anyways.

I’m still not sure what my plan is. It’s become very hard to get things done with the girls home. My wife is locked in the office from eight to four, and I can’t take my little breaks on the piano or my upstairs workstation like I’m used to. I don’t see how I would take a full-time work from home position with them at home. Not without parking them in front of a screen all day. My priority is finishing my school work, and making sure that they’re getting some sort of structure learning. Younger still has to learn her letters and writing. As much as I like the idea of home-schooling them, I’m not sure I want to unschool them and just let them loose.

Our grocery lists now look less like a trip to the grocery store and more like the starting loadout for a trip on the Oregon Trail. Getting meat and cheese has been difficult lately, and with all of the COVID infections at the Smithfield pork plants, now seems like a really good time to stop eating meat. I’ve been cooking up a storm, but keeping fresh fruits and vegetables means that we have to get food orders in more than we had originally planned.

So far our gardening experiments have proved fruitless. We may have some things finally starting to sprout; I suppose it was a bit too cold outside for things to start on their own, and we’ve had a lot of rain the past week or two. We’ve got a clear, 30-count egg carton that will make a nice greenhouse for seeds, it will be our project with the kids later today. My wife brought home her plants from the office, so the kitchen is looking like a little atrium with all the greenery around.

We’re in a bit of disarray with my wife working from home now. She got a new desk, so we wound up getting rid of the bed in the guest room via the local buy nothing group. Thankfully I set Elder up with a laptop that she can use in her room for school, and I’m planning on setting up my old workstation for her that we can share somewhere else.

Finally, our dishwasher has decided to stop cleaning anything. I can’t tell if it’s water pressure, or crappy detergent, but nothing comes through clean anymore. So it looks like we’ll be buying a new one sometime this week.

The sorrow of friendship

I had a late-night call with an old friend yesterday, after the girls were long in bed and I was on my fourth IPA. He’s an older buddy; we used to be business partners, but our lives have diverged quite a bit since we worked together, about fifteen years ago. I was twenty five then and he was thirty four, and although we’ve stayed in touch over the years, we’ve drifted apart. This call was the first time we’ve spoken in several months, and it just served as a reminder how different our lives are.

There’s a common saying in self-help and other circles: you are the average of the five people you spend the most time with. My wife and I took this saying to heart some time ago, realized that the crowd we had been hanging with were not travelling in the same direction as us, and pretty much grew apart from most of them. I can honestly say that I was a fuck-up back then.

I remember once, in my twenties, I had a conversation with the local police chief. He was off duty, I can’t remember the context, but there was some religious context to it. The subject turned to rock music. The chief started wistfully recalling his band days, playing Stones and Zepplin, Back Door Man, he said, but the message behind all of that was fleeting — he didn’t use the word sinful to describe it, but all that paled in comparison to the purpose he felt after he found Jesus.

Of course I haven’t had any similar religious conversion. The story I tell people is that I had to make a choice with my life. Whether to keep “pursuing music”, an excuse to go out and get wasted at open mic nights and bars, or focus on my wife and the family we were building. I made the right choice. The alternative would have been another DUI, another job lost, I likely would have cheated on my wife and lost her too. So a lot of “friends” got cut in that decision as well. I haven’t regretted it all, je n’rein pas, as they say.

Another friend, one of my oldest, reached out to me out of the blue several months ago, and stopped by for a very short visit. We caught up, it seemed like the same ‘ol, same ‘ol, even though the details had changed. It seemed that he at least was in a better place than when I had left him last, he said he’d been sober for over a year. I was in the midst of one of my abstinent periods. He was staying fit, and working out, but if he had found any professional success I was expecting it to be short lived, as his pattern had been since I had known him.

Both of my guy friends have been single for some time. They had come off of bad breakups that had left them broken and emotionally scarred in some sense. I had been in similar relationships earlier in my life, and I’m lucky that my wife and I had a long history together before becoming romantically involved. And the fact that she has her shit together hasn’t hurt, either. If there was one single factor that I could point to with regard to the change in my life’s trajectory this past fifteen years, it would be her influence. It took a long time to turn the ship around, but I can only imagine where I would be without her.

I’ve got to reiterate again how lucky the two of us and our girls are in the midst of this Great Lockdown. My friend seems to have gotten the short straw at his job and is stuck being the one to have to come into the office and help the other “essential” staff. He’s making money working overtime and it burned out, but feels compelled to continue because he’s under endless student loan debt. He’s not taking care of himself, I have no doubt. We talked about politics and bitcoin, but when I found out just how deep his situation I was reminded why we had grown apart in the first place.

I’ve tried to offer advice and solutions in the past, but I usually wind up feeling bad about it, like a man in a boat telling a drowning man to swim. At least last night I managed to catch myself before I became indignant about it. I think it was just the sadness, and hopelessness that my friend seemed to be resigned to. It’s easy to imagine a way out of things for someone else, but only they can take that first step.

Choose FI: Financial Independence

My wife and I don’t usually read too many of the same books. Beside some sci-fi and fantasy novels, our non-fiction reading preferences don’t overlap too much. She likes trashy novels and I stick to political, business, and technological based non-fiction. She recently discovered the FIRE movement, a group of people trying to build freedom from wage-slavery through financial independence. She picked up ChooseFI a few months ago, and has been listening to the related podcasts regularly. Since being able to redefine work has been of great interest to me, I decided to make a trade with her: I would read this book and she could read one of mine. I’m looking forward to her upcoming review of The Future Is Faster Than You Think — as soon as I finish it.

ChooseFI is an introduction to the financial independence movement. The last two letters of FIRE are for retire early, which the authors acknowledge is a bit of a misnomer, as many who have achieved FIRE continue to work. The general idea behind the system is to lower expenses and save up enough money to be able to fund your lifestyle via the interest earned on these savings. The first step is determining your magic number. By taking one’s annual expenses and multiplying it by twenty-five, you will have the amount needed to be able to maintain that lifestyle off of a four percent rate on those savings. These concepts are given as the rules of twenty five and four percent.

Determining this number and thinking about spending in terms of twenty five times (or three hundred if you’re talking about monthly expenses) can produce a dramatic shift in mindset. A simple example: spending three dollars a day on an energy drink or coffee each workday might cost you fifteen hundred dollars a year just to purchase, but maintaining that level of spending from savings income will require a whopping thirty seven thousand dollars in the bank. Another example: we’ve had a housekeeper come by our home twice a month, at $130 a visit. That’s over three grand a year, in direct expenses, over seventy eight grand to maintain during retirement. Putting these costs in this perspective creates a stark shift in priorities.

Of course the goal of living FIRE isn’t to live life as an an ascetic, it’s about prioritizing the things that one wants out of life. As a self-help book, Choose FI does a good job of laying the ground work toward setting priorities, developing a growth mindset, and mapping out the path to get there. There’s chapters on US tax savings, advice on college, career and networking, and investment tips that focus on real estate and house hacking, investing in index funds, and building a business.

As someone who’s taken a hands-on approach to managing my retirement and stock accounts much of my adult life, I found the chapter on index funds to be the weakest. I understand that for most people, picking a low-fee Vanguard index makes the most sense, but reading the following passage in the days following the worst daily drop in the S&P since the Great Depression struck me as ironic:

Buying an index fund means making a bet that the system continue to grow and prosper. Some will argue that this will not always be the case. After all, societies and economies have collapsed in the past. While this is true, I’m not basing my plan around a worst-case scenario that may never come.

Choose FI, pp. 229

Whoops.

To be fair, the authors have acknowledged the current pandemic and situation in the markets in their recent podcasts. From what I’ve heard, it sounds like they are exercising caution and urging listeners not to jump at the current fire sale prices. This is probably wise advice for most people.

The book is perhaps a bit longer than it needs to be, and I found myself skimming through the book the more I reached through the end. There are lot of personal stories from both the authors and many of the chapters showcase others that the authors have met or interviewed on their podcasts. I suppose it’s to be expected in an introductory book like this. The chapters on tax strategies and real estate investing were of the most interest to me, and the author’s point to other resources where readers can find more comprehensive resources.

That said, the authors deserve credit for the community building that they’ve built. I hesitate to use the term ‘media empire’, but I did experience a tinge of jealousy at some points during the some points, reading about how they quit their day jobs to focus on their Choose FI company, or others who were able to retire at thirty five based on their real estate holdings.

My wife and I may have seen the light a bit later in life, but we both understand that our parents path of working a nine-to-five for fifty years is not the way for us. We’ve got a long way to go until we’re in the position where we’ll have the freedom to work when and where we please. If anything ChooseFI has given us a similar perspective and opportunity to discuss and define what that life would look like.

Privilege and child rearing

boy sitting near glass wall

Our family has been extremely fortunate so far with this pandemic, and it has reinforced the great privilege that we enjoy. Beyond the threats to our health, this lock down has actually left us more financially stable and brought us closer together. At the same time, it’s proving hard not to raise two spoiled children.

Between the savings from taking our children out of daycare, the stimulus bill payment, and our tax returns, we’re looking at enough cash on hand to pay our mortgage for six months. We’ve been stocking up on groceries for six weeks or so now, and another pickup today has us with more than we need to get though the next several weeks: a full fridge, chest freezer in the garage, kitchen pantry, dining room shelf; and another closet upstairs full of “hurricane supplies. With the help of the LDS food calculator, I’ve even started putting together a prepper list of bulk sized containers of salt, grains, and nuts, as well as stuff I would never have ordered ever, like canned cheese, powdered butter and eggs.

We’re expecting peak infections to start in another week and to run through the first week of May. I took Younger for a ride down the street yesterday, Easter, and saw way too many people gathered together. Lots of cars parked in front of houses. I can’t blame people for wanting to be together; at least the churches were closed. I’ve seen the news, and I’m sure we’re going to be seeing a lot more cases near the end of the month.

Of course my wife is very concerned. She’s been gathering PPE for her union members via social media. One guy donated one hundred 3D printed face-masks; she said the line of people waiting for them when she handed them out today was ridiculous. Still, today she asked me about taking unpaid leave for the next two weeks. I told her ok — more privilege on our part.


Today was Elder’s first day “back at school”. We had a real bad morning with her talking back and had to engage in a battle of wills. I felt miserable about it. I didn’t push anything, but she wanted to do a logic problem that the school had recommended, and I sat down to help her. She got frustrated and wanted to quit, and when I sat down to help walk through it with her we both got into one of our power struggles. Sunday I asked her to clean her room and wound up spending an hour sitting in the hall listening to her wail. I’m not sure what I think I’m doing other than making her dig in, so I’ll need to refine my approach. It’s just that my wife an I have completely different, and somewhat contradictory, parent styles. I thought it would be good for me to have them during the day so they couldn’t play the two of us against each other, and I’m not sure how I’ll feel when she’s working from home and here with us full time.

Just the prospect of it is going to cause some logistic problems. She’ll need a private space due to confidentiality requirements for her WFM approval. The only place in the house with doors besides the bedrooms and bathrooms is the finished room over the garage, which was originally my man-cave and guest bed. It’s going to require some reorganization. We’ll probably lose the bed and bring another desk in. We had planned to put a laptop in Elder’s room, but I’ll probably pull my old Windows workstation from downstairs and make it into something she and I can use for music and gaming.

I’m trying to be less of a tyrant with the things I’m asking the kids to do, but be more firm when I ask them to do something. In spite of the practice I’m working on to be a better parent, I still cannot abide them telling me “no” when I ask them to do something, or being picky about their food. Obviously I’m less strict with Younger, and usually only put her in timeout when she’s making a game of disobeying or having an actual temper, but I think that’s because I can easily pick her up and move her for timeout. Elder is harder to handle. And more likely to fight with me in the first place.

My wife had gone out of her way to make sure the kids had nice Easter baskets waiting for them when they came downstairs yesterday morning, and when we got down the first thing Elder said to her was that Younger had more eggs in her basket than she did. It was my fault, some of them had shuffled between baskets when I brought them down the night before, but the sheer lack of gratitude from her has been an ongoing issue, and one that I’m not sure how to correct. Is withholding the solution? I don’t know.

Elder and I woke up early this morning, she disappeared to her room while I was meditating. Halfway through it I realized she had probably taken a tablet to her room, and saw it missing when I finished. I found her lying on her bed, I asked her if she knew where it was, she said no so I lifted the sheet and found it right in front of her. She had pulled the sheet over it right before I walked in the room. Busted.

We were out of milk this morning, so I told the girls I was making oatmeal with what was left. I think that’s what started the fits, and I’m wondering whether I did it to be petty. I picked up groceries before lunch, they wanted ramen and I told them to eat some rotisserie chicken and leftover carrots and rice. Elder picked at it, which I knew she would, so I picked the meat off the bone and put it in her seconds of ramen. It set her off, which I knew it would.

I told them that they were going to have to get used to eating what we gave them. I don’t want them throwing out food, and I’m not sure that we’re going to be able to get what they like. If it gets to the point where we have to eat emergency supplies I can’t have them being picky eaters. But I guess I should remember the old programming axiom about premature optimization.

You ain’t gonna need it. Hopefully.