“Real artists ship”; or, at what point did I lose my nerve?

“Real artists ship.” Steve Jobs said that to motivate the Macintosh team in 1983. It’s a statement that reverberates in my mind and absolutely drives me crazy sometimes. Why? Because I have tons of code that I haven’t shipped. Hell, some of my best code hasn’t shipped.

At some point, I lost my nerve. I couldn’t finish the projects I started. I couldn’t make a small change to a UI because it would inevitably spiral out into something that would require a rewrite of the entire app. I let new components I created lie unused. I let the revisions and extensions I had written for my apps linger and die on the vine. I couldn’t integrate the pieces into a coherent whole.

I let myself become too tired or too distracted to focus on the problems in front of me. I couldn’t resolve the problems I had created for myself. I couldn’t think straight, and didn’t trust that I could do it anymore.

I realize now that I was bumping into my limits as a developer, which is scary and frustrating. I opted to run away from these limits rather than to either work past them or to accept them. I am trying to do better and not get bogged down in all the feelings I have developed about this over the past couple years.

In the past I have failed. But I am trying to work through it now, to push past the fear, to move from “I can’t do this” to “I can do this,” and to get through the hard parts of getting my best code shipped. I can do it this time, and I won’t give up. All it takes is will, grit, and patience.

I just had to reboot my iPad due to some wonkiness. I wonder when iOS/iPadOS 15 developer beta 2 will drop. I think we just passed over the historical median age of an iOS beta 1.

📺 My wife and I watched the first episode of Hacks tonight and thought it was a hoot. The writing is outrageous, the characters have no filter, and Jean Smart is a treasure.

🎧 I turned on the crazy hi-res audio settings on my Mac tonight. I want to justify why I have an expensive DAC. 😀

Why do we begin emails with “Dear so-and-so”?

I write a lot of email at work. Almost every one I write starts with “Hi, <name>.” It seems perfectly normal, until you realize that every email client already includes that in the “To” field above the body of the message. The reader knows her own name, and it is written on the screen in the “To” field next to her email address. Why do I write it again in the body of the email? Why do I do this 50 times every workday? Why do I do this even though I think it is redundant?

Simple: Because I think that everyone’s favorite word is their own name. Everyone likes to see it. It’s subtle flattery to include it atop the body of every email message. Whenever I think I should just stop my habit of typing it, I remind myself of this and keep going with it, because I think in the end it is worthwhile.

I finally got a Prime Day Deal, but it was from Best Buy

I picked up a Product (RED) Apple Watch 6 at Best Buy for my wife for a great price. Her Apple Watch 3 broke a couple weeks ago, and I ordered her an Apple Watch SE with a red band from Apple. It wasn’t supposed to be delivered until late July, which meant I was able to cancel it and pick up the Apple Watch 6 for her, tonight, for the same price as the Apple Watch SE, thanks to the insane Prime Days sale that other companies glom onto, too.

The red case on her new watch looks really good and matches her phone. The only weird thing is that its battery was completely dead when we opened the box. I bet the red ones did not sell well, which is why there was a fire sale today.

Ted Lasso Season 2: Is it going to be…too cute?

Ted Lasso season 2 has unexpectedly huge shoes to fill. I have not been heartened by either of the two previews, which I think are veering too far into the cute end of the show’s tone.

I loved the first season, and hope they can keep what make season 1 so engaging keep going. It wasn’t the cuteness of Ted’s cheery attitude. It was the overcoming of cynicism in everybody else that made it interesting. You need that cynicism to be there for there to be genuine tension between the characters.

The previews make the think that that tension is completely gone, at least among the main cast. I hope the writers came up with new ways to explore conflicts and create drama that don’t lean too much on tired TV tropes (new characters, character personality resets, and so on).

I just want it to be good. Ted would urge me to BELIEVE!

The bad guy thinks he’s the good guy

