Yearning DeFi

High contract fees on optimized lending platforms may be roadblocks for casual retail investors

I spent a good deal of time researching DeFi yesterday, mainly trying to figure out what the hell Curve and YFI are.

I’ve spent several months with deposits on BlockFI, where my crypto and stable coin assets are making between six and eight percent interest. It’s decent, compared to bank deposits right now, but I keep coming across these insane valuations on certain lending protocols, upwards of twenty five, sometimes as high as one hundred percent APY. What is going on, how risky is it, and how do I get in on the action?

Most of the lending protocols, take Compound for example allow users to deposit certain tokens, such as DAI or ETH, and receive interest on these deposits. Alternatively, users use these deposits as collateral for loans with which they can receive other tokens. BlockFI offers USD loans as well, at rates around nine percent.

I’ve never found a reason to participate on the borrowing side of these platforms. Apparently people use them to make short-term trades, possibly staking them on other platforms, but that’s been a bit risky and complicated for my tastes. I’ve stuck to the lending side of these platforms, becoming what is known as a liquidity provider, or LP. (I think it’s interesting that this acronym mirrors one from venture capital, for limited partner. The comparison is quite apt.)

One of the reasons that I settled on BlockFi for my deposits is that they are more aligned with traditional finance, and I feel a bit safer keeping my funds there than with a smart contract that could be susceptible to the usual risks such as code vulnerability. (See the DAO hack for an example of this.) The other is that they had higher rates than Compound and some of the other competitors. At least, they did.

And that’s where these newer DeFi protocols come into play. Curve is one smart contract platform that automatically maintains users’ funds in whatever system is offering the highest interest rate. This is done automatically whenever someone interacts with the contract by depositing or withdrawing funds. The advantage here is that LPs don’t have to deal with it manually and also save gas in the process.

