Hot Sauce

I have watched enough episodes of Hot Ones on YouTube to pique my interest in hot sauces. So far I have a bottle of a chipotle-inspired sauce and a bottle of sriracha. I am trying to enjoy them. So far they taste more acidic than hot to me. Perhaps I need to learn to cook with hot peppers instead of dabbing sauce on things.

I learned today that one of my cousins died. Before this I didn’t even know he existed. I am not entirely sure how I should feel. Vaguely sad is all I can muster right now.

I have not been doing much writing lately. I looked over a white paper I started writing in the fall, and realized I haven’t worked on it since December. I do not wish to abandon it; I’m just not that interested in it right now. I have been busy—and have wasted time—elsewhere.

One of my old websites is #2 on Hacker News right now.

⚾️ I’m watching the Red Sox/Twins opening Spring Training game. I’m happy that baseball is back! Instead of following the Sox, I may watch the MLB free game of the day and jump around the league this year. It will be interesting to see how the new universal designated hitter rule plays out.

🍀 We are having a St. Patrick’s Day dinner tonight. I put the corned beef in the slow cooker and got the potatoes ready for roasting later. I’m even going to cook cabbage for the first time. I plan to sauté it, and hope it turns out well.

Book Fair

My daughter had a book fair at school today. She was so thrilled about it that she told me about it many times over the weekend before it happened, and several times today after it happened. She proudly showed my wife and me the books and the fancy pencils and erasers she bought there today. It is wonderful how much she loves to read and to write.

I always loved book fairs in elementary school, too. It was fun, as a kid, to get a chance to shop with real money and actually make buying decisions. I’m happy my daughter gets the same opportunity.

ScratchJr

My son is starting to get interested in ScratchJr on his iPad. It is a visual programming environment for kids. It seems like a good way for kids to learn programming. I set him up with it on Saturday and tried to help him get started yesterday. So far his favorite part is the image editor, which of course is the non-programming part. He has been drawing and coloring with it most of the time. Tonight he showed me one of the animations he made with ScratchJr. Now I know he is interested in the programming part, too. Tonight he demanded I get him ScatchJr’s big brother: Scratch, which is just a web app. I look forward to seeing what he thinks of it.

I have not had much interesting to say lately. I have been doing boring things like preparing my taxes and watching way more TV than usual. I hope to get out of my creative slump soon.

Judging by the weather—wind, cold, snow, sleet, hail, and rain—it is the last gasp of winter here in New Jersey. All I have wanted to do is sit under a blanket and watch TV.

🍴 My wife and I ordered Indian food tonight. That may be a non-event to most people, but for us it was a revolution. My wife never tried it before. I hadn’t had any since before she and I got married. We absolutely loved it and are still excited about it.

My day blew up, but everything is OK

My wife was in a car collision this morning. She was uninjured but was understandably shaken up. I cancelled my morning meetings to go help her. Most of my help consisted of coordinating the tow truck and the body shop.

While this was happening, my son fell out of his chair at preschool, hurt his back, and was given an ice pack, and my daughter was sent to the school nurse on account of her chapped hands, which were bleeding.

My whole day blew up, but it was fine. My wife and kids are fine. The car is damaged and we won’t drive it until it gets fixed, but it will be fixed someday this month. I didn’t get all my work done today, but my coworkers understand that sometimes things don’t work out the way they are planned.

On a break

I have been taking a brief, unplanned blogging break. I overloaded my brain last week with too much work, too much programming which led to the same dead end I always end up in, and too little sleep. I also had an important doctor appointment yesterday that I was very uncertain about. Fortunately I am past that and can start to think more clearly again. Overall I am well and am looking forward to the future.

Today was my son’s fifth birthday. We had two family parties for him this weekend and all had a great time. He got presents. We ate cake. We spent a lot of time together. The important thing to me is that he knows he is loved.

Grounds for Sculpture

My son turns five tomorrow. As part of our celebration for him, we all took a trip to Grounds for Sculpture. It is a huge sculpture garden that my kids love to visit.

Part of their fun, which my wife and I can’t fully understand, is that they both bring their nearly-identical stuffed penguin toys there to stomp on some of the sculptures. They have also named a bunch of the sculptures and enjoy visiting them and pretending to have a chat with them.