One of the best lessons that literature has taught me is that the bad guy thinks he’s the good guy. In more abstract terms, the villain thinks she is the hero of her own story. That is what drives villains, and that is what makes them dangerous.

Sometimes, as in real life, the villain may in fact be the hero of his own story, because the story as we know it isn’t over, and it isn’t about what we thought it was about. Any narrative can have a counter narrative. Every comedy might be someone else’s tragedy.

All of this is true in life as it is in art.

There are real villains in the real world, and we need real heroes to face them. But there are a lot of false villains in our lives that we also face. These false villains may be people we are mad at momentarily, people we are close to who frustrate us, people who shun us, people who are indifferent to us, and so on. These false villains may also be ourselves—the fears and doubts that hold us back, the shames we keep secret from ourselves, and the pasts that we cannot change.

We must be careful not to think of these false villains as the real ones. Not all stories need a hero to resolve them. When we play the hero, we may unknowingly be playing the villain instead.

I think this is the best Father’s Day I have ever had. I think the work I put into being a better dad has been paying off. I’m a little misty-eyed right now. 😀

As of right now, I am very glad that, twelve months ago, I bought the extra temples for my daughter’s eyeglasses. 😮‍💨

I don’t think my Father’s Day post made it to the M.B. timeline for some reason. Here it is.

Problems and questions: a Father’s Day post

I am teaching my daughter how to solve problems. Math problems.

I find or think up challenging math problems for her (she is a third grader), and, to make them more fun, I rewrite them to include mention of her friends and family, favorite characters, and favorite things. We work through them together before bedtime. It’s fun, and we both get a lot out of it.

I always close our math session by asking her a question. The questions I ask are meant to spark introspection and, I hope, foster self-worth: What is something you like about yourself? What is something you like to do? What is something are you good at? What are some things people you like have in common?

The questions I want her to ask in life—when learning new things, when engaging with people, and when confronting political forces in the world—are the big, probing kind: What is this all about? Why is it important? What does that even mean? How do you know?

These are simple questions, but they carry a lot of weight when asked earnestly, and also when asked recursively to get to the bottom of something. They are at the forefront of my mind all the time (especially how do you know?) because I believe they are at the heart of thoughtful inquiry. (They may also be at the heart of skepticism or even a healthy distrust, but that is something for me to unpack later.)

As a father, I have no idea how to teach her to ask these questions. How do you teach someone to not be afraid to ask these questions? How do you teach someone to not get upset at the answers? How do you teach someone to deal with indifference, rejection, or even malice? I don’t know. I can only ask her big questions enough times for her to get used to them.

As she grows older and more confident, the other big questions I want her to ask are: What can I do? and Why not me? Those questions are even harder to ask, harder to answer, and I certainly don’t have the right answers to them. Part of the my journey through fatherhood is to try to figure them out.

Father’s Day Blanket

I already know that one of my Father’s Day presents is a nice warm L.L. Bean blanket. It’s not because I’m old and need a nap. It’s for watching TV at night in the summer. To keep our upstairs anywhere near comfortable for sleeping, our central air has to work very hard. This makes our TV room, which is one of the lowest rooms in the house, absolutely freezing.

My house has central air but we also have room air conditioners in two of the upstairs bedrooms because the central air is not enough to cool them. I think that the root of the problem is that our house does not have enough ductwork upstairs. My house was built in 1980. I wonder if the central air system was designed for 1980 levels of heat, which were lower on average, because it certainly can’t keep up with 2020 levels for the top half of the house.

I could be wrong about that, because I see climate change all over the place around me, and it might just be fatalism on my part. But I think I am at least partially right.

It looks like someone stole my credit card info again. Fortunately, I was able to lock the account online to prevent more transactions. Unfortunately, the credit card company’s fraud center closed before the time stated on their website, and I couldn’t talk to anyone last night about what transactions I need to dispute. What kind of huge credit card company doesn’t have a call center running 24/7?

This is me showing up

