How We Built Airbnb Holiday Cards in Five Days
In this technical retrospective (2013), @AirbnbNerds shares practical architectural lessons learned from running, scaling, or migrating production software under lean constraints.
Core Principles for Independent Builders:
Defaulting to simpler architectures (such as monolithic frameworks, SQLite, or managed VPS) prevents early engineering bankruptcy.
Evaluating true compute and egress costs reveals that high cloud bills can often be slashed by 80%+ through judicious re-platforming.
Code you write at 2 AM as a solo engineer must be easy to debug six months later without complex microservice dependencies.
Community Debate Themes:
HN engineers debated the tradeoffs between cloud convenience and raw server economics, database indexing strategies, and resisting premature architectural complexity.
CATEGORY Frugal Engineering →
HISTORICAL ERA Web 2.0 Genesis (2007–2013)
COMMUNITY SCORE ★ 65 points
TOTAL DISCUSSIONS 13 comments
Have you tried using Rails engine for this or different components of your app?
It is actually pretty neat because the same login session can still be used within multiple engines. You can also release them as gems too.
I used to work on an enterprise app which we created the whole chat system with Rails engine. Then, we release the engine as a gem so that it can be used on the main app. I think it works quite well for us so far.
more info: http://stackoverflow.com/questions/6118905/rails-3-1-engine-vs-mountable-app
TL;DR: Monolithic applications (in any technical stack, not just Rails) are bad. See also: http://en.wikipedia.org/wiki/Big_ball_of_mud
Extricate focused concerns (like authentication or service discovery) so they can be well-tested, well-designed, and reused in new services.
Really interesting read. I've only ever built one feature websites so I never came across this problem, but it indeed is an awesome problem to have. "Lots of users, lots of features, what do we do?" must be such a fun problem to solve, especially when everyone is getting paid. I need a job :(.
I'd love to know more about the service discovery system and whether it's going to be open-sourced.
Was the implication that it's a layer on top of ZooKeeper or something completely different?
Initial discoverability is the one thing that most SOA articles I read tend to skip over or hand-wave away which really drives me nuts.
What else is there out there apart from ZooKeeper?