Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Cheap tricks for startups
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Simon Willison
January 31, 2013
Technology
2
130
Cheap tricks for startups
My talk from Monki Gras 2013 -
Simon Willison
January 31, 2013
Tweet
Share
More Decks by Simon Willison
See All by Simon Willison
Big Opportunities in Small Data
simon
0
490
Massively increase your productivity on personal projects with comprehensive documentation and automated tests
simon
1
2.8k
Datasette (CSVConf 2019)
simon
1
350
Instant serverless APIs, powered by SQLite
simon
1
1.8k
Datasette
simon
1
830
The denormalized query engine design pattern
simon
2
2.1k
Exploring complex data with Elasticsearch and Python
simon
1
830
Django Origins (and some things I have built with Django)
simon
1
270
Monitoring and Introspecting Django
simon
2
3.4k
Other Decks in Technology
See All in Technology
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
150
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
1
130
仕様書駆動AI開発の実践: Issue→Skill→PRテンプレで 再現性を作る
knishioka
2
640
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
460
GSIが複数キー対応したことで、俺達はいったい何が嬉しいのか?
smt7174
3
150
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
Codex 5.3 と Opus 4.6 にコーポレートサイトを作らせてみた / Codex 5.3 vs Opus 4.6
ama_ch
0
130
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
170
[CV勉強会@関東 World Model 読み会] Orbis: Overcoming Challenges of Long-Horizon Prediction in Driving World Models (Mousakhan+, NeurIPS 2025)
abemii
0
130
Introduction to Bill One Development Engineer
sansan33
PRO
0
360
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
42k
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
330
Featured
See All Featured
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
50
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
130
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
52k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
160
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
410
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
170
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
640
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
180
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
160
Transcript
Cheap tricks for Startups Lanyrd.com Simon Willison @simonw Monki Gras,
31st January 2013 http://lanyrd.com/sccqcy
Early-stage startup engineering is different
What are the quickest tools to build that provide the
most value?
Cheap experimentation
FEATURE_FLAGS = { 'new_maps': 'Uses MapBox rather than Google', 'login_picker':
'/signin/ page with picker', 'login_linkedin': 'Sign in with LinkedIn', # ... }
@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'): # ...
<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 topic</a></p> </div> {% flagactive topic_tracking %} BETA ONLY {% endflagactive %} {% endflag %} <!-- ... --> </div>
Feature flags apply to individual users and/or user tags, e.g.
alpha, beta, lanyrd-team
“preview” tag controls flags available on private preview.lanyrd.com (for testing
logged-out features)
Feature flags help keep trunk deployable
Cheap deployment
$ fab e:live deploy $ fab e:staging target:feature/linkedin deploy
None
None
Deployment should be... Easy Fast Cheap
Everyone deploys on their first day!
Read only mode
MySQL on EC2 PostgreSQL on SoftLayer with no downtime http://lanyrd.com/blog/2012/lanyrds-big-move/
Cheap analytics
The History table
Internal metrics • created_at field on EVERY table, no exceptions
• Makes building graphs of site growth trivial • updated_at useful but not essential
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
None
Cheap tricks Feature flags Read only mode History table Daily
calculated reports http://lanyrd.com/sccqcy
None
None