So, I finally switched from Apple to Linux, something I’d been planning to do for a while. I thought it would be of interest to share my reasons for switching and what I think after being on Linux for about the past month.

Reasons for switching

1. On-screen keyboard

I mention this because my love-hate relationship with Apple’s various solutions to this accessibility issue has been somewhat notorious. Long story short: Apple used to have an on-screen keyoard that didn’t work, but they eventually came around. Not only did they fix bugs that made it impossible for a disabled person who can’t use a physical keyboard, they eventually rolled out with a built-in app greatly mimicking AssistiveWare’s outdated but glorious Keystrokes. Now you can get the formerly 300-dollar Keystrokes experience for free, built-in!

That is great, honestly, but I still have been slightly disappointed. At least up to the last Mac OS I used — High Sierra — there were some major freezing and key-repeat bugs going on. The main thing was, it was just slow. That could be blamed on the fact that my Apple computer was slightly aged and running on 4 GB RAM. But still, I was running Linux’s Onboard on-screen keyboard faster on an even older, 1 GB repurposed Acer notebook. I just couldn’t understand why Apple couldn’t make theirs faster. And personally, I wasn’t a big fan of the UI.

Onboard is by far my favorite thing about Linux. Without the need for it, I probably would not have switched to using Linux as my main computer. I can type so much easier and faster on my new computer, it ain’t even funny.

2. Less money

Since I was going to use Linux, I had more of a market of used computers to choose from. Instead of buying a new Mac Mini or trying to find a used one for barely less, I just bought a $500 homemade gaming computer from an IT friend. I already had a monitor and the other accessories I needed. 16 GB RAM and a 1 TB hardrive. Just what I wanted. (I did kinda want a solid-state drive but just couldn’t bring myself to shell out the money for one.)

3. Less money, again

I like the idea of focusing on using open-source/free software that is available gratis. I went into it knowing options and support are limited in the open-source world, but there are advantages that outweigh that, including

  • Some truly golden nuggets that are completely free, such as Onboard. Other examples include GIMP, Inkscape, and LibreOffice. These are basic functionalities you have to pay for on other OSes unless it comes with your purchase.
  • An independent ethos – The fact that the maintainers of much of the software you are using are essentially volunteers gives a certain democratic, independent-minded aura to using a Linux that’s kinda cool.
  • Forces you to go back to basics and not get caught up in purchasing apps. Don’t get me wrong, I love shopping for apps, and there’s nothing wrong with it. At the same time, it can be liberating to go minimalist and just survive off of what you already have.
  • Adaptability – While open-source programs are adaptable by definition, I have noticed that even if you don’t/can’t edit source code, the programs tend to provide more custom options for users, options that would turn off a consumer market but that power users appreciate.

4. Privacy

Richard Stallman and the Free Software Foundation seem eccentric and radical sometimes, but I can’t help but sympathize with their arguments about privacy and control of your operating system. To borrow a phrase from a good friend of mine, “they’re not wrong.”

How it’s going

All these reasons are good in theory, but how is it going in reality?

Well, Onboard has certainly proven to be awesome. And the Linux programs I know and love have been working great — LibreOffice, GIMP, etc. VSCode runs super smooth, while my old Mac was not able to run it consistently. So the RAM has done its job, and I believe it has been helped along by the fact that I am running a lightweight distro/desktop environment (Debian 9 with LXDE).

There have been some significant downsides that I can’t deny.


For starters, it took me 8 hours to get Linux installed properly. My IT buddy had pre-installed Ubuntu for me, but for some reason, I never could get the video resolution to work properly with my monitor. I decided to just reinstall from scratch, and I took that opportunity to install Debian 9 with LXDE, which I had used on a VirtualBox VM and knew it worked well. I am not physically able to handle hardware or type, so getting other people to plug things up, bring up the BIOS/guess which darn F key to press (in the .00000000001 seconds it gives you!), and go through the Debian install dialogue was part of what took forever.

Tablet configuration

I use a Wacom Intuos Draw tablet, as well as a thumb trackball mouse, to move the arrow on screen and type on the on-screen keyboard. I rarely actually draw with the tablet, but pointing and clicking to type is much faster on such a tablet, and with Onboard laid out with the Chubon keyboard layout, even faster.

