SlideShare une entreprise Scribd logo
1  sur  53
Télécharger pour lire hors ligne
How we make MOO
(cc) http://www.flickr.com/photos/laughingsquid




       What, moo?
more MOO
• Founded April 2006
• Launched September 2006
• shipped to 87 countries in the first month
• Offices in London
• 30 people
• Partners: Flickr, Facebook, Etsy, Bebo,
  iStockPhoto, etc, and you


A brief history
• Digital Print can be different, better (as well
  as) cheaper
• Make everyone a designer
• A consumer to{y,ol}, not a geeky machine
• Simplicity of experience trumps 'features'
• A global business from day 1

The MOO Philosophy
• How do you sell a 2.01D object?
• MOO has few 'advanced' users
• Printing, compiling, distributing, returning,
  fixing




Challenges
• Agile (-ish)
 • weekly releases
 • short projects (max 6-8 weeks)
 • bugs can lead to physical costs
 • Lots and lots of reporting and alerting,
    feedback.



Coding
• All the usuals, re: uptime etc
• 5% feedback to order ratio, declining each
  year
• <1% reprint rate due to code errors,
  declining each year




Tech metrics
• Growth slower than a pure online play
• Higher barrier to participation
• A data sink,
• Not a communication platform, either
  asynchronous, nor synchronous
• Hurrah, keeps costs low!
• Build for integrity, accuracy
Scaling Characteristics
• Store every image for reorders but must be
  accessible
• decrease in HD cost outstrips growth rate
• 6 months capacity max
• Why not S3, etc?



Storage
• Users don't linger (hurrah!) - find, make,
  checkout (~15 pageviews)
• International responsiveness is very
  important
• but growth rates are relatively predictable


CPU, bandwidth scaling
• US is our biggest market, but
• US performance was lower
• US Googlejuice was way lower
• US conversion was lower


Opening global datacentres
• virtually hosted squid caching proxies in NY
• 90% US traffic served from the US
• Googlejuice jump (but down slightly in UK!)
• model extends to other countries, flexes
  with demand
• <100 USD/month!

Solution
That sounds easy?


Scaling issues
• Customer service (cost, quality)
• Distribution
• Physical production
• Quality control


Scaling issues
• http://www.moo.com/service
• Actually feeds into Salesforce.com
• All other customer service tools are web-
  based and home grown




Customer Service
• 2 hours to implement (September 18th
  2006)
• Cheap (a few hundred dollars/year)
• Reliable
• Ugly, clunky, web 0.5 interface
• Slows down CSRs, hinders their ability to
  serve excellently


Salesforce.com
Workerbee
• At launch:
 • 1 product, 1 price, 1 currency, 1 shipping
    method, 1 shipping rate
• Now:
 • 23 products, 1 price, tiered multi-item
    discounts, 3 currencies, 2 shipping
    methods, variable discounted bulk
    shipping rates, 5 languages
• 495,038+ combinations
Hidden Complexity
• Global Airmail
• Vastly different local performance
• Weight/size limitations
• 2% of everything goes missing
• Returns

Distribution
• Used to outsource everything
• now we buy commodity printed sheets
• laminate, cut, pack, ship ourselves
• Why? QUALITY CONTROL, (cost),
  Turnaround time
• Every pack gets looked at by a human (not
  infallible, but...)
• One day, may insource printing
Finishing
• Conceived in London
• Designed in Oakland
• Made in China (via Hong Kong)
• lead time on proofs: weeks
• Quality control



Manufacturing
Quality Control


QA
• Top level measures
 • Nagios, MRTG
   • Orders/hour graphs, alerts
   • The Big Board
   • Daily email, all employees

Graphs and monitoring
The Big Board
• AJAX breaks ability to test
• Authenticated APIs break ability to test
  capacity/performance
• IE6 (2001) is *still* a bitch


Bugs
• Emails and Daily summaries of
 • PHP errors
 • PHP Fatal errors
 • (inc any SQL errors)
 • Apache errors
 • always save URI, browser details,
    stacktrace for these


