🎧 Sony WH-1000M4 headphones are just OK and that sucks

Listening to the AirPods Max for five minutes in an Apple Store ruined me for other noise-canceling headphones. Not because they sounded good. In fact, I listened to them only long enough to learn that they are bass heavy and exciting. What wowed me about them was the active noise cancellation. It was far better than anything I had ever experienced. It made the din of the Apple Store—all those human voices, which are difficult for ANC to cancel out—go away completely.

Sadly, they are $550 headphones (street price $479) that don’t even have an analog headphone jack, so they are both outside my price range and unsuitable–at least for me—for listening to lossless quality audio. Still, I wanted “industry leading” active noise cancellation, something better than I already have in my fancy Beoplay H9, for the times that I need it.

I read a lot of ANC headphone reviews and came to the conclusion that most reviewers recommend the Sony WH-1000M4 for its sound, excellent noise cancellation, and price. At $300 (street price $279) they are not cheap, but one could buy them and the AirPods Pro for cheaper than the AirPods Max (at its list price). Also, compared to the AirPods Max, the Sony WH-1000M4 is lighter, folds into a small, protective case, and has a headphone jack for wired listening.

I received them and immediately discovered that I don’t love them. They are fine, but that is disappointing to me. Perhaps they are overhyped by reviewers. Perhaps I am asking too much from them. For whatever reason, I, unlike most people, I guess, think they fall short of greatness.

This is my list of complaints that should serve as a counterpoint to all the glowing, uncritical reviews.

  1. They sound good, but not great. The nearest analog to them that I own is another Bluetooth ANC headphone, the Beoplay H9, which sounds punchier, tighter, brighter, and more exciting than the Sony WH-1000M4. I have three non-Bluetooth headphones that sound better than both the Beoplay and the Sony, too1. I have tried to EQ the Sony via its iOS app, but I have found no preset that I constantly prefer.
  2. The active noise cancellation has an audible hiss and creates a bit of ear pressure. The hiss is disappointing. You don’t notice it during music, and probably won’t notice it in loud conditions where I would use these headphones, but it is annoying during podcasts or TV shows.
  3. Active noise cancellation does not live up to the hype. I actually use ANC headphones a lot in my home office because they remove the drone from the window air conditioner I use when it gets hot. Sadly, I found that the Sony WH-1000M4, with its industry-leading ANC, blocks that noise no better than the Beoplay H9, which is an also-ran in the ANC space and has essentially no passive noise cancellation in its earcup design.
  4. They aren’t that comfortable. My biggest problem with the BeoPlay H9 that I already had is its hard headband, which hurts my head after a while. The Sony headband does the same thing, despite the headphone being lighter and the headband being covered with softer material. The AirPods Max headband is very comfortable, but its clamping force borders on the extreme, so I probably would find it uncomfortable, too.
  5. While their moving parts are silent, the faux leather ear cups creak and squeak when I move my head. It is infuriating. I have no other headphones that do this.

I probably should have returned the Sony WH-1000M4 while I still had the chance. While I do expect to use them during walks on the treadmill and for plane travel in the future, I find that I almost always choose the Beoplay H9 over them for my everyday home-office-with-the-air-conditioner-on listening.


  1. I realize that part of my problem is that I have too many audiophile-quality headphones already. If I were comparing the Sony WH-1000M4 with my aging (non-Pro) AirPods, I would probably think they sound great. ↩︎

Thinking about my next role at work

I spent nearly all of my writing time this evening drafting a job description for the Senior Data Analytics Manager job I hope to be promoted to, sooner or later, at my firm. I feel good about what I wrote, which describes the specialist position that I have carved out for myself at my company, but I’m running it by a couple mentors for feedback anyway. I had a great year at work this past year, but promotion is by no means guaranteed. I am hopeful, though, that I will earn it soon.

I am trying the no-case lifestyle again with my iPhone 12 mini. I am pretty sure my case is the reason why wireless charging is so flakey. Let’s see how long I can go before I drop the slippery thing.

Generating dummy data with Python

Today I learned a good way to generate dummy data for use in the data analysis training I am going to perform next month.

While there are services like dumbdata.com that can produce dummy datasets without requiring any programming at all, those tend not to work for me. My data needs are domain-specific. I don’t just need random names and addresses and things like that; I also need specific columns, including some inter-related financial data columns, for a dummy dataset to make sense to my audience.