But Wacom does not provide drivers for Linux, so you have to get the open-source driver, which is good but doesn’t work as well. Plus, I couldn’t figure out how to get the GUI to control settings. The GUI comes with Linux Mint and Ubuntu I know for sure. I was eventually able to get my setting right by saving a 71-wacom.conf file to the /etc/X11/xorg.conf.d directory with the following settings, FWIW:

# Some of the below input classes appear 3x times, once for each of
# "tablet", "touchscreen", and "touchpad" to ensure that the Wacom
# driver is not accidentally bound to other types of hardware that
# Wacom has made which are not handled by the wacom driver (e.g the
# Wacom Bluetooth Keyboard)
# https://sourceforge.net/p/linuxwacom/bugs/294/

Section "InputClass"
        Identifier "Wacom USB tablet class"
        MatchUSBID "056a:*"
        MatchDevicePath "/dev/input/event*"
        MatchIsTablet "true"
        Driver "wacom"
    Option "Mode" "Relative"
    Option "Button 2" "3"

Section "InputClass"
        Identifier "Wacom USB touchscreen class"
        MatchUSBID "056a:*"
        MatchDevicePath "/dev/input/event*"
        MatchIsTouchscreen "true"
        Driver "wacom"

Section "InputClass"
        Identifier "Wacom USB touchpad class"
        MatchUSBID "056a:*"
        MatchDevicePath "/dev/input/event*"
        MatchIsTouchpad "true"
        Driver "wacom"

Section "InputClass"
    Identifier "Wacom tablet class"
    MatchProduct "Wacom|WACOM|PTK-540WL|ISD-V4"
    MatchDevicePath "/dev/input/event*"
    MatchIsTablet "true"
    Driver "wacom"

Section "InputClass"
    Identifier "Wacom touchscreen class"
    MatchProduct "Wacom|WACOM|PTK-540WL|ISD-V4"
    MatchDevicePath "/dev/input/event*"
    MatchIsTouchscreen "true"
    Driver "wacom"

Section "InputClass"
    Identifier "Wacom touchpad class"
    MatchProduct "Wacom|WACOM|PTK-540WL|ISD-V4"
    MatchDevicePath "/dev/input/event*"
    MatchIsTouchpad "true"
    Driver "wacom"

# Serial Wacom devices should always be one of tablet, touchscreen, or
# touchpad so we can safely get away with just one match section in
# these cases
Section "InputClass"
        Identifier "Wacom PnP device class"
        MatchPnPID "WACf*|WCOM*|WACM*|FUJ02e5|FUJ02e7|FUJ02e9"
        MatchDevicePath "/dev/input/event*"
        Driver "wacom"

Section "InputClass"
    Identifier "Wacom serial class"
    MatchProduct "Serial Wacom Tablet"
    Driver "wacom"

Section "InputClass"
        Identifier "Wacom serial class identifiers"
        MatchProduct "WACf|FUJ02e5|FUJ02e7|FUJ02e9"
        Driver "wacom"

# Hanwang tablets
Section "InputClass"
    Identifier "Hanwang class"
    MatchProduct "Hanwang"
    MatchDevicePath "/dev/input/event*"
    Driver "wacom"

# Waltop tablets
Section "InputClass"
    Identifier "Waltop class"
    MatchProduct "WALTOP"
    MatchIsTablet "on"
    MatchDevicePath "/dev/input/event*"
    Driver "wacom"

# N-Trig Duosense Electromagnetic Digitizer
Section "InputClass"
    Identifier "Wacom N-Trig class"
    MatchProduct "HID 1b96:0001|N-Trig Pen|N-Trig DuoSense"
    MatchDevicePath "/dev/input/event*"
    Driver "wacom"
    Option "Button2" "3"

And you need to be sure to name it 71-wacom.conf, or one above whatever’s in your /usr/share/X11/xorg.conf.d directory, which already had a 70-wacom.conf file in my case, because those conf files will apparently run on startup in sequential order according to how they are named.

