Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Spinning out DeskBeers
Search
rodreegez
January 28, 2016
Business
71
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Spinning out DeskBeers
A talk given at Monki Gras 2016
rodreegez
January 28, 2016
More Decks by rodreegez
See All by rodreegez
How to win Designers and influence Developers - MagmaConf 2014 edition
rodreegez
0
150
How To Win Designers And Influence Developers
rodreegez
2
350
DAFT - Deploy All the F*ing Time
rodreegez
0
280
Bug Requests & Pull Reports 2.0
rodreegez
1
360
Bug Requests & Pull Reports
rodreegez
2
160
Other Decks in Business
See All in Business
Macbee Planet_会社紹介資料
macbeeplanet
0
200
エスキュービズム 会社紹介資料
human_resources
2
27k
丸石グループ会社紹介
maruishi
0
170
Armed Security Guards in Nashville: When Does Your Business Need Them?
firstclasssecurity1
0
220
家族アルバム みてね 事業紹介 / Our Business
familyalbum
9
64k
ラス恋カンパニーデック_260907
laskoi
0
700
CMB.TECH Q2 2026 earnings release
cmbtech
PRO
1
2.6k
reiwatravel ai era
reiwatravel_0405
0
1.2k
PMよ、エゴイストになれ!
suh1101
0
260
20260828_15minLT_データ分析10倍時代を考える
doradora09
PRO
0
990
株式会社レボルト採用deck
takemura_yuto
0
130
データマネジメント研修(デジタル庁)
haseryo
22
30k
Featured
See All Featured
How to make the Groovebox
asonas
2
2.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
My Coaching Mixtape
mlcsv
0
330
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
720
Joys of Absence: A Defence of Solitary Play
codingconduct
1
530
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
590
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
310
The SEO identity crisis: Don't let AI make you average
varn
0
560
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
570
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.5k
Transcript
SPINNING OUT
SPINNING OUT
DESKBEERS BEGAN AS A SIDE-PROJECT OF MINT BACK IN
NOV. 2013
SIMPLE PREMISE: DELIVER CRAFT BEER TO OFFICES.
AFTER A LITTLE OVER A YEAR, WE DECIDED WE HAD
A VIABLE BUSINESS.
MVP BUILT AND PROVEN.
100+ CUSTOMERS.
NON-TRIVIAL REVENUE.
CLEAR ROADMAP.
GRAND AMBITION.
WE DECIDED TO “SPIN OUT”.
IN MARCH 2015, WE COMPLETED A SEED ROUND VIA CROWDFUNDING.
DESKBEERS THE SIDE PROJECT BECAME DESKBEERS LTD.
SO FAR SO GOOD. WHAT NEXT?
A FINITE AMOUNT OF CASH IN THE BANK.
2 FULL-TIME EMPLOYEES.
OPERATION: DON’T GO BROKE.
USE COMPUTERS TO DO THINGS.
HOW DO WE MAKE SURE WE GET IT RIGHT?
DO THE WORK.
SPOT THE PATTERN.
WRITE THE CODE.
AN EXAMPLE:
EVERY WEEK WE BUY BEER FOR THE FOLLOWING WEEK.
DIFFERENT BREWERIES.
DIFFERENT QUANTITIES.
THINGS DON’T ALWAYS GO ACCORDING TO PLAN.
WHEN WE DON'T HAVE ENOUGH OF THIS WEEK’S BEER…
…IF WE’VE GOT ANY BEER IN STOCK, SEND THAT TO
NEW CUSTOMERS FIRST…
…AND / OR SEND EXISTING CUSTOMERS NEXT WEEK’S BEER.
EVERY WEEK WE DEAL WITH SOME VERSION OF THIS.
CAN GENERALLY BE SOLVED IN THE SAME WAY.
POTENTIAL BOXES = BOXES IN STOCK - CUSTOMER’S HISTORY
THIS IS A FORMULA…
…THAT CAN BE WRITTEN DOWN AS CODE…
…AND RUN AUTOMATICALLY.
“FOR EACH DESIRED CHANGE, MAKE THE CHANGE EASY (WARNING: THIS
MAY BE HARD), THEN MAKE THE EASY CHANGE” - @KENTBECK
WE NEED:
THE CONCEPT OF A “BOX”…
…THAT CAN BE APPLIED TO AN ORDER…
…THAT KNOWS ABOUT THE BEERS INSIDE IT…
…HOW MANY ARE IN STOCK…
…AND HOW LONG WE’VE HAD THEM.
potential_boxes = (boxes_in_stock - customer_history) chosen = potential_boxes.reject do |c|
c.quantity < @order.box_count end.first if chosen.present? @order.update_attribute(:box, chosen) chosen.decrement_quantity(@order.box_count) end
CREATING BOXES, STOCK MANAGEMENT & A BEER CMS WAS NOT
SO EASY.
CREATING A BOX- PICKING ALGORITHM AFTERWARDS WAS EASY.
IN ORDER TO “MAKE THE CHANGE EASY” WE HAD TO
REALLY UNDERSTAND THE PROBLEM.
AND FIND A LEVEL OF ABSTRACTION WE ARE CONFIDENT MAKES
SENSE.
THE WRONG ABSTRACTION IS FAR MORE DAMAGING THAN NO ABSTRACTION
AT ALL. - @SANDIMETZ
NOW WE HAVE A SIMPLE, EXTENDABLE, ROBUST SYSTEM FOR FUTURE
DEVELOPMENT.
PREFERENCES, RATINGS, MACHINE LEARNING? AI?
DO THE WORK
SPOT THE PATTERN
WRITE THE CODE
AUTOMATING THINGS IS OUR JOB.
THAT IS WHAT MAKES DESKBEERS A VIABLE BUSINESS…
…PROVIDE EXCELLENT CUSTOMER SERVICE…
…FIND F$*?ING GREAT BEER…
…DEVELOP NEW FEATURES…
…ACQUIRE NEW CUSTOMERS.
WHAT ELSE CAN WE AUTOMATE?
BOOKING DELIVERIES.
NOTIFYING CUSTOMERS.
ORDERING SUPPLIES.
ANYTHING ELSE WE SPEND TIME DOING.
DO THE WORK
SPOT THE PATTERN
WRITE THE CODE
CHEERS
@RODREEGEZ
None