We have been there four times now, and have discovered new things to see and marvel at every time we have visited. I took a bunch of great shots of the family today, but for my blog I will only post pictures of some of the cool sculptures we saw there.

Knock-off Laser Toner

Tonight I performed some surgery on my color laser printer’s empty toner cartridges and installed knock-off ones in their place. I feel a little dirty, but I saved about $400.

I resent that toner cartridges now have microchips in them that are required for the printer to print. The chips help the printer report its toner levels, but otherwise are there to make a rather generic toner cartridge into into something proprietary and overpriced. The knock-off toner cartridges I bought came with tools and instructions for transferring the chips from the original printer cartridges to them. It was pretty easy to do, and the printer prints in color again with the new cartridges installed.

The printer will always report low toner now, no matter what the toner level actually is. I expect to field questions about it from my family for the rest of my life.

My soon-to-be-five-year-old son is typing…something…into Swift Playgrounds and thinking he is programming. It’s not that different from what I do most days. 😂 At least he is very excited about it.

Maybe I’m lying to myself, but it’s working

Last month I started a new, private ritual. Every morning, before I start work or before cleaning up the family breakfast table, I say to myself, “This is going to be a good day.” Sometimes I say it to myself again in the middle of the day when I have a break from work, or when I see the moon or stars in the evening at the start of an errand. I could be imagining it, but I think that doing this is helping me stay positive when things get stressful. It’s my way of saying to myself, “It’s OK. We’re going to get through this. Things are going to end well.”

Recent wins

I tend to minimize good things that happen to me, but am trying to change that. To that end, here is a list of small wins for me this week.

  1. I got a complimentary email about my productivity guide, PlainText Productivity.
  2. I got a complimentary email about my free call blocking app for iOS, Simple Call Blocker.
  3. I responded to a bug report in my todo.txt app, SwiftoDo for iOS, fixed the bug, and published the update.
  4. I recently resumed work on the next version of SwiftoDo for iOS. It uses the Swift Package Manager for dependencies, rather than CocoaPods.
  5. In Xcode, I learned how to override a Swift package with a local copy of the package to make editing and debugging to the package code much easier1.
  6. My Chess Elo rating for daily chess on Chess.com rose to over 800.

  1. It is actually pretty easy. From the Finder, you drag the package’s folder to your Xcode project (in Xcode). ↩︎

Moonlighting as a terribly inefficient coder

One of the bad parts of moonlighting as a programmer1 is that, at the time of day I can code, I am often a terrible inefficient coder.

The time I have available for coding is very late at night, typically 11 PM to 1 AM. For the most part this is fine. I can’t get to sleep until 1 AM or later most nights, no matter what I do, and going to bed before I feel tired is counterproductive. Rather than staring at a ceiling in bed for hours, it is far better for me to stay up doing something I enjoy, like coding on my Mac while listening to music on my headphones.

Lately I have noticed that I am getting very little done in these coding sessions. The night before last I fixed one tricky bug, then decided to quit coding (but not yet go to sleep) for the night. Last night I wrote about half of one feature. To be fair, I wrote several implementations of the feature until I found one that would be most compatible with Apple’s frameworks. Still, I quit for the night before finishing it because the other part of the feature seemed too tricky to tackle after midnight.

Fortunately, when I brain is tired, I don’t end up coding a buggy mess. I have the sense to slack off for the rest of the night, so I don’t spend my next evening throwing away the garbage I coded the night before. Still, I get very little done compared to the time I spend on it. At least I enjoy the time I spend doing it.


  1. To be clear, I am a hobbyist and don’t have a second job. ↩︎

Tom Brady Announced His Retirement Today

Tom Brady finally retired today.

For most of my adult life, I was a football fan. The whole time, my love of the game sat uncomfortably beside my real concerns about how dangerous it is.

In the 1990s and early 2000s, there was some false controversy about whether the NFL was dangerous to the athletes who played in it. I never got caught up in it: I was always certain football was a dangerous sport. As a kid, my parents said they wouldn’t let me play tackle football. (They didn’t have to worry.) My high school fielded no football team (at least in my first one or two years), nor did my college for the same reason: Back when both schools fielded football teams, kids died of injuries on the field.