Anyway, I’m getting way more into the weeds than I meant to, but all this to say, it was hard to set up. In hindsight, I probably should have gone with a more user-friendly distro.

No compositor

This is again related to the fact that I chose LXDE, which increasingly seems like a mistake. There are things I love about it, such as PCManFM, the task bar, and the fact that it ships with unopinionated defaults. And I even liked the fact at first that it had no compositor, because for most of my first month, I didn’t need one and figured no need to slow the computer even more, even if unnoticeably. However, one need that a compositor fills is those times when you need transparency, such as when grabbing an area of the screen in Kazam. I installed Compton, but it doesn’t seem to be working right. It gets the job done, but there are some weird glitches, such as the rounded corners of the Onboard keyboard not handly transparency consistently. And I had to add Compton to start-up applications, which was confusing, and I’m not sure if I did it right.

No iPhone tethering

I had highly depended on my Mac as the gateway to my phone, which I cannot physically use anymore due to good ol’ SMA. I do plan on switching to Android soon, which I hear offers even more control via desktop, but until then, I tend to ignore all my calls unless an able-bodied person is around to answer for me :-|.


But all in all, I think it was worth it. The fine-grain control I have over my system, the greatness of Onboard, the money saved, and getting to be on my moral high horse as a free software user :-), outweigh the downsides. I will post some more Linux tricks possibly in the future. Stay tuned!

UPDATE: A reader points out:

“‘Some truly golden nuggets that are completely free, such as Onboard. Other examples include GIMP, Inkscape, and LibreOffice. These are basic functionalities you have to pay for on other OSes unless it comes with your purchase.’

“1. All of these are available for Mac I believe. Don’t conflate open source apps with open source OSes. [Of course. I didn’t mean to say you can’t run those programs and other free programs on Mac or Windows, but you have to pay for alternatives to them, such as Word. Also they do not run as well and can be harder to install on Mac, in my experience. — MW]

“2. Apple’s office suite is free. [Fair point. I didn’t realize they changed that. I had to pay for mine. — MW]

“A bunch of your speed issues were RAM-related, not Mac-specific necessarily. [All except the fact that Onboard runs faster on a 1GB RAM Acer notebook w/ Linux than Apple’s accessibility keyboard on a 4GB RAM Mac Mini. — MW]

“I’ll give you credit for sections 1, 2, and 4, but 3 is just celebrating open source in general, which doesn’t require a switch to Linux to enjoy. [Agreed. — MW]

I recently re-watched one of my favorite Coen brothers films, “No Country for Old Men” and liked it so much on this second viewing that I started reading the original novel by Cormac McCarthy. In the film, as the astute movie critic Father Robert Barron pointed out years ago, the bad guy, Anton Chigurh, represents evil and death, which follows all the characters who pursue a briefcase of money left in the desert after a drug deal gone bad. Certainly the movie and the original book are full of biblical metaphors, and the Coen brothers often deal in them. The one that stuck out to me most of all was that Anton Chigurh seems to represent not just evil, but a very biblical variation of the devil himself.

The devil believes in a kind of free market, a certain kind of justice, in which everyone gets what they deserve and may sell their soul if they so choose. That is why in the book of Job and in the temptation of Christ, Satan takes the form of a tempter who will take advantage of his prey’s rightly ordered sense of fairness. Job only fears God because he’s wealthy enough to afford to, Satan argues. He appeals to Jesus’s rightful status as Lord, saying “[i]f thou be the Son of God,” you could make stones turn to bread or take possession of “all the kingdoms of the world, and the glory of them” (Matt 4:3, 8).

Chigurh, who always carries a coin like an amulet, uses money (and other principles of exchange) throughout the film to lure others into cooperating with evil. In truth, he rarely ever barters to benefit himself directly. He doesn’t really care about money. He uses it only as bait to pull unwitting people into the game, because he knows people put more value on money than it’s really worth.

I think a good argument could be made that Chigurh was the one responsible for the drug deal gone wrong, a mystery never actually solved in the film. Who else would have busted up a perfectly good deal? The dead bodies strewn on the scene from the beginning look a lot like his work, and when two American dealers higher up in the mob come with him to the scene to search for clues, he kills them too. But he keeps the device that tracks the location of the satchel of money. He knows it will take him to his next victim, whom he must kill out of some twisted sense of fairness, as if the man who has the money deserves it, because he has bought in to the devil’s game.

