HN user

_harry

318 karma

Javascript @airbnb

@hshoff

Posts26
Comments33
View on HN
www.smashingmagazine.com 8y ago

Bringing Together React, D3, and Their Ecosystem

_harry
2pts0
medium.com 10y ago

Building a login flow that doesn’t require entering a password for Apple TV

_harry
1pts0
medium.com 10y ago

Enzyme: JavaScript Testing Utilities for React

_harry
5pts0
medium.com 10y ago

Data Infrastructure at Airbnb

_harry
3pts0
medium.com 10y ago

Airbnb Product and Engineering teams now hiring in Portland

_harry
9pts1
nerds.airbnb.com 10y ago

How well does NPS predict rebooking?

_harry
3pts0
thenewstack.io 11y ago

Airbnb’s AirPal: new ways to get answers from Hive and Hadoop

_harry
9pts1
airbnb.github.io 11y ago

Airpal: A web-based query execution tool built on top of Facebook's PrestoDB

_harry
4pts0
nerds.airbnb.com 11y ago

Large Scale Payments Systems and Ruby on Rails

_harry
18pts2
nerds.airbnb.com 12y ago

Introducing SmartStack: Service Discovery in the Cloud

_harry
94pts37
gigaom.com 12y ago

Airbnb is engineering itself into a data-driven company

_harry
6pts0
nerds.airbnb.com 13y ago

The story behind the all new Airbnb for android

_harry
11pts0
blog.airbnb.com 13y ago

Airbnb is partnering with the City of New York to provide hurricane relief

_harry
4pts0
allthingsd.com 14y ago

Airbnb Streamlines Booking Process for Last-Minute Travel

_harry
1pts0
nerds.airbnb.com 14y ago

Airbnb Nerds: How We Improved Search Performance by 2x by Tobi Knaup

_harry
9pts0
nerds.airbnb.com 14y ago

How Airbnb Switched to a HTML5 Photo Manager

_harry
30pts2
gist.github.com 15y ago

Blackbored: Textmate's Blackboard theme for RubyMine

_harry
1pts0
blog.saush.com 15y ago

Write a Sinatra-based Twitter clone in 200 lines of Ruby code

_harry
2pts0
twitter.com 15y ago

Meet the new Twitter

_harry
43pts6
www.insidescience.org 15y ago

Major breakthrough in tractor beam technology

_harry
2pts3
royal.pingdom.com 15y ago

A James Bond villain data center

_harry
1pts0
blog.hshoff.com 15y ago

Some Linked List Shenanigans in C

_harry
1pts0
www.economist.com 15y ago

Bill Millin, piper at the D-Day landings, died on August 17th, aged 88

_harry
4pts1
www.ibm.com 15y ago

Tutorial: Create a real-time auction site with Scala and Lift

_harry
3pts0
news.ycombinator.com 15y ago

Ask HN: Anyone know of a real-time message board or one in development?

_harry
2pts3
blog.hshoff.com 15y ago

Node.wtf: An explanation of Node.js for the non-nerds.js

_harry
2pts0
Prettier 1.0 9 years ago

One of the Airbnb style guide authors here.

The point about quotes comes up often. The important part for us is consistency at Airbnb. We use eslint to enforce and maintain the consistency. Would it be more consistent to treat strings the same everywhere? For some projects sure. We diverge from the community a bit in the sense that we treat JSX as not JS and we aim to be consistent about that. If your project treats JSX and JS the same then yes, we've certainly seen folks do this. As always, please do what works best for your team or project [1]. Forks encouraged.

I will say an added benefit of including a style guide in a project for large teams that may get lost jumping straight into prettier, has been helping our engineers become stronger javascript programmers in the process of learning our style guide. That's largely anecdotal evidence from my time at Airbnb and of course your mileage my vary.

Personally, I support the Prettier mission 100%. Easier consistency is huge. Removing barriers to contributing to open source projects is huge. PR reviews focused on what the code is doing vs painful style nits is huge. It's been great to see this come from the community and I look forward to seeing where the community takes it. Congrats to all of the contributors on the 1.0!

[1] https://github.com/airbnb/javascript/issues/102

I deleted my comment because I realized it was tangential to your point and don't want to sidetrack discussion. Carry on!

npm provides a common interface for running package scripts: http://npmjs.org/doc/scripts.html