Robot QA I
• Automated testing, using WATIR (Web
  automation testing in Ruby)
• ~400 tests run for rollout
• Ajax vs Flash vs PDF
• key thing: User gets what they ordered

Robot QA II
• Low cost product: error rate must be
  minimised
• A small % of CS queries can eat all your
  margin
• Want to deliver most sympathetic CS


Physical QA
• Calibration test sheets with every print run
• All orders, batches tracked by barcodes
• Error rates in Finishing closely monitored
• Rapid turnaround for reprints


Physical QA
• Every product has a control card
• but we like to make them fun




 QA Control
• Pitfalls of using a lot of APIs
• Authentication, scaling, performance
• Who builds?


APIs
money, atoms


MOO API
1. write-only API is for MOO Pack creation
2. Allow 100% flexibility in text and image layout on a
  pack of cards (eventually)
3. But make simple templates the default (now)
4. Be as easy to use as the Flickr API (or nearly so)
5. Provide decent preview tools for developers
6. Share revenue with API keyholders (after 1.0)



  (UN)DESIGN GOALS
1.Register for an API key (http://www.moo.com/api)
2.POST XML document to moo.com/api/api.php
3.Redirect users to MOO for checkout
4. Can specify return_path to bring user back to your site
  at the end




  HOW MOO WORKS
1 <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?>
    2 <moo xsi:noNamespaceSchemaLocation=quot;http://www.moo.com/xsd/api_0.6.xsdquot;
xmlns:xsi=quot;http://www.w3.org/2001/XMLSchema-instancequot;>
    3 <request> <version>0.6</version>
    4 <api_key> 88888888-4444-88888888-88888888-4444</api_key>
    5 <call>build</call>
    6 </request>




    STEP 2: Boilerplate crap
1 <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?>
    2 <moo xsi:noNamespaceSchemaLocation=quot;http://www.moo.com/xsd/api_0.6.xsdquot;
xmlns:xsi=quot;http://www.w3.org/2001/XMLSchema-instancequot;>
    3 <request> <version>0.6</version>
    4 <api_key> 88888888-4444-88888888-88888888-4444</api_key>
    5 <call>build</call>
    6 </request>
    7
    8 <payload> <chooser>
    9 <product_type>minicard</product_type>
   10 <images>
   11 <url>http://whitelabel.org/barcamplondon5.png</url>
   12 </images>
   13 </chooser> </payload> </moo>




     STEP 2: Payload
STEP 3: Redirect user to MOO checkout
1.Simplest format: drop upto 200 images, user chooses
  from within those.
2. Preselected images
3. Preselected images with specified crop, zoom data
4. Variable text, text colours, bold, etc




 Details: images
• can specify all text fields on all cards individually
  • 3 fonts (serif, sans serif, fixed)
  • bold
  • alignment (depending on product)
  • fully variable colour per text line
  • 600 different colours in a 100 pack of minicards
• avoid pale colors for text lines, especially yellows



  Details: text
Examples: variable text
• http://www.moo.com/api/validator.php
  • validates XML document
  • feedback
  • generates pdf preview




  Development and Testing
• Dan Coulter’s MOO-Builder library for PHP
• http://dancoulter.com/projects/moo-builder/
• supports all features of the API
• totally easy to use.




  http://dancoulter.com/projects/moo-
  builder/
http://dancoulter.com/projects/moo-
builder/
http://dancoulter.com/projects/moo-
builder/
• Ruby: http://gems.github.com/list.html
  (James Darling)
• PERL: http://search.cpan.org/dist/Net-Moo/ (Aaron
  Straup)
• .NET: http://www.unfinitydesign.com/blog/2/
  (Nathan Kleyn)




COBOL coming soon
http://www.tagmore.com/moo/
Ten Word Review
http://www.moolulu.com
• 15% Revenue Share to API key holders
  (we will pay retroactively!)
• Business cards
• Fully variable text and imaging positioning



 Coming soon
• Scaling, QA issues for a physical business
  are fundamentally different from a typical
  Web 2.0 business