A conversation between Llewelyn Moss, the poor hunter who now possesses the money after happening upon it, and Carson Wells, Chigurh’s rival assassin, spell out Chigurh’s devilish priorities clearly:

Llewelyn Moss: If I was cuttin’ deals, why wouldn’t I go deal with this guy Chigurh?

Carson Wells: No no. No. You don’t understand. You can’t make a deal with him. Even if you gave him the money he’d still kill you. He’s a peculiar man. You could even say that he has principles. Principles that transcend money or drugs or anything like that. He’s not like you. He’s not even like me. (IMDb)

Chigurh eventually does try to cut a deal with Moss, who has heroically escaped from his grasp time and again. On a phone call with Moss, Chigurh says he will not hunt down and kill Moss’s wife, Carla Jean, if Moss will give up the satchel of money and, most importantly, his life. “That’s the best you’re going to get,” Chigurh says.

Perhaps Chigurh just wants the money for himself, but then again, probably not. What he seems to care about in trying to make this deal is satisfying a blood-sacrifice sense of justice, for lack of a better term. If Chigurh can’t get to Moss, Carla Jean will do. Moss doesn’t accept the offer and stubbornly believes he can take down Chigurh, who has become “a special project” of his. If we view Chigurh as the devil, then Chigurh doesn’t need to pursue Moss anymore. For one thing, Chigurh now only needs to kill Carla Jean to satisfy his justice, and for another thing, he has already won Moss over to his world of vengeance and power by becoming his “special project.” Moss has essentially signed his own death warrant, for no one can escape the world into which he has plunged himself.

Chigurh eventually finds Carla Jean, just as she arrives home dressed in black, returning from her mother’s funeral. After she serenely protests the notion that justice demands she be killed, Chigurh hesitantly makes her the only offer he can, his most signature offer throughout the movie. She must call a coin toss and let fate decide.

To his surprise, the first time he is surprised in the movie, she tells him, “I ain’t gonna call it.” Finally, someone has stood up to the devil, and she has done so not by trying to avoid death and grasp on to a worldly hope, like her husband, but by not agreeing to play the game in the first place.

This throws off the devil’s sense of justice. In the devil’s view, justice is absolute, leaving no room for mercy or forgiveness. Neither is their hope in the future or the procuring of wealth, because death comes no matter what, the devil, in the form of Chigurh, being its minister. It doesn’t make sense for Carla Jean to refuse the game. Doesn’t she realize she will surely die otherwise? The dignity she seeks to maintain will not serve her then, or so Chigurh would have his victims believe.

We don’t see Chigurh kill Carla Jean on screen, but as he walks off of her front porch, he checks his boots for blood, which he often does after murdering someone. Even so, he has been defeated by Carla Jean’s meek resistance. When Chigurh’s car is randomly sidelined at an intersection after he leaves her house, badly injuring him and possibly killing the other driver, it serves as a metaphor for the fact that his world has been rocked.

But he gets back up and keeps playing the game. When two kids standing by come to his aid, he asks for one of their shirts in which to hang his broken arm. As sirens ring in the distance, Chigurh hands the kid some money. The kid refuses at first, saying he doesn’t mind helping someone, but Chigurh insists he keep it and tell the first responders he was long gone when the kid got there. The kid accepts the money, and as Chigurh walks off, the two kids immediately start arguing over it. The kid who accepted it very reasonably points out that he is the one without a shirt, and therefore the money is his. It paints a very clear picture of how the devil in the form of Chigurh draws others into his own corruption simply by dropping down some cash.

In the final scene, Sheriff Bell, with an air about him similar to Carla Jean before she is killed, has chosen to retire, realizing he will never catch the perpetrators now nor the perpetrators to come. The very person who should buy in to the game – the sheriff, representing true justice – has chosen instead to put away his sword. You can’t win this game, not on this earth. He recounts a dream to his wife in which his father, also a sheriff, has ridden a horse deep into the darkness ahead and is preparing a warm fire in the midst of the cold wilderness.

