Happy Planner

I have a paper planner problem. Maybe.

I have tried probably every todo app under the sun and they all suffer from the same fatal flaw for me: the window/tab/app gets buried and I stop referring to it. Now, if I was rich with unlimited space, maybe I’d get a monitor just for a todo app. But, I’m not! And I also embrace the small child in me who still loooooooves stickers and an endless supply of gel pens.

My basic planner method is the same no matter what the actual paper product is:

  • A weekly overview of things I need to accomplish or focus on that week along with a summary of how I felt about last week and things I’m grateful for (I think this is corny and I am here to admit that it is a nice thing to do for mindfulness).
  • A section for each day where I write down the top 3 things I have to get done that day (or more realistically, really should get done) and any other todos that come up.
  • Somewhere to take notes.

Some additional nice things to have are: tracking various kids’ activities, food management, and keeping memories.

In the layout above, I’ve repurposed some sections to fit whatever I needed, and ended up using the 3-part box that typically would be last week summary/this week summary/gratitude for some notes on my sister’s wedding instead, but it’s a good overview of how I use things. On the left there are things that really about the week or some specific item of planning (trips, in this case) that isn’t really tied to a given day. I also like to use a quote/phrase sticker down at the bottom, and eventually added a photo of an actual spontaneous girls’ night in an empty area.

On the right there’s one box where you have a line per day, and I split that in half to put my workout schedule – currently following P90X 3 – and the main meal I need to plan each day. After that there’s one box for each day of the week, where I was pretty good about writing down my top 3, if not actually getting through them. It was my first week back at work after sabbatical, I’ll forgive myself. The Saturday box is covered by another photo I printed out of a special memory I wanted to keep of that day, which perfectly fits inside the box. I use an HP Sprocket I picked up for super cheap for little photo stickers and I’m pleased with it, full price is perhaps a little steep but it’s really fun to have, especially because I only have a black and white laser printer at home.

Each Monday morning I sit down and get things mostly set up – drawing 3 circles for each day, reviewing the fridge, reflecting on the past week, transferring any continuing projects or todos, picking out some stickers, etc. I don’t really go for color schemes or any particular theme with stickers, but it’s a fun way to repurpose or define sections and emphasize things.

Top 4 priorities sticker
Planner sticker!

So how did I end up going from a dot grid notebook to this fancy thing? And what is the deal with the stickers? Well… last fall, I went to Target, as one does, and randomly picked up a pad of planner stickers that jumped out at me because they were really well-designed, nice paper, and the bulk of the stickers were for writing down your top 3-5 things to do in a cute little box. Perfect for how I set up my days!

I really enjoyed the stickers so I went online to try to find more of them and… couldn’t. Turns out they were a limited Target-specific release that I lucked upon. But it did lead me to the company and their core product – the Happy Planner. I’ll be honest – I got completely sucked in to browsing stickers because again, I LOVE STICKERS, but didn’t really find the planners all that appealing because most of them focused on more of a sticker-centric artsy layout, rather than writing on lines. I ended up ordering some sticker books to pick up from a craft store on my next trip to the US, and when I went, I browsed their planners in person and found this one with a layout and relatively understated design that actually appealed to me.

Here’s the thing: this ecosystem of products can really suck you in. There’s an entire world of YouTubers dedicated to showing how they sit down each week to do “spreads” and explaining the pros and cons of the different layouts (mine is called a dashboard layout, apparently) and flipping through sticker books and buying dedicated planner totes. I am perhaps not at that level (though turns out of my beloved friends is at the cutting-custom-stickers level so I mostly just text her about this), but I did get a couple other things that are worth mentioning.

I also picked up a pack of project planning paper in a bigger size and figured I’d try them out before committing to the whole disc-bound system. I ended up enjoying it so much I bought one of their notebooks in that size with a cover I like a lot to hold that paper. I really like being able to customize the contents of that particular notebook without it being a hardcover binder, so it currently has a combination of project sheets and regular lined paper.

And finally, besides the ever-growing pile of sticker books, I have one of their recipe organizers. I have a pretty sizeable collection of cookbooks that I use a lot, and the internet is a treasure trove, but I find myself continuing to write down favorites we make constantly and I’m tired of digging out a giant book for, recipes from friends and family, and modified versions of things that I’ve figured out over several iterations. There’s this funny orange journal I’ve had for almost 20 years that’s become the place I write recipes down (after cutting out several pages of teenage angst at the front), but I figured a structured recipe keeper that still lets me just write stuff down would marry the desire to have something polished with my preference to not futz with my computer any more than I already do. To be fair, I do end up printing the recipe names and foiling them (another post someday, maybe!), but that’s it for the computer involvement 🙂 The disc-bound system also comes in handy again there, because I’ve added a page for common weights and conversions that I use frequently and are spread out between several different books.

