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
140
2
Share
Cheap tricks for startups
My talk from Monki Gras 2013 -
Simon Willison
January 31, 2013
More Decks by Simon Willison
See All by Simon Willison
Big Opportunities in Small Data
simon
0
580
Massively increase your productivity on personal projects with comprehensive documentation and automated tests
simon
1
2.8k
Datasette (CSVConf 2019)
simon
1
380
Instant serverless APIs, powered by SQLite
simon
1
1.8k
Datasette
simon
1
850
The denormalized query engine design pattern
simon
2
2.2k
Exploring complex data with Elasticsearch and Python
simon
1
840
Django Origins (and some things I have built with Django)
simon
1
280
Monitoring and Introspecting Django
simon
2
3.4k
Other Decks in Technology
See All in Technology
生成AIが変える SaaS の競争原理と弁護士ドットコムのプロダクト戦略
bengo4com
0
680
[最強DB講義]推薦システム | 基礎編
recsyslab
PRO
1
170
AI와 협업하는 조직으로의 여정
arawn
0
420
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3.1k
#jawsugyokohama 100 LT11, "My AWS Journey 2011-2026 - kwntravel"
shinichirokawano
0
350
The Journey of Box Building
tagomoris
4
2.6k
自立を加速させる神器 - EMOasis #11
stanby_inc
0
140
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
74k
MLOps導入のための組織作りの第一歩
akasan
0
330
「責任あるAIエージェント」こそ自社で開発しよう!
minorun365
9
2k
ぼくがかんがえたさいきょうのあうとぷっと
yama3133
0
190
AIはハッカーを減らすのか、増やすのか?──現役ホワイトハッカーから見るAI時代のリアル【MEGU-Meet】
cscengineer
0
160
Featured
See All Featured
Google's AI Overviews - The New Search
badams
0
980
How to Think Like a Performance Engineer
csswizardry
28
2.5k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.3k
Speed Design
sergeychernyshev
33
1.6k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
370
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
53k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Designing Powerful Visuals for Engaging Learning
tmiket
1
340
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.6k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
94
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