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
Beyond Prototypes:A Journey to The Production L...
Search
OmaymaS
September 13, 2018
Technology
260
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Beyond Prototypes:A Journey to The Production Land_EARL2018
Slides of a talk presented at EARL London 2018 (
https://earlconf.com
)
OmaymaS
September 13, 2018
More Decks by OmaymaS
See All by OmaymaS
Drawing the F***ing Owl: How to Really Build AI-Based Products!
omaymas
0
87
WHAT ON EARTH ARE EMBEDDINGS?
omaymas
0
140
A GLIMPSE OF THE DATA SCIENCE AND MACHINE LEARNING WORLD IN PRACTICE
omaymas
0
120
Machine Learning System Dynamics: Beyond Model Development
omaymas
0
150
MACHINE LEARNING INTERPRETABILITY: WHY AND HOW!
omaymas
1
170
MACHINE LEARNING INTERPRETABILITY: WHY AND HOW!
omaymas
0
450
Interpreting Machine Learning Models: Why and How!
omaymas
0
960
Data Manipulation with dplyr (First Steps)
omaymas
2
2.3k
The Data Lorax: Planting The Seeds of Fairness in Data Products
omaymas
0
230
Other Decks in Technology
See All in Technology
freeeらしさをAIとともに作る / Creating the freee Experience with AI
ymrl
0
220
契約書画像からの情報抽出に特化した視覚接地モデルを育てる話
sansantech
PRO
1
160
ファミコンでPHPを動かす / PHP on the Famicom side b
tomzoh
0
140
子育てエンジニアの可処分時間が減っても成長を諦めない戦い方
sudoakiy
5
4.3k
生成AIで高い生産性を求められて、 悩み、乗り越えた話
mot_techtalk
2
150
Datadog の学び方 - あるいは、オブザーバビリティを学ぶとは何か
mananyuki
1
510
全PRの83%が AIレビューだけでマージできるようになった開発組織は その後どうなったか @2026/10
athug
0
130
Deep Data Security 機能解説
oracle4engineer
PRO
2
750
今さら理解するウェブフォントver.2026
takanorip
3
540
実践! SRE × AI - ABEMA における AIOps -
tetsuya28
7
2.6k
予測不能な実行エージェントを安全にサクッと試せるサンドボックス環境の話
sansantech
PRO
0
140
実体験から学ぶ分析エージェントの開発と運⽤
recruitengineers
PRO
8
1.9k
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Skip the Path - Find Your Career Trail
mkilby
1
250
Navigating Weather and Climate Data
rabernat
0
550
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
620
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
400
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
620
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.2k
Scaling GitHub
holman
464
140k
Embracing the Ebb and Flow
colly
88
5.2k
Bash Introduction
62gerente
615
220k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.8k
Transcript
Beyond Prototypes A Journey to The Production Land Omayma Said
OmaymaS
The Land of PROTOTYPES The Land of PRODUCTION
An excited Data Scientist!
Begin with the DATA PRODUCT in mind Bridging the prototypes
and production lands
Web API Begin with the DATA PRODUCT in mind Web
Application Reproducible Report Package Other
Think of the DATA PRODUCT as an answer to a
question Bridging the prototypes and production lands
Q: What is the matching score of application X in
job Y? A: Value returned from an endpoint (WEB API) Think of the DATA PRODUCT As an answer to a question
Q: How does the daily activity of the subscribed companies
look like ? A: Metrics shown and updated in a Dashboard Think of the DATA PRODUCT As an answer to a question
Q: How do different segments respond to our recommendations ?
A: Report/Presentation Think of the DATA PRODUCT As an answer to a question
Question +Data IN Answers/ Solutions OUT
Question +Data IN Answers/ Solutions OUT NOT always straightforward in
real life!
Real Life Challenges Reproducibility Portability Accessibility
Make the DATA PRODUCT accessible and user friendly Bridging the
prototypes and production lands
Rstudio Connect Rstudio/Shiny Server (open source) Docker Experimenting in the
land of production
Docker (Commands to build an image) (Executable package) (Running instance
of an image) Docker file Docker Image Docker Container
- Build this Dockerfile! - Install R - Install system
packages - Install shiny server - Install R packages - Expose port - Run Versus
- Run this docker image! - Install R - Install
system packages - Install shiny server - Install R packages - Expose port - Run Versus
FROM rocker/r-base MAINTAINER Jeff Allen <
[email protected]
> RUN apt-get update -qq
&& apt-get install -y \ git-core \ libssl-dev \ libcurl4-gnutls-dev RUN install2.r plumber EXPOSE 8000 ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=8000)"] CMD ["/usr/local/lib/R/site-library/plumber/examples/04-mean-sum/plumber.R"] How does a Dockerfile look like? https://hub.docker.com/r/trestletech/plumber
FROM rocker/r-base MAINTAINER Jeff Allen <
[email protected]
> RUN apt-get update -qq
&& apt-get install -y \ git-core \ libssl-dev \ libcurl4-gnutls-dev RUN install2.r plumber EXPOSE 8000 ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=8000)"] CMD ["/usr/local/lib/R/site-library/plumber/examples/04-mean-sum/plumber.R"] Install R How does a Dockerfile look like? https://hub.docker.com/r/trestletech/plumber
FROM rocker/r-base MAINTAINER Jeff Allen <
[email protected]
> RUN apt-get update -qq
&& apt-get install -y \ git-core \ libssl-dev \ libcurl4-gnutls-dev RUN install2.r plumber EXPOSE 8000 ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=8000)"] CMD ["/usr/local/lib/R/site-library/plumber/examples/04-mean-sum/plumber.R"] Install System Packages How does a Dockerfile look like? https://hub.docker.com/r/trestletech/plumber
FROM rocker/r-base MAINTAINER Jeff Allen <
[email protected]
> RUN apt-get update -qq
&& apt-get install -y \ git-core \ libssl-dev \ libcurl4-gnutls-dev RUN install2.r plumber EXPOSE 8000 ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=8000)"] CMD ["/usr/local/lib/R/site-library/plumber/examples/04-mean-sum/plumber.R"] Install plumber How does a Dockerfile look like? https://hub.docker.com/r/trestletech/plumber
FROM rocker/r-base MAINTAINER Jeff Allen <
[email protected]
> RUN apt-get update -qq
&& apt-get install -y \ git-core \ libssl-dev \ libcurl4-gnutls-dev RUN install2.r plumber EXPOSE 8000 ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=8000)"] CMD ["/usr/local/lib/R/site-library/plumber/examples/04-mean-sum/plumber.R"] Expose port How does a Dockerfile look like? https://hub.docker.com/r/trestletech/plumber
FROM rocker/r-base MAINTAINER Jeff Allen <
[email protected]
> RUN apt-get update -qq
&& apt-get install -y \ git-core \ libssl-dev \ libcurl4-gnutls-dev RUN install2.r plumber EXPOSE 8000 ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=8000)"] CMD ["/usr/local/lib/R/site-library/plumber/examples/04-mean-sum/plumber.R"] Run How does a Dockerfile look like? https://hub.docker.com/r/trestletech/plumber
Could someone help me write Dockerfiles?
2 1 Could someone help me write Dockerfiles? Use/Modify available
Dockerfiles Use helper packages
1 Use/Modify available Dockerfiles Could someone help me write Dockerfiles?
The Rocker Project github.com/rocker-org
The Rocker Project hub.docker.com/u/rocker
The Rocker Project docker pull <user/repo> docker run <image> hub.docker.com/u/rocker
2 Use helper packages Could someone help me write Dockerfiles?
Containerit containerit::dockerfile() Capture dependencies in session file workspace github.com/o2r-project/containerit
liftr github.com/road2stat/liftr liftr::lift(“foo.rmd”)
liftr --- title: "User Engagement Analysis" author: "Sara K." output:
rmarkdown::html_document liftr: maintainer: "Sara K." email: "
[email protected]
" cran: - dplyr --- github.com/road2stat/liftr
rize rize::shiny_dockerize() BUILD docker image CREATE Dockerfile github.com/cole-brokamp/rize app.R
The Land of PROTOTYPES The Land of PRODUCTION INTERCONNECTED
Begin with the DATA PRODUCT in mind Think of the
DATA PRODUCT As an answer to a question Make the DATA PRODUCT Accessible and user friendly https://speakerdeck.com/omaymas