Category: Blog

Mastodon For Dummies: the most important book I’ve written.

From time to time, I get copied on mass emails from my agent looking for an author for a book on a specific topic. In early November 2022, I got such an email. Wiley was looking for someone to write Mastodon For Dummies.

I wrote my proposal that night, in spite of being in the thick of writing a 900-page programming book that was pretty much consuming every waking minute of my life. My proposal was accepted, and I was teamed up with Mike McCallister so the book could be written as quickly as humanly possible.

I jumped at this opportunity because I desperately want Mastodon to continue to grow and be successful, and this was a way that I could contribute to its success. I wrote my part of the book in two weeks, and the book was written, edited, published, and in stores in under 3 months — a crazy fast turnaround in the world of book publishing. It’s a really good book, too — thanks to a great co-author, editor, technical editor, production editor, copyeditor, and a team of people that’s far larger than I even know.

When I wrote my proposal and outline for the book, Elon Musk was in the process of destroying Twitter, and people were looking for an exit. Mastodon became the most popular option for “Twitter refugees” who wanted a social media site where they could post and read short messages, but without the negativity and extreme manipulation of their feeds that’s come to characterize Twitter under Musk.

Unlike Twitter, Mastodon is open source, completely free to use, and not controlled by a billionaire. In fact, Mastodon isn’t controlled by any single person or company. Instead, Mastodon is mostly built and operated by volunteers who feel strongly about creating a space where speech truly is free.

The problem, however, is that there’s a perception that signing up for and using Mastodon is more difficult than signing up for and using other social media sites. Mike and I and the team at Wiley were determined to do what we could to change this.

Mastodon For Dummies is the first book about Mastodon, and it gives simple-to-follow instructions for everything you’ll want to do on Mastodon. It starts with a quick overview of how Mastodon is different from other social media sites and then goes into a wide range of topics, including:

  • How to sign up for Mastodon
  • How to find your friends and make new friends on Mastodon
  • How to create posts, favorite posts, and boost other people’s posts
  • How to curate your Mastodon feed (because there’s no algorithm that’s going to do it for you!)
  • How (and whether) to conduct business on Mastodon
  • How to set up your own Mastodon server

What excites me most about Mastodon is that it feels like the World Wide Web I fell head-over-heels in love with in 1993. It’s a community of people who are having conversations and sharing their interests and ideas in an advertising-free environment without having their actions monitored and tracked. For the most part, people on Mastodon are friendly and aren’t trying too hard to sell you on themselves or something else. Every post by someone you follow shows up on your feed — in the order in which they were posted. It’s simple, but liberating, to be in complete control over what you see and don’t see.

The best part is that the creators of Mastodon aren’t going to sell it or suddenly start charging $8 per month or sell your personal information to make money off advertising — and they couldn’t if they wanted to.

The book is now in every store and on every website that sells computer books. If you want to support and become part of an authentic community on the Internet without being at the mercy of a mega-corporation or eccentric billionaire — please check out the book from your local library, independent bookstore, or even

If you have any questions about Mastodon that aren’t covered in the book, please email me (chris at minnick dot com), or direct message me on Mastodon!

It Doesn’t Matter What JavaScript Framework You Use

Keeping up with JavaScript libraries is a full-time job. Even if you pick one to specialize in, the constant stream of changes made to it is going to make you feel like you’re always behind the times. On top of this, people who write about JavaScript and Web Development or make YouTube videos about it will be constantly telling you that the way you’re doing things, the library you’re using, or the specific features of that library that you’re using are ruining the web, killing puppies, and worse.

If you’re working for someone else, the tools you use will be dictated by your employer, the client’s existing technology stack, the skills of your co-workers, and a ton of other factors. Dropping your current framework because of the prevailing sentiment among guys with crazy haircuts on YouTube isn’t a luxury most developers have.

The rise and fall of popularity among tools is a natural thing in an environment where no one really has the foggiest notion what the best way to make websites is. Web developers seem to be stuck in a loop from static websites, to server-side rendering, to client-side rendering, to some hybrid between the two, and back to static websites. We’ve been around this loop several times now. Each time around the loop, the tools get more sophisticated and more complex. In some cases, they even get better. Until we figure out something that actually works, we’re going to keep going around the loop.

So, what’s a web developer who wants to stay employable to do? Clearly, migrating to a new framework every few months isn’t going to fly with your employer or clients. But, it’s a legitimate concern that the skills you have from working with one framework may not be worth anything if you find yourself on the job market after that framework becomes unfashionable. And, steadfastly refusing to learn any JavaScript frameworks because you can do everything with HTML and CSS is a one-way ticket to being unemployable.

