Debugging Our Network (Spoiler: Not Comcast’s Fault)


Skip to the end if you just want the tool to do this yourself, otherwise, enjoy the story about how we debugged a nagging network issue.


So, we’ve been experiencing some annoying network issues lately and we were almost positive it was our ISP (Comcast).   The issue would occur on large files (think major OS updates, video on demand, music downloads, etc).  Basically we would perform our 20 minute download and get stuck with a corrupted file.  Worse, we would pay for a VOD movie and start to watch it only to find it is a glitchy mess with intermittent sound.

Yikes!  Something had to be done.

How hard can it be?

But first — a little about our network configuration.   We have a Comcast cable modem that goes to our main firewall router that then gets distributed throughout our house via switches and wireless access points.   The initial hint was that we saw this corruption on both the wired (Tivo) and wireless downloads.

The worst part of all this is that the problem was intermittent.  Sometimes large files would work and other times they would not.  I needed data if I was going to convince Comcast that this was their problem (note the negative bias).

In the beginning

I started by manually downloaded the large file.  In this case, I leaned heavily on my buddies in Cupertino and one of their 1.1GB major software updates.  Thankfully, their update site provides a SHA1 checksum.    The process was this:

  1. Note the start time
  2. Download said file
  3. Note the end time
  4. Open a terminal window and type “shasum /path/to/filename.dmg”
  5. Make a note in some file whether or not the download was corrupt.

Did I mention

Oh yeah, each one of these downloads took me 6-7 minutes and I have kids now.   This manual data gathering was becoming a pain.   I needed relief and automation so that I could run these tests unattended all night long and gather the precious data in all the configurations and locations of our network.

Thank you Guido

Enter python and 30 minutes of time.  My son, Leo, thankfully cooperated by not injuring himself during those precious 30 minutes.   My daughter, Dagny, also helped out by taking a nice long nap.  The stars were aligned and all was go.

The script

So, I knocked out a quick and dirty little python script that does the above steps while also outputs the notes and results into a csv file.  Don’t worry, the downloaded GB file is deleted every time.  A link to the script is below (NOTE: You will need to tweak the download URL and checksum to suit your needs and desires)

The results

So, after all the work, what does the CSV file look like when imported into Excel?

Output from the python downloader script with some conditional formatting applied.

Output from the python downloader script with some conditional formatting applied.

And the Winner is………

Surpise!  It was not Comcast!  In the end, I was able to trace the corruption to our Netgear FVS318G router which was running some old firmware (3.0.5 or something).   After installing the latest firmware (3.1.1+) the problem vanished.

The lesson here — it’s not always Comcast’s fault and it definitely helps to throw a little python around now and then.



Strongly Held Beliefs No Basis In Fact(s).

Pronounced “She’-Ben-O-Biff”. Similar to NIH (Not Invented Here). SHeBeNoBIF can be a reason for rejecting something or ignoring new data, purposely remaining stubborn.


Our internal IT department has SHeBeNoBIF regarding migrating to external cloud services. The repbulican party’s SHeBeNoBIF keeps dragging their approval ratings lower and lower.


Dr. John G Mooney    Pepperdine University     ca. 2012

Out in about 6,000

So, it’s been a long while, but worth an update (since in the last post we were at 5,000 and wondering when we’d be done).
Sometime in the last 4 months, our little daughter figured it all out, and before her 3rd birthday we were consistently diaper free (except for night time, of course) and completely ecstatic, too!

Of course, since that time little Leo was born and we are once again back into diaper-land with little to no sleep…….  So the next time I wake up, I might post something more intelligible.

5,000 down . . .


It’s been a little while since we passed 5,000 diapers.  True to form, we were going through a spat of mud-butt at the time and the 5,000th diaper didn’t dissapoint.


First off, I need to set the record straight.   My earlier calculations on the amount of landfill we’d be generating were actually overly conservative!   In the last 6 months, we’ve up-sized little D’s diapers and have noticed that (even as disposables) they take quite a bit more room now.

This uptick happened at around 3,000.  At that time, we had diverted an approximated 75 cubic feet of waste.

Right now, we are filling 2 hampers of diapers per week (even though the number of diapers has decreased slightly).  This has helped us reduce the stink a bit (we close up one of the bags halfway through the week).   At 2.5 cu. ft. per pail, we’re running about 5.0 cu. ft. for our 65 weekly cloth diapers.  That’s about .08 cu. ft. per cloth diaper(130 cu. in. or 5″ x 5″ x 5″ roughly).

