0
Lanyrd.comCheap tricks for Startups    Simon Willison @simonw   Monki Gras, 31st January 2013    http://lanyrd.com/sccqcy
Early-stagestartup engineering     is different
What are the  quickest tools tobuild that provide the     most value?
Cheap experimentation
FEATURE_FLAGS = {  new_maps: Uses MapBox rather than Google,  login_picker: /signin/ page with picker,  login_linkedin: Si...
@login_required@flag_required(topic_tracking)def topic_track(request, slug):    topic = get_object_or_404(Topic, slug=slug...
<div class="secondary">  {% flag topic_tracking %}    <div class="icon-feature feature-topic">       <em class="title">Kee...
Feature flags apply   to individual users  and/or user tags, e.g.alpha, beta, lanyrd-team
“preview” tag controlsflags available on private    preview.lanyrd.com  (for testing logged-out          features)
Feature flags helpkeep trunk deployable
Cheap deployment
$ fab e:live deploy$ fab e:staging target:feature/linkedin deploy
Deployment should be...   Easy   Fast   Cheap
Everyone deployson their first day!
Read only mode
MySQL                   PostgreSQLon EC2                  on SoftLayer          with no downtimehttp://lanyrd.com/blog/201...
Cheap analytics
The History table
Internal metrics• created_at field on EVERY table, no  exceptions • Makes building graphs of site growth    trivial• update...
Our report system• Reports are arbitrary calculations• Run daily by cron• Backfill available on date-field based reports• Po...
Cheap tricksFeature flagsRead only modeHistory tableDaily calculated reports   http://lanyrd.com/sccqcy
Cheap tricks for startups
Cheap tricks for startups
Cheap tricks for startups
Cheap tricks for startups
Cheap tricks for startups
Upcoming SlideShare
Loading in...5
×

Cheap tricks for startups

3,881

Published on

My talk from Monki Gras 2013.

Published in: Technology
1 Comment
9 Likes
Statistics
Notes
No Downloads
Views
Total Views
3,881
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
31
Comments
1
Likes
9
Embeds 0
No embeds

No notes for slide

Transcript of "Cheap tricks for startups"

  1. 1. Lanyrd.comCheap tricks for Startups Simon Willison @simonw Monki Gras, 31st January 2013 http://lanyrd.com/sccqcy
  2. 2. Early-stagestartup engineering is different
  3. 3. What are the quickest tools tobuild that provide the most value?
  4. 4. Cheap experimentation
  5. 5. FEATURE_FLAGS = { new_maps: Uses MapBox rather than Google, login_picker: /signin/ page with picker, login_linkedin: Sign in with LinkedIn, # ...}
  6. 6. @login_required@flag_required(topic_tracking)def topic_track(request, slug): topic = get_object_or_404(Topic, slug=slug) # ... if user.has_flag(topic_enhancements): # ...
  7. 7. <div class="secondary"> {% flag topic_tracking %} <div class="icon-feature feature-topic"> <em class="title">Keep exploring</em> <p class="med"><a href="/topics/"> Browse and track events by&nbsp;topic</a></p> </div> {% flagactive topic_tracking %} BETA ONLY {% endflagactive %} {% endflag %} <!-- ... --></div>
  8. 8. Feature flags apply to individual users and/or user tags, e.g.alpha, beta, lanyrd-team
  9. 9. “preview” tag controlsflags available on private preview.lanyrd.com (for testing logged-out features)
  10. 10. Feature flags helpkeep trunk deployable
  11. 11. Cheap deployment
  12. 12. $ fab e:live deploy$ fab e:staging target:feature/linkedin deploy
  13. 13. Deployment should be... Easy Fast Cheap
  14. 14. Everyone deployson their first day!
  15. 15. Read only mode
  16. 16. MySQL PostgreSQLon EC2 on SoftLayer with no downtimehttp://lanyrd.com/blog/2012/lanyrds-big-move/
  17. 17. Cheap analytics
  18. 18. The History table
  19. 19. Internal metrics• created_at field on EVERY table, no exceptions • Makes building graphs of site growth trivial• updated_at useful but not essential
  20. 20. Our report system• Reports are arbitrary calculations• Run daily by cron• Backfill available on date-field based reports• Points are stored in the database• Site can graph any report• We can export any report to a spreadsheet
  21. 21. Cheap tricksFeature flagsRead only modeHistory tableDaily calculated reports http://lanyrd.com/sccqcy
  1. Gostou de algum slide específico?

    Recortar slides é uma maneira fácil de colecionar informações para acessar mais tarde.

×