I have been using Python a lot lately, so naturally I wrote a Python script to generate a table full of randomized, but real-looking, data. First I used petl’s dummytable command to create a base table full of randomized identifier numbers, dates, data categories, and dollar amounts. To generate real-looking data for that table, I used functionality from the Faker package and from the standard random library, including Faker.date_between and random.choice. Then I used petl’s addfield to add some fields with calculated and inter-related values. Next, I used the petl cut function to re-order a subset of the table columns and prepare them for export. Lastly, I used the petl toxlsx function to export the data to Excel.

It was surprisingly easy. Not having to write any of the functions to randomly generate the data or pick random selections from value lists made the process far quicker than it otherwise would have been. I wish I had known about these tools the last time I created a data analytics training demo.

I am starting to write a job description for what will be (I hope) my next job—or at least my next job title. As a start, I am researching all the other similar job descriptions from open job postings. I hope I can cobble together something good by the end of the week.

I finally caught COVID

My blogging interlude this month has been brought to you by COVID-19.

For a long time I didn’t know I had it. It entered my house just as peak tree pollen season started, and its symptoms mimicked my springtime allergy attacks.

At present, I am still getting over it. I hope to feel 100% by the end of the month.

My seasonal allergies have been worse this week than they have been in years. I can’t think straight. I’m hoping pollen season ends early this sprint. 🙁

Working Late

Because I seem to get far less done in the daytime hours than I think I should, I found myself working late tonight. I created a short presentation on data validation using Python. I dared to include a tiny bit of source code in this one. It will be fun to see how that goes over.

Ah (Choo!), Spring

I did bit enjoy being in an allergy-induced brain fog all day. My son’s allergies are much worse than mine. He is too little to willingly take his allergy medication, which makes helping him difficult. My wife identified a bush near our front door that flowered for the first time I years, and seems to be a major source of our allergies. She is wants to get rid of it, which is understandable, but it hard for us to do quickly enough for it to matter.

I’m writing my self-evaluation tonight for work. I’ve blown past the suggested length, but hope it will be OK. I’m that good, after all. 😀

Annual Reviews Are a Terrible Way to Evaluate Employees

Of course, on the weekend I have to write my annual self-evaluation essay for work, I read this article in the Wall Street Journal by Marcus Buckhingham. He spells out the problems with the annual review process:

The failings of the annual performance review fall into three broad buckets:

They are too infrequent. They are dehumanizing. They are irrelevant to real-world performance.

For years I have complained to my “performance advisors” about the absurdity of the annual review process. Part of the problem is that goals—even SMART goals—are often unachievable because priorities, projects, and clients change over time. Another problem is that too much time is spent ranking employees, which leads to an outside focus on areas of improvement. Not enough time is spent highlighting areas of strength. Imagine how empowering a performance review would be if it was focused on what employees are good at and on finding ways to let them do those things even more.

I thought this detail, from deep in the article, was especially well-observed:

Workers want attention, not feedback, and mostly attention on where they’ve shown glimpses of something good, and how they might show more of them.

Over the past two years I have cultivated a much better attitude about performance reviews. I believe that the managers at the various companies I have worked at want to do the right thing with performance reviews, and are doing the best they can with the tools they have available. I think the problem is that the wrong tools are being used—and have been being used, for my whole career, at every place I worked. The reason for that is that how performance reviews are performed has been baked into general workplace culture. It’s pretty much the same everywhere; blame the MBAs and management experts who developed the general processes and the ideas behind them, I guess1. No annual review process I have been a part of tries to break out of that mold and define a new culture.

In general, employers should help their employees develop their strengths and allow them to spend more time on them. It’s true that various weaknesses can and should be improved with training, coaching, and experience. In many cases, however, greater gains can be had in letting employees drop those areas of weakness and concentrate instead on further developing their areas of strength. That approach would develop the kind of employees that companies in my field want to hire: specialists with unique, world-class skills. In the market for workers, that’s what’s valuable. Why strive hard to become average in your areas of weakness when you could spend equal effort to become truly great at something?


  1. I’m an MBA with a concentration in management. Maybe I’m part of the problem. ↩︎

Crypto is winning, and Bitcoin diehards are furious about it.

Elizabeth Lopatto’s account of the Bitcoin 2022 conference in Miami Beach is a rollicking and chilling account of a conference that is supposedly centered on the granddaddy of all cryptocurrencies, but is actually centered on the number one right-wing hobbyhorse: grievance.

