Hack Week — Day 1

Every year, Etsy has a company-wide week devoted to hacking on a project that in the short-term makes the company better and in the long-term makes the world a happier place. Hacking is not just about code; it’s a way of seeing the world better than it is, and then making it happen. It could be art, it could be making a physical thing, it could decorating your desk in a way that pulls at someone’s childhood memories. Many of the best hacks are backed by a simple idea — a copper handprint that you high-five which increments an LED counter, logging your bike commute to work — a mural of a deer in a sunlit forest — a locker completely covered in Chewbacca fur. It almost always makes life better for someone else. You know that idea that itches in your brain, that you think “nah, that would never work,” “I’ll never have time to work on that,” or “other people will think it’s dumb” and then finally “but how awesome would it be if…” That’s it. That’s the one.

This has nothing to do with anything.

Mine is a search ranking game on Ethereum. There are two kinds of players: one searcher, and multiple rankers. Any of these may be bots or humans, which is the ultimate clutch in online games. Given a search query, e.g. marzipan, and a set of images / descriptions / product listings, try to guess what that person was looking for. This is like Cards For Humanity, except you know much less about the searcher. To improve this, you could get a past history of queries that the searcher has typed with the same intent.

In the weeks leading up to Hack Week, my manager asked me multiple times if I’d thought of a project, and encouraged me to prepare. Hack week takes on the feel of school in the best way. An archway of multicolored paper eruptions lines the way to Etsy Labs. Posters in the hallway inform you that Monday is Etsy spirit day, Tuesday is for twinning, and of course, Friday is aggressively formal. When you’re a kid, you think holidays happen by themselves, but no, the grownups around you are busting ass to make it rain tinsel and remove the bloody teeth from beneath your pillow. Today, or someday soon, you are the grownup. I, in all seriousness, greet people in the hallways with “Happy hack week.”

I started off yesterday talking with Stan about his documentation of the PHP framework for reusable web components and modular dependencies that currently powers the homepage. I might need something like it later to build the web interface for my game. I also talked to Nishan, who’s fixing up our computrons for data science jobs; he’s given an awesome talk about learning to rank at Etsy, and I’ll try to convince him later to help me generate the queries and search results for the game. I also did a modest amount of “real work” by helping a teammate get started with Scala and consulting with a project on improving our Googlebot crawl budget.

I spent most of the day learning Kubernetes and getting a kube node + minion set up on two GPU machines that happened to be lying around. The idea being that it would be useful to set up multiple geth nodes on a private test network in order to test my smart contract, and in a production system, if any of these (geth) nodes went down, Kubernetes would spin up a new one with its self-healing magicks. However, in the light of day, this was a huge nerd snipe to learn Kubernetes. In the light of this morning, it’s much more useful to write a smart contract directly on Morden (the live testnet).

I created an AWS free tier account and left it running overnight. However, the default t2.micro instance comes with an 8 GB volume, so it probably filled up and stalled.

Today: write a Solidity contract, find a way to connect it to Etsy product listings, and start a github repo.

Happy hack week, everyone.