However, a disposable is less bulky and therefore has a smaller waste volume  (75 cu. in. / 0.0434 cu. ft. or approx 4.2″x4.2″x4.2″ packed together with the wipes).  At 70 diapers per week that’s about 5250 cu. in. or 3.0 cubic feet.  This is about what we saw when we temporarily switched to disposables for the week we were in Kauai.

So, the last 2,000 diapers (upsized) occupy disposable-equivalent volue of of 0.0434 cu. ft per diaper.  This brings the waste volume for 2,000 diapers to 86.8 cu. ft!    You see, even through the number of diapers has gone down, the waste volume is roughly constant (and the stink is exponentially worse).

tl;dr:  The Grand Total So Far

After 5,000 diapers we’ve probably diverted 160 cubic feet away from landfill!   In rough equivalents, take the bathroom in your house and fill ‘er up with packed-solid diapers.   Or raise the floor in your bedroom by a solid foot of stink.

Will We Ever Escape?

Here's a chart with TMI. At this rate, we'll have gone through 60,000 diapers by the time Dagny turns 18!!! Thankfully the number of leaks as slowed down.

A long time ago, a naive Red was hoping to be out by 5,000.  Guess what?  Didn’t happen.   Will 6,000 be a reality?  Dunno….. but we do have miss D sitting happily (and nekkid) on the potty.  She gets the idea, but can’t seem to make it all work.  What has worked, however, is outdoor time with a fresh breeze.  Turns out she’s just finally starting to be able to hold it for a few minutes before watering the grass, and that event is a suprise to even her (It’s funny and cute actually).

Quick Rant – Easy Target


Today’s rant is a quick one…..and it’s target is almost too easy:  AT&T.

I have a personal cell phone and work cell phone.   It was trivial to set my personal cell phone to forward calls on to my work number.   To a person dialing me, this all happens transparently.   The only negative is when I dial somebody from my work line, they naturally see my work cell number (it doesn’t masquerade).


But WHY THE 621311 CAN’T I FORWARD SMS/MMS MESSAGES (texts)?    Seriously?   My world is neither imagined nor delivered by AT&T or whatever their attempt at a tagline is today.  Dolts.

Realistically, forwarding text messages (in my case, “bouncing” would be a better term so that the headers don’t get messed up) is no more difficult than bouncing emails.  It’s something AT&T already does as they relay the text message to your handset.  Storing modified route information would cost them nothing, especially since they already do this for phone calls!

Constructive Attempts at a Solution

Yeah, I know that grand central (now google voice) can transcribe my texts and kick them to email where I can wait for them to download into an inbox and then wade through them all and struggle to reply to them in a cohesive way.   This would remove the only 2 things texts have going for them (immediacy and automatically threaded-by-person).

Oh, and I did actually call AT&T and ask about this feature.   Nope.   Nada.   Couldn’t care less, ’cause they’d rather charge me outlandish rates for a couple of nibbles of data.  Escalating the phone call got me nothing (and this was already with our ‘premium’ business customer service rep).

Plea for Help

Anyone know of a iPhone app that can automatically forward texts to another number without losing or significantly altering the header info?  Ideally, the message would arrive on the new phone as if it had been sent directly to there and when I reply, the recipient would be unaware of the handset change (much like forwarded phone calls).

Why I jailbroke (unlocked) an iPhone and How

First, the mini <rant>: F-U Apple & AT&T.    You pissed me off this weekend, and I’m a bloody self-admitted Apple fanboy!  Why on earth can’t I take an iPhone and yank the SIM chip and have an effective iPod Touch?  Why doesn’t this work?  Why do you force me to sign up for AT&T or brick the phone?  Why would you both do such a stupid, shortsighted, retarded, AT&T monopolistic thing.   It’s time for the federal government to once again break AT&T up into little bitty pieces that actually serve customers.     While I’m at it, WHY THE F@#& can’t I forward text messages from one phone to another???  I can auto-forward my phone calls, why can’t I forward text messages!  ARGH.  </rant>

Which brings me to the post.  Disclaimer….if you are from AT&T or Apple Legal, then be advised that this entire post is a work of fan fiction from one hell of an angry ‘fan’.