I’m at Miami Beach, in weather so hot and humid it feels like being inside a mouth, to try to get a sense of the vibes. I’m uncomfortable because of the heat and also the flashes of antisemitism. Tucked in the back of the expo floor, a painting for sale shows Tintin in a brown shirt with a Bitcoin logo on his sleeve, making a Sieg Heil salute. Another booth sells a T-shirt depicting a group of men sitting at a table with a pile of money in the middle, which is held up by human bodies; behind them, the pyramid found on the back of the dollar bill, with its Eye of Providence, looms. No one appears concerned.

I found it interesting to learn that there are Bitcoin diehards out there—the Bitcoin maxis—who absolutely hate crypto, NFTs, and any other blockchain technologies that are not Bitcoin. Stoking their fire—propping up Bitcoin at the expense of other, competing blockchain-based assets—seems to have been the main point of the conference.

I must admit feeling more than a little schadenfreude when reading about how half-assed the conference was, and how off-message some of its high-profile speakers were. We should expect nothing more from a grifters’ convention.

🎮 Knotwords: A New Word Game From Zach Gage and Jack Schlesinger

Today I found out about a new game by Zach Gage and Jack Schlesinger, who created one of my favorite iOS games, Good Sudoku. It is a word game called Knotwords. Playing it is a little like playing crossword constructor. You fit letters into an empty crossword grid so that they make words. The tutorial and first few levels are very easy, but the game gets more challenging—and more fun—once you pass them. I am enjoying it so far, though I have not yet decided if I will purchase the full version.

Henry Winkler Breaks the Curse of Stardom

Yesterday, The New York Times published a very well-written profile of actor Henry Winkler written by Matthew Klam:

When the producers of the HBO series “Barry” asked Henry Winkler to audition for the role of Gene Cousineau, they assured him that he was on a short list. Winkler said he was willing, as long as the list didn’t include Dustin Hoffman. “Because he’s a movie star. He’d get it. If Dustin was on the list, I wasn’t going in. They said no. I said OK.”

There was no particular reason to think the two-time Oscar winner would be up for the same part, but Winkler can be forgiven for indulging in a little paranoia. Across the span of his 50-year career, he has had some highs — 1970s pop-culture saturation to rival “Star Wars” and the music from “Jaws” — and lows, including a long stretch where he couldn’t get hired, filled with the sense that he’d been typecast into oblivion.

Years ago I listened to a long interview of Henry Winkler on The Nerdist podcast1 that opened my eyes to how warm, generous, and philosophical Henry Winkler is. This profile provides some insight into those qualities, and also takes a deep dive—deeper than I would normally expect from a newspaper article—into Winkler’s audition for, and his acting in an early scene, in Barry.


  1. I think it is gone from the internet now, unfortunately. ↩︎

All billionaires are oligarchs

Leo Laporte, on this week’s MacBreak Weekly podcast, said that he is going to start calling Elon Musk an oligarch rather than a billionaire. I found that very interesting.

For some reason, we reserve the word “oligarch” for very rich, powerful men in Russia, but I think it may be an apt term for any billionaire. Having that much money certainly grants a person outsized authority and autonomy. Each company Elon Musk owns controlling stake in must feel to him like a fiefdom in which he can do whatever he wants.

“Oligarch” has a pejorative connotation, which gives me pause when I think of applying it to a wide selection of people. However, I think the stink of it is deserved even for the billionaires that we like. People cannot accumulate wealth at such an unimaginable scale without having some form of moral stain on their characters.

When I used Mac OS 8

Seeing Mac OS 8 emulated in a web browser today brings back some pleasant memories of my years as a Mac tech in college. Most of the machines I worked on for that job ran OS 8 or OS 8.5, which to my Windows-centric mind were beautiful and fun to work on.1

For two years, I worked in the theatre building with one of my best friends. We were in charge of keeping the theatre professors’ computers—and almost all of the computers in student areas, working. That entailed defragging hard drives, installing productivity software, setting up backups, installing RAM, replacing laptop keyboards, performing OS upgrades, and so on.

When I first got the job, I had never even used a Mac before. The only Apple computers I had ever touched at that point were the Apple II and Apple IIGS in my middle school and high school, which I had used almost entirely for word processing. I would not have gotten the job if my friend had not vouched for me during the interview process. It turned out that my experience messing around with Windows software (warez mostly, at the time) and reinstalling Windows every six months after inevitably bogged down, made me somewhat overqualified. If anything, fixing problems on a Mac was a lot easier than fixing similar problems on my PC.