Anything else you want to know? Just ask! And I’m sure I’ll change my mind again 6 months from now, because I’m always trying to manage myself better.

Project planner
Bonus photo of one of the project pages, from my swipe card jukebox
Swipe card jukebox
Music, Technology

Building a swipe card jukebox using a Raspberry Pi

You know how everybody hates on recipe blogs that start posts with stories even though a) it’s good for copyright and b) stories can tell you a lot of things about humans and the why and how of their food, well if that’s you then you’re going to hate this tech recipe! Or you’ve already scrolled past this.

So. Last year, I saw this tweet:

I have never done any hardware tinkering, but I immediately wanted to make one of these for my kids. The oldest is pretty good with making requests from voice assistants, but the little one isn’t there yet and we have some other problems anyway: preferring edited or specific alternate versions, difficulty requesting things that aren’t in English, and often a lot of people in the house making a lot of noise, which leads to yelling and garbled results. (See what I did there, I defined the problems I was trying to solve for, it’s like I’m good at my job or something.)

Since I have a few Raspberry Pis I’ve acquired as conference speaker gifts, I wanted to try to use as many existing parts as possible. My first thought was that I would like to play audio through an unused Google Home Mini, but it doesn’t have aux-in and honestly I just could not decipher the documentation around Google Assistant+Actions and those type of generic names and entangled services make things highly unsearchable. I decided to go with regular audio output and figure I can keep iterating with software and/or hardware over time.

The original maker doesn’t seem to have ended up doing a write up of what he did, so I took a look at other similar things people have built. I found this blog post, which took me to their code on GitHub. Availability and pricing as well as a love for the more tactile experience told me I still wanted to use swipe cards rather than RFID, and I don’t really know Python and wanted to make something with as little configuration or dependency management as possible so I figured I was on my own code-wise. That said, that blog post gave me a general direction for approach and led me to Pi MusicBox, which also serves as the base for my player.

I finally ordered the materials off Amazon mid-December for my spouse to bring back from his trip to the US, and got to work because I only had a week to get it all done. Here’s my planner page I worked on to get a head start while I waited:

I love paper planners, this is a Happy Planner project sheet which I’m really enjoying, maybe I’ll write a post on how I use planners at some point and really become a Planner Person.

First up was testing the card reader and setting up the writer, which was not a smooth process. I had to find the writer software online, because who has a CD drive anymore? The driver took forever to finish installation for some reason, but once it got there it seemed to work. Except that the card reader wasn’t returning anything. I tried a regular old bank card (I used one for a defunct account just to be extra safe) and only got numbers, no name, even though having done my time in retail I knew my name should show up in the magstripe data. I tried writing data to a fresh card in all 3 tracks and would only get tracks 2 and 3 from the reader, or sometimes even just track 3. Seems like a malfunctioning card reader (I’ve also occasionally noticed ghost input now that the jukebox has been running for a few days). Update in 2020: I got a second card reader and it works correctly.

Because tracks 2 and 3 can only contain numbers, I decided that the best route to go would be to just encode numbers sequentially and grab that line from a list of Spotify URIs for playback. My first few tests got nowhere – successful write, but wouldn’t read. I tried finding a new card reader in person but to no avail. I tried test data again and… it worked? That’s when I realized that my test data had three numbers, so I tried putting 001 and voilà, that fixed it. After thinking through it a bit, I actually realized that this was the best route anyway – if a Spotify URI stops working, I can swap it out, and the usual ISO encoding for cards is all-caps anyway, and the URIs are case-sensitive.

I decided to put the number on all 3 tracks since the reader seemed to unpredictably read either one or both of tracks 2 and 3 and I might replace it later. This was pretty easy in the card writer software, which allows you to create cards from a file, which I generated using a quick and dirty Bash script. I also made a card with 999 as a special case for toggling playback – there is also a local web server you can access for various functionality including shutdown/reboot, but a basic toggle seemed useful for the kids.

