Fixing “Media kit reports not enough space on device” error in Disk Utility

I got this error today when trying to partition a Western Digital My Passport 4TB:

Volume erase failed: Media kit reports not enough space on device

Nothing I could do inside Disk Utility worked. Thanks to some kind soul on Reddit, here is how I solved the issue from the command line:

$ diskutil list
$ diskutil unmountDisk force disk2  #replace disk2 with your disk number

and then write zeros to the boot sector:
$ sudo dd if=/dev/zero of=/dev/disk2 bs=1024 count=1024

Attempt to partition it again:
$ diskutil partitionDisk disk2 GPT JHFS+ "My External HD" 0g

My Inbox Clearing Method

Like many, I’m all about that Inbox Zero life. I’m not going to preach here about it. You’ve heard enough of that elsewhere. I’m going to show you how I get it done.

Winning Before Starting

I like to set myself up for success whenever possible. What that looks like here is severely limiting the amount of inbound email I get. Fewer incoming messages means fewer messages to process.

  • I am ruthless about unsubscribing to unwanted emails. I am only subscribed to seven newsletters, all of which I get value out of regularly. I immediately unsubscribe from sales and marketing emails I get after buying stuff online. If I have to give an email address on a website, I add “+promo” to the end of my address and use a rule to automatically send it to the trash.
  • For important day-to-day questions and messages from coworkers, we use Slack.

These few things cut my email volume by 80%. The remaining 20% is primarily important, valuable, or actionable: Emails from clients, customers, friends, and family, important notifications, and interesting newsletters that I actually read.

Method

  • I primarily process email on my 10.5″ iPad Pro using Spark or Airmail. I switch back and forth between the two every few weeks. Emails I can respond to immediately, I do. Emails that need further action get added to my to-do list. Both have a key feature that is critical to my workflow: The Share Sheet. This allows me to take an email and put it as a to-do item in my favorite task manager with a few taps without switching apps. As soon as an email gets added to my task list, it gets archived. The task includes a link directly to the email so I can get back to it quickly if needed.
  • On my Mac I also use Spark and Airmail, switching to whichever one I’m using on my iPad at the time. Both have widgets that allow me to share the email to my favorite task manager.
  • I use Things 3 as my task manager. Tasks that I share from my email get put into a holding zone (also called the Inbox), which I process and assign a due date and put into the correct bucket twice a day. Things has my definitive task list and I use it as a launch pad for planning my day each morning.
  • Every Monday I set my plan for the week and send it over to my boss. Because I’m not dogmatic about maintaining Inbox Zero every single day, I clear it out on Monday mornings before organizing my task list for the week just in case something in my email needs to go on the list.

That is it. This is consistent for me because it is tied to a concrete weekly deliverable: My weekly check-in with Isaac. In order to give an accurate representation of my priorities and tasks for the week, I must clean out my inbox first. I leave myself no choice in the matter, because if I did, I’m likely to ignore my inbox and let it get out of hand.

Notes on how React and Angular work

I got this question from a Praxis participant last night: “Hey Chuck quick general question: do frameworks like angular and react compile to JS? How exactly do they work?”

Here is my response:

This took me a little research because I didn’t quite know. Here is what I found: First, React is a library and Angular is a framework. Seems like a small distinction, but it has big consequences. See this link: https://stackoverflow.com/questions/148747/what-is-the-difference-between-a-framework-and-a-library

If you write React in plain javascript, everything should run as-is. If you write your React code in JSX, babel first finds the JSX, parses and generates the corresponding javascript code, then evaluates it. The big-picture of React is that it is kind of like the view layer in MVC, with a few more bells and whistles added. Everything renders to a virtual DOM first, which is significantly faster than the real DOM. Changes are then compared with the real DOM and then the differences are sent to the real DOM.

It looks like you can write Angular code in javascript or Typescript (which then compiles to javascript). Here is a great high-level architecture overview of Angular that explains how it works: https://angular.io/guide/architecture

A Week with AirPods

I’ve had Apple’s AirPods for a week. Here are my impressions so far:

Getting them

  • The back order is a real bummer. I bought these the same day I bought the 10.5” iPad Pro, but I had to wait a month and a half to get them. Two days after getting them, Amanda tried them out and loved them, so I ordered another pair for her. Those don’t ship until some time in September.
  • The inside of the beautiful white case had dust in it when I opened it up for the first time. Not ideal, but I bet they are just cranking them out as fast as possible to fill demand.
  • I first thought that one of the plastic seams on my right bud was misaligned. It isn’t exactly the same as the seam on the left. But the more I look at the renderings, the more I think there is supposed to be a ridge there, so I’m note sure.