• Must be tailored to maximising the
  customer experience whilst minimising
  costs




In Summary
Questions?
© Adam 'Apelad' Koford http://www.moo.com/designs/designers/adamkoford/


 Stefan Magdalinski, stefan@moo.com

Contenu connexe

Dernier

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 

Dernier (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 

En vedette

AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 

En vedette (20)

AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 

How we made MOO

  • 4. • Founded April 2006 • Launched September 2006 • shipped to 87 countries in the first month • Offices in London • 30 people • Partners: Flickr, Facebook, Etsy, Bebo, iStockPhoto, etc, and you A brief history
  • 5. • Digital Print can be different, better (as well as) cheaper • Make everyone a designer • A consumer to{y,ol}, not a geeky machine • Simplicity of experience trumps 'features' • A global business from day 1 The MOO Philosophy
  • 6. • How do you sell a 2.01D object? • MOO has few 'advanced' users • Printing, compiling, distributing, returning, fixing Challenges
  • 7. • Agile (-ish) • weekly releases • short projects (max 6-8 weeks) • bugs can lead to physical costs • Lots and lots of reporting and alerting, feedback. Coding
  • 8. • All the usuals, re: uptime etc • 5% feedback to order ratio, declining each year • <1% reprint rate due to code errors, declining each year Tech metrics
  • 9. • Growth slower than a pure online play • Higher barrier to participation • A data sink, • Not a communication platform, either asynchronous, nor synchronous • Hurrah, keeps costs low! • Build for integrity, accuracy Scaling Characteristics
  • 10. • Store every image for reorders but must be accessible • decrease in HD cost outstrips growth rate • 6 months capacity max • Why not S3, etc? Storage
  • 11. • Users don't linger (hurrah!) - find, make, checkout (~15 pageviews) • International responsiveness is very important • but growth rates are relatively predictable CPU, bandwidth scaling
  • 12. • US is our biggest market, but • US performance was lower • US Googlejuice was way lower • US conversion was lower Opening global datacentres
  • 13. • virtually hosted squid caching proxies in NY • 90% US traffic served from the US • Googlejuice jump (but down slightly in UK!) • model extends to other countries, flexes with demand • <100 USD/month! Solution
  • 15. • Customer service (cost, quality) • Distribution • Physical production • Quality control Scaling issues
  • 16. • http://www.moo.com/service • Actually feeds into Salesforce.com • All other customer service tools are web- based and home grown Customer Service
  • 17. • 2 hours to implement (September 18th 2006) • Cheap (a few hundred dollars/year) • Reliable • Ugly, clunky, web 0.5 interface • Slows down CSRs, hinders their ability to serve excellently Salesforce.com
  • 19. • At launch: • 1 product, 1 price, 1 currency, 1 shipping method, 1 shipping rate • Now: • 23 products, 1 price, tiered multi-item discounts, 3 currencies, 2 shipping methods, variable discounted bulk shipping rates, 5 languages • 495,038+ combinations Hidden Complexity
  • 20. • Global Airmail • Vastly different local performance • Weight/size limitations • 2% of everything goes missing • Returns Distribution
  • 21. • Used to outsource everything • now we buy commodity printed sheets • laminate, cut, pack, ship ourselves • Why? QUALITY CONTROL, (cost), Turnaround time • Every pack gets looked at by a human (not infallible, but...) • One day, may insource printing Finishing
  • 22. • Conceived in London • Designed in Oakland • Made in China (via Hong Kong) • lead time on proofs: weeks • Quality control Manufacturing
  • 24. • Top level measures • Nagios, MRTG • Orders/hour graphs, alerts • The Big Board • Daily email, all employees Graphs and monitoring
  • 26. • AJAX breaks ability to test • Authenticated APIs break ability to test capacity/performance • IE6 (2001) is *still* a bitch Bugs
  • 27. • Emails and Daily summaries of • PHP errors • PHP Fatal errors • (inc any SQL errors) • Apache errors • always save URI, browser details, stacktrace for these Robot QA I
  • 28. • Automated testing, using WATIR (Web automation testing in Ruby) • ~400 tests run for rollout • Ajax vs Flash vs PDF • key thing: User gets what they ordered Robot QA II
  • 29. • Low cost product: error rate must be minimised • A small % of CS queries can eat all your margin • Want to deliver most sympathetic CS Physical QA
  • 30. • Calibration test sheets with every print run • All orders, batches tracked by barcodes • Error rates in Finishing closely monitored • Rapid turnaround for reprints Physical QA
  • 31. • Every product has a control card • but we like to make them fun QA Control
  • 32. • Pitfalls of using a lot of APIs • Authentication, scaling, performance • Who builds? APIs
  • 34. 1. write-only API is for MOO Pack creation 2. Allow 100% flexibility in text and image layout on a pack of cards (eventually) 3. But make simple templates the default (now) 4. Be as easy to use as the Flickr API (or nearly so) 5. Provide decent preview tools for developers 6. Share revenue with API keyholders (after 1.0) (UN)DESIGN GOALS
  • 35. 1.Register for an API key (http://www.moo.com/api) 2.POST XML document to moo.com/api/api.php 3.Redirect users to MOO for checkout 4. Can specify return_path to bring user back to your site at the end HOW MOO WORKS
  • 36. 1 <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?> 2 <moo xsi:noNamespaceSchemaLocation=quot;http://www.moo.com/xsd/api_0.6.xsdquot; xmlns:xsi=quot;http://www.w3.org/2001/XMLSchema-instancequot;> 3 <request> <version>0.6</version> 4 <api_key> 88888888-4444-88888888-88888888-4444</api_key> 5 <call>build</call> 6 </request> STEP 2: Boilerplate crap
  • 37. 1 <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?> 2 <moo xsi:noNamespaceSchemaLocation=quot;http://www.moo.com/xsd/api_0.6.xsdquot; xmlns:xsi=quot;http://www.w3.org/2001/XMLSchema-instancequot;> 3 <request> <version>0.6</version> 4 <api_key> 88888888-4444-88888888-88888888-4444</api_key> 5 <call>build</call> 6 </request> 7 8 <payload> <chooser> 9 <product_type>minicard</product_type> 10 <images> 11 <url>http://whitelabel.org/barcamplondon5.png</url> 12 </images> 13 </chooser> </payload> </moo> STEP 2: Payload
  • 38. STEP 3: Redirect user to MOO checkout
  • 39. 1.Simplest format: drop upto 200 images, user chooses from within those. 2. Preselected images 3. Preselected images with specified crop, zoom data 4. Variable text, text colours, bold, etc Details: images
  • 40. • can specify all text fields on all cards individually • 3 fonts (serif, sans serif, fixed) • bold • alignment (depending on product) • fully variable colour per text line • 600 different colours in a 100 pack of minicards • avoid pale colors for text lines, especially yellows Details: text
  • 42. • http://www.moo.com/api/validator.php • validates XML document • feedback • generates pdf preview Development and Testing
  • 43. • Dan Coulter’s MOO-Builder library for PHP • http://dancoulter.com/projects/moo-builder/ • supports all features of the API • totally easy to use. http://dancoulter.com/projects/moo- builder/
  • 46. • Ruby: http://gems.github.com/list.html (James Darling) • PERL: http://search.cpan.org/dist/Net-Moo/ (Aaron Straup) • .NET: http://www.unfinitydesign.com/blog/2/ (Nathan Kleyn) COBOL coming soon
  • 50. • 15% Revenue Share to API key holders (we will pay retroactively!) • Business cards • Fully variable text and imaging positioning Coming soon
  • 51. • Scaling, QA issues for a physical business are fundamentally different from a typical Web 2.0 business • Must be tailored to maximising the customer experience whilst minimising costs In Summary
  • 53. © Adam 'Apelad' Koford http://www.moo.com/designs/designers/adamkoford/ Stefan Magdalinski, stefan@moo.com