Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Frontend at Scale - The Tumblr Story

Frontend at Scale - The Tumblr Story

Chris Miller

BrazilJS 2014

  • O Tumblr é uma maneira de se expressar
  • você pode fazer blogs, sites, o que quiser para expressar sua opinião, seus gostos etc.
  • Tres maneiras de entrar em contato com seu conteúdo: Dashbaord. Search. BLog Network.
  • O Blog é seu espaço. Você pode fazer seu próprio design, código e até javascript.
  • Front-end Stack: Backbone (+iodash, underscore), SASS (+boubon), Jquey, Gulp, VelocityJS
  • Back-end Stack: PHP, Serviços especificos em Scala, C, etc. MySQL, Redis, memcache, HDFS
  • O Tumblr tem mais de 1000 servidores.
  • Deploy várias vezes ao dia. (Coisa linda.)
  • Times pequenos.
  • 2 Code reviews OKs para estar ok e subir um PULL REQUEST.
  • Testes de features funcionam quando se segregam usuários para features específicas
  • Eles controlam quem e quando cada usuário poderá ver uma determinada feature.
  • O teste A/B deles também é interessante, porque o importante é saber ONDE colocar um determinado botão, por exemplo? Logo eles colocam um detemrinado botão em diversas posições para vários usuários e medem qual está trazendo mais resultados. Se a posição 2 traz mais resultados que a posição 5, ela fica e a outra sai.
  • Novas features do dashboard são deploiadas para os admins "staff" primeiro, depois para 1% dos usuários, depois 5%, 10%, 25% e assim por diante.
  • Suba com cuidado features que dependem de outras features e misturam as suas experiências.
  • Novas features tem bugs, normalmente... Erros Server-side são simples de identificar, mas o problema são os erros no client-side.
  • Na verdade erros client-side são fáceis de achar, mas tem muitas variantes, browsers, dispositivos, sistemas operacionais etc...
  • Eles construíram um exceptions.js, que usa o window.onerror, que avisa toda vez quando uma página quebra.
  • Este exceptions.js precisa ser livre de dependencias, logo, sem JQuery.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.