Using them

  • I’ve used them for podcasts, audio books, music, phone calls, and video chats.
  • The battery life is good enough for me and I just diligently pop them back in their case (and plug it in) when not using them. I work from home, so I don’t wear headphones all day. If you need to wear headphones all day, the battery life might not be up to par yet.
  • They are great for workouts and walks. I’ve done a few Starting Strength workouts with them and Amanda went for a run with them and they stayed in without an issue.
  • They are so much more comfortable than the wired earbuds that come with the iPhone by default. They look similar, but you can wear these for hours without discomfort.
  • Tapping twice for Siri works well, as does pulling one out for pausing.
  • Siri’s control of third-party apps like Overcast and Audible is still lacking. I liked that Overcast was able to hijack the control buttons on the wired headphones to fast forward or rewind. If there are special voice commands for this that I haven’t figured out yet, please drop me a line.

Sound & Sync

  • The sound quality is pretty good, or at least it is good enough that I can’t notice anything negative about them. I’m not an audiophile, but I can definitely tell crappy sound from good sound and these make the cut.
  • Connecting them to other devices is super easy. Flip open the top on the case, tap the button on the back, and tap the button on your closest device. I also thought it was interesting that I tried to pair them with Amanda’s iPhone by going to the Bluetooth settings after pairing them with mine and I got a message on-screen saying that these are paired with someone else’s phone and I’d need to pair them using the case. It is good to know that someone on the train can’t hijack my audio.
  • During about 15 hours of listening over the past week, I noticed temporary sound glitches about 5 times. Each time the phone was in my pocket, so it wasn’t a distance issue. It must have been either a sync issue or some sort of interference. None of these lasted for more than a second, but it was enough to be noticeable. Still, this is better than every other Bluetooth headphones I’ve tried. I’m willing to overlook it given their convenience.
  • I’d love if these could adjust volume to compensate for ambient sounds. Walking by loud areas like construction sites or having semis/busses roll by sometimes drowns out the sound entirely.

Overall

  • They are very good, but they aren’t perfect. I suspect that v2 is going to be amazing whenever it comes out.
  • They are ultra portable, so I don’t think twice about tossing them in my Tom Bihn Small Cafe Bag whenever I go somewhere. Before these, I’d have to choose between wired headphones or my heavier backpack if I wanted my wireless noise canceling headphones.
  • Even though I love noise canceling headphones while on planes, I’m going to take these on a trip next week instead of the larger set to see how it goes. The portability tradeoff is too enticing. I like traveling light.
  • Despite the few audio glitches and inability to drown out ambient sounds, these are now my daily use headphones.

Three Weeks with the 10.5” iPad Pro


I bought the 10.5” iPad Pro the day it was announced and received it the following Monday. My old Gen 3 iPad didn’t support multitasking, Touch ID, iOS 10, or True Tone. Basically nothing that makes an iPad awesome for work. It was getting pretty slow and desperately needed an upgrade. I’m super happy with the new iPad Pro. Here’s what I love about it after the first three weeks of use:

  • It is really snappy. I mean really snappy. Even faster than the previous generation.
  • Multitasking and split view is wonderful. I take notes while reading, do research while chatting with my coworkers on Slack or answering questions on Facebook Workplace, grab links while I write blog posts, and pop out videos to watch while I open brainstorm in another document.
  • Using Touch ID to unlock my iPad and authenticate 1Password on it really speeds things up. I didn’t realize how much I used it until I switched back to my old iPad and went without it for a bit.
  • The Smart Keyboard is very easy to type on. It took all of an hour to adapt to. I love it.
  • True Tone makes it possible to use this screen outside, even in the sun. I’m sitting out at a park right now writing this. As someone who works from home, this is a game changer. I now work outside for multiple hours each day, weather permitting. My old iPad and my MacBook Pro are almost unusable outside.
  • Swift Playgrounds is a fun little puzzle game when I need a distraction.
  • The speakers in this are great. They blow my previous iPad out of the water.
  • iOS 11 (I’m on Public Beta 1) really does make iOS easier to navigate and use. The new task switcher screen, control center, and dock make flipping between apps and navigating around the system a breeze. 
  • Taking screenshots and being able to mark them up or use them immediately is super useful. 
  • The slide down for numbers/symbols on the on-screen keyboard is very intuitive and easy to use. That said, I primarily use the Smart Keyboard.
  • I love the trade off between portability and how much I can get done on this device. The Tom Bihn Small Cafe Bag fits it perfectly with enough room for an Anker battery pack, a notebook, my Kindle, and my keys. This setup is an order of magnitude lighter than my backpack and MacBook Pro, making walking around town and finding a place to work easy and sweat-free. 

