A 3D printable mask adapter to keep adult or kids masks tight

Child KN95 mask tightening clip

The CDC is now recommending that people wear masks with a tight fit, or double mask to reduce the spread of COVID-19. A recent study showed that wearing tight-fitting masks can cut COVID transmission by 95%.

Kids’ (and adult) COVID masks can be too loose.  The mask can fall off completely if the ear loops are loose and slip off of the ears, or the mask may just be too loose and not seal well.

Even if it’s not too loose, sometimes it helps to have a way to retain the mask when eatnig so it stays around the neck and doesn’t get lost.

Child KN95 mask tightening clip
Child KN95 mask tightening clip


This is a free 3D printable adapter that can help tighten ear loops.  It hooks behind the neck, connecting the two straps together.  It also helps adapt masks so that they are more secure on childrens’ faces.  It has 2 hooks for adjustable tightness.  We have used this with disposable KN95 and N95 masks, reusable kid cloth face masks (specifically Old Navy brand) and homemade masks that turned out to be a little too loose.

You can print it in PLA with 100% infill.  I used Cura to slice it.

Kid Mask Adapter / Mask tightener rendering
Kid Mask Adapter / Mask tightener rendering


Here is the link to the file: kid_mask_adapter_03

I hope it helps!

Bread and Sourdough Troubleshooting Part 2

Sad, weak sourdough ball

Here is a compilation of things I think I've learned about baking bread, sorted by category:


Starter doesn't rise or double in height

The problem:

Your starter doesn't rise.  Generally this is caused by having a yeast and bacteria population that is too low.

Potential causes:

  • You haven't given it enough time: If your starter is fairly new, it may take a number of days and regular feedings to make your starter healthy.
  • Your starter is overripe: Eventually the byproducts of yeast and bacterial metabolic activity will create alcohols and acids that will start to kill off the yeast and bacteria that you are trying to cultivate.  If your starter smells very sour, this may be the case.
  • Other bad stuff is growing in there: With feedings at the right interval, you will cultivate a yeast and bacteria population that will prevent mold and other undesirable stuff from growing.  If the balance is off and your yeast and bacteria population is depleted, other organisms can have the opportunity to grow.  You can usually tell by smell.

How to fix it:

  • Make sure your starter is active and doubling (or more ) between feedings.  If your starter rises and then falls between feedings, you may need to feed your starter more regularly or determine actions that you can take to slow its activity, like reducing its temperature or changing your feeding ratio.

Related links:

  • None yet

Sourdough starter smells bad

The problem:

Your sourdough starter smells bad.  There are a lot of smell descriptors that are used to describe a good starter.  Sometimes it smells nutty, fruity, sweet, sour, or even a little alcoholic.  But it shouldn't smell like mold or body odor.  Moldy starter smells awful.

Potential causes:

  • The population of your yeast and bacteria isn't strong enough to prevent other organisms, like mold from growing.
  • The walls of the starter container are not clean.  Yeast and bacteria die off along the walls of your container, and then mold and other bad things grow.

How to fix it:

  • Some advise starting over with a new starter.
  • You may be able to "rescue" your starter.  If there's mold growing in it, it may not be growing on more than just the surface.   Some of the good yeasts and bacteria may be living in the bottom of your starter container.  You can remove some of that, move it to a new jar, and then feed it and see how things go after a few feedings.
  • Change starter containers once in a while.

Related links:

  • None yet

Bulk Fermentation


The problem:

The weather was recently very warm, and I let a sourdough bulk fermentation go on for too long.  I'd estimate that it got about 10 hours at 80F.  The dough had doubled in volume, but it appears the acids and enzymes eventually destroy the gluten and leave you with a sticky, lumpy mess.  Apparently, when the gluten breaks down, water is released, which makes the dough stickier.  It was a pain to handle, and didn't hold its shape at all during pre-shaping, as this time lapse shows: (5 minutes of time is condensed into a few seconds)


Sad, weak sourdough ball


There's no strength in the dough at all, it's lumpy and shaggy, very wet, and falls apart almost immediately.  This is different than overproofing, as the dough was falling apart before making it to the proofing stage.

How to fix it:

  • If it's too hot, try using cold water in your mix to slow down fermentation
  • Find a cooler place for the bulk fermentation
  • Ferment for a shorter amount of time
  • Use less leaven/levain or starter

Related links:


