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
Spinning out DeskBeers
Search
rodreegez
January 28, 2016
Business
0
46
Spinning out DeskBeers
A talk given at Monki Gras 2016
rodreegez
January 28, 2016
Tweet
Share
More Decks by rodreegez
See All by rodreegez
How to win Designers and influence Developers - MagmaConf 2014 edition
rodreegez
0
120
How To Win Designers And Influence Developers
rodreegez
2
330
DAFT - Deploy All the F*ing Time
rodreegez
0
250
Bug Requests & Pull Reports 2.0
rodreegez
1
320
Bug Requests & Pull Reports
rodreegez
2
140
Other Decks in Business
See All in Business
Atlassian Community Event Tokyo #69/ Confluence/JSM 全社導入展開 ナレッジマネジメント成功の秘訣
yo_freee
1
550
新卒エンジニア向け会社紹介資料/newgraduates-engineer
nextbeat
2
1.8k
AmbientNavi_紹介資料.pdf
ambientnavi0329
0
100
SHIFT ASIA 会社説明資料 V2.1
shiftasiarec
0
180
2ndPASS_リクルートガイド2024
akinodaichi
0
510
エンジニア→PM進化論
natty_natty254
2
190
ミラティブ「採用候補者さまへの手紙」 / mirrativ letter
mirrativ
4
390k
ホラクラシー組織の比較
hashiyaman
0
220
総合研究院の概要|Science Tokyo(東京科学大学)
sciencetokyo
PRO
0
1.4k
Fracta Leap 会社紹介資料 ver. 1.0
fracta_leap
PRO
0
180
RAKSUL Introduction / English Ver.
raksulrecruiting
0
370
Mercari-Fact-book_en
mercari_inc
1
24k
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
What's in a price? How to price your products and services
michaelherold
244
12k
Designing Experiences People Love
moore
140
23k
Code Review Best Practice
trishagee
67
18k
A designer walks into a library…
pauljervisheath
205
24k
Embracing the Ebb and Flow
colly
84
4.6k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Practical Orchestrator
shlominoach
186
10k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
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