Still, a combination of learning about the strategy of the game from Madden games and John Madden broadcasts with his telestrator and the fact that almost everybody around me was a football fan led me to become a fanatic myself. As a New Englander, the Patriots were my default football team. It was not much fun watching them, though, until Tom Brady took over as quarterback. Watching the Brady/Belichick team outsmart and outplay opponents was a little like watching an expert play Madden: thrilling if you are a fan, and boring for everyone else. Football games catalyzed house parties, bar nights, conversations with friends, minor holidays, and generally acceptable excuses to eat junk food, drink beer, and do almost nothing on the weekends.

I promised myself I would stop paying attention to football when Tom Brady retired. I actually gave it up a few years ago, before Brady even moved to the Buccaneers. At some point, I could no longer ignore the dangers of CTE or the horrible physical toll that professional football puts on athlete’s bodies. Watching the big hits on the field became dreadful rather than exiting. Seeing injured players carted off the field became so upsetting I could no longer shrug it off after the inevitable commercial break.

I fell out of love with the sport entirely. I no longer want to watch any sport where people intentionally hurt each other. Instead of helping me have a good time, seeing people battered on the field—or long after they stopped playing the game—now makes me sad.

I have discovered that past me was also me, at least on the page

I have been converting my high school essays from their borked Word .doc format to Markdown, to preserve them for future readability. So far, I have converted my ninth grade work and half of my tenth grade work.

As I go, I don’t read each essay in depth, but I have read some of them and found them to be incredibly, unmistakably me. I could have written them yesterday—even my very first high school paper. Sure, I would have made fewer spelling mistakes and would have employed the em-dash (which I did not know how to type at the time) a lot more, but, for the most part, I would make the same writing decisions now as I made back then.

It has been unnevering to see that I already knew how to write pretty well as a newly minted high school freshman. It makes me worry that I have not grown that much as a writer since then.

I am certain, however, that I have grown much as a thinker and as an organizer of information. Writing long papers in college and grad school (20+ pages) encouraged me to prioritize structure over style, to plan my writing process, and to organize the work and pre-work that goes into writing each section. In my career I developed technical writing skills that built off these concepts and techniques. Lastly, as I shifted more into non-technical work in my career, I also developed an intense focus on clarity, which can only gained through experience writing for many people over a long time period.

Things are going pretty well

The last two days I have been busy doing work for people and myself, busy achieving things, and have gotten positive feedback from my coworkers, my family, and the world. Things are going pretty well.

I have been so active doing things that I have not been reading the news, engaging with politics, or thinking deep thoughts all this time. Maybe that’s why things are going well.

Converting my old school papers to Markdown

Last night I started converting the essays I wrote in high school from the old Microsoft Word .doc format to Markdown, so they will be readable as long as plain text files are readable. My process is simple:

  1. Open the Word .doc in LibreOffice.
  2. Copy the text and paste it into Ulysses
  3. Replace double-spaces after periods with single spaces.
  4. Fix all the paragraph breaks, using the version opened in LibreOffice as a guide.
  5. Fix all the italics that were dropped in the copy/paste operation, again using the version opened in LibreOffice as a guide.
  6. Create a title and a brief heading (with the document date and the subject I wrote it for, if they are in there) in Ulysses.
  7. Run a spell-check in Ulysses.
  8. Export the document from Ulysses to a Markdown file.
  9. Close and delete the Word .doc version.

Strangely, many of my essays have no titles. LibreOffice displays a blank page and some random junk at the top of every file. This leads me to believe that my paper headings—which were required, because I wrote them for school—have been lost in file format translation somewhere. I have been adding titles to my old papers, which is challenging sometimes because I have no idea why I wrote some of them.

I found some interesting files in my archive that are actually worth preserving: humorous essays from my freshman year; serious papers about nuclear power and Chernobyl; and brief biographies I wrote of my father and grandfather, which are now treasures to me because they died years ago. I also found a some topical essays full of ten-dollar words and purple prose that I no doubt learned how to write by reading syndicated newspaper columnists every day. The teachers who read them must have thought I was precocious and possibly insane.

Overall, converting these files has been a rewarding diversion from my normal computing tasks. Unfortunately, between high school and college essays, I have hundreds of these Word .docs to convert, so I will be at it for a long time.

