Create With My Hands: Update 1

Back in January I set a goal for the year to create things with my hands. A quarter through the year I had yet to do anything – not a result I am happy with.

So, to correct this, on Sunday I set out to get some supplies and started three new projects, two of which I completed and will share here.

Problem One: Wet Surfing Gloves

I am a So-Cal surfer and always will be. My hands go numb after about an hour in 55*F water. I currently live in San Francisco, which means I have to wear 3mm neoprene gloves for about half of the year. Getting them dry is a pain because they have to be upright – the outer shell of the gloves is somewhat water tight and the inside is a fleece-like lining that absorbs water.

Here is how I solved my wet surfing glove problem.

Requirements:

  • Hold two sets of gloves upright to dry
  • Be freestanding & stable enough that it doesn’t fall over
  • Fit inside a Rubermaid tub for storage & possibly indoor drying someday
  • Under $15

For supplies, I bought an 10′ length of 1/2″ pvc, a few pvc joints and some pipe cement. I already had a saw and sand paper. Total cost $7.55 + tax.

glove-drying-rack-materials-

My plan was to have a rectangular base with the four glove holders sticking straight up. Here is a 2D version of the plan.

glove-drying-rack-design

The pipe cement I bought came with a brush in the cap, which makes things easy. I had a ton of cement left and only used about half of the 10′ pvc pipe – so the next project only requires joints. Making two of these could get costs down around $5 a pop.

glove-drying-rack-glue

Half way assembled. To make sure everything was straight, I started with segments that were 2D and made sure they were straight on a piece of wood.
glove-drying-rack-half-done

Finally, I brought everything together and made sure the glove holders were at a 90* angle.

glove-drying-rack-done

Here it is with two sets of gloves, drying like a boss.

glove-drying-rack-with-gloves

Project Two: Better Access To My Tool Box

Part of the reason I haven’t been working with my hands very much is that my tools are a bit hard to get to. Right now I’m living in a studio with my wife so space is at a premium. I built a bed with storage underneath it last year – which works out great for the large tubs of surfing and camping gear we keep under there (not to mention various lifetime supplies of things from Costco). My tool box, however, is metal and would scratch the floor if I dragged it, so I try and lift it out of its place. Life Lesson: It is incredibly hard to reach under a bed for a 50lb toolbox and then try and lift it and bring it out – especially if you have a shoulder injury.

toolbox-cart-problem

I want to make it a bit easier to get to my tools, so I’m going to put some wheels on them. I thought of buying a toolbox dolly, but this seems like a problem I can solve by hand. That is always more fun.

Requirements:

  • Rolling platform for all of my tools
  • Must support ~50-60lbs
  • Limited to 20″ wide and ~2′ deep

This one was an easy fix, but it feels great to have it done. I got some scrap particle wood and cut two sheets of 20″ x 24″ and picked up a set of castors (wheels that spin). A few screws and it’s done.

toolbox-cart-wood-and-castors

toolbox-cart-in-action-1

It doesn’t roll perfectly, but it is much better than before. The best part about making something by hand like this is that I can always cut it smaller or get a new sheet of wood if my size requirements change in the future.

toolbox-cart-in-action-2

So, despite a bumpy start to the year, I feel like I’m back in the groove, ready to create some cool things with my hands. The next one I’m working on is a fun one, stay tuned…

Surf Mavericks: Update 3

This weekend I took my Mavericks gun out for a paddle in the small waves on Bolinas, CA.

To give some back-story, about a year ago I decided I wanted to surf Mavericks and took the first step I normally take when facing new challenges; I bought a surfboard. I named her ‘Hail Mary Mother of Grace’ because some day when I take her down off the wall racks to surf, it will be accompanied by much prayer from my loved ones.

greg-and-hail-mary

This weekend wasn’t that occasion, but it was the first time in a year she left her perch in my living room. I wanted to get familiar with how she paddled, how hard it was to duck dive and how the rails held the face of a wave.

Paddling a gun is different than anything else I’ve ever been on. It sits high in the water like a longboard, but it is so narrow that it rocks easily, requiring a lot of core to keep it stable. The nose has a ton of rocker, meaning it sticks out of the water, but there isn’t much foam, making it easy to get too far forward while sitting. Finally, whenever I’m on a board with that much foam, I’m used to having at least 10″ of fin beneath me – Hail Mary has a thruster setup, so there wasn’t the hold I expected.

It’s a good idea to be familiar with equipment before trying something new though, so I’m glad I had the chance to paddle a bit.

One last note on Hail Mary. The script below is written on the deck. I have no idea what it means, though. Anyone have an idea what it says, or even what language it is?

hail-mary-writing

Here is how I’m doing at holding my breath:

Mar-breath-holding