This recalls Scripture in John 14, in which Jesus promises to go to his Father’s house to prepare a place for his disciples, who must in the meantime endure “the prince of this world” by holding fast to “the Spirit of truth; whom the world cannot receive, because it seeth him not, neither knoweth him.”

Similarly, Bell and Carla Jean hold onto this hope for a true and peaceful justice they know can only be possible in the world to come. Until then, the only way out is brave resignation and martyrdom in the face of pervasive injustice.

We live in a time of a heightened sense of justice that can be disordered. I think it’s safe to say that polarized political views in our country testify to that, whether liberal or conservative. The Coen brothers, as well as Cormac McCarthy, remind us that “we wrestle not against flesh and blood, but against principalities, against powers, against the rulers of the darkness of this world, against spiritual wickedness in high places” (Eph. 6:12). It is a wickedness that seeks to turn us against each other with reasonable-sounding appeals to power, power that, in reality, is as fleeting as Llewelyn Moss’s satchel full of hundred dollar bills.

Correction: I originally wrote that Chigurh never gets the money, but there is an insinuation that he does find it. I also wrote Carla Jean is returning from her husband’s funeral at the end, but it is her mother’s.

I discovered the technique of using functionality plugins several months ago and was reluctant at first. When building a site with WordPress using my own theme, I usually just dump any custom functionality I want into the functions.php file. But the idea with functionality plugins is that you put non-theme-specific code into a plugin instead. This prevents your code from being overridden when changing themes.

Addressing objections

At first, this might seem like a bunch of hassle for little payoff. You might be thinking:

“I don’t know much about making plugins.”

But a functionality plugin is not a big plugin like you would normally think of. It is simply one file (you can optionally put it into a folder) that works just like your functions.php file, only you must put a special header at the top. For instance, this website uses a plugin I made called “Matt Watson Functionality” that is simply one file I placed in my wp-content/plugins folder and named mattwatson-functionality.php. It starts like this:

   * Plugin Name:       Matt Watson Functionality
   * Plugin URI:        https://www.mattwatson.org/
   * Description:       Matt Watson functionality plugin
   * Version:           1.0.0
   * Author:            Matt Watson
   * Author URI:        https://www.mattwatson.org/
   * License:           GPL-2.0+
   * License URI:       http://www.gnu.org/licenses/gpl-2.0.txt
   * Text Domain:       mattwatson-functionality

From there on, I put whatever PHP code I want, just like I would in the regular functions file.

“I’m using my own theme that I’m never going to change, so what’s the point?”

This is certainly a common use case scenario — where a developer is coding their own or a client’s website and is only using WordPress’s theming feature because that’s what you must do in order to use the CMS. This kind of “theme” is not meant to be used by anyone else, is not going to be distributed in anyway, and is not meant to be switched out. In essence, the theme is the website.

While it is true that such a website is not designed in the first place to allow the user to switch themes, there are still other scenarios where having your functionality code separate from the theme is useful. For instance, in 3-5 years when the website frontend design plans get overhauled, you might want to develop the frontend code from scratch again using a new custom theme. Essentially, you are rebuilding the website… but if you’ve used a custom functionality plugin, you have saved yourself some time. You don’t need to migrate non-frontend-related code to the new theme, because your plugins will just carry over.

Using a functionality plugin with other themes

Most chatter I’ve read on using functionality plugins are directed toward developers who are coding their own theme. But what if you’re a lazy developer like me who is just using a standard theme from the WordPress.org repo? It is rather common, in fact, for developers to have ugly personal websites or use other people’s themes, because they just don’t have time to work on it. When you use a third-party theme, though, you pretty much lose the ability to write anything to the functions.php file, because your changes will be deleted on a theme update. This is annoying if all you need to do is add a few lines of code to, say, the head of your pages, or inject a few style rules for whatever reason. This often results in just downloading a plugin from WordPress.org. A lot of these plugins do super basic things and are largely meant for non-developers.

But if you’re a developer and used to touching the code, you can just add a functionality plugin to do basic things instead of using other people’s plugins, which are usually large and designed to do a lot of things you might not even need.