There is an alternative that will not only make you able to quickly learn and become an expert with the latest frameworks and tools, but also ensure that you’ll always be one of the cool kids. Are you ready for it?

The secret is to learn JavaScript and the Web APIs really well.

While it’s fully possible to use a library like React or Vue.js without fully understanding JavaScript, by doing so you’ll likely end up using the library incorrectly. There’s not anything inherently bad about today’s crop of JavaScript libraries — the problem is that a lot of people are using them poorly or incorrectly. Remember: every library is just JavaScript ,and you should know JavaScript well enough that you could write anything you write using a library without using that library.

If you know what your framework of choice is doing behind the scenes, you can write good code with the library much faster than without it, which is the whole point of using a library in the first place.

A Long Swim in Hell

This summer, I took part in a 5 kilometer open water swim called The Swim to the Moon near the town of Hell, Michigan.

Here’s my account of why I did it, how I trained for it, and what it was like.

Who am I?

I swam competitively as a kid and in high school. Since then (I’m 43 now) I’ve swum on and off, but I haven’t been a serious swimmer at all. In 2011, I swam the Alcatraz Invitational, which is about 2 kilometers. You can read about what that swim did to me here.


My reason for doing the Swim to the Moon was the same as my reason for doing the Alcatraz swim: my sister, Beth. Beth is a very good swimmer, and, unlike me, continues to swim competitively on a regular basis. She asked me (or dared me) to swim from Alcatraz with her, and it was such a good experience that we decided to find new swims to do together — but, in warmer water than San Francisco Bay. Along with Beth’s friend, Brendan, we formed a team and called ourselves “Das Shark”.

How I trained for a 5K swim

I had about 8 months from when I signed up until the date of the swim. I started training right away. At the beginning of my training, I hadn’t seriously exercised since I trained for the Alcatraz swim (4 years ago). I was also smoking and drinking pretty heavily.

I started an intense workout regimen, I lost 30 pounds, I quit smoking, I cut way back on beer, and I was swimming between 1 and 5 kilometers a day, 5 days a week.

I didn’t do any of these things at the same time, however. By the day of the swim, I had gained back much of the weight I had lost (swimming makes me hungry), and I was drinking a lot of beer. But, I was a much stronger swimmer.

The swim turned out to be a great opportunity for a family reunion. We rented a house near the race for the week prior to the swim, and the whole family came out and cooked, swam, fished, and partied. The area around Hell has numerous small lakes, and the house where we stayed was on a particularly small one.

On the first day at the house, Beth and I jumped into the lake for a practice swim. It was warm, shallow, and still — perfect breeding grounds, it turns out, for the dreaded sea lice. I must have stirred them up and they proceeded to attack me. For the next three weeks, my legs were a bumpy and itchy mess. No one else was affected in this way, and so I think I may have just been unlucky or particularly sensitive. Note: I’m not 100% sure it was Sea Lice, so if you happen to be a Sea Lice expert, let me know and I’ll send you a picture!

What was it like?

On the day of the race, we woke up at 5:00AM and drove to the lake, where we got on a school bus that took us to the starting line. At the starting line, there were 200 swimmers and 2 porta potties. All agreed that this was an area where the race organizers could have done better.

We made up a cheer for Das Shark:

“2, 4, 6, 8! Team Das Shark will decimate! Chomp chomp chomp! You! Chomp chomp chomp! Today! Chomp chomp chomp! At 8:40 am! Chomp chomp chomp! For approximately 1 and a half to 2 hours! Chomp chomp chomp! Then we’ll have lunch! Chomp chomp chomp!”

Brendan drew a sweet logo that included a Shark wearing Lederhosen.


The course for the race started in one lake, then went through a narrow channel and into another lake. The finish line was at the opposite end of the 2nd lake. Buoys in the lakes marked the course, and special buoys marked each kilometer of the course.

The water was warm — 79 degrees — which is nice, but probably too warm for most serious swimmers. That early in the morning, there was steam coming off it, which you can see in our team picture below.


At the starting line, swimmers were started in 3 groups according to their self-reported swimming abilities. When the starting buzzer went off, there was a mad dash for position, with 50 or so swimmers in our group trying to get out ahead. The water was murky and shallow, and I kicked other swimmers and was kicked several times during the first 5 minutes.

Once everyone spread out a bit, I got into a groove.