So if you open the package.json (https://github.com/cloudkick/whiskey/blob/master/package.jso...) you'll see that `test` runs `make test`.

Check out the Makefile (https://github.com/cloudkick/whiskey/blob/master/Makefile) to see what `npm test` is doing. This abstracts out the test command, because you could be running `cake test`, `make test`, `node whiskey test`, etc. and if you're just using the node package, you probably don't care what the command is, you just want to run the tests. `npm test` is the way to do it.

- From the event page -

Tech Talk: Eric Tschetter on Druid - Distributed Exploration of High Dimensional Data

Druid is a distributed system in use at Metamarkets (http://www.metamarkets.com) to facilitate rapid exploration of high dimensional data. They use Druid to expose impression monetization data to internet publishers along any arbitrary combination of demographic, content and sales-based dimensions. One Druid cluster currently exposes a data set of >15 billion rows of data representing >500 billion impressions in hypercubes of varying dimensionality (largest is 28 dimensions) while allowing for exploration using top lists and timeseries in sub-second latencies. The tech talk will be a discussion of the design considerations and architecture of the system.

http://metamarkets.com/2011/druid-part-i-real-time-analytics...

About Eric Tschetter

Eric Tschetter is the lead architect of Druid, Metamarkets' distributed, in-memory database. He held senior engineering positions at Ning and LinkedIn before joining Metamarkets. At LinkedIn, Eric productized LinkedIn's PYMK with Hadoop. He holds bachelors degrees in Computer Science and Japanese from the University of Texas at Austin, and a M.S. from the University of Tokyo in Computer Science.

Anecdotally, Airbnb's mobile website (http://m.airbnb.com) was written entirely in CoffeeScript.

We had never used CoffeeScript before the project and we finished what you see today in about 6 weeks with a team of 3.

The project codebase looks like it was written with consistent style all the way through, which can be harder to do with JavaScript when it's 3am and all you want to do is make it work (when you start to get lazy). It was nice knowing that the for loops I was writing would compile to the same for loops that the other guys were writing.

CoffeeScript currently makes up just over 1% of Airbnb's codebase. I expect that number to grow quite a bit over the next year. Here's the breakdown according to github: http://cl.ly/2A241Z2d2I2m2R211Q1t

@jashkenas: Could you expand a bit about your thoughts on the growing ecosystem of community made patterns and modules on top of Backbone and how it might help direct [edit: 'help direct' is the wrong phrase, can I change this to shape?] the future of Backbone?

(referring to your thoughts around 38:00-42:00)

That's awesome Loren!

There are only four of us on the frontend team right now. We need more!

We like engineers with passion. People who get excited talking about the new frontend development frontier. Conversations like this happen all the time:

- Think Node.js would be cool for a realtime dashboard? Yes, do it.

- Maybe we could try using backbone.js and a fat client for this feature? Fork it and let's go.

- What's SASS? Install the gem. We're using it.

Our fourth frontend engineer just started last week. We sat him down, showed him how we were doing things and we asked him, "What do you think?" and he says, "Have you guys heard of Jammit? It's used for asset packaging. It's pretty cool" -- A couple hours later he was showing us the page load speed increase and how to use it.

If you're a frontend engineer wondering what it's like to work at Airbnb, feel free to email me: harry@airbnb.com or if you prefer character limits I'm on Twitter: @hshoff.

I never realized how similar Shazam was to the first Matlab assignment we had to do for an EE class in discrete time linear processing. The only difference is we had to match whale calls to a type of whale. Spectrum analysis and everything. Never thought to identify music.

Sometimes, it's way to easy to overlook the obvious.

My roommate from my freshman year tried the online poker thing. Made $100 the first day. $1k the first month. $5k the second. Then he won some $30,000 tourney. Then he dropped out.

He's been pursuing it full time for the last 4 years. He'll go into casinos and play for 50 hours straight without even realizing it. For awhile, he was dating a 35 year old women during one of his 3-month stints in Vegas. Then her husband showed up and punched him the face. He says he made around 110k last year.

The first day we met, he said he wanted to be either a zookeeper or a weatherman. Funny how quickly your life can change.

Thanks for this. I first came across Bill Buxton's writings on UX back in April while doing research on multitouch technology for my senior project, and his collection of thoughts ended up having a huge influence on the outcome of the project. (http://www.billbuxton.com/multitouchOverview.html)

My two other lab partners and I ended up hacking together an interactive game cube of sorts. You can read about the project here, if you're interested: http://bit.ly/9Zm7ds