So I have this extra 2G iPhone lying around that was gathering dust (reason #1).   We like to keep it around as a backup, so selling it off on eBay was not an option.    Dagny is cute (reason #2) and always tries to play with our phones (reason #3).  In fact, Dagny has learned how to unlock an iPhone without missing a beat.  She’s so good at manipulating our iPhones that we can no longer let her near them (reason #4) (deleted apps, random dialed calls, removed contacts, etc).

I figured I would simply back up, then do a factory restore on this old 2G iPhone and hand the new baby rattle over.  Without a SIM card, Dagny couldn’t dial out, and who cares what else she did, ’cause I could just restore it over and over.    But that’s where AT&T and Apple screwed me and my toddler over.

AT&T Executives:  “Sorry, consumer.  That phone that you paid $200 for a few years ago is a stupid glass monolithic brick.  You don’t reallly own it…think of it more like an extended $60/month lease with a big down payment.  In it’s current state, it wouldn’t even interest a 6 month old.  Would you like to buy a data plan and a hefty 2 year contract?”

Me: “Screw you, AT&T and Apple.   I’m jailbreaking this thing so that my toddler can play with it the way Geek intended.  After all, the iPhone 2G is a marvelous baby rattle and a baby rattle needs no cell tower access!”

How I did it

Disclaimer:  This post is for informational purposes only….and might even be a work of fiction. Any instructions in here are merely illustrative of what one could do if one lived in a realm free of retarded government regulations, Bristol Palin and AT&T.  Don’t do anything illegal, okay, even if you own the device outright and want it to just f’ing work without needing a 2 year contract to a horrible service provider.

As of November 2010, unlocking a 2G iPhone took about a day of dedication, as the jailbreakers out there don’t actively support the older phones (e.g. the 2G iPhone).  I had to piece some things togther, but managed to get it done with a few tidbits of luck.   Those sneaky details are below.

Step 1:  Gather ye tools

You will need PwnageTool 3.1.5 (the 4.1 line doesn’t support the 2G).    I am told that google has said links to said torrents.  On the mac, is seemingly decent at getting ahold of torrent files.

You are also going to want a copy of the iPhone1,1_3.1.2_7D11_Restore.ipsw file.   The IPSW (iPhone SoftWare) file can also be found around the net.  You could use 3.1.3, but I stuck with 3.1.2 out of blind luck and stubborness.  PwnageTool will take this off-the-shelf .ipsw file and create a custom one capable of unlocking your iPhone.

Step 2: Create your custom .ipsw file

I then followed a great post on iClarified on how to use pwnagetool to unlock your 2G iPhone. The most important step here is to use the Expert setting and make sure that openSSH is installed with Cydia.   We’re going to need this later to fix some Cydia crap.   I eventually learned that Cydia is like the AppStore for unlocked iPhones, there’s a lot of cool free and paid stuff in there, and it serves as a sort of central distribution point for getting things on and off the unlocked phone.

While I was at it, I installed some other packages. However, not all packages work with 3.1.x and they won’t tell you this until too late, so be careful here.

Now, finish up and create your custom .ipsw file and save it where you can find it.

Step 3: Load your custom .ipsw file

Follow pwnagetools guide for getting your iPhone into DFU mode.  In this mode, iTunes will ask to restore the software, and that’s exactly what we want.   Once again, we’re following iClarified and their sweet post.

So, you’ll launch iTunes and it will ask you to restore the phone.  The little trick here is to hold the option (or “alt”) key down when you click the restore button.   This will get iTunes to ask you for the location to your custom .ipsw file.   Thanks for loading my hacked file onto the phone, iTunes.  You’re like a free piece of music software to me.

Step 4:  Allow your phone to do its thing

This isn’t really a step, but your phone will get all the bits onto it, then it will reboot (with the hacked pineapple logo from pwnagetool) and then it will upgrade stuff for a few minutes and then it will reboot again and you will have an unlocked phone in less time than it took to read this long runon and poorly structured sentence.

Step 5:  Now the fun begins

This is where the instructions leave off, and my possibly fictional help leads you to unlocked bliss.

First, get your wifi connection up and running (just as you normally would).

Second, launch the Cydia app that is on your phone.  It’s slow as a dog, but eventually should show something.    But when I tried to apply it’s upgrades or install packages, I would keep getting error messages, and this is where it got interesting. (If your Cydia app works fine at this point, then there is no reason to read further…)

After much stumbling, re-installing of the .ipsw file, re-tweaking of the installed packages, etc….I pieced together some posts and figured out a sequence of events that mostly worked.

Step 6: Getting Cydia and installed packages to work

First, SSH into your device.  (Under your iPhone settings, to to WiFi and figure out your iPhone’s IP address).  On your mac, launch and type ssh root@my.ip.add.ress

Your terminal will freeze for minutes as the iPhone generates a series of ssh keys.   Eventually you will be asked to accept the fingerprint of the iPhone, and you obviously agree.

The password for this version of pwnagetool/cydia is alpine.  (You can change it from your iPhone’s command line by using the passwd command).

Wow…’re in!   If you’re a geek, you are excited by the fact that you are on the command line of your iPhone.   If you’re not a geek, you may never get this far, or are pissed off at having to type commands to get simple things to actually happen

On the command line of the iPhone:

  • su to get to root access
  • dpkg –configure -a to fix the messed up package system
  • apt-get update
  • apt-get install cydia (or  apt-get install cydia –fix-missing)
  • apt-get upgrade

But that didn’t seem to work completely for me.  I kept getting errors from other packages.  The super secret trick.

  • cd /usr/sbin
  • ls -a check to see if there is a file “nvram”.  Most likely it isn’t there
  • touch nvram create a file that apparently was missing in the first place
  • apt-get -f install
  • apt-get -f update
  • apt-get -f upgrade

That did it.   By creating the nvram file, I was able to re-run the other commands and get them to work.  If the “dpkg –configure -a” command still doesn’t work, you may have to remove some packages that aren’t compatible.  At this point, “apt-get install cydia” should work as well.

Step 7:  Final tweaks

I was still getting some Cydia issues when starting the app.  It would get stuck on some repositories, and make the app almost unusable (Dear Cydia, your timeouts are too long.)   First, try to figure out what repositories are not responding (Cydia will typically pop up an error message with the link names that failed).

Now, fire up and SSH into your iPhone.  On the iPhone’s command line:

  • cd /etc/apt/sources.list.d/
  • Depending on the version of Cydia, you will either see one file (“Cydia.list”) or several files.  I had to go through each of the files (using either “more” or “less”) to find the repository in question.
  • rm name-of-file to get rid of it.

Once you re-open/re-launch Cydia, it should no longer look for the repository you just removed.

Living with the jailbroken Baby Rattle

Dagny just loves her new phone.  However, we learned two things quickly.

  1. We desperately needed a soft case on the phone to keep her from chewing on the metal/glass.
  2. Once we give the phone to her to play with….. we don’t get it back!

Making the baby rattle better

I immediately signed Dagny up (using a junk email address) for an iTunes account without a secured credit card).  That enabled us/her to download free apps, like Animal Sounds Free and other age appropriate tidbits.