Every long distance swimmer sings to themselves in order to stave off boredom. For most of the swim, I was singing the songs we listened to on the way to the lake that morning. I think it was this album (opens in a new window for your listening pleasure while you read the rest of the article).

But, I was also making up stories about how I would become lifelong friends with the 3 or 4 people I was swimming close to for most of the race. We’d help each other out, encourage each other to stick to our swimming, sign up for other races together, and have awesome barbecues. We were just about equal in swimming abilities and we had all been looking for other people to swim with. Maybe we’d even start a band. Note: None of those things actually happened.

The channel between the lakes was the most unpleasant part of the race. It was narrow and shallow. If I wasn’t right in the center of the channel, my hands would drag through the muck at the bottom. Everyone was trying to stay in the middle of the channel, and so collisions with other swimmers were much more likely.

There were a couple bridges that passed over the channel, and spectators stood on these and cheered us on.

After the channel came the much larger lake, Half Moon Lake. There was a dramatic temperature change (from cool to much warmer) upon exiting the channel and entering Half Moon Lake. At first, I thought the person in front of me had peed.

By the time I got to the last 2 kilometers of the race, I could feel chafing under my right arm, so I tried to favor my left arm and change my stroke in order to not make the chafing worse. Other than that, I was feeling good, but I was eager to be done. When I reached the last buoy and knew that there was only 1 kilometer to go, I pushed myself to go faster.

The lake got very shallow about 50 yards before the beach. When my hands started dragging on the bottom, I stood up and started running. I crossed the finish line totally exhausted, and then tripped and fell on my face in the sand. The announcer made a joke about me stumbling but he misread the numbers on my arm and said someone else’s name: “Joe from Kalamazoo is looking dazed and confused!”

chrisandbethchampsI finished the race in 1 hour, 34 minutes (107th overall, out of 217 swimmers) and took 5th for men in my age group (out of 10). My sister finished 2nd in her age group (32nd overall) with a time of 1 hour, 18 minutes.

A few days later, as we were driving to Chicago, Beth and I discovered Jim “The Shark” Dreyer, who has done many incredible long distance swims and holds records for such insane things as being the only person to swim across every one of the Great Lakes. His latest feats include swimming long distances while pulling heavy things (like cars).

Inspired by Jim “The Shark”, Beth and I are now starting to make plans for our next big swim.

What writing death notices taught me about writing

smallnoticeI’ve been a professional writer for 22 years. The first time my writing was published was in 1993, when I was the circulation manager for a small weekly newspaper in Detroit. The full-time reporters considered the job of writing death notices to be beneath them, and shoved it off onto me.

I loved it. Each week, the death notice forms would come in from the funeral homes, along with the remembrance ads from the spouses and loved ones of the recently, or not so recently, departed. Some notices stuck to just the facts: Mr. Volchuck died March 18 at Holy Cross Hospital. He’s survived by his daughter, Anna, and his son, Leon.

Other notices would feature bible verses. Occasionally there would be a line or two of bad poetry or some clip art selected from a binder that was kept at the front desk.

Some death notices would give a bit more information about the person than just the names of their spouses, children, and grandchildren. For example, Jan Kowalski played football for University of Detroit and worked at GM for 30 years.

My job was to put each death notice into a standard format, get the facts and spelling right, and have it all ready to go to paste up (the paper was pasted up when I first started working there) in time for the Tuesday night press run.


The structure of death notice had been the same for the entire 75+ year history of the paper: Last name, first name, middle initial, location, date of death, survived by wife (nee maiden name), children, grandchildren, location and date / time of services.

Although the policy was to stick to the standard format and keep it as dry as possible, I would routinely include as much information into each death notice as I could. A death notice is a very different thing, with a very different purpose, from an obituary. But, I treated each notice as an opportunity to try to fit an obituary into around 50 words.

The challenge of squeezing human details or touching words into whatever small amount of space was left after listing the grandchildren was one that I was particularly fond of and good at.

The readership skewed towards elderly Polish-Americans. They were notorious gossips and wanted to know everything about everyone else’s troubles, illnesses, and ultimate undoing. The paper, however, had a policy of not printing the cause of death.

I was a 22-year old on a break of indeterminate length from college. Full of unearned self-assuredness, I argued with the editor-in-chief and publisher — who had a collective 40+ years of newspaper experience between them — that the cause of death should be listed in death notices whenever it’s included on the form.

Death notices were one of the most-read parts of the paper in this community. Listing the cause of death, I argued, would make the notices even more popular. The publisher considered it tacky to mention the cause of death, and pointed out that doing so would require additional research and permissions from survivors. I eventually saw that the trouble of printing the cause of death wasn’t worth the effort, and my crusade for openness ended there.