The Writing Life

When I find myself struggling to be creative or productive, I always think of a story I read in Annie Dillard’s The Writing Life. It was about a rower who was pulled out to sea one evening by the ocean tide. He rowed and rowed all night and kept being pulled farther and father from land by the ebbing tide. In the morning, however, the direction of the tide reversed, and he was pushed back to the shore to safety.

I remember this story so vividly because I had to write a very short essay about the book in my A.P. English class. We had to answer three specific questions about the book in one paragraph each. The teacher stressed how important it was for this assignment to be brief; only one page and three paragraphs.

I chose to answer the last question by writing about the story of the rower. Unfortunately, my explanation of the rower’s story stretched to two whole paragraphs, making my essay far longer than the one-page limit. At that time in my life, I had no idea how to pare down my writing even if it meant cutting parts of it I liked. I agonized over how to cut it down, but decided, uneasily, to turn it in as it was, despite it exceeding the one-page limit.

Happily, my overlong essay was a big success. I may have I understood the story of the rower better than even the teacher did, because the day after I turned it in he began the class but projecting my essay—all two pages of it—onto the classroom’s pull-down screen, and asking the whole class to read it. He seemed genuinely touched by it, too.

This evening I pulled the essay out of my archives to reproduce below. The last two paragraphs are about the rower. I think about the ideas expressed in them on a weekly basis to this day.

An Approach to The Writing Life by Annie Dillard (20th century [1980s])

Michael Descy

AP English

10/26/95

A main theme of Annie Dillard’s The Writing Life is the importance of overcoming all the difficulties faced in the fulfillment of one’s dreams. The life of a writer can be dark and lonely, demanding much introspection and many late nights alone with an unruly manuscript. The writing process itself is difficult beyond most people’s conceptions. It is so harrowing, so haphazard, and so time consuming that most people that have one burning idea for a particular novel or story are never able to actually follow through its capitalization. Most never really even start, and the few who do often form such an attachment to their work, because it was so hard for them to accomplish, they will not allow themselves to alter it in any way, even to tie up loose ends or discard the beginnings of dropped themes and plot turns. Thus, their piece is never perfected; their dream is left to waste. Despite all these trials, however, writing is a very rewarding activity. Writing is like a passion eating at you, an aching, a hunger that can kill if not satiated. Only persistence, slogging through the murk and endless toil of the process, will enable one to fulfill his dream.

A dominant tone of the work can be described as enthusiastic. Dillard is intense as she explains the writing process. She describes writing in exhilarating terms, comparing it to playing tennis, lion taming, and stunt flying. Her metaphors are powerful, zesty. She shows your work as a line of words pulsing through your bloodstream and shooting across the universe. She tells us committing a vision to paper is a futile fight with the jealous, tyrannical page, the forces of time and matter working against you. Her chapters are choppy, broken down into many vignettes and tiny observations. There is a break on almost every page. They are so frequent each seems to be a gasp of breath between her quickly blurted images.

A strong scene that feels as though it will provide a good doorway for thoughtful attention to an important aspect of the work is the story of Ferrar Burn, which her painter friend, Paul Glenn, told her. One evening, years ago, Ferrar Burn caught sight of an eight-foot log of Alaska cedar floating out in the channel by his house. It was high tide, the water slack, so he rowed out, tied the log to his little eight-foot pram, and proceeded to tow it in. The tide turned, however, catching him, pulling him farther and farther out to sea. But Burn kept rowing against the tide, stubbornly, obstinately towards his house. He strained against it all night to little avail. When the tide finally changed the next morning, it finally pushed the still-rowing Ferrar Burn back home.

This scene connects very well to the aforementioned theme. Through persistence against terrible odds, the rower Burn was finally able to succeed. Had he given up, stopped rowing, he would have drifted so far out to sea that the tide change which eventually pulled him back in would not have helped him. A writer too must pull against opposing forces to accomplish his or her goal. There is much about the process that pushes people away. Most would just assume go along with the tide, take the easy route, and be led far away from their dream. But the few with the dogged insistence to stick with their craft, pull through their troubles, and never lose sight of their objectives are able to ride out the tough times and sail swiftly and smoothly through the good times. These few are steeply rewarded in the end. Their prize: accomplishment of a dream.