iOS 11 is pretty sweet. That said, Public Beta 1 is still pretty buggy. Apps crash a lot when launching and closing split view, the multi file selection is really buggy and doesn’t really work on springboard yet, sometimes I can’t get split view to launch, launching Notes from the lock screen with the Apple Pencil doesn’t always work for me, and I’ve had to reboot my iPad a few times because it became unresponsive. I can’t get TextExpander to work with the Smart Keyboard yet, which is annoying. iOS 11 is also a huge battery hog. I’ve been using my iPad for three and a half hours this morning and I’ve drained 61% of my battery in that time. I’m sure it will get better over time. 

I don’t use the Apple Pencil as much as I thought I would. It is super fast on the screen with the recent updates. I plan on taking a course on Procreate soon, which might spur more Apple Pencil usage. I was really excited to use Paper by 53’s diagramming features, but the shape recognition and Apple Pencil calibration severely lacking. Linea is awesome, but I just don’t draw very much. Perhaps that will change over time. The handwriting recognition in Notes is pretty good all things considered, but my handwriting sucks, so I prefer to type. 

I could work on the iPad most of the day. There are still a few things I find it easier to do on macOS, but the list is much shorter than on my old iPad. The tasks I’ve had to switch back to my MacBook Pro for are:

  1. File conversion. I had to convert a bunch of videos from MOV to MP4 for a coworker. There is probably an app or Workflow out there to do this, but downloading and manipulating a bunch of 500MB+ files is just faster and easier on macOS connected to Ethernet.
  2. Local web development. I prefer to develop in a virtual machine powered by Homestead. There is just no iOS equivalent right now. This isn’t a dealbreaker because I have options: Connect to a remote server and use Coda to pull down files, edit them, and push them back up to test. Or I could set up a system to remote into my home computer. These are fine for hot fixes, but spending a few hours working on and testing updates is just easier on my Mac with the second 27” screen and full local environment.
  3. Meetings. Regular meetings are fine on the iPad with apps like Hangouts and Zoom, but there are two big things missing: Screen sharing and splitview while on video. If I could take notes or look at documents in splitview while on video, I’d probably do 3/4 of my meetings from my iPad. Currently, I prefer to use my Mac so that I can open multiple docs and share my screen during meetings.
  4. Updating my Jekyll site. There are a few hacky workarounds people have made to kick off Jekyll builds from iOS using git repos, but my build and deploy system is super smooth on my Mac. I’ll probably just write posts in markdown on iA Writer on my iPad, then just switch over to my Mac to build and deploy. That said, I’m probably going to switch my site back over to WordPress again soon anyway.
  5. Creating, editing, and using CSVs to move data around. I export a decent amount of stuff from our CRM to use in other systems. I almost always have to manipulate the CSVs first with bulk find and replaces before uploading. I could probably hack something together with Pythonista, Workflows, and regex if I needed to, but I prefer to just use my Mac.

What all of these things come down to is that I prefer my Mac for these particular tasks, but I’m not chained to it. I’m completely fine traveling with just my iPad for a few days. But if I’m gone for more than a few days, I’ll take my MacBook Pro. As-is, my Mac usage has dropped by at least half most days, some days more than that.

In short, I love it.

How to clean up text pasted from Google Docs with Atom and Regular Expressions

Have you ever pasted text from Google Docs onto your blog (WordPress or otherwise) and had to fix wacky formatting? Here is how to quickly strip out all those extra HTML tags using regular expressions with Atom.io, a free text editor.

Links:

After 10 years of knowing about Pixelmator for the last 10 years, I finally dumped Adobe Photoshop and made the switch last month. The hardest part has been relearning how to do certain tasks, but the tutorials and documentation are great. I don’t see myself going back any time soon.