Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Blimp - How it's Made

Blimp - How it's Made

Talk about the technology behind Blimp (getblimp.com) for Puerto Rico Python Interest Group #prPIG

Giovanni Collazo

April 09, 2013
Tweet

More Decks by Giovanni Collazo

Other Decks in Technology

Transcript

  1. Agenda • What is Blimp? • Web app • Client

    web app • Job Workers • Monitoring and Logging • Testing • Deployment • Why we love Python?
  2. • Project management platform for creative teams • Plan >

    Do > Review > Done • 3 co-founders / product managers • Founded 1 year ago • Flat organizational structure • New features launched weekly • Updates deployed daily
  3. • Django • 13 internal apps • 70+ 3rd party

    modules • Virtualenv / Virtualenvwrapper • pip freeze > requirements.txt • PostgreSQL • Memcached
  4. • Celery / Redis • Used for expensive computations or

    transactions • For example deleting a project, sending emails, importing projects, etc. • Hosted on 1 small custom EC2 instance
  5. • New Relic to monitor performance, errors and availability of

    web app • Sentry (self-hosted) to log exceptions • Hasselblad to monitor KPIs • Google Analytics (real-time) • Email / HipChat for notifications
  6. • We are getting better • Selenium for integration and

    client tests • Nose to run unittests on the Python side • Karma on the JavaScript side
  7. • Highly automated • We use and love Fabric •

    fab staging deploy • fab production deploy • Glue for sprite generation • Brunch to concatenate, compile and minify CoffeeScript, Stylus, Handlebars • Hosted on S3
  8. • Database migrations • Deploy, update and manage workers •

    A lot of custom Fabric tasks • Manage db & workers • Environment variables • Heroku specific stuff
  9. • Small language • Beautiful and clean syntax • Easy

    to learn, great community • Massive standard library • Stack traces • pypi has 29,804 packages • 4,459 are Django specific