Loaf too flat, too dense, or no oven spring

The problem:

No large airy holes, very dense and flat loaf.  Possibly decent flavor, but dense and gummy on the inside.

This might have many potential causes which are generally related to a lack of strength in the loaf and a lack of bubbles and CO2 :

  • Weak yeast or sourdough starter
  • Shaping technique did not generate enough tension in the loaf
  • If there's very little yeast activity at all, you'll notice poor color development in the crust and a "raw" flavor

How to fix it:

  • Make sure your starter is active and doubling (or more ) between feedings
  • Pre-shape and shape your dough to generate adequate tension and gluten deveopment

Related links:

  • None yet

Loaf explodes, blows out, or tears open

The problem:

Hot steam and carbon dioxide have nowhere to go during the bake, and eventually cause your loaf to blowout or explode.

How to fix it:

  • Score the top of your loaf with a lame.  This will help guide the loaf when expanding and hopefully provide you with more oven spring.

Related links:

  • None yet

Photos from the 2017 Oakland Marathon: Semereab Gebrekidan and Katherine Klymko win


Semereab Gebrekidan (bib #260), a 32-year-old from Oakland won the 2017 Oakland Marathon with a time of 2:35:54.  Katherine Klymko won the female field with a finishing time or 03:09.02.   Semereab has won a number of other running events, including the Treviso marathon in Italy last year.


Katherine Klymko (#344) of Berkeley won the womens field.  She’s barely visible here, hidden behind the 2nd place finisher, Kelsey Gurganus (#276) of Indianapolis and the 5th place finisher, Jacqueline Sloves (#778) of Oakland.


Gabrielle Maudiere (#657) of Larkspur, pictured here with the 3:20 pace group,  finished 3rd among women.

EAST BAY ATHLETIC CLUB Oakland Running Festival - 2017

The East Bay Athletics Club men’s relay team (#9226) was first at mile 5, and finished 3rd overall with a time of 02:36:28.

SFRC RACING TEAM Oakland Running Festival - 2017

The SFRC racing team (#9224) won the mixed relay with a finishing time of 02:24:13, good for a 5:30 pace.

EXCEL Oakland Running Festival - 2017

The Excel men’s relay team (#9034) finished 1st for the men’s relay with a time of 02:26:51.


Mixed relay team Pimp my Stride (#9174) finished 3rd with a time of 02:54:24.

Ivan Medina at the 2017 Oakland Marathon

Perennial contender Ivan Medina (#417) of Hayward finished 2nd overall with a time of 02:39.03.

STRAWBERRY CANYON TC Oakland Running Festival - 2017

The Strawberry Canyon Track Club men’s relay team (#9219) finished 2nd with a final time of 02:31:44.

DENNIS LEFBOM Oakland Running Festival - 2017

And as always, Dennis Lefbom (#686) ran with his Hawaiian shirt.



How bumpy is my baby’s ride in my jogging stroller?

Stroller bumpiness, measured with an iPhone accelerometer

When our daughter was younger, I tried to quantify the "bumpiness" of her rides in strollers.  We had two strollers, an older Bugaboo Bee (can't find a link to the older version) and a Thule Chariot Cougar (single, not double).  We had the normal stroller attachment for the Chariot Cougar and the jogging attachment. 

Bugaboo bee
Thule Chariot Cougar with stroller wheels
Thule Chariot Cougar with jogging attachment

In addition to comparing the differences between strollers, I wanted to compare the "bumpiness" differences when walking and running.

Data collection was messy, as you'll see below, but hopefully the results are still interesting.

Measurements and Methods

I used an old iPhone 4S with an data logging app to measure its accelerometer output while the phone was placed in the bottom basket of the Bugaboo and in one of the front pockets of the Thule Chariot Cougar.

I used two different apps to record the data:

  • Axelerom: For measurements of the Bugaboo and the Thule Chariot Cougar with stroller wheels
  • xSensor: For measurements of the Thule Chariot Cougar with the jogging attachment

Both only recorded data when the phone screen was on, so I had to stop once and a while to make sure it was still recording.  The Axelerom readings were taken at 5Hz and the xSensor at about 19-20Hz.  The Axelerom readings were also somehow strangely rendered out of order in the data file.  I had to resort the data by timestamp.

Upon analyzing the data, I realized that 5Hz wasn't fast enough to do anything other than measure acceleration.  Even the xSensor measurements at 19Hz weren't that great.  This was a bit of a problem, because I couldn't reliably measure the "jerk", or the rate of change of the acceleration.  The jerk can have a large impact on the perceived quality of a ride.  A good analogy is the difference between slowing down in a car at an intersection and abruptly letting off on the brake when the car comes to a stop rather than gently easing off of the brake pedal.

Coincidentally, I learned during research that 5Hz is roughly the resonant frequency of important parts of the body, and possibly the least comfortable vibration frequency to experience.

The measurements were taken on the sidewalks and streets in Oakland, California, mostly along the same ones for each stroller.  I didn't take the exact same path or streets for each stroller though, so this is another potential source of variation.

The smoothest ride was with the Thule Chariot Cougar

Stroller bumpiness, measured with an iPhone accelerometer

The Thule Chariot Cougar looks like a SUV next to the Bugaboo Bee stroller.  It's got two 20" wheels with pneumatic tires and a suspension on the back.  The Bugaboo's wheels are suspended too, but are much, much smaller.

One can observe the difference in forces measured in the stroller on the graph: the pointier the curve, the smoother and less bumpy the ride.

The numbers

The Thule Chariot Cougar with the stroller wheels (in green in the chart above) provided the smoothest ride, with a minimum measured acceleration of 0.399 Gs and a maximum acceleration of 2.231 Gs.  The standard deviation was 0.108 Gs.

The Bugaboo Bee was the next smoothest, with a minimum measured acceleration of 0.087 Gs (nearly freefall, for a split-second at least!)  and a maximum measured acceleration of 2.452 Gs.  The standard deviation was 0.165 Gs.

As one may expect, the bumpiest ride was with the Thule Chariot Cougar with the jogging attachment, recorded while running.  I regret that I did not perform measurements while just walking with the jogging attachment installed to have that as a point of comparison.  The minimum measured acceleration was 0.089 Gs, the maximum measured acceleration was 2.382 Gs, and the standard deviation was 0.242 Gs.

What does this all mean?

It was really interesting to find that the maximum and minimum recorded accelerations for the Thule Chariot Cougar with jogging attachment, while jogging, was similar to that of the Bugaboo Bee.  And the Bugaboo Bee is a pretty smooth rolling stroller.  I found that to be pretty reassuring.  Though the ride while jogging was definitely bumpier, the maximum acceleration magnitude was smaller than that of the Bugaboo.

This was kind of just a fun exercise, but there are a couple of conclusions I came to:

  • The Thule Chariot Cougar is a very smooth-riding stroller.
  • Running with the Cougar's jogging attachment is sorta bumpy, but probably not way worse than the Bugaboo Bee.




Hiking at Hetch Hetchy in Yosemite National Park

We started out at the Hetch Hetchy Campground, in Yosemite National Park, and spent the evening there before making a short backpacking trip up to Laurel Lake and back.   It’s only a 5 or 10 minute walk to the O’Shaughnessy Dam from the campground, so we headed over there before it got dark to check it out.  We had taken care of reservations a while back.  Our lodging: our tents, hammocks, or just sleeping bags.

IMG_4045m IMG_4060m

The reservoir appeared to be pretty full, which is good drought news!  Looking at the dam, I couldn’t help but wonder what the valley must have looked like before the dam was built.. and what our water situation in the Bay Area would be like without it.  We read about the construction of the dam, John Muir’s opposition, and the interesting Pelton turbines used for power generation.


We returned to the campsite, had dinner, and spent some time together under the stars before going to bed.  The milky way was easily visible, as well as multiple planets – I think Mars, Jupiter, and Saturn were out.


The view from the tent:


It was a warm night and a warm morning.  Lots of neat driftwood in the Hetch Hetchy reservoir.


The metal signs were nice to look at, but I don’t think very accurate.  Perhaps the trails have changed over the years.  The below sign indicated that Laurel Lake was 7.6 miles away, but by my measurements, we only backpacked 6.9 miles.  We did not go to Beehive meadows.


There was quite a variety of scenes in those 6.9 miles though.  Mossy pines:IMG_4245m

White flowers.  I tried to study the wildflower sign before I left, but sadly did not remember any of them.


Waist-high ferns in a previously fire-damaged area that was coming back to life.  The abundance of sunlight due to the lack of trees made for a verdant scene.


After making it to the lake, we all jumped in to cool off and refresh ourselves.


It was a nice site, with very few traces of humans who had been here previously.IMG_4193m

We weren’t far off from the solstice, so we were treated to a lot of daylight.IMG_4211m

Christian tried fly fishing, without much luck, unfortunately.IMG_4212m

Laurel Lake was still by 11pm.IMG_4227m

I managed to sleep pretty well, so I didn’t catch the lake at dawn.  But the water was pretty glassy at around 8am.


We had a leisurely breakfast and then made our way back towards the reservoir.

Just before a stream crossing: this butterfly was still alive, but not doing so well.

IMG_4253m IMG_4259m

Another photo of the previously fire-damaged area.IMG_4262m

We managed to see a bear on our way back, near the dam.  I didn’t take photos of it because I was shooting with a prime lens and my other lens was tucked away in my backpack.


We started and ended the hike at the dam, which was at about 2950 feet elevation.  According to the GPS, we maxed out at around 6600 feet near Laurel Lake.

Which heart rate monitor with GPS should I buy?

(This is a work in progress.  I’ll continue to update it as I can, as I proceed with my search.)

After going a few years without training with a heart rate monitor with GPS, I’ve decided that it’s time to look into getting a new one.

I still own a Garmin Forerunner 310XT that I hope to never use again because it’s been fairly terrible.  I used my Forerunner primarily for running, but did some cycling with it as well.  It was probably an 80%/20% split.  I originally chose the 310XT because of its long battery life, and of course, for its heart rate and GPS features.  I had previously run with an old Polar, maybe a S625X?  It worked pretty well, but I was intrigued by the idea of using GPS to track my workouts.

In theory, based on the features, the 310XT was a cool product, but in practice, it was burdened by awfully buggy firmware that made it unusable most of the time.  I’ve had such a profoundly bad experience with that watch, that I’d rather not buy another Garmin device again.

What am I looking for?

I’m looking for most or all of these features, not necessarily in any particular order:

  • Logging for post run/ride analysis
  • Easy data transfer from device to a PC or phone for analysis
  • Strava integration
  • Reliable performance
  • Non-creepy data storage.  I’d like to not have to rely on a company’s website to look at my information, and I’d like to choose whether that information is private or not.
  • Good heart rate measurement
  • Good GPS
  • A decent display for monitoring heart rate, total distance, current speed, and so on
  • Battery life: 8 hours would be great, so that I could use it on longer bike rides.
  • Waterproof, because I sweat a lot.  I don’t really swim, but riding and running in rain happens not too infrequently.

So, what’s out there now?

I bought the 310XT in early 2012, and the Polar many years before that.  Things have changed a lot, and there are new players in the game.

My phone

My iPhone has GPS built in, and if I want heart rate data, I can get a “dumber” device that measures my heart rate and have it sync with my phone.  I usually don’t run with my phone, though, and on longer bike rides, I’m concerned about battery life.  So I’d prefer to look for something different.


Fitbit has a wide range of devices available now.   On the higher-end is the Charge HR and the Surge.  The Charge HR is their “Active Fitness” device, and the Surge is their “Performance fitness” device.  The Charge HR will track steps and heart rate, but has no GPS.  The new Blaze just came out too.  It has a heart rate monitor, but does not have an embedded GPS.  One nice thing about the Fitbit devices is that they can measure heart rate without the chest strap – a sensor is part of the wrist band.

One can use any of their devices, or none at all with their app’s “MobileRun” Feature.


I’m not going to buy a Garmin, but I still am interested in knowing what their product offering looks like.

Their vivofit line includes 3 models of interest.  The Vivosmart HR contains a heart rate monitor that measures from your wrist.  It does not contain a GPS.  The vivofit vivoactive does contain a GPS, but has no heart rate monitor.  The vivofit vivovactive HR has both, and would probably be the device I’d consider if I were considering Garmin at all.

Garmin also offers a fenix series.  Only the fenix 3 HR contains a heart rate monitor and a GPS receiver.  All of the other fenix models (fenix 2, fenix 3, fenix 3 sapphire) have various levels of GPS functionality, but do not have a wrist-based heart rate monitor.


Suunto wasn’t ever high up on my list, but I wanted to see what they have to offer.  Browsing their website, I found three models that may fit my criteria.  The Traverse, the Ambit3 Vertical and the Ambit3 Peak.


Working on it..


Working on it..


Working on it..