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
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
プロポーザルに込める段取り八分
shoheimitani
1
580
Agent Skils
dip_tech
PRO
0
120
顧客の言葉を、そのまま信じない勇気
yamatai1212
1
360
コンテナセキュリティの最新事情 ~ 2026年版 ~
kyohmizu
2
490
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
180
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
250
SchooでVue.js/Nuxtを技術選定している理由
yamanoku
3
140
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.8k
20260208_第66回 コンピュータビジョン勉強会
keiichiito1978
0
190
Why Organizations Fail: ノーベル経済学賞「国家はなぜ衰退するのか」から考えるアジャイル組織論
kawaguti
PRO
1
140
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
990
Agile Leadership Summit Keynote 2026
m_seki
1
650
Featured
See All Featured
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
98
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3k
Believing is Seeing
oripsolob
1
57
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.6k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
1
100
Game over? The fight for quality and originality in the time of robots
wayneb77
1
120
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
0
3.4k
A better future with KSS
kneath
240
18k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
76
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
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