The downside is that it is relatively expensive to interact with these contracts. I did a small test transaction today, exchanging LINK for Aave’s aLINK token, which I then deposited in a Yearn Vault. I paid almost $90 in gas between the two. Since the fee is flat and not based on the amount of funds, these types of systems are geared toward larger liquidity providers. (As of this writing, Curve had over $800 million in funds in its stablecoin liquidity pool.

Platforms like Aave, Curve, and Yearn are some of the most cutting edge in the DeFi space right now, and I’m just getting familiar with them. There is a lot of risk here, as we are talking about some uncharted space. Not only is there risk of contract failure and security audits that need to be done on these contracts, one tutorial described some of these governance token staking as the “derivative of a derivative of a derivative”. And I remember what happened in The Big Short.

I’m going to pause before I send any more funds into one of these platforms, until I can do some more research and weigh the options. This is clearly a space for large liquidity providers, and may be more than I am willing to risk at the moment.

Crypto prepping continues

I spent most of today focusing on crypto and equities.

On the equities side I put trailing stops on several of my large positions, including Amazon, Tesla, NVidia and Netflix. All stops were calculated as a dollar amount equal to two percent of my total portfolio value. These positions are large enough that I don’t anticipate any of them triggering as part of any short-term movement, but they’ll serve as circuit breakers in the case of any major downturn.

I spent a good deal of time looking at all my positions and watch list, trying to see if there was anything to be gleaned from the TD Sequential setups. I’m using it as a guide, but haven’t developed any hard rules about it yet. Basically I’m looking for any positions that have moved above any sell signals, and am setting stops on those positions.

As far as crypto goes, my NEO position closed yesterday, after bag holding for almost two years I let it go at an eighty percent loss. It had a bit of a run lately, but I’m going to stick to tokens that I actually care about long-term. For that reason, I’m also preparing to unload my OmiseGo, Lisk, and Civic tokens, at some substantial losses. Also, I’ve put my Brave tokens, BAT, up as well, as its had a nice run lately. I’m almost flat on it and am holding a four-figure position on it. I’m also putting a stop limit up on 0x, which I once had high hopes for. Maybe DeFi will lead to some more growth, but for now it’s up on the block.

Since most exchanges don’t support trailing stops, I’m going to have to keep an eye on these positions, and adjust them accordingly. I’ll look for further TD Sequential sell signals, and tighten them as needed. However, I am investigating some automated tools to make this happen.

Right now I’m basically harvesting losses. I’ve used taxes as an excuse not to make any trades, but I don’t think that’s going to be a wise choice in the coming months. I might as well take some losses now and offset some of the massive gains that will be coming later on.

IDEX

Speaking of massive gains, my IDEX holdings have absolutely exploded. After being underwater for most of the last year since I started staking and running a node, it’s not only recouped its value but has gained almost six times over the past month. A few days ago it was listed on Binance and shot up forty percent almost immediately. I’m in a bit of a pickle. I’m staking and earning a small reward each month as a result. But the value of the tokens has appreciated so much now that it would be irresponsible not to take action. If I move the tokens to the exchange though, I have to wait another seven days before they can stake again.

I guess in this case it makes sense to lose the stake and prepare to take profits. I have a feeling that there’s going to be a lot more gains in store for IDEX in the near future, but I need to think about protecting my capital and taking some profits off the table.

It’s a hard decision.


There are other assets that I’m delaying action on.

I considered taking some off my GBTC position off the table today but decided against it since its slightly underwater. A full sixth of my IRA is in it right now, and even the slightest movements cause oversized actions to my balance. I can only imagine how it is going to look when we get to six-figure bitcoin. I’m used to it now, and hopefully I’ll be able to stand it as we make the next leg up to new ATHs.

I’ve also made a nice sum in ChainLink, all the way back to the ICO. I haven’t touched it the entire time, but recent pullbacks are making me consider pulling it to the exchanges and setting some limits on it. Not yet though.

I have some other tasks that I can work on in the meantime to delay any overreactions. I sense myself getting a bit manic about things right now, and the last thing I want to do is pull out of too many positions. There are some tokens that I’ve been wanting to get exposure too, thinks like Comos/ATOM, REN, and ALGO, but I’m hesitant to move anything out of cold storage to take it. So I’ll have to free up some funds elsewhere. All I know is that I don’t want to touch my ETH for now.

For now I’ll put stops on these gainers, sell off the rest of my losers, and then wait for buying opportunities in the others. I’m playing with a small stack right now, and I’ll use the next few weeks to solidify my rules. And making sure that I have the discipline to stick to my two percent capital preservation rule is key.

In the meantime, I’ll work on codifying my decisions into code, and wait for the opportunities to come to me.

Getting ready for alt season

Making preparations for the coming bull run moon rocket trip

I spent a good deal of time this weekend getting my cryptocurrency affairs in order. More and more of my attention is getting pulled into the space, with the price of bitcoin hitting a yearly high, and insane price action happening in the distributed finance space. Altcoins are starting to make moves, and I needed to do some housekeeping to prepare for any possible parabolic runs.

I’ve got several dozen ERC-20 tokens associated with my Ethereum accounts that are easily accessible via my hard wallet, but a lot of tokens have their own softwallets, and I’ve many of them haven’t been accessed in months. Several are nothing more that backups of wallet files on old hard drives that I have laying around.

There are numerous stories over the years of people who have struggled to recover bitcoin funds after having forgotten about them for several years, only to find that their magical internet money is now worth millions of dollars. My favorite one is the guy that tried to dig up the city dump to find an old hard drive that he tossed out. I have no intention of being one of those guys.

Multicoin wallets

I’ve been debating whether I want to mess with syncing blockchains locally, or just doing it on a small AWS instance. A few days ago though, the subject of multicoin wallets came up, and spent some time Friday loading up Guarda, and figuring out how to import things into it. I managed to recover several chains successfully, but it doesn’t have everything that I need. There’s just too many coins and tokens out there for any one solution, so I kept looking at other solutions, like Coinomi.

I have a hard wallet that I’ve been using for my primary cold storage, and yesterday I found out that Exodus integrates with it. So I downloaded and gave it a go. It’s solid, allowing operations with the hard wallet directly through it’s UI. Operations still have to be confirmed on the device, but it allows operating on the Ethereum tokens without having to use MyEtherWallet or MyCrypto.

One problem that I have with it is that for many tokens, it doesn’t actually allow importing existing accounts, per se. It allows a “move funds” operation, which basically sweeps funds into Exodus’s (non hard-wallet) accounts. This leaves a bit of dust in the accounts. Guarda, by contrast actually stores the account keys, which means that they’re not moved.

Mental preparation

In 2017, my first bull run, I watched as bitcoin and various altcoins exploded in value, and my crypto portfolio increased ten times over in the span of a few weeks. I wasn’t mentally prepared, even after ten plus years of managing my own stocks. Nothing can prepare you for crypto’s parabolic runs. But just as quickly as things ran up, did they fall back down, and I watched what was potentially six figures of coins drop down to one-fifth over the following year. Now I’ve got strong hands, and didn’t sell anything, but I cursed myself for not taking profits when things were going crazy. I’ve spent the last two years of this dark crypto coming up with a plan for what I was going to do when bitcoin has it’s next bull run.

I feel that such a run is imminent. In the past, bitcoin’s runs have followed the four-year halving cycle, which passed earlier this summer. On chain metrics seem to be where they need to be, hashrate is at an all-time high, coins on exchanges at an all-time low, price action seems to indicate that we’re nearing the end of a long consolidation period; even Google trends seem to be indicating retail interest is picking up. And with institutional investors at the doors, there are all indications that this next cycle will be intense.

I had been dollar-cost averaging bitcoin weekly up until earlier this year, when I decided that the percentage of my net worth invested in bitcoin and adjacent public equities bordered on over exposure. I’ve set price targets on my equities based on value averaging protocols that I’ve implemented, and I’ve got a price target for bitcoin based on they Mayer Multiple, which tracks the price of bitcoin as a multiple of its moving average. My target is near the 2017 top, and when bitcoin hits it, I’m going to take some profits.

I also have a secondary target that I’m eyeing, which I’ve calculated as the price that bitcoin will hit that will give me financial independence, allowing me to pay off my car, student loan, and mortgage debt. I don’t have any plans to sell at this level, but when we hit this level (and I’m convinced that we will), I’ll be taking steps to make sure that this wealth is preserved.

Trading again

Since I’ve got all the fiat I can spare locked up in bitcoin for the foreseeable future, the goal now is to convert the other various cryptoassets that I’m holding into more bitcoin. Many of the other assets that I’ve acquired are doing quite well, but I’ve got a lot of others that have not. It’s time to clean them up.

Several tokens that I’ve been bag-holding for the past two years have had some signs of life lately. I’m still down eighty percent on some of these and they’re worth pocket change at this point, so it’s a perfect opportunity for me to get in the habit of selling. Carter Thomas was a big proponent of this during the last run. Selling small amounts and taking some profits, to make it easier to do so when the time comes to make life-changing trades.

There are many trading indicators that people can use to make decisions; the disciple is making it automatic, and not on emotion. I need to develop a system that I can write down and refer to so that I don’t mess things up and lose money. I’ve decided that I’m going to use the TD Sequential indicator, which is available through Trading View.

A couple of my tokens have hit new yearly highs, triggering this indicator, so I moved them to the exchange last night and set limit orders. Most exchanges don’t have trailing limits like most brokerages, so for now I’ll be keeping a tight eye on them while I research automated options. I could only bring myself to move the ones worth three figures in value. The ones worth less aren’t worth my time right now, and I can’t bring myself to touch the ones worth more.

Things quickly get serious when trades have a thirty or forty percent gain overnight, and you’re looking at a five figures trade. Having a plan is good, but when things take you unaware, then doing nothing is usually better than falling prey to emotion. Price may take a dive, but most times I’ve found things tend to consolidate, giving you time to think. This is more true of more established tokens. Many small cap coins are heavily susceptible to pump and dumps.

The important is not to get caught by FOMO and rush into a decision. The goal here is to buy low and sell high, not the other way around, so a plan is a must. While my long-term strategy is to accumulate more BTC, I’ve got several other tokens that I’m bullish on long term, and will be looking for entry points on these as I sell off some of my other losers. Getting caught up in some other shitcoin because of a recent pump is a no-no.

Risk management is critical, as is having a exit strategy. If I’m going to base entry on a position based on the TD Sequential, then I’ll makes sure I have a stop loss based on my two percent max loss rule, and will use the sequential indicator for when it’s time to sell. None of this fly by night trading.

…and Taxes

Taxes are inevitable. I’m aiming for life-changing gains in the next year or two, and I’ve got to make sure that the IRS gets their due. I’ve used CoinTracking during the last bull run, and renewed my subscription last night in preparation for my first sales in a year and a half. There’s going to be a lot of loss harvesting as I clean up positions, and CoinTracking will make sure that all my realized gains and losses are compiled into a nice report that I can use next April. It will pull the transactions directly from many exchanges through APIs, as well as public Ethereum transactions. I’ve got some work to do to get things cleaned up with my softwallets though.

It also tracks mining proceeds, but it’s a bit more difficult to keep that up to date. The proper guidance is to declare cost basis when the coins are mined, but keeping up with the sheer amount of transactions is impossible. Instead, I prefer to use cost basis of zero and record the transaction when coins are exchanged. I’ll admit that it’s a bit of uncharted territory for me, and a lot depends on what the coin is and whether they touch exchanges that I’ve KYC’d on, or addresses that may have interacted exchanges in the past. This isn’t a big deal for me since most of the coins I’ve mined, with the exception of some ETH or ETC, have never left the mining address.


Fun times recovering BEAM wallets

I don’t always ruin my crypto wallets, but when I do…

So I had a little bit of a screw up last night that almost cost me several hundred dollars in $BEAM. I was working on my automated exchanger program, and wanted to set up the BEAM wallet-api. It wasn’t included as a release like the CLI node and wallet programs, so I had to compile from source.

I cloned the git repo and tried to compile, but I had older versions of Boost and CMake that needed updating first. This wasn’t much of a problem, but after I got things compiled I actually wound up with executables ending with -masternet. I thought this was slightly unusual, but I threw them in with my node and wallet database files and ran them. I didn’t know it, but I had already made two mistakes.

The BEAM developers took the unusual step of using the Git master branch for their development branch. I had missed it in the build docs. So when I ran wallet-api the first time it actually upgraded my DB to this development version. Of course there was a mismatch with the node, which I caught, so I ran the updated node software as well. I still didn’t realize that I was running on testnet, and of course the node blockchain wasn’t valid. I was stuck.

I’m not sure how I finally made the connection, it might have been another read of the build docs, but I eventually realized that I needed to checkout the mainnet branch and build from there. Once I did that, I was still stuck, as the node and wallet DBs were already upgraded past the current version. So I had to download the entire blockchain before I could try to check my wallet. Oops.

That was done when I woke up this morning, but I still had several problems before I could fully recover my funds. The wallet DB was no good, and my first attempts recovering the wallet failed. “Invalid seed phrase,” it said, although I was one hundred percent sure I had saved the original phrase correctly. I eventually found a github issue that indicated the proper CLI input for the seed phrase, and was able to recover the wallet.

Unfortunately there were no funds in it. Due to the way privacy and anonymity is implemented in BEAM, the UTXOs belonging to the wallet can only be rescanned from a node running with the owner key active. This is usually used to collect mining rewards from multiple nodes running the same wallet, so I had to restart my node with this key, allow it to rescan the entire blockchain, and then run my wallet with the rescan option. Then I was finally able to see my funds in the wallet.

Obviously the main lesson here is that I should make backups of my DB files before updating anything relating to nodes or wallets. I should know better, honestly. Still, it serves as a bit of a reminder just how complicated cryptocurrency and blockchains are. We are still early.

Still, there’s a lot that can be improved by the Beam team to make things a bit more user friendly. Obviously GUI users take precedence for the teams, but a couple minor changes could go a long way. Keeping your development branch in master just seems… strange to me. And a bit of clarification in the CLI --help option would go a long way for the recovery process.

And when I’m ready to start back up work on the wallet-cli application this weekend, you can bet I’m going to do it with a testnet implementation.

Update 8-23-2020

After recovering my wallet and funds, I found that exchange payouts from my mining pool were not occuring. Turns out that the wallet address created by the wallet software are somewhat non-deterministic, and will not be restored on import. I was facing the prospect of having to contact the exchange and asking them to payout funds to another address, which I was sure would be a hassle.

Instead I decided to recompile the masternet branch of the wallet software, and managed to run the export data command (against a wallet backup!) to get all of my addresses and other data as JSON. I was able to import this into my live wallet, and verified that the address was restored.

After a few hours I checked, and verified that the pool had paid out.

Cryptocurrency mining auto-exchanger

How to convert mining pool proceeds to bitcoin

I haven’t done much programming lately, at least rather I haven’t written much code lately. I still rely on some things that I’ve written; my value average programs for my self-directed IRA is something I use every day. But I’ve been so tied up with other projects lately that yesterday was the first time I’d really sat down and started writing a program from scratch in a very long time.

It’s amazing how much I’d forgotten.

I’m writing a new Python program, this one to do some automatic selling of cryptocurrency mining proceeds. My little six-GPU mining rig has been chugging along for some two years now, and has yet to turn a profit, so I’ve decided that if I’m going to keep doing it I need to at least cover my electricity costs. I’ll be exchanging the proceeds for bitcoin, not fiat, of course. Plus it seems that market pressure is building toward another parabolic run, so I think it prudent to start converting some percentage of my proceeds that I’ve mined over the years so that I don’t wind up holding another dead bag. I guess I’ve moved out of the spec mining phase for the time being, and need to start making some real money.

So I sat down last night to start designing a system. I had already set up my environment during a previous session, and got started with my usual project flow, setting up dotenv files, a new git repo on my home lab, TDD with pytest. It was slow going, and felt like I had to do Google searches for every line of code I wrote. I caught myself dealing with premature optimization several times and had to stop myself from over complicating things. I was just building an API call using requests.

All I managed to do last night was get the rewards statistics from the mining pool that I’m using. It’s a list of dicts, and I’m not sure how I want to do my calculations, a percentage of rewards, or something based off of power consumption. I need to at least cover my rig’s 0.9Kw/h power consumption. I can’t get that from Simplemining since they don’t seem to have an API, so for now I’ll just have to go off that estimate, or plug in my Kill-o-watt. I killed the last one with a power surge over eleven hundred watts, so I can either run a test or just use SMOS’s estimate.

Either way, I can use my mining rewards for our preferred mining interval, get price data off Binance using the CCXT library, and then send a transaction to the exchange using the wallet API. Then I’ll have another call to the exchange, after the deposit has cleared, to initiate a market order. And then a final call to move the proceeds to my hard wallet.

Several of these components are going to be rather straightforward, but putting them all together is going to be a bit of a challenge. I could run this as a simple script as a cron job, but I could also leave this running as a service, with various components running in different threads. I’ve obviously got some design decisions to make.

I have decided that I want to move my blockchain nodes out of my house. I’ve got several of them that I need to have online, including ARW, XHV, RVN, and BEAM. Running all of them at the same time is a bit too taxing for the machines that I have scattered around the house, so I’m going to try and put my AWS training to work and setup various nodes in the cloud.

My XDNA node that is currently running in an EC2 instance is using less than 5% CPU as all of the work for Ethereum has been handed off to Infura. When I tried to put the BEAM node on this same instance it couldn’t handle it, so I’ve got to figure out what the actual requirements are for it. I’m hoping that it’s not going to be cost prohibitive.

I’m envisioning several instances with various blockchains stored on S3 volumes, nodes running on their own small instances as needed. My wallet files can either remain at my home lab or consolidated in another, secured instance. Cost will be a factor of course, but maintaining copies of several different blockchains locally is proving difficult to manage. And several of my wallets have been untouched for over a year or more.

I’m hoping I can build everything out in config files, Docker builds for the nodes, and the AWS configuration itself setup using Elastic files. I envision that some of the programs, like the one that I’ve described here, could even be run as Lambda functions.

Of course, a lot of this sounds like premature optimization. We shall see.

Afternoon slump

I’m forcing myself to bang out this post while I have some time to myself this afternoon. The girls are at their grandmothers for a few hours this afternoon, but I’m not really motivated to do much today. Younger had a bit of a reaction to a vaccine she got yesterday, with a fever and aches, so I spent half the night in bed with her, and I’ve been dragging ass all day.

I managed to wrap up my latest Substack newsletter last night, a three thousand word post about reinventing oneself and which covered three book reviews: ChooseFI, Digital Minimalism, and Atomic Habits. It went out this morning and I’ve already gotten two responses from friends about it. One of them told me she was selling her house and moving into a sailboat!

Getting the piece finished was a challenge. I spent over a month actually getting it done, and wound up cutting a lot from it, including a partial review of the Alexander Hamilton biography. I didn’t want to include any books that I hadn’t finished. My time tracking indicates I spent about ten hours on it, which is probably very conservative, accuracy wise. I don’t think I’m going to take as long for the next one; I’ve already got a theme brewing for the next.

In addition to the Substack, I’m still cross-posting on Medium (tomorrow) as well as LinkedIn on Friday. I’m trying to figure out which one will be the most lucrative, so for now the extra effort is just an experiment. So far my last cross-post on Medium garnered a whopping two views, so I won’t be retiring anytime soon.

Work continues to be a slog, with most of my time spent managing a subcontracted printer service program. It’s a mess, and even if it does manage to be profitable, it’s the kind of hourly-rate limited opportunity that I’m trying to get my Boss to get away from. That is, even if it becomes sustainable, it’s not going to be the type of scalable work that we’ll need in the future.

I spent some time yesterday working on building a C++ development pipeline for a client that builds embedded systems using Texas Instruments ARM and DSP systems. It’s the challenging, and exhausting when I’m not able to get into an uninterrupted flow state that I need. I hope to get a couple of more hours on that this week, and work toward building a full CI/CD pipeline for the client’s new project, and have a nice accomplishment to put on my resume.

Speaking of which, I’m still musing over some job applications that have been coming through LinkedIn, and one came through my alma mater today that I need to look at later. I can’t let my fear hold me back. I fear that I’m not going to find a job that’s better than what I have now. By better I mean that offers me a higher paying salary, and the type of freedom that I have now. Even thinking about it, I feel a bit of anxiousness.

Also, I’m working through the AWS introductory training. I’m not sure if I’m going to go for the certification (it is cheap,) but it’s mainly for my own knowledge and to help me build out some systems that I’m mulling over for my cryptocurrency-related projects.

Time for a reset and a fresh week

My mood has been low lately. We’ve been stuck in the house for the past several days due to rain, so everyone has been a bit on edge. The girls have been acting like wild creatures most of the time, and have been very difficult to manage. We should be done with the rain for a few days, but it’s expected to pick back up midweek. The yard is in severe need of a mowing.

Several months ago, near the start of the lockdown, we had promised the girls a trampoline as a reward. We put off the purchase as long as we could, and finally ordered one a month ago. There were delays, likely due to demand and supply issues in Asia, but we expect it to arrive today. Hopefully this will keep the kids from using the living room couches as part of their obstacle courses.

I don’t feel like I got much done this weekend. I got bored with The Outer Worlds Friday and wound up purchasing Detroit: Become Human a game about AI from Quantic Dream, which has made narrative-heavy games like Heavy Rain, which press the boundaries of graphical fidelity and story. I really enjoy them, and hadn’t realized that this one was out. Plus, it was only forty dollars, which is a good price for a triple-A title.

I would up staying up till after three in the morning, and slept in till almost eleven, so I didn’t get anything done. I didn’t write, I even skipped meditation for the first time in forever.

My unfinished Substack article is weighing like an albatross over my head. I just need to sit down and copy/paste my previous review of ChooseFI and give it another edit. I don’t know why I’m procrastinating on it.

I’ve also been struggling with this damn Mobile Device Management project I’m working on. I’ve become convinced that managing devices that aren’t enrolled in a Volume Purchase Program through Apple or the carrier is unmanageable. Enrolling the devices through managed IDs just doesn’t work quite the way it should. I’ll be writing this one up for sure, but it’s probably going to take some time for me to get my client enrolled in the program.

Even though I’m feeling this malaise, it’s important to get back on track. Missing a day or two is ok, as long as I don’t let it fall into a bad habit. Time to get back on that horse.

Advice of the elders

It is the blessed end to a long, rough week, I have cracked open what promises to be the first of several El Guapo IPAs this evening, and I am doing the last thing on my to-do list before I begin an evening of letting my hair down. My plans to “take the day off”, didn’t quite work out as planned, as I got a late afternoon call with some urgency that requires completion before noon Monday. For now, I have made no promises to myself other than to complete this daily ritual of writing, and then I will release myself to my whims.

We have finally allowed our new cats, Bodie and Utah, reign of the house. I am mildly anxious about the effect of cat dander on my various computers. So far that have stayed off the table where my mining equipment sits. At night we keep them locked in the master bedroom or bathroom, rather, lest they scamper over the bed at 3AM and wake Missus up, as they did last night. I have been sleeping in Younger’s bed, like a babe.

Besides the sleep deprivation, litter boxes and vomit that we’ve found on the bathroom floor for the past few days, the cats have been a wonderful addition to the family. The girls love them, and Elder actually did the chore of cleaning the litter box today on her own. Wonderful. I myself have flashbacks to a cat-crowded apartment that I stayed in during my twenties whenever I smell cat litter, and have told Missus that she needs to come up with a plan for me to have my shower, where a litter box is sitting, returned to operation.

The girls are doing well. Their TV consumption has come down quite a bit, and we’ve been making progress with their academics, as I’ve called it. I’m especially proud of some progress that Elder made with her piano today. She’s been stuck on a Playground Sessions bootcamp lesson for the Game of Thrones theme that she’s been stuck on for several weeks it seems. It’s not the first two-hand lesson that she’s done, so I’m not sure why she’s having such trouble. The app itself is actually causing her some stress, since playing with the real-time accompaniment and feedback is too much when she’s struggling to play. She wants to rush through them instead of giving herself time to grow, so I’ve been trying to coax her into playing it half-speed or from sheet music, but she resists.

I’ve found that starting each session by backtracking to the individual hands-separate lessons as a warmup before going into the harder one has been working well. And today I had her just look at the music and practice the problem bars over and over until she could put the longer sections together. And she started to get it. I think she’ll need a few more practice session on her own before she does the test again. And hopefully she’ll listen to her old man when he offers advice!

Thoughts on work and family

Work, or rather my job, has been taking up entirely too much of my mental power lately, and I am operating at my limit. My limit. I’m basically running myself ragged at this point. I’ve already been responsible for taking care of the kids from the time they wake up at seven in the morning till the time my wife gets off work at five o’clock, and managing my work responsibilities, and now I’ve got the added responsibility of overseeing an employee. I feel like I’ve got another child.

I’m not quite as overwhelmed as I have been in the past as I’m doing a lot better at limiting my workload, but it’s damn near impossible to take care of the girls and work at the same time during the day. I’m just going to start taking every other Friday off.

I had a pretty heated argument with my boss today about things. We’ve been together for eight years this winter, so like any married couple we’ve learned how to fight with each other. I basically abdicated responsibility for this employee several years ago after attempting on several occasions to manage him, but each time found him unable to follow my directions. I don’t know if I’ve become a better leader or if he’s become more focused, but I feel like we’ve turned a corner in the two weeks since he’s been reporting to me.

There are definitely more tools at my disposal this time. I’m basically using Microsoft Planner — a kanban board — to limit his work in progress, and have been micromanaging the shit out of him this entire time. I don’t trust his judgement. He’s been managing two separate business segments and has had absolutely zero accountability. And my boss wants to complain about him taking advantage of us, while it’s been his failure to hold him accountable that has gotten us to where we are now. The employee has been put on part time work, and we’ve brought in an HR representative to put him on notice. So yea, he’s focused now.

I think the real difference between this time and the last attempts I’ve made at managing this employee is that I’ve gotten Boss out of the way. We’re not giving conflicting, or changing priorities. If something goes on the board, it gets finished. Done. Done. Done. It seems like we’ve been operating in a state of constant anxiety, where everything is urgent and important, and today I actually felt somewhat relaxed in that I didn’t feel the need to follow up with this employee every two hours.

The things I’d found out, the way that Boss and this employee had been operating, frankly boggled my mind. So much of what had been allowed was completely unacceptable, and I’ve managed to turn things around pretty quickly.

My own projects however, have been put on hold, mainly from exhaustion, and the absence of the time needed for me to do the deep work needed to get things done.


The kids have compounded things this week as well. I’ve been forced to shift how I deal with their academics. I usually let them work on their school at the same time, either independently while I get stuff done or while taking turns. Since I’ve been using RemNote’s spaced repetition with them, I’ve had to be more hands on, so I’ve been letting one of them take a turn watching a show while I work with the other one. We haven’t been doing a lot lately, but I really need to sit down with both of them or they’ll get frustrated and complain that something is too hard. So sitting with them and working it out together seems to calm things down a bit and allow me to really work with them on something.

I think I may be helping Elder a bit too much with her math. I’ve been drilling her on vocabulary lately, but I’m not really happy with her math skills. She still counts a lot, even for basic things like 8-2, so I’m going to be adding some more flash cards to her routine. I even write a short program to generate the cards needed.

# Addition
x = range(1,10)
y = x 
for i in x:
  for j in y:
    print(i,"+",j,"::",i+j)

# Output
1 + 1 :: 2
1 + 2 :: 3
...
9 + 8 :: 17
9 + 9 :: 18

Changing this for subtraction and multiplication is trivial.

Beyond that though, she’s still flying through some of the questions on the Khan Academy tests, mixing up addition and subtraction, and I should probably let her make more wrong answers.

Still, I’m mostly happy with the way things have been going, even though there’s been some behavioral problems. I’m still being my usual hard-ass self, but they are being creative and playing, and most importantly, not watching a lot of TV.

Tomorrow though, I’m turning off my desk phone, closing my email and messaging apps, and I’m not checking anything until after lunch. I have got to get some project work done, and I want to take the kids to the beach.

The weekend starts early tomorrow.

Vaccine coming or permanent pandemic? COVID Day 148

Vaccination

Early this year, as it became apparent that COVID-19 was going to cause a serious pandemic, I remember reading someone who proposed that people start keeping pandemic diaries. These type of first-person accounts would be important from a historical perspective, as they were useful for figuring out what had happened during the past pandemics like the Spanish Flu. I began taking it in all seriousness, and have published twenty-six entries so far, trying to detail my family’s experience.

Some of the first estimates that I read near the start of the lockdown said that we were looking at potentially eighteen months to two years of lockdowns and restrictions before either a vaccine was available for mass production or the disease mutated into a benign form. It’s hard to believe that we’re only five months in at this point. Other predictions about a second wave, worst that the first, have been accurate, but it will be some time before we see whether my initial napkin calculation of five hundred thousand dead will be close.

Several readings of psychology show that human mental outlooks seem to return to baseline six months following a life-changing event. Lottery winners and those suffering new para or quadriplegics lose the elation or despair that circumstances have brought them after half a year, and I myself have noticed how much has become normal that seemed absolutely stressful back in March. Life becomes normal. This has popped up in my readings of stoicism as the hedonic treadmill.

This normalization has been one of the worst things about the Trump era, but I’ll hold off on the political ranting for now. In general, people just became too stir-crazy to adhere to strict lockdown procedures for more than six weeks, and began sliding back to normalcy. We’re guilty of it ourselves. At one point, after raising my voice at the kids, I told Missus that we had to go let them play with their friends, or else we would have no choice but to send them to daycare. I’ve refused to consider sending them back, mainly for financial reasons, less so for the health risk. But aside from moving to an isolated area where they can roam free, there’s no way we can keep them locked away from everyone.

Our isolation pod that we previously formed with our neighbors seems to have become a bit more diffuse over the past few weeks. The girls can still play with their friends down the street, the T’s, but I’ve stopped being concerned about what they do with their time. The most we can do at this point is just wash our hands and wear a mask when we go out, and just stay away from large groups.

Adults I see out in the world without a mask are assumed to be either a sociopath or an idiot. I’m not sure which is worse, those that go without masks or those that leave them down under their nose while they wear them. It’s a stark contrast between going to Barnes and Nobles or Lowes, or heading into stores here in the city versus our trips out to the mountains.

Yesterday’s news said that Putin announced a Russian vaccine was available and that he and his daughter had both received it. Apparently the Chinese have one and have been giving it to their military and scientists working with the disease. There’s been some reports of pushback from the scientific community with regard to safety, but I’m still on the fence as to whether it’s just propaganda at this point. Still, there seemed to be a response from the financial markets, as this hope of normalcy returning caused gold and crypto to dip.

I’m not holding my breath of any resolution here in the US soon. Umair pointed out that Trump would do nothing to stem the virus while he was in office, and by the time Biden would be in place to put measures in effect it would be too late. COVID would be a permanent part of American life until a cure or treatment is found. As I’ve oft repeated from him, American passports are near useless now as most countries with stable COVID rates have banned US travelers.

Our main concern now is the upcoming school year. I’ve practically given up looking for a new job, given my belief that finding a better full-time job which will let me manage the kids will be nigh impossible. That may be my fear talking, or laziness, as most all of my day is taken up with managing the household. I spend most of my time working, reading or writing and taking after the kids. For now, we look for ways to compound our existing finances, mainly bitcoin, cut our expenses, and minimize our lifestyle. I hardly spend any money on myself, and am starting to save up some free cash for the first time since we bought the house.

Schools are going virtual for the first seven weeks or so, and we’ll have to see what that looks like for Elder. My main concern is that she’ll be tied up, leaving me with Younger, which may interfere with my job to the extent that I’ll have to place her back in daycare. I’d rather pull them both and homeschool them, to be honest, but I can’t seriously say whether that is more for my benefit of theirs. Probably mine.