I also took a little Daddy time and played with Cydia and some of the nice apps out there.  After all, if I can be interested enough to play with a baby rattle, it’s a pretty fun baby rattle.  Note that there are some Cydia apps that supposedly enable backups of unlocked apps to be downloaded through iTunes — this should make restoring a bit easier should something go awry.

Keeping the rattle jailbroken

Once I had Cydia fixed and things stable, I immediately made a backup through iTunes.   Hopefully this will provide a parachute for when Dagny inevitably messes up some key setting.

That said, I also plan to never allow iTunes to upgrade the firmware on the iPhone. This is key to keep things unlocked.

Wrapping it up

Sorry if this wasn’t the most complete tutorial, and I hope soembody finds the last few command line tidbits useful.   After all (1) this isn’t a bad way to get some utility out of an older backup phone that you might have lying around and (2) it was kind of a fun side project.

Products we love (part 4)

Sometime in the last month Dagny managed to turn 1.  In spite of all our efforts and examples she is growing up healthy and happy and fairly well adjusted.  That said, time for another round of baby products we love (see previous post).

The Boon Flair High Chair

Is this the perfect high chair? We think so...

After using a clamp-on high chair for months, we had the opportunity to test drive several high chairs at friend’s houses.   One of the things we knew for certain is that we wanted a high chair that was easy to clean! For some reason “easy to clean” is not listed as the #1 feature on every single high chair.  WTF!?!   Have the designers only met clean babies that never soiled themselves?  Did these designers picture all little kids as perfect angels magically born without the instinct to set food free in the air?  Believe it or not, we saw high chairs with cushions that could not come out, or trays that could not go in the dishwasher, or impossible-to-clean crevices.