Seth Godin says that everyone should have a blog. Moreover, everyone who has a blog should blog daily, primarily because it reinforces the idea that the important thing about it is to show up, every day, day after day, and actually do it. Well, this is showing up. I’m here.

I’m thinking about how I can be better at everything I do. I’m trying to build myself up, brick by brick, after whatever the heck happened to me during the COVID-19 pandemic. (One weird thing I noticed is that I have started to prefix the pandemic with a descriptor. It’s as if I imagine we will need to differentiate between several.) I am teaching myself new things. I am taking more chances. I am talking to more people. I am trying harder to focus on what is vital.

The effort has been paying off; at first slowly, and now more quickly every week. I think, as the weeks keep going by, I will seek out more opportunities to do good things, to grow, and to connect with the world again.

I hit a technical snag at work that is absolutely killing me right now. The first step in fixing it, I think, is to uninstall Microsoft Office 365. If only that were the last step, too!

The UIKit Date Picker 😠

Last night I became unreasonably upset that UIKit does not let me use an inline date picker (the date picker control that looks like a calendar) as an input view (i.e., in place of the software keyboard on the iPhone). There is some kind of maximum height of the input view/keyboard area, and the top of the date picker gets truncated. I tried a lot of ways to make it work, but I guess I’ll have to wrap it in a popover and have some “special cases” code paths in my view controller to make it work. How frustrating! I just need about 15 points more vertical space!

One my my heart’s dull aches is my memory of driving up the Maine coastline with my parents every year in my childhood. I did not always appreciate those trips back then, but they are etched into my mind indelibly. I just have to think about it and I can feel the cool breeze in my face, smell the salt air, and see the black rocks at the edge of the water and the glint of sun off the waves. I long to go back someday.

Pipeline Investigation Upends Idea That Bitcoin Is Untraceable

Nicole Perlroth, Erin Griffith and Katie Benner report, in The New York Times, on how the Justice Department traced and recouped a huge ransomware payment:

Bitcoin is also traceable. While the digital currency can be created, moved and stored outside the purview of any government or financial institution, each payment is recorded in a permanent fixed ledger, called the blockchain.

That means all Bitcoin transactions are out in the open. The Bitcoin ledger can be viewed by anyone who is plugged into the blockchain.

Bitcoin was never really anonymous. It is pseudonymous, so it makes sense that transactions can be traced to some extent and tied to a unique owner or wallet.

What is interesting is not just that law enforcement can identify which Bitcoin wallet was involved in the fraud, but also that law enforcement could also crack the wallet’s password and retrieve/steal the money out of it. I wonder how. Was it a weak password? Was it social engineering? Was it a brute-force password crack? If so, was it cracked by a normal computer or by a quantum computer that no one else knows about?

Bitcoin seems fundamentally broken to me. I won’t touch it.

I wish I could be more methodical at work, but my stupid, whimsical mood is hard to overcome. I get things done, but not always in the orderly way I had hoped.

We are going (in person) to a (real) birthday party today, for the first time in…oh, never mind. Anyway, my daughter is jumping up and down in excitement, and that’s what is important. 😀🎂

I’m installing the Xcode 13 beta on my new Mac mini and I’m installing iOS 15 developer beta 1 on my old iPad Pro. I will probably install iOS 15 on my old iPhone 7 Plus later this weekend. Because I upgraded hardware this year, I actually have old devices kicking around for pretty much the first time ever. All it took was spending a ton of money!

My wife and I had only time enough to watch the opening number in In the Heights so far. We absolutely loved it and can’t wait to watch more tonight.

This is turning out to be a terrible year for Apple device spending for my family. I had to buy my wife a replacement Apple Watch yesterday because the screen stopped working on her Series 3 and it is out of warranty. It is the fifth Apple device I have purchased this year. 💸

I had forgotten that Apple said Siri will operate on-device starting in iOS 15. Tom’s Guide says it is a killer feature. My biggest problem with Siri is the “Siri is not available” messages I get a lot of the time. Maybe that problem will go away for me.