My friend and I—and eventually a third person who I only met a few times—whipped the theatre building’s computers into shape within about a year. In my last year of college, the job became a make-work job for me. I set my own hours and did largely whatever I wanted to. People approved of my work, but a lot of it probably didn’t need to be done.

That year, I spent many hours working in FileMaker Pro to build a sophisticated inventory system for the theatre’s hardware and software. I was a bit obsessive about it. Some nights I couldn’t sleep because I was thinking too much about solving programming- or database design problems. Well after midnight, I would get out of bed, walk across campus to the theater building, find my way inside2, and program in my little office for hours.

Meeting those theatre students—most of whom I would never have crossed paths with if not for this job—was one of the pleasures of working there. I remember that grad students were especially friendly and chill; they seemed like students from a completely different school than the competitive, stressful one I attended. The best part of the job, though, by far, was that I got comped two tickets to every show at the theater—whether they were student productions or professional ones. I went to every single show, which otherwise would have been far outside of my budget, and loved almost all of them. The experience kicked off a life-long love of theater…and of Macs, too, of course.


  1. A few of the older Mac in the building ran the last version of System 7 and had monochrome monitors. Even then they seemed like relics. Still, I learned a lot about Hypercard on them, so I have a soft spot for them, too. ↩︎

  2. After hours, the theatre building was always locked. If you worked there, though, you knew how to get in. Even after midnight, there were often students doing theatre work inside, and none of them were supposed to be there, either. ↩︎

📺 I rewatched all of Barry over the past week, and watched the first episode of season 3 tonight. So far, season 3 appears to be off to a fine start.

Elon Musk acquires Twitter for roughly $44 billion

Douglas MacMillan, Faiz Siddiqu, Rachel Lerman, and Taylor Telford reported today in The Washington Post:

Elon Musk acquired Twitter for $44 billion on Monday, the company announced, giving the world’s richest person command of a highly influential social media site that serves as a platform for political leaders, a sounding board for experts across industries and an information hub for millions of everyday users.

The acquisition followed weeks of evangelizing on the necessity of “free speech,” as the Tesla CEO seized on Twitter’s role as the “de facto town square” and took umbrage with content moderation efforts he views as an escalation toward censorship. He said he sees Twitter as essential to the functioning of democracy and said the economics are not a concern.

There have been only a handful of world’s richest people in my lifetime. Of those, Elon Musk is my least favorite. While he has done some good for the world, I find his public persona exhausting. He acts like a juvenile troll who plays to the cheap seats. His credibility in geek circles as a real-life Tony Stark is almost completely unearned. He just seems irresponsible, childish, and awkward to me—the ultimate dog that caught the car.

Last week, I thought that Musk’s hostile takeover offer was mere trolling, or maybe a means to drive a pump-and-dump scam on the sizable share of Twitter stock that he recently purchased. Now that he and his backers have bought the company proves me wrong, at least in the short term. Still, I have no faith in him making Twitter more successful than it is now. It is a company that I think found its level and is destined to stay there. I think that Twitter’s board decided the company’s value would never—at least, within a reasonable timeframe—appreciate to the 20% over its stock price that Musk offered. In that position, I would have taken the buy-out, too.

I can’t even remember when I last logged into my Twitter account now, so the change in ownership will not directly affect me, but it will likely indirectly affect all of us in some way. Musk’s championing of “free speech” and openness on the platform sound like right-wing dog whistles to me, which makes me nervous (more nervous) about the future. In general, the best thing we can do collectively is leave Twitter and publish and correspond elsewhere—preferably on platforms that are not owned by amoral billionaires.

Feeling old

Playing basketball with my kids this weekend and moving a bunch of unwieldy deck planks around my property today made me feel old in ways that I was not expecting. I am not sure how to get back into shape at this point, because I have been away from strenuous exercise for so long, but know that I have to start out slowly.

I realize now that I’m writing my blog for my children. A body of work—even a body of an unimportant, inconsequential work—is a better thing to leave behind than nothing at all.

Jazz music is tolerated by my children

To my amazement, my kids seem to like jazz. By “like”, I mean don’t seem to mind, which I will consider a win. They don’t mind when I play John Coltrane (who is one of my favorite jazz musicians) on the kitchen smart speaker. They don’t blink an eye when albums like Jazz at the Pawnshop or Kind of Blue are playing. Today, I put on a Louis Armstrong playlist during breakfast, told my kids about him while I was playing, and my daughter expressed actually excitement about it. She told us that had learned a little bit about Louis Armstrong in school.