The script itself is extremely small – it does a little Bash magic (parameter expansion!) to extract the first number it comes across, strips off any leading zeroes, and then gets the indicated line from a list of song URIs if it’s not a special case card and plays said song. I stressed about it for a long time but in the end, my first working run was less than 10 lines of code.

For labels, the initial inspiration indicated that they made a React app that pulled in the data to make printables, which is super cool! I, however, am a weirdo who despite being a programmer is still often faster knocking stuff out in Photoshop/Illustrator as opposed to writing a whole app. I also wanted to use artwork besides album covers for many of the cards so that my 2 year-old can differentiate between tracks from a Mother Goose Club or El Reino Infantil album and pick what she wants – this has already proven successful 🙂

I did not hand-make a fancy box, though I might end up 3D printing something eventually, but I did discover that some of the drawer organizers I use were a great size and are good enough for now. Here’s what I ended up with for Christmas morning:

I enjoy posting about the process of building or learning things, and I’ve had a lot of people asking me about this, so I think it makes sense to blog about the process and the result. So now that you know why I decided to build a jukebox and how I arrived at the choices I made, let’s get into the step-by-step.


  • Raspberry Pi (any model, 2+ recommended)
  • MicroSD card (1GB+)
  • Speakers
  • WiFi adapter if needed for the Pi
  • Magnetic stripe cards (mine)
  • Magnetic stripe card writer (mine)
  • Magnetic stripe card reader that emulates keyboard input (mine, the first one I had so you can avoid that one because of the issues)
  • Spotify Premium account (protip if you have kids: use a family account and set up individual accounts for devices so you don’t run into playback limitations and you keep your recommendations somewhat more sane, I name them things like Alexa so if you ever see a reference to an Alexa Sandí associated with me please know that is not my actual child and somebody has sold or stolen my data)
  • A computer that can flash SD cards, run the card writer driver and software (I’m on a 12″ MacBook), and if you want to use my templates, access Adobe Illustrator
  • USB keyboard and HDMI monitor for initial setup (I used my Magic Keyboard with a cable and a TV)
  • Whatever you need to print 2×3″ labels (I had them printed onto adhesive sheets at Office Depot and cut them to size myself)


  1. Set up Pi MusicBox. I found their documentation to be perfectly adequate, just note that when setting up Spotify you have to authorize and generate tokens that are copied into the config file.
  2. Boot up the Raspberry Pi with the card reader plugged in and log in. Test Spotify playback by running mpc add spotify:track:7GhIk7Il098yCjg4BQjzvb && mpc play
  3. Optional but recommended: fork my GitHub repo so you have your own copy and can keep your song list edits there. After forking, be sure to edit jukebox.sh to point to the songs.txt in your own repo.
  4. Run curl https://raw.githubusercontent.com/helen/swipe-jukebox/master/jukebox.sh > jukebox.sh (substitute in your own username if you’ve forked the repo above).
  5. Set root to auto-login on boot and /root/jukebox.sh to run after login so the setup can live headlessly going forward. These instructions work well, noting that the user for MusicBox is root, not pi.
  6. Run bash jukebox.sh; this will download the song list referenced in the script as songs.txt. Enter a number like 1 at the prompt that says Swipe: to ensure the script is working as expected. If you want to quit the script, hit ctrl-c.
  7. Edit songs.txt to your liking. I have found the easiest way to do this is to create a Spotify playlist and then select-all, right click, go to the Share menu item, select Copy Spotify URIs, and paste the result into the file. I also decided to paste the results into a Google Sheet along with the titles and artists extracted using a playlist converter tool so I have them conveniently numbered and saved separately.
  8. Encode the cards. I found the easiest way to do this was to write them from a file, which just loads up each record sequentially and writes it to the next card you swipe. There’s both a sample file that goes up to 250 in the repo, as well as the Bash script I used to generate that file in case you want to go higher or if you get interrupted and need to make a subset. I wrote the number for each card on the back and also tested every card in the reader after writing, which at this point should trigger the appropriate playback.
  9. Create the labels for the cards. I recommend you make them 2″ x 3″. There is an Illustrator template in the repo for those of you who are graphically-inclined. The intended artwork area is 1.5 inches square.
  10. Print the labels for the cards and stick them on – I tested each individual one again before putting the label on because I am extremely particular, but if you make a mistake it’s fine, you can change the order of the URIs in the songs.txt file (and your playlist, if using one).
  11. Shut down the Raspberry Pi – I find it easiest to do this by navigating to the web interface (typically at http://musicbox.local).
  12. Box everything up and plug it in again to test the whole experience. When it’s headless, you’ll want to wait a minute or two for the green light to stop blinking so much for everything to be ready to go.
  13. Enjoy!

If you build one, please let me know! I’d also love to hear any tips or tricks or issues you come across if you try following along with this – I’m a software developer, as far as I’ve ever experienced there are always going to be bugs 🙂


Looking back on 2018

Something I’ve been thinking about a lot lately is how for all the (terrible) posting I do online, I still consider myself a relatively private person. Knowing where I went to high school and when I graduated isn’t going to help you figure out my passwords or security question answers anyway, but I don’t mean that kind of privacy. Specifically, I avoid sharing anything that I feel could be weaponized against me and/or my family. Things like my hopes and dreams, my kids’ faces and names, the ins and outs of my relationships with friends and family. Which means I think you’ll find all of one annual introspection post from me from several years ago – I love reading them from other people and celebrating their accomplishments with them across the internet, but I generally don’t share back.

2018 was a big year for me though, and really what I’m doing right now is writing a post so that I can unpack it all for myself before deciding whether I’m comfortable sharing about it. Here we go.

Continue reading

What’s in my laptop bag, 2018 edition

Back with an update to my unapologetically-feminine tech-oriented “what’s in my bag” post. The laptop itself hasn’t changed, but the bag definitely has! All together, this weighs about 12 pounds. Previously, from May 2016.

  1. Senreve Maestra bag in blush: Kicking it off with my most major upgrade from my last post is this gorgeous leather convertible satchel. What makes it convertible? Well, the straps can be pulled through the hardware loops to go from a shoulder/crossbody bag to a backpack. It’s pretty pricey (even pre-loved, which is how I got mine), I’m not gonna lie, but if you’re like me and you like your things to be both extremely functional and look a certain way, it’s one of the very few options we have. The materials are sturdy but luxe. I don’t really know what else compares to this bag out there – aesthetically it kinda makes me think of the Céline mini belt bag, although much more functional and not $2,500.
  2. Rose gold MacBook 12″ with marble decal and color-matched rose gold keyboard cover: Some days I can feel this little 2.5 year old machine start to drag but the portability still has me hooked. I recently put on a marble decal to tone down the amount of rose gold/blush in my kit and also because I just like the way it looks. Meanwhile, the keyboard caps are starting to wear out and also the keyboard just kinda sucks anyway so I put a cover on it. It looks okay. I have to talk myself out of going to check out the new MacBook Air.
  3. Laptop sleeve: This was a random Amazon find and I have yet to see a laptop sleeve I like better. I actually really like the feature to fold the flap and use it to prop up your laptop for ventilation and a better typing angle.
  4. iPad Pro 10.5″: This is such a nice device. I don’t want to know if the new 11″ is better, I’m not upgrading 🙂 I can actually get away with doing a lot of my work on the iPad, like Slack-ing, writing docs, and doing code review. It’s also wonderful for sketching out thoughts and way easier to port around the house or take with me on day trips just in case something comes up.
  5. Apple Pencil with magnetic sleeve and cap holder: I love this device and the accessories are super helpful IMO – the cap holder keeps that tiny little cap from getting lost, and the magnetic sleeve holds it in place on the edge of the case/iPad and further prevents the thing from rolling everywhere. I also find it more comfortable to write with.
  6. Planner: This is the closest I’ve found to a layout that works for the way I work through things, short of making my own which I don’t want to do. I repurpose some of the sections as I need, although maybe it wouldn’t hurt for me to do some gratitude practice.
  7. Small unlined notebook
  8. Anker PowerCore+ 20100 USB-A+C battery pack: Crucial for charging while on the move. This one holds enough juice for a bunch of phone and iPad charges and is enough to keep my laptop running, if not charging during use.
  9. USB-A+C wall adapter: Why is it so hard to find a good high-speed USB-C and USB-A wall adapter without extra cords? I have no idea if this one is really made well or anything but my MacBook reports an very fast charge when using it and it’s nice and compact.
  10. Presentation remote: Simple but it requires a USB dongle so I should probably upgrade this to Bluetooth at some point. I don’t really walk around when I present so it’s not critical for me. I’m pretty sure Nacin had it in his possession for two years and returned it to me by sneaking it onto my home desk.
  11. Satechi USB-C hub: It’s rose gold! But also it works fine. I don’t use it very often. At my desk I have a USB-C monitor with USB ports on the back, and when I’m out and about I only really use this for presenting over HDMI.
  12. USB-C cable: I am pretty sure this is the one that came with the battery pack. Don’t think it carries data.
  13. Lightning cable
  14. Kindle Paperwhite with case: I love books and I love this case because it folds up so it can stand on its own, perfect for my favorite time to read: while eating alone. When you have small children, eating leisurely by yourself is a huge treat.
  15. Chocolate: I always need chocolate when I’m traveling, which is what I’m usually doing when I actually carry this bag. Right now I am really enjoying these dark chocolate + hazelnut bars I picked up at the grocery store, but Ritter is typically my go-to. Or if I’m in the mood for extra sugar, 100 Grand bars.
  16. Bag organizer: The last one I had was great and not all that dissimilar, but this one is definitely an upgrade. Most of the small items besides my wallets go in here (see picture at end of post), and it has a bottle holder. It also happens to match the inside of my bag very closely 🙂
  17. Pouch: I change this up sometimes, pictured is something I got from a family member so if you’re looking at it wondering “is it really…?”, no it is probably not (if you know, you know). Anyway, this is bags-in-bags-in-bags level because being organized soothes me. I like this one because it’s just the right size for more pens, but sometimes there are also pouches holding makeup or other random objects I need for that particular outing.
  18. Card cases: The black one is a slim one that I keep my main cards and a few bills in, and the orange one holds other cards that I don’t need to carry around with me for most daily activities.
  19. USB to lightning/micro-USB mini cable: I picked this up randomly at a Container Store (my happy place). I have yet to actually try it but it seems handy!
  20. USB flash drive: Sneakernet, still a handy thing.
  21. USB-C to USB-A adapter: For when a hub is overkill. This one seems to work well.
  22. 10up enameled pin: For subtle brand exposure.
  23. AirPods with case: I know it’s been said a million times now but seriously, AirPods are a magical product. I keep mine in a case because a) my spouse also has a pair and b) it adds enough grip that it stops falling out of pockets inside my bags. This case happens to glow in the dark but I don’t think I’ve ever actually needed that part. Electrical tape also makes for a cool-looking DIY grip.
  24. Regular EarPods with 3.5mm plug: For my computer, for calls or needing to listen to something in a noisy environment.
  25. Screen cleaning cloth: I absolutely cannot stand having a dirty screen.
  26. Rose gold lanyard/necklace: I got kind of annoyed at the clashing of the WordCamp blue lanyard with an outfit I was wearing and searched for “rose gold lanyard” on Amazon. I was not disappointed. Looking forward to wearing this one instead.
  27. No-slip grip hair ties: Still the only hair ties that actually stay in my hair.
  28. Bandaids: I haven’t had any shoe break in issues in a while (possibly because I spend more on them now…) but I’m a mom and I can be clumsy so they stay in my bag.
  29. Lactaid: I am even less tolerant of lactose now so there are at least two stuck inside every single bag and wallet I own. I tried a generic lactase pill for a while and it didn’t work at all, so brand loyalty it is.
  30. Compact mirror: Honestly I probably use my phone camera more for quick check ups myself but you never know when a mirror might come in handy.
  31. Mints: This is usually whatever mints I picked up at an airport or grocery store recently. Right now it’s a tin of mints from the Café Britt shop.
  32. Fresh Sugar lip balms: I carry minis of both the regular (clear) and a sheer rose tint which is very flattering. This links to a set of 6 different mini balms, which is my preferred size for my bag, but the full size ones are available alone.
  33. L’Occitane hand lotion: Love the Cherry Blossom scent, which conveniently comes in a mini.
  34. Pens and pencil: Two years later, I am still obsessed with MUJI gel pens. I usually have a black one in 0.5m, a colored one in 0.38mm, and another black one in 0.38mm tucked into the spiral of my planner. The pencil is a typical 0.7mm BIC mechanical pencil, based on its translucent glitter body I think it’s from a bulk box I bought more than 10 years ago. I haven’t yet taken to a fancy pencil, but maybe someday.
  35. 9oz Swell water bottle: I like this size for my bag, although I also have a larger size (read: taller) 10up-branded one at my desk. This particular one is the Teal Wood color. I don’t remember how I acquired it, probably one of those fancy sample boxes.