For instance, I decided to use the Twenty Fifteen theme for this site, and I wanted to track my site’s traffic using my self-hosted Matomo installation. While I could have downloaded a plugin from WordPress.org that would inject Matomo’s JavaScript snippet into my page head, I can just do it myself in my own functionality plugin. And hey, while I’m at it, I’ll go ahead and add anything else I need to the wp_head hook, such as my favicon links.


// [... Plugin header]

add_action('wp_head', 'mw_wp_head');
function mw_wp_head() {
	<!-- MW Custom Plugin -->
	<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
	<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
	<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
	<link rel="manifest" href="/site.webmanifest">
	<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">
	<meta name="msapplication-TileColor" content="#da532c">
	<meta name="theme-color" content="#ffffff">

	<?php if( !is_user_logged_in() ): ?>
		<!-- Matomo -->
		<script type="text/javascript">
		  var _paq = _paq || [];
		  /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
		  (function() {
		    var u="//piwik.mattwatson.org/";
		    _paq.push(['setTrackerUrl', u+'piwik.php']);
		    _paq.push(['setSiteId', '1']);
		    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
		    g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
		<!-- End Matomo Code -->
	<?php endif; ?>
	<!-- /MW Custom Plugin -->

When you need to push code but can’t FTP

Usually, to update your custom theme’s functions.php file, you would just FTP it (or use a deployment service that does the equivalent). But there might be times where you need to update someone’s website but don’t have access to FTP. For example, the website might have an IP address whitelist, and you’re working remotely today. Or maybe your FTP program is not working for some reason. Not an ideal situation to be in, but it happens.

The more functionality code you have extracted out to plugins, the easier it will be for you to make updates in a pinch. You can just change the plugin and re-upload it in the WordPress admin area. Of course, you could do the same for the theme, but that involves re-uploading all theme files from a zip. Easier just to upload your-plugin-name.php on the plugins screen.

Final thoughts

Going from dumping all your functions in the theme to dumping them in a functionality plugin might not magically make your code that much more organized. You can always be more organized by doing things like applying object-oriented programming with classes to using namespaces, etc., but this is at least a good start with concrete payoffs.

Matt's hand holding a close-up bottle of Spinraza (nusinersen).. Matt's hand holding a close-up bottle of Spinraza (nusinersen)..

It’s been a long time waiting for a lot of red tape to clear up and a surgery to undergo (one year and four months, to be exact), but today my brother and I finally got our first dose of Spinraza (nusinersen), the first drug approved to treat spinal muscular atrophy.

I prayed for this day often as a kid but never seriously thought it would come. It is not a cure, but it is a treatment that has been shown to prevent much of the progression of SMA and to improve strength in many cases. It has mainly been tested on children, and by the chatter I hear, it has been slow going for adults trying to get access to the drug. This is largely because of insurance companies resisting to pay for it, as was our case. After three denials, we got funding through Biogen’s free drug program.

Another reason for the delay in some adults, including us, is that the spinal fusion we received as kids to prevent spinal curvature blocks all entrances for lumbar punctures, the method through which Spinraza is administered. Various strategies have been used to circumvent the spinal fusion and deliver the medicine. I can only comment intelligently about the strategy my doctor and surgeon used, and I’m led to believe Blake and I are the only ones who have had Spinraza delivered this way. So I offer an explanation here for the curious, as well as adults with SMA out there who also have a fully fused spine.

Delivery method

Matt holding a bottle of Spinraza.

About a month ago, a surgeon drilled a hole in our lower fused spine to make an entryway. But instead of injecting the drug there, he placed an Ommaya reservoir, which usually goes in one’s head, on our lower rib cage, right under the skin. A catheter, usually used to go from the reservoir into the brain, wraps, instead, around to the lower portion of our spine, where it enters and goes all the way up the spine until it reaches the top, close to the neck (thorax?, thoracic cavity?… something like that). This is supposed to make the treatment even more effective than if injected into the lower part of the spine, as happens with a regular lumbar puncture. The primary benefit, however, of the Ommaya reservoir is that is makes getting the multiple doses of Spinraza a simple, in-office procedure. No need to do a lumbar puncture for every dose. The doctor simply sticks the Ommaya reservoir on the rib cage with a butterfly needle, withdraws 5mL of spinal fluid, replaces it with 5mL of Spinraza, and puts back a couple of mL of your own spinal fluid in order to push all the medicine in the catheter out into the spine. Gotta be sure and get all of it!

There are four loading doses in the first two months, and then a maintenance dose every four months thereafter. So having the Ommaya reservoir right there under the skin is extremely convenient. I will say, though, that the surgery to initially place the reservoir and catheter wasn’t as easy as it was supposed to be, but with SMA, we expected there might be difficulties.

It’s been almost 12 hours since my first dose. Not feeling any different yet, but hopefully it won’t be long :-). I’ll be writing an update on this in a few months, I imagine.

Note: I wrote this several months ago but am just now posting, fwiw.

Cover Leaf

In this riveting biography of Dennis Rodman, Wolf Blitzer details the quest of the NBA star of ‘90s fame to save the future, a future where all Americans speak Korean and worship the God of Olympia (Rodman himself), second only to the Eternal Leader, Kim Jong-un.

Based on 90 hours of face-to-face interviews of the future Dennis Rodman (who has now come back to the present and married the only person worthy of himself — the current Dennis Rodman), Blitzer chronicles Rodmans’ journey, which begins on a crisp Saturday in October. A black van screeches to a halt not three feet away from Rodman, on an allegedly empty street in LA. When the van’s sliding door opens, Rodman is pleasantly surprised to see his second-best-only-to-Kim North Korean friend, an old-guard lieutenant of the DPRK and esteemed Korean intellectual, Richard.

When Richard debriefs Rodman on Kim’s plan to cryonize Korea’s Black Hope, a riveting tale of friendship and betrayal spirals out of control… eventually, when Rodman is decryonized 500 years later.

Nominated for the 2018 Nobel Prize in Literature, Dennis Rodman: A Biography will keep you on the edge of your seat and awestruck by how one Chicago Bull from Trenton will have saved the world in the would-otherwise-be-coming Kimpocalypse.


Five stars

Blitzer’s masterful retelling of the not-so-distant almost future is bound to make readers stop to think about how far we’ve come in what some commentators have called a post-political world.

Although President Donald Trump is not mentioned on the cover leaf, his multiple colossal failures play a prominent role in the would-be coming global nuclear destabilization. We have already seen dozens of escalating speeches by Trump in regard to North Korea. Perhaps it should not surprise us that the Mentally Deranged U.S. Dotard, as Trump would have officially been referred to in the future North Korean world order, would have launched a nuclear bomb at North Korea in a fit of rage after Arnold Schwarzenegger’s The Apprentice finally would have surpassed its old ratings under Trump.

But this biography is not about Trump or Schwarzenegger or Kim Jong-un. It is about one man and his will to save the future of Planet Earth as we know it. It will cause the sports world to reimagine Rodman’s career in light of the darkest historical timeline, which he singularly prevented through a mixture of basketball skills and worldwide fame.

This biography starts where it matters. Not in Trenton where Rodman was born nor during his back-to-back winning seasons for the Chicago Bulls — but rather in the year 2019, the year Rodman is frozen alive inside the Glorious Sanitarium of the Eternal Revolution.

The friendship between Rodman and Jong-un is notoriously well known, but Rodman’s biography puts to rest any speculation on the extent of the two world leaders’ friendship. In one of the most emotionally intense chapters of the book, a scene of love and rage is on full display as we are taken to Rodman and Jong-un’s reunion of 2019. Without giving away too many spoilers, Rodman did not want to be cryonized but eventually obeyed the Eternal Leader, all while scheming the dictator’s eventual fall.

We are taken into the future and back again, through picturesque Korean jungles in search of a mad scientist’s 5000-year-old time machine invention, to high-octane chases atop self-driving Uber cars. (Yes, Uber still would have existed in the darkest timeline.)

Dennis Rodman: A Biography is the most important book of our time. You will be held captive from page 1 to 843 by a narrative that’s not only wildly entertaining, but also sure to reshape our sociological wisdom for years to come.