Playing jazz at some of our family mealtimes started accidentally. One evening I was too tired to think of anything to listen to while cooking dinner, so I told our Amazon Echo speaker to play “cool music”. I thought it would return a playlist of avant-garde pop music or underground dance- or world-music artists I haven’t heard off. Instead, to my surprise, Alexa cooly replied, “Now playing cool jazz on Apple Music.” I thought that was hilarious. I grew up thinking that cool jazz music was terrible, hopelessly lame easy-listening crap, which is the furthest thing from “cool” you could imagine. It turned out that my wife and I kind of liked the cool jazz playlist; it made for pleasant background music. More importantly, the kids didn’t ask for it to be turned off immediately.

Since that accidental discovery, the breadth of jazz that I put on for them has increased dramatically. I think this is a great development because I grew up in a house without music, and had to learn about all the different genres on my own. I am still trying to work on introducing my kids to classical music, but that has been a much harder sell.

Prepping my old MacBook Pro for my son

My five-year-old son is really into coding. He doesn’t know how to do anything yet, but he wants to learn. Currently he plays around with Swift Playgrounds a lot on his iPad (which is a little too old and slow to run it properly). He also orders his grandfather to program a collection of JavaScript games, utilities, and other doodads for him on a personal website. I’m going to start him on Scratch and Swift Playgrounds on the Mac. Because he is very interested in websites, I promised to introduce him to HTML and “Hello World!”-level JavaScript.

To get the ball rolling on this endeavor, I decided today that I will let him borrow (or use most of the time) my 15” 2013 retina MacBook Pro. It’s a little too big for him, screen-wise, but it’s the only machine I have. Tonight, I spent a half hour prepping it for him. Tomorrow, I plan to get NextDNS set up for web content filtering, and also to explore what other safeguards I can put on the machine to keep him out of trouble. He has a history, believe it or not, of setting up accounts on internet services and contacting the companies via web forms or email. I locked down his iPad, but he started to find ways around it today. I know I will have to keep a close watch of him.

I know he’s going to love using a real computer, not only for programming, but for Pages, Garage Band, and Photos as well. I hope that things go well.

A keynote address

This morning, my presentation group and I presented our InsurTech webinar for a third time. This time, our audience was a group of insurance regulators attending an in-person training seminar. We presented remotely to a large room that none of us ever saw. From our side, it was the same as presenting a webinar, except we got even less feedback from the audience until the Q&A period at the very end.

Because we were the last presentation of the entire seminar, I called it the keynote address, which my group appreciated. I’ll be sure to remember that term when it comes time to brag about it for my annual review.

📺 Netflix canceled my daughter’s favorite show, The Baby-Sitters Club. I haven’t broken the news to her yet, because it would crush her. Consequently, I don’t feel too bad that Netflix has been beaten up by Wall Street this week.

A hastily built presentation is better than nothing

Last year I told myself that if I have the opportunity to present to somebody, I will always create some visual aids to complement what I say. It’s an easy way to differentiate myself from my peers, who rarely make slide decks unless they are training clients. It also shows that I’m well-organized and a structured thinker.

I found out today that I can build a good-enough slide deck in about ten minutes and present it right afterward. Half an hour before a team teleconference today, I was asked to present on a technology topic to my team. I said yes, then dropped everything for about ten minutes to create a brief slideshow on a technical topic of my choosing. I decided to share with my group how I started using Python to automate data validation. Because I am the only Python user in the group—which is not a technical group—the idea was entirely new to them. This allowed me to keep my presentation brief and high-level, while still being informative.

I normally spend many hours working a slide deck. Much of that time spent brainstorming visual designs, arranging objects to build diagrams, and revising slides to make them more concise and more visually appealing. Today, I had no time for any of that. Instead, I turned to PowerPoint’s Design Ideas feature, which automatically formatted my text and the one image I imported (the Python logo) into six presentable slides. I selected a theme with a dark background and light text—which is the opposite of our company’s slide template—to make everything pop. Then I finished up by changing a couple of the PowerPoint SmartArt shapes from what Design Ideas had applied. The result was inferior to the slide decks I painstakingly assemble, but it was far better than nothing, and nothing was my competition, after all.

I hope that showing good presentation skills time after time will help me move up into a more senior position eventually. It’s just one thing I’m working on to get there.