As I neared the 3 minute mark my vision started to go blurry so I started breathing again. Getting that next minute and a half will probably be a combination of being familiar with the feeling of being oxygen deprived along with additional lung capacity and decreased oxygen need.


Shoulder: Wrapping up PT, more strength training needed to keep stress off of the joint

Breath Holding: 2:52

Days to Go: 265

Times surfed on Hail Mary: 1

Boardgames & Math – Pass the Pigs – Part 2

boardgames-and-math

This week I’m going to pick off where I left off  last week – analyzing the game Pass the Pigs. If you haven’t read last week’s post yet, you should do that first here.

At this point, we’re going to switch from solving algebraically to doing a bit of programming. All of the code I’m using can be found here – feel free to fork it and play along.

Threshold Simulation

Right off the bat – I’m going to check if last week’s conclusion is correct by running a simulation of the different risk thresholds. What we concluded was that once you were above 18 points your rolls would be risking more than their potential reward. In the chart below the x axis represents the risk threshold of the player, how many points they are comfortable accruing each round before passing, and the boxplot represents the results they have after 1,000 simulations. You can generate this graph for yourself by running the run_threshold_simulation() function.

pass-the-pigs-threshold-simulation

A few things I noticed:

  1. Having a risk threshold of 1 doesn’t mean your quickest game will be 100 turns. Since your first roll could return 5, 20 or even 60 points, this threshold actually finished before 50 turns most of the time.
  2. There is a performance increase when moving from 1 to about 10 as a threshold and then things stay fairly steady until after about 60.
  3. The low end continues to decrease as your threshold increases. This is expected. Unless you have a threshold somewhere near 100, it is nearly impossible to finish in one turn. Of course…
  4. The high end dramatically increases as your risk threshold increases. If you put a few points in the bank every turn, even a low risk player will finish in ~25-50 turns. If you play high risk, you could go hundreds of turns before finishing.

There doesn’t seem to be much difference in the results of players with thresholds between 10 -50. I want to find out just how close those players are so I’m going to write a function to have two players go head to head to see who wins.

Strategy Comparison

We’re going to compare 100 strategies to each other and simulate each comparison 1,000 times. That is about 10MM games of Pass the Pigs my computer will be running. Guinness world record evaluators, please take note, I doubt anyone else has ever played this much Pass the Pigs.

If you’re playing along at home, you can run run_strategy_comparison_simulation() to make this chart – be warned, it may take a while.

pass-the-pigs-strategy-comparison

What we are looking at is the chance that I will win a game if my strategy is the number of the Y axis and my opponent’s is the strategy on the X axis. Green means I’m more likely to win – Red means they are more likely to win. The stronger the color – the more of a chance. A few things I notice:

  1. There is a hard line at 5 which extends out in either direction and anything inside 5×5 is a bit different. This makes sense because if you remember from last week – the chance of getting a ‘pig-out’ is ~20%.
  2. There is a nice bit of symmetry.
  3. There is a yellow diagonal going from top left to bottom right – these are the scenarios where I play someone with the same strategy I am using.
  4. There is another curving from the lower left to the top right. These are situations where the low & high thresholds return similar results.
  5. If I play a strategy with a threshold between 20-25, there are no strategies I can encounter that give me a <50% chance of winning. I would remain in favorable or neutral ground against all competitors.
  6. The left side green area is actually a bit bigger than the top red one – same with the other red & green spaces. What this actually means is that there is an advantage to going first.
  7. Most of this grid is made up of situation with even odds or +- 20% at most. This means Pass the Pigs is largely a game of chance

Digging deeper – the optimal threshold turns out to be 23 – which gives me a 65% chance of winning against a random opponent. We know that we will not likely be playing with someone on one of the extremes though – and so our chances of winning will likely be in the 50-55% range. That is slightly better than even money.

I did some research and a few people smarter than me have tried to solve Pass the Pigs using more complex methods and their resulting algorithm gives them a few points on top of the odds we saw. What we accomplished here is pretty close though.

Back to Our Goal

I want to make sure we are keeping our eye on the original goal: helping me win Pass the Pigs. This is an important lesson – making sure to always loop back to the original goal instead of solving for a proxy goal.

Our goal isn’t solely to come up with an optimal strategy to Pass the Pigs – our goal is to win. Playing optimally could help us to win – but isn’t the only way to win.

Another approach we can take is to introduce change to the game to make it more favorable for us given our skill, knowledge, circumstance, etc. House rules if you will.

What we would want to do is look for rules we could create that would introduce pockets of favor to the game and then take advantage of those before our competitors become aware of them or are able to adapt.

For Pass the Pigs our strength right now is our understanding of the probabilities of the pigs and our ability to make mathematical decisions. Currently our precise decisions only offer a slight advantage over gut decisions. What we could do is introduce more situations where making an accurate judgement call would affect the game outcome. Perhaps a different endgame or some sort of side bets.

That will have to wait for another time though.