Monday, January 20, 2014

You are 8 times more likely to be killed by a police officer than by a terrorist

I just had to link to this great article. It's backed up by real data and someone who's actually using their brain.

The article includes the quote:
“Terrorism is the best political weapon for nothing drives people harder than a fear of sudden death”.
- Adolph Hitler

Our government is certainly following that advice!

Contextual Bandits

I read http://synference.blogspot.com/2013/12/multi-armed-contextual-bandits.html and thought I could write a more concise version. I also had some questions.

Intro

A/b testing is great! Wikipedia uses it every year to pick the best fundraising banner and a/b testing makes them millions of dollars more.

The contextual bandits algorithm can do even better.

2 improvements over traditional a/b testing


  1. The algorithm doesn't have to have a single winner. It will try to show the most effective version for each user.
  2. The algorithm automatically optimizes. If it has a good guess at which version a user will prefer, it uses that. If not, it picks randomly to collect more data.


How to Use It

There's a paid service at http://www.synference.com/ with a free beta.

My Questions After Reading


  1. How do we generate the versions to use for contextual bandits?
  2. Does the algorithm support adding new versions later?
  3. Does the algorithm support removing poorly performing versions?

Thursday, January 9, 2014

My latest little project: backup.js

I just created and released backup.js. It's a library to make it easy for html apps to make backups in local storage.

I've been working on and off on my own to do list app. It makes periodic backups of the data in case I accidentally erase something (there's no undo) and in case there's a bug which clobbers data. The backup functionality has been very simple: it makes copies of data in local storage but never cleans them up. Eventually it hits the browser's local storage space limit and I have to dig in and delete some old backups to make the app start working again.

I finally got sick of this situation and decided to implement backups in a smarter way. backup.js is a standalone library to do this. I easily plugged it into my to do list app, but it's perfectly usable for any future projects of mine or anyone else who wants to use it.

It's been a fun little side project for a few days!

Wednesday, January 1, 2014

You Are The Average of Your 5 Closest Friends

I just started a new (minimal) "correct opinion" page on the effect the people we spend time with have on us- http://www.benamy.info/correct-opinions/you-are-the-average-of-your-5-closest-friends

Thursday, December 26, 2013

A picture of forming habits

I've started using Beeminder to track new habits I'm forming with my newly upgraded habit formation system. Here's this month's habit. Each dot is me using my new habit.


Yeah baby!!

Wednesday, December 11, 2013

Shrinking a Bike Tube

For example, this lets you fit a 29" tube in a 26" tire. Here's a video tutorial. What a clever hack!

Tuesday, November 26, 2013

Solving My Oldest Technical Problem

One of the first unsolved problems I can remember, is probably from when I was about 10. I wanted to connect loose wires to a headphone plug. I don't exactly remember why. Maybe I was splitting a signal to 2 headphones. Anyway, I remember it being a complete pain in the ass. I'd try to twist the wires onto the 3 contacts on the plug in various ways and they'd always slip to one side and short across contacts.

Eventually I grew up, bought splitters, learned to solder, and otherwise moved past this problem.

On a recent flight, I had this classic situation again: the stupid plane had the weird old headphone jacks which have 2 mono 1/8" jacks instead of the standard single stereo jack. This means you can't plug normal headphones into them and hear sound in both ears. Of course the headphones they gave out which plug into these jacks sounded like crap. Unacceptable.

I ripped apart the plane headphones and tried to figure out how to connect them to my nice ones in a way that wouldn't screw up 10 minutes into my movie. Low and behold, I came up with a pretty damn good solution! I used pieces of insulation to tie bands around the connector in a way that both held the wires in place, and prevented them from shorting!

You may notice that the tip doesn't need a band to keep the wire from falling off because it narrows at the end away from the tip so the wire stays in that indented area.


It was so satisfying to be able to use my upgraded problem solving skills to solve the oldest technical problem I can remember having!

Life is good.