A look at my bag with everything packed inside

Making changes to a GitHub PR branch on a fork

A while back, GitHub added a setting for contributors to allow maintainers of a repo to push changes to a pull request branch of their fork. I've been doing a lot more work in GitHub recently and figured I'd document my Git process for handling pull requests where you just want to close up a couple small things in a given time frame and/or the originator isn't very responsive. IMO this makes it much easier to retain the commit history giving credit to the other person but still move existing PRs forward.

The essence of my process is to add their fork as a remote, switch to that branch, do stuff and commit, and then push to it. It's not really a whole lot, but I've found that very specific snippets come in very handy, even if they're short and straight-forward. I also don't like the instructions GitHub gives for making changes to a fork's branch. So, that gives us (using a real recent example):

If you use hub (I don't), I believe you can skip the first command as fetch will add the remote for you if it's not recognized. There's also the popular Git Extras, which has a pr command, but from what I've tested it doesn't use the actual remote branch the PR originates from even if you specify the remote, but rather the pulls/### branch GitHub makes for you. If you use (or decide to write) a Git helper that does the remote adding/fetching/checkout for you (e.g. git pr KZeni/patch-1 or even making it so that git pr ### could detect the remote fork and branch for that PR), let me know!

Food, Recipes

One-pot pressure cooker shredded beef (“barbacoa”)

A great thing about understanding the science behind cooking is that I can adapt recipes for the Instant Pot (or whichever pressure cooker, instructions below assume an electric pressure cooker) with great results. One important thing to remember is that because it's a sealed environment, you don't get much evaporation like you would with a slow cooker or traditional long braise, so you'll want to concentrate flavors and use less liquid than you might be used to. My favorite trick for this is to use Better than Bouillon paste and half or less of the usual amount of water – since the paste is reduced stock in the first place, it works out perfectly.

In this case, we had a 4 pound sirloin tip roast hanging out that needed to be used and only the morning to prep lunch, so with some taco fixings and basic, easily sourced ingredients we had amazing shredded beef "barbacoa" tacos done in about 1.5 hours with just one dirty pot (and the blender). You can also use the meat for burritos, huaraches, etc. or even just eat it in a bowl with some rice and beans.


  • 4 pounds of beef roast (sirloin tip roast, chuck roast, or you can go with brisket or short ribs if you're feeling fancy)
  • 4 chipotle chilis in adobo sauce (can adjust up or down for spice level, a small can usually has about 6)
  • 1½ tsp beef bouillon paste
  • ½ cup water
  • 6 garlic cloves, peeled
  • 1½ Tbsp ground cumin
  • 1 Tbsp dried oregano, preferably Mexican
  • 1 Tbsp salt
  • ½ tsp ground black pepper
  • ¼ tsp ground cloves
  • ¼ cup lime juice
  • 2 tsp soy sauce or fish sauce (optional, deepens flavor)


  1. Combine all ingredients except the meat in a blender or food processor and blend until smooth.
  2. Preheat the pressure cooker on the sauté setting with some oil. While it heats up, cut beef into large chunks (1½–2 inch cubes) and season with salt and pepper. Working in batches, brown all of the meat.
  3. Combine meat and sauce in the pressure cooker, seal it, and set to cook on high pressure (meat/stew setting) for 60 minutes.
  4. Allow pressure to come down naturally for about 15 minutes before releasing and opening the pot. Remove the meat to a bowl and shred with two forks; add some of the liquid with more salt if necessary to taste.

Recipe adapted from The Recipe Critic, likely originally sourced from elsewhere. I put "barbacoa" in quotes because I'm pretty sure this is not exactly traditional/authentic, but since many English speakers are familiar with the term thanks to places like Chipotle, it helps with expectations.


Recipe: Pressure Cooker Short Rib Ragù

I've wanted to try The Food Lab's pressure cooker ragù bolognese for a long time, but also wanted to have pasta with the short ribs that have been hanging out in our freezer. I made a couple of adjustments and it worked really well, so here's the modified recipe! Some notes from my own process:

  • We use an Instant Pot, which is really just an English-labeled North American version of a Chinese electric pressure cooker we'd had since 2009 (the button layout and colors are exactly the same). The Chinese one required the usage of a large and heavy transformer because of the lower household voltage here and my spouse couldn't read the buttons, so now we happily use everybody's favorite Instant Pot. If you haven't used the sauté function before, you'll get good use out of it now.
  • If you boil your pasta in the same pot you use to sauce it (a non-stick chef's pan works great for this), this whole endeavor only needs two pots.
  • I mostly guestimated amounts as I was cooking, which works out fine. This isn't really precision work, though you can't go wrong with trusting J. Kenji López-Alt all the way.
  • I use Better Than Bouillon for most chicken stock applications, so instead of mixing that into water and sprinkling the gelatin over that, I just sprinkled gelatin over a cup of water and added the bouillon paste in with the crushed tomatoes, etc.
  • I was extremely lazy slash running late yesterday so I used pre-diced pancetta and mirepoix (onion/carrots/celery). It was great.
  • We believe in the wisdom of cooking with wine you'd drink, so we used a well-rated $15 bottle of Chianti. Don't get the $7 stuff.
  • I let said wine reduce separately before adding the rest of the liquid ingredients. It's not strictly necessary, but I thought the concentrated flavor came out nicely and there was more than plenty of liquid for the pressure cooking part.
  • I apparently need a new bottle of fish sauce so I used soy sauce instead. Worcestershire would also work fine – it's that glutamate life you're after. I may also have thrown in a little bit of straight up MSG.
  • Buying fresh pasta from a local maker: always worth it.


  • 1 cup low-sodium chicken stock
  • 4 packets (1 ounce) powdered gelatin
  • 1/2 pound finely diced pancetta
  • 1 large onion, finely minced
  • 2 large carrots, finely chopped
  • 2 large stalks celery, finely chopped
  • 4 medium cloves garlic, minced
  • 1/4 cup fresh sage leaves, minced
  • 1/2 cup fresh parsley leaves, minced, divided
  • 3 pounds bone-in beef short ribs
  • 2 cups dry red wine
  • 1 14-ounce can crushed tomatoes
  • 1 1/2 cups heavy cream, divided
  • 2 bay leaves
  • 3 ounces finely grated Parmesan cheese
  • 1 to 2 tablespoons Vietnamese or Thai fish sauce
  • 1/4 cup fresh basil leaves, minced
  • 1 1/2 pounds pappardelle or tagliatelle


  1. Place stock in a 1-cup liquid measure and sprinkle with gelatin. Set aside.
  2. Heat olive oil in a pressure cooker over medium-high heat until shimmering. Brown short ribs on all sides, about 10 minutes. Set aside.
  3. Add pancetta to pot and cook, stirring frequently, until pancetta is browned and crisp, about 12 minutes. Add onions, carrots, celery, garlic, sage, and half of parsley and cook, stirring, until softened but not browned, about 8 minutes.
  4. Increase heat to high. Add wine and let reduce by half, about 10 minutes. Add stock and gelatin mixture, tomatoes, 1 cup heavy cream, and bay leaves. Nestle short ribs in the liquid. Seal and cook at high pressure (12 to 15 psi) for 30-45 minutes. Let pressure come down naturally before releasing pressure and removing lid. Remove short ribs to a cutting board.
  5. Simmer sauce over moderate heat until thick and emulsified, about 30 minutes longer. While sauce is simmering, cut the meat from the bones and any connective tissue and shred it. Add the meat back to the pot and let it finish simmering.
  6. Stir in remaining 1/2 cup heavy cream, Parmesan, fish sauce, basil, and remaining parsley. Bring to a boil, stirring constantly to emulsify. Season to taste with salt and pepper.
  7. To Serve: If sauce isn't hot, heat to a simmer and set aside. Cook pasta in a large pot of well-salted water until just barely al dente. Drain, reserving 1/2 cup of cooking liquid. Transfer to a large skillet or sauteuse and add 3/4 of sauce, along with cooking water. Cook over high heat, tossing and stirring gently, until sauce is thick and pasta is coated, about 30 seconds. Transfer to a serving bowl and top with remaining sauce. Serve immediately, passing extra Parmesan at the table.


Apple Watch vs. Fitbit Charge 2

I had an Apple Watch Series 1 for about six months but switched to a Fitbit in April (Charge 2 HR, previously had an Alta) and don't think I'll be going back to the Watch. This isn't an actual review, just a quick musing on what I've found that works for me with some more details about how notifications work.

The Apple Watch generally did not help me accomplish anything that my old Alta didn't already – it did some cool things, like replying to texts and once even answering a phone call, but in reality I text relatively little and talk on the phone even less. Both helped me stop constantly missing phone calls (which are all the more important because they are rare) and texts due to my habit of leaving my phone on silent in odd places around the house because I have no pockets to tuck it into while I play with the kids.

The Fitbit, on the other hand, has live heart rate monitoring and step and sleep tracking built in, all things that actively helped me as a pregnant woman (did you know your resting heart rate is usually about 15-20 clicks faster when pregnant?) and continue to help me as I handle a baby+toddler and work on a healthier lifestyle. We also already use a Fitbit scale and occasionally track food with the Fitbit app, so there is some investment in that ecosystem to begin with. I was taken in by flashy Apple technology (and that rose gold!), but forgot what my real goals are. Now I feel like I'm back on track, and with a rose gold Fitbit, too 🙂

The biggest specific usability issues I had with the Apple Watch besides its lack of non-workout fitness tracking were battery life and notifications, with bulkiness and random shutdowns also annoying me. Meanwhile, the only things I miss about it are reminder notifications and pinging my frequently-misplaced phone, with the latter mitigated by having a Tile Slim.

Notifications are probably the thing with the most nuance and affect more people, so I've thought about them quite a bit. My preferred setup seems to be a little different from most people I've observed, though. I personally like being able to see/read through notifications without having to hear or feel them in real time – the only notifications I've allowed to make sounds/vibrations for the last 8 years have been phone calls, texts, calendar events, and reminders. Other notifications turn the screen on with the banner, but otherwise don't disturb me. When I'm working or idling, I often have my phone next to me face-up, where I can glance at it when I want to for any notifications (typically just email, Slack, and Twitter for me – I aggressively prune back notifications in general). If I need to keep my phone nearby but I'm trying to focus or with family/friends, I put it face-down.

The Apple Watch only shows notifications in one place. This makes sense in that having two (or more) devices buzzing can be aggravating, but for silent notifications this is pretty silly and rather inconvenient for non-silent notifications with your phone unlocked. Also, they haven't solved this for iMessage syncing so when I'm on my computer it's still multiple pings anyway.

There were two common scenarios that made this unworkable for me. First, if you have silent notifications going to your watch, they do not light up your phone screen, and the watch doesn't display anything unless you raise your wrist. Since those are silent notifications, they don't buzz, so I don't know to look at my wrist. I started falling behind on my work email because I had come to rely on my phone as a semi-passive notification system for all emails. The fix? Stop sending any silent notifications to my watch, at which point they lit up my phone again. (Desktop notifications don't cut it as a replacement – I do a lot of work from my phone.) Which meant that I couldn't scroll through them on my watch if I left my phone elsewhere.

Second, is that if you left your phone unlocked for, say, map navigation or kids playing Endless Alphabet, the notification banner would only be displayed there and not alert the watch. This led to me missing urgent changes a number of times when going somewhere (e.g. "you left his bag at home") because I don't feel/hear the vibration and can't stare at the unlocked screen the whole time. I believe the watch would still receive the notification so you could scroll to see it in the notification center, and you could open the entire app to check, but you would not receive a haptic alert or be able to just lift your wrist to see it. I tried to get in the habit of turning my phone off silent during those situations, but then would forget to switch it back, and it didn't solve being able to see messages privately at a glance.

The Fitbit will only do call, text, and calendar notifications, so I do miss reminder notifications, as well as the occasional WeChat ping. Reminders can't be replaced by calendar events because calendar events don't "stick" as lock screen notifications – a reminder will typically stay there even as you unlock/re-lock your phone, which is important for me, especially since Touch ID sometimes unlocks your phone unexpectedly. But on the plus side, those notifications come through so long as your phone is also displaying them – so you can get your notifications while your kid watches a video, but they won't bug you if you're on do not disturb or have the actual text message open already. The dual buzzing does not bother me most of the time – if anything, it helps me not miss things, since the only notifications that do buzz are ones that I consider time-sensitive.

Since most people I know have non-silent notifications on for many things, like email or (the horror) Twitter, I'm not sure these concerns really come up so much. But I learned a long time ago that I'm never the only one who does something a given way, and honestly, I think it's worth trying more silent notifications in general. Passive alerts are nice, and so is the Fitbit!

P.S. If you want to know why I went with a Charge 2 instead of an Alta HR, it's because the lack of a button and inconsistent response to lifting the wrist on the Alta infuriated me. It also only displays notifications vertically, which is impossible to read. The Charge is much better in all ways except for being wider, but it's not bulky, even on my small wrist.