From this first experience with being published and having my writing distributed I learned to be concise, to always be thinking about the audience, and to do quality work while balancing the effort and rewards. These are vital skills for any writer to have, and I would encourage anyone who is just getting started as a writer to spend some time practicing the art of writing death notices.

My Writing Cave Quest

A couple months ago, I started a writing group. My vision for the group was that once a week, my writer friends and I would get together to write, talk about writing, act stupid, and share stories. I named the group the Hemingway and Gump School of Writing.

I chose a location that served beer and coffee and that was fairly centrally located in midtown Sacramento. I scheduled the first meeting and invited all of my friends who are writers or who aspire to be writers.

No one showed.

I had a great time and got more fiction writing done than I had in a long time. So, I scheduled it again for the same time and same place the next week.

Again, no one showed up and I was really productive and stumbled home after a few hours of writing and drinking beers by myself.

The next week, one other person showed up and I was much less productive. But, it was fun!

After a while, though, I started to feel like the location and the place I had selected for writing wasn’t the best. The mix of people drinking coffee (probably 85%) and people drinking beer (me) felt strange and I wanted a more mellow scene.

I planned a writing crawl with my trusted friend and counsel, Jeff, to seek out a new location for the writing group. The idea was that we would walk around Sacramento with our laptops, and have a drink and write something in as wide a variety of places as possible.

On the planned day of the crawl, I headed to my local coffee shop (Naked Lounge) to warm up and await Jeff. Unfortunately, Jeff wasn’t able to make it out on the morning of the crawl. So, I decided to embark upon the crawl alone.

What follows is the journal of my quest to find the perfect writing location in midtown Sacramento.

My first stop was Naked Lounge, at 15th and Q.

Naked serves coffee of all sorts, plus some pastries. I had an iced coffee and sat at a small table and worked on a sidebar to Chapter 1 of Coding JavaScript for Kids. Naked has free and open wi-fi (no need to ask for a password), there are plenty of places to plug a laptop in, no one minds if you hang out for hours, the coffee is excellent, and the atmosphere is good for morning or early afternoon. The tables are a bit small and it’s often pretty crowded, however.

After I finished my sidebar and coffee, I moved on. My next stop was University of Beer, on 16th Street. University of Beer has 100 beers on tap and some nice picnic tables outside where you can sit quietly and type. There was nowhere to plug in, and the wi-fi was password protected (and I didn’t feel like asking for the password). This places gets pretty crowded at night, so I don’t imagine it would be a good regular night-time writing spot. However, I wrote my company’s weekly newsletter and had a delicious New Glory Brewery American Country Saison.

At this point, I was getting hungry, so I headed across the street to Uncle Vito’s Pizza. Uncle Vito serves pizza by the slice and has a good selection of beers on tap at great prices. I ordered two slices of pepperoni and a Lagunitas Lil’ Sumpin. Everything was delicious. They don’t have wifi that I could detect, but the University of Beer wifi signal was strong from where I was sitting.

I started writing this blog post while waiting for my pizza, then ate my pizza and enjoyed the atmosphere and beer without writing. Vito’s might not be the best place to get writing done (it’s small, and I didn’t feel like I could sit for a long time and type), but so far it’s tops on my list for places to get together with other writers and not write.

My next stop was to be the Sheraton Grand. I like hotel lobby bars, and the one at the Sheraton Grand in downtown Sacramento is a particularly nice one. Unfortunately, there was some sort of fitness convention going on and the place was mobbed. So, I walked through and continued on.

My next stop, the Hyatt Regency on L Street did not disappoint. The bar was empty and has plenty of comfortable seating. The beer list is severely limited, but they also have food, free wi-fi, places to plug a laptop in, and high ceilings to look at while pondering what the hell to write next. I wrote the rest of this blog post up to this point at the Hyatt while drinking two Rubicon Monkey Knife Fights.

Could this be the place? No, probably not…although I have enjoyed my time here. Time to move on to the next spot. Stay tuned.

What’s it like to be the 32,284th most popular author?

According to Amazon, there are only 32,283 authors who are more popular than me (on Amazon) today. Updated hourly, this number has fluctuated in the range of 20,000 to 40,000 over the last few months. With somewhere around 5 million titles in the Amazon database, I figure there are at least a million different authors I […]

The post What’s it like to be the 32,284th most popular author? appeared first on Minnick Web Services.

Read more