Well, screw those designers.    We found better.

In our local baby boutique they had this supreme Jetson’s-like chair.   The smooth surfaces were rounded with generous curves and therefore easy to clean.   The chair comes with two removable tray liners that can be cleaned in the dishwasher (worthy of a Nobel prize).

Oh, and the chair rolls — so we can wheel our daughter around and she can watch us cook, or clean, or play piano, or go to the bathroom (yes, parents do need to do that on occasion and keep their kids in a safe place…).

Oh, and even better, this chair has pneumatic height actuation so that it can fit under our table completely or rise enough so that the tray is above table height as well.  How sweet is that?

Did I mention it was easy to clean?   Spaghetti-sauce tested and battle proven, this chair and its base still sparkles like almost new.  All that and a price that doesn’t break the bank!

The Ultimate Baby Rattle

It's simple, but its mysteriousness is only exceeded by its power.

Okay, maybe this isn’t really a product, but after more than a month, Dagny is still lovin’ it.   That’s about 2 weeks longer than most toys we give to her, so I have to say I’m proud of this little invention.

Let’s call it the BottleRattle (or for you hipsters out there, the ib0TTl3R@TTl3).

Take a discarded 2 liter bottle and strip off the label.  Wash it.  Dry it.  Throw 3 pennies inside and turn your child loose on the thing.  It spins and rolls on the floor.  It carries like a football.  And best of all, it makes a darn loud rattle noise when shaken.

If 2 liters is a quart too much, go for a simple 16oz ib0TTl3R@TTl3 (aka the gP!nTR@TTl3).    Except you may want to cut down to a single penny, lest the price to performance ratio get taken out of whack.

That’s it — seriously.   She loves the bloody thing!

Products we love (Part 3)

Continuing on from my previous post and product recommendations, we have a few more products we have grown to love.

Kelty Carriers (5 stars!)

The TC 3.0 by Kelty is a great all-around carrier with a small profile.

Dagny outgrew her Baby Bjorn a long while ago, and we inherited an older Kelty carrier and absolutely loved it.  Dagny enjoyed being up high where she could look at people eye-to-eye.  We immediately went out and bought Steph the smaller Kelty kids carrier, the TC 3.0 (we think “TC”is short for “Transient Child”).

The TC3.0 comes with a canopy (shown in the picture) and a changing pad (works well for on-trail field changes).  There is plenty of room and support and Dagny is comfortable in it for well over an hour at a time.  Along with plenty of storage space, the carrier section collapses when there is no child in it (making it a slightly larger than normal backpack).   Another super benefit is that the ‘burp cloth’ area in front of the baby disconnects and is machine washable (something a lot of the other carriers didn’t do).   The surfaces of the carrier wipe down easily (vomit tested – check).   Oh, and being built by an outdoor gear company, the pack is comfy with a well padded waist belt and is rated up to 40 pounds!

The FC 3.0 is all things good with more carrying capacity and even acts like a high chair.

We loved the TC3.0 so much that Steph got me the FC 3.0 for father’s day (in the “curry” color of course).  The FC (where FC must stand for “Feral Child” carrier) has similar features to the TC but has more carrying capacity with an additional bottom pocket that is big enough for two cantelopes!   The FC also has an awesome kick stand that expands when you take the pack off.  This essentially converts the carrier into a high chair (well, a low-chair actually, but perfect for sitting at a bench with your child in front of you as you sip a coffee).   The FC is rated up to a whopping 50 pounds, so it’s going to last us for quite some time and is a great way to get some excercise with your child.

There are a few annoyances present in the FC that we did not find with the TC carrier.   First, the ‘burp cloth’ area does not come off (we just tuck in a burp cloth instead).   The second annoyance (for me, a 6’1″ tall guy) is that the strap system is not designed for someone my height or chest width.   I find the strapping a little out of proportion and have had to fiddle with it for a bit.

We love both the TC and FC carriers for both strolling around town and on hikes.  In a crowded coffee shop, these packs take up much less room than a stroller and we find ourselves far more maneuverable as well.  On trails, both packs are comfortable for Dagny and have enough carrying capacity for her required necessities.

If I had a rating system, these Kelty Carriers would be at the top, for sure.

It’s Awesome

The Aosom is awesome!

The Aosom play pen (we think it’s pronounced “awesome”) fits its name.   This thing is a basic play yard without all unnecessary frills.   Here’s what we like about this thing:

  • It’s well priced.   In fact, it’s price per square foot puts it on the low end of offerings.
  • It’s made of unadulterated wood. Translation: It doesn’t have some unknown varnish applied in China (full of lead and melamine, etc) — it’s just natural, pleasant to touch and smell, bare wood.
  • It was simple to set up
  • It’s stable enough, yet lightweight at the same time.
  • Dagny can pull up on the bars without a problem.
  • There’s so much visibility and room that Dagny gets the illusion of freedom! This is the ‘hugest’ win of all and provides us with free time to do office work.

Celebrating 3k!

Whoa there, Biscuit!

About a week ago, we hit another parenting milestone — 3000 diapers!  It hasn’t been that long since 2000 and I’m starting to doubt we’ll escape this first child with only 5000. (Maybe 6,000 is more realistic).

For her part, Dagny saved up for a few days and celebrated in style.   Her little event involved fingerpainting with poo and even attempts at taste testing.  There was crying, squirming and in the end we ended up having to hold her down and give her a soapy towel wipe down.

The Landfill Count

So, what does 3000 cloth diapers equate to?  If you go back to our little 2000 celebration and look at some of the assumptions, we’ve saved about 75 cubic feet of waste to date.  (I’ll leave the calculations as an exercise for the reader).  That’s a lot of stink.

Great Balls of Tea — Details of Spherification


A recent order to the Spice House ( had me excited.  Not only did they have some smoked paprika and powdered sumac (good on top of humus), they also had odds and ends for molecular gastronomy.   In case you don’t know what that means, it’s the hoity-toity way of saying doing a little chemistry with your food to create unusual effects.  Candy making is molecular gastronomy based around sugar and it’s behavior at certain temperatures.

One of the most notable effects from this “rockstar” chef movement is Spherification.   I’ll warn you that I’m no expert and definitely not a historian on this manner.  In fact, apart from seeing it done on Iron Chef now and then, I’ve only been served spheres in a restaurant one time and it was not even that memorable.

But I wanted to give it a try — so I bought some stuff for making balls (er….spheres).

Spice House offers excellent small-sized bottles for spherification.

As I mentioned earlier, Spice House offers small-sized amounts of Calcium Salt and Sodium Alginate.  Quantities sized right to get started, and the ingredients are food grade (so not from some scary chemistry shop where they may be tainted with ferric chloride, cyanides and other nasty not-so-edible chemicals).

Why write a post about my balls?

My stuff showed up just in time for some weekend play — but now what?   I trolled the web, but couldn’t find any straightforward explanations or recipes.  How much do I mix in?  How do I make the drops?  What are some basic tell tale signs.   Give me some range of expectations a la Good Eats so that I can tune in my spheres and get this process working.

I gave up on the internets and started playing and making my own notes.  What follows are my experiences from a weekend day of playing around with little alginate balls.

The Process

I didn’t make that much of a matrix, as I was basically trying to dial it in (and my 9 month old can only handle being ignored for so long).   The great part, though, is that I was able to use things that are readily available to any home cook.  Oh, and I took lots of notes of both the successes and the failures.

The Solutions

To make spheres, you drop one solution into the other.  Typically, the flavored ingredient is mixed with Sodium Alginate and dropped into a solution of Calcium Salt.  Through some chemical magic, drops turn into little spheres with a harder outer coating and a soft liquid gel like inside.  Properly done, the little spheres pop in your mouth like caviar and release tastiness on your palette.

Ca:Salt Solution

The Calcium Salt solution is easy to make up.  In my case, I just used room temperature tap water (our tap water is tasty good) and whisked in a small amount of Ca to dissolve.

Sodium Alginate Solution

The sodium alginate solution is a little more tricky.   For this set of experiments, I made spheres using sweet tea (thanks, Steph).  I figured it was a good basic starting point, as it is failrly neutral in acidity and we plenty of it to work with.

The problem with the alginate lies in actually mixing it together (emulsifying).   I first tried room temperature sweet tea and a whisk.   This just made clumps, which don’t work and are not good eats.

The answer: I popped the clumpy mixture into the microwave for 30 seconds and took it just shy of a boil — voila, the sodium alginate clumps broke apart and a whisk finished the job.    The resulitng liquid was fairly bubble free and slightly thicker (think maple syrup).

Another method of emulsification that I have read about and tried is to use a hand stick blender.  This is an aggressive approach and definintely worked at emulsifying the liquid.  However, it also seemed to incorporate lots of bubles and it loosened up the liquid considerably.  Using the hand blender, I needed more alginate per liquid volume in order to achieve the desired thickness.  Also count on a period of rest (or hook up your shop vac and a home made bell jar) to de-air your mixture.

The Dropping methods

Everywhere I looked online people used various tools to create the drops that create the little spheres.  You can use a toothpick or a spoon or a syringe.   As I worked with the various methods, I quickly developed opinions — which I will share with you below:


Good for initial testing of your solutions to see if they will sphereize.   Terrible for creating large amounts of balls — 1 ball every 5 seconds is pretty maddening.   Also ends up creating somewhat inconsistent ball sizes, depending on how much the solution clings to the toothpick.


Very uncontrolled.  Pretty much useless for creating spheres.   You can create noodles and spermy looking shapes, however.

Here are the 3 dropping tools I attempted to use. A small eye-dropper type bottle on the left, a more expensive version on the right and a syringe front and center.


Maybe I had a low quality syringe, or too small a syringe.  I had a devil of a time creating consistent drop after drop.  Instead, the syringe would clog now and then and I would end up spraying out some alginate solution into a rats-nest in the calcium salt.   Taking in a little air into the syringe helped a little bit with constant pressure against the alginate solution.  Either way, I was not fond of the syringe method.    The best use of the syringe was to cleanly fill up the dropper bottles.

Dropper Bottle

After getting frustrated with the syringe, I tried 2 different dropper bottles.  Both of these worked many times better than the syringe.  They created consistent sized drops and did so very very quickly.  The second dropper bottle was able to create 100’s of droplets in a minute!   A good dropper bottle is easy to fill and the nozzle won’t clog with alginate.   Too tight a nozzle and and the alginate eventually gums up the orifice and you can’t make spheres anymore.      In the end, I used a syringe to cleanly fill a dropper bottle and unleash a batch of droplets into the calcium salt solution.

Example dropper bottles that I tried:

  • (dropper bottle in picture on right) VWR International:  16354-400   $80 for qty 12
  • Low density VWR International 46300-592 or larger (46300-594 is 8oz),  $33 for qty 25

The other nice thing about the dropper bottles, is you can cap them and store your alginate solution for up-to-the-minute use.   One important note about spheres is to not keep them sitting around too long. After about 30 mintues or so they eventually go “stale” and harden up into solid balls — not nearly as texturally interesting as caviar-like spheres.

More Detailed Notes And Quantities

Alginate solution on the left and calcium salt solution on the right -- we're ready to make some balls.

Below are my notes on the solutions and mixes and results.  After trying to weigh out the ingredients on a precision scale, I gave up — how many of us actually have scales in our kitchen accurate enough to measure fractions of an ounce (or just a couple of grams).  In this case, volumetric measurement is going to be more reliable and more available to the standard home cook.

Sodium Alginate Solutions

Sodium Alginate was added to the room temperature sweet tea, but since it faield to dissolve, the mixture was heated in the microwave for 30s – 1 min (just shy of boiling) and whisked to emulsify.

Solution                  Sweet Tea                   Sodium Alginate

A                                   1 oz                                1/8 tsp

B                                   2 oz                                1/8 tsp

C                                   2 oz                                3/16 tsp

D                                  3 oz                                 1/4 tsp

Calcium Salt Solutions

Calcium Salt was added to cool tap water and dissolved with a whisk.

Solution                       Water                            Calcium Salt

1                                  8 oz                                 1/2 tsp

2                                  4 oz                                  1/2 tsp

3                                  8 oz                                  1/4 tsp

Results and Notes

In the following section, we’ll refer to the solutions above.   Obviously, “A1” means sodium alginate solution “A” dropped into calcium salt solution “1”

Red food coloring and simple syrup make these early spheres visually pop off the plate.

A1 Observations

  • Time in Solutions:
    • Drops 1 minute in solution were a little soft, but hardened up a little after sitting.
    • 3 minutes in solution was perfect
    • 4 minutes in solution was a little too hard
  • Solution Notes:
    • Use a little less alginate, the “A” solution was noticeably thicker — almost mayonaisse.
    • Probably could use some more calcium salt since it took so long in solution
    • There was not an excessive salt flavor from the calcium.
  • Syringe Notes:
    • I used the syringe + louver, and got about 3mm drops, but the syringe kept clogging
    • Once I got some air in the syringe behind the alginate solution and it helped with consistency.
  • After 30 minutes of standing by, the spheres were still edible

B2 Observations

  • Solutions Notes:
    • The Calcium saltwater was quite strong
    • Not enough alginate to form a ball
    • Very strong resigual Ca:Salt on spheres….must be rinsed well
  • Drop does not really penetrate surface of the water to make a sphere…instead it sits on surface and additional drops glom on.

A mound of perfectly popping prismatic sweet tea spheres sits on a white plate. Super tasty and sweet!

C2 Observations

  • This combination worked pretty well.
  • Some balls were solid however, way more than A1 — this is not as appetizing
  • Solution Notes
    • Required less soak time than A1
    • The #2 salt solution definitely needs a good rinse.
  • Dropper Notes:
    • Used the dropper bottle (“methonal bottle”)   VWR International:  16354-400
    • This was great for a consistent drop size, although if the alginate solution gets too thick it can sometimes clog.
    • Used the syringe to cleanly fill the dropper bottle.   This worked really well.

D3 Observations

  • Time in Solutions:
    • After 1 minute in the Ca:Salt solution, the spheres were nice and delicate with a good outer layer and  a snap when you bite into them.  Perfect mix for our sweet tea spheres.
  • Solution Notes:
    • Alginate needed to heat or brought to boil for faster/easier emulsification
  • The drops enter the water almost toroid shaped but did sphereize.
  • Dropper Notes:
    • Tried a different dropper bottle (like a visene eye-dropper). Although a little more difficult to fill, it did NOT clog.  It also generated dozens of spheres quickly — just squeeze.
  • Stayed good for 5 minutes (easily) after pulled out and rinsed and dried.

Other Notes and Findings


Drying these little buggers is in itself an art.   I tried a couple of ways, but by far the easiest was to spread them out on a paper towel in a single layer and cover with a paper towel and slowly roll the balls between the two layers.   The other method is to creeate a “sling” out of a few paper towels and kind of toss the balls around inside the sling.

Spheres, balls, everywhere. Watch out -- these guys know how to roll!

Balls Everywhere

Expect to find and lose balls everywhere.  Once loose, they roll….and because of their size and transparent quality, they can be extremely difficult to find.


Serve as a presenation note on the side.   I’ve served in leiue of sauce on top of fish (think parsley puree spheres with a good touch of salt as a high note on top of salmon).    Concentrated flavors and colors work well.

Tastes for Serving

For saucing or as a side note, think big bold flavors.  The spheres are small and you want them to pop and release bundles of joy.   I made a nice parsley sauce which, when over-salted, produced a wonderful topping for fist.   Blueberry juice is a little weak, but blueberry preserves thinned with water carries a good punch of flavor.

Other Hints

Mix up your alginate and drop all of your balls at once into the Ca:Salt.  Insead of trying to fish spheres out of the Ca:Salt, just pour the entire Ca:Salt solution out and into a strainer.

3oz of alginate solution is a LOT of spheres.   Easily enough as a side note on plates for 4 people.

I tried using a scale to measure ingredients, but this proved frustrating, as most scales simply cannot handle small fractions of an ounce (or gram) quantitiies accurately.


If the drops sit on top and do not sphereize, then there is a likelihood that you don’ thave enough soldium alginate.   If, after a minute, the balls are still too fragile, up the calcium salt solution.

Next Steps

So what next?

Well, I’ve made some great spheres using a celery salty sauce and put this on broiled salmon – but I used the hand stick blender to emulsify the alginate and it took far more alginate than expected.   So clearly, there are some variables at play.   Perhaps I need to buy a pH meter and do some work with acidity and quantity other variables.

The metric that seems key, but is the hardest to quantitatively measure, is the viscosity of the alginate solution.  This is definitely a case where having some experience regarding what to expect and mixing it by eye may be easier.