SlideShare a Scribd company logo
1 of 57
Download to read offline
Rapid Prototyping
Yevgeniy Brikman
Go from an idea to working code quickly.
Why?
1. Build products faster
Why?
1. Build products faster
2. ???
Why?
1. Build products faster
2. ???
3. Profit!!
Why?
1. Build products faster
2. ???
3. Profit!!
Why?
1. Build products faster
2. Build products of higher quality
3. Profit!!
Why?
1. Build products faster
2. Build products of higher quality
3. Become a better engineer
Outline
1. Instant Feedback
2. Leverage
3. Beyond prototypes
Instant Feedback
The antithesis of rapid prototyping.
Change the code
Change the code See the result
Change the code See the result
Should be as close to 0 as possible
Use dynamic/interpreted languages
1. No waiting for compilation
Use dynamic/interpreted languages
1. No waiting for compilation
2. Generally more flexible and hackable
Use dynamic/interpreted languages
1. No waiting for compilation
2. Generally more flexible and hackable
3. "A programming language is for thinking of
programs, not for expressing programs
you've already thought of." [1]
[1] Paul Graham, Hackers and Painters
Use interactive languages
1. The REPL is your friend
Use interactive languages
1. The REPL is your friend
2. Some static languages support hot reload
(Play Framework, JRebel)
Use interactive languages
1. The REPL is your friend
2. Some static languages support hot reload
(Play Framework, JRebel)
3. IDEs can help too[1][2]
[1] Scala worksheet in Eclipse
[2] http://www.lighttable.com/
Push everything to the client
1. Modern browsers are powerful
Push everything to the client
1. Modern browsers are powerful
2. JS/CSS feedback loop is nearly
instantaneous
Push everything to the client
1. Modern browsers are powerful
2. JS/CSS feedback loop is nearly
instantaneous
3. Tight feedback loop in the browser often
leads to a better user experience
Demo
1. Frameworks: node-dev, express, play
2. Client-side MVC: backbone.js, underscore.js
3. In-browser: firebug, developer tools, jsfiddle,
tinkerbin
4. Other: CodeKit, apigee, js-api console
node-dev: restarts node on every change
Play Framework: modern web framework for Java and
Scala that supports hot reload
Chrome dev tools: inspect the page and change it on
the fly!
JSFiddle: create, run, and share HTML/CSS/JS snippets
right in the browser.
apigee: try out 3rd party APIs (LinkedIn, twitter, facebook,
etc) directly in the browser
Leverage
tldr: google & stackoverflow are your
friends
Don't reinvent the wheel
1. Always, always, always google first
Don't reinvent the wheel
1. Always, always, always google first
2. StackOverflow has the best answers
Don't reinvent the wheel
1. Always, always, always google first
2. StackOverflow has the best answers
3. You'll be lucky if you have a single original
idea your entire life [1]
[1] Mr. Patch, my 11th grade physics teacher
Use open source libraries
1. There is probably (more than) one for the
problem you're solving
Use open source libraries
1. There is probably (more than) one for the
problem you're solving
2. They have probably solved parts of the
problem you haven't thought of yet
Use open source libraries
1. There is probably (more than) one for the
problem you're solving
2. They have probably solved parts of the
problem you haven't thought of yet
3. Many minds are better than one
Use open source libraries
1. There is probably (more than) one for the
problem you're solving
2. They have probably solved parts of the
problem you haven't thought of yet
3. Many minds are better than one
4. Bonus: learn from their code
Demo
1. Backend: node modules, node toolbox,
ruby toolbox, mongo
2. JS: jQuery (UI, tools), backbone, underscore
3. UI: bootstrap, jetstrap, google fonts,
compass
4. Other: node.js screen scraping, lorem ipsum,
placekitten.com, localtunnel
ruby-toolbox: open source ruby libraries, broken down
by category, ranked by popularity and quality.
node-toolbox: open source node.js libraries, broken
down by category, ranked by popularity and quality.
jquery: the de-fact cross-browser JS library. Don’t leave
home without it.
underscore: dozens of extremely useful javascript
functions. The most popular library in npm.
bootstrap: frontend framework that makes it easy to
create a clean, responsive UI, even if you aren’t a CSS pro.
Google fonts: free fonts to use in your app
localtunnel: a quick way to share an app running on
localhost with the outside world
Beyond prototyping
All software development is trial and error.
A canvas or sketchbook serves as an
"external imagination", where an artist can
grow an idea from birth to maturity by
continuously reacting to what's in front of
him [1]
[1] Bret Victor, Learnable Programming
Only about 10% of the UI code written to
craft the experience lasted more than a year.
90% of the UI code needed to be thrown
away. [1]
[1] Bill Scott, The Experimentation Layer
Time
Maturity
Mature, stable
Proof of concept
Product development (technology comparison)
Dynamic/interpreted
languages Static languages
Idea
Time
Maturity
Mature, stable
Proof of concept
Dynamic/interpreted
languages Static languages
Innovation
Advantage
Product development (technology comparison)
Idea
Time
Maturity
Mature, stable
Proof of concept
RoR, Play
Servlets, Spring
Innovation
Advantage
Product development (framework comparison)
Idea
Time
Maturity
Mature, stable
Proof of concept
Agile, Scrum
Waterfall
Innovation
Advantage
Product development (development method comparison)
Idea
Faster can mean higher quality
1. In a trial and error world, getting to errors
faster is the key to success
Faster can mean higher quality
1. In a trial and error world, getting to errors
faster is the key to success
2. Making more errors leads to better software
and better engineers
Faster can mean higher quality
1. In a trial and error world, getting to errors
faster is the key to success
2. Making more errors leads to better software
and better engineers
3. Speed wins [1]
[1] A handwritten note on the door to the office of Stephen Kaufer, TripAdvisor CEO

More Related Content

What's hot

Preparing the pitch and deck v1
Preparing the pitch and deck v1Preparing the pitch and deck v1
Preparing the pitch and deck v1Marcin Zabielski
 
Taming technical debt
Taming technical debt Taming technical debt
Taming technical debt Panji Gautama
 
02_08_How to master the art of storytelling_Lior Shoham.pptx
02_08_How to master the art of storytelling_Lior Shoham.pptx02_08_How to master the art of storytelling_Lior Shoham.pptx
02_08_How to master the art of storytelling_Lior Shoham.pptxEuropean Innovation Academy
 
How to start a Startup - Sam Altman
How to start a Startup - Sam AltmanHow to start a Startup - Sam Altman
How to start a Startup - Sam AltmanMads Holmen
 
Lean startup, customer development, and the business model canvas
Lean startup, customer development, and the business model canvasLean startup, customer development, and the business model canvas
Lean startup, customer development, and the business model canvasgistinitiative
 
How to Pitch Your Startup to Investors
How to Pitch Your Startup to InvestorsHow to Pitch Your Startup to Investors
How to Pitch Your Startup to InvestorsJeremey Donovan
 
EMPOWERED - Achieving Extraordinary Results with Ordinary People" by Marty Cagan
EMPOWERED - Achieving Extraordinary Results with Ordinary People" by Marty CaganEMPOWERED - Achieving Extraordinary Results with Ordinary People" by Marty Cagan
EMPOWERED - Achieving Extraordinary Results with Ordinary People" by Marty CaganProductized
 
01_08_business models that will inspire_Calum Cameron_EIA Porto 2022.pptx
01_08_business models that will inspire_Calum Cameron_EIA Porto 2022.pptx01_08_business models that will inspire_Calum Cameron_EIA Porto 2022.pptx
01_08_business models that will inspire_Calum Cameron_EIA Porto 2022.pptxEuropean Innovation Academy
 
Pitch Deck Templates for Startups
Pitch Deck Templates for StartupsPitch Deck Templates for Startups
Pitch Deck Templates for StartupsNextView Ventures
 
Sendgrid pitch deck
Sendgrid pitch deckSendgrid pitch deck
Sendgrid pitch deckDavid Cohen
 
Pitch Deck-Format-NinzaBiz.com | investment Deck for Fund Raising
Pitch Deck-Format-NinzaBiz.com | investment Deck for Fund RaisingPitch Deck-Format-NinzaBiz.com | investment Deck for Fund Raising
Pitch Deck-Format-NinzaBiz.com | investment Deck for Fund RaisingShibam Sarbswa 🚀
 
Mixpanel - Our pitch deck that we used to raise $65M
Mixpanel - Our pitch deck that we used to raise $65MMixpanel - Our pitch deck that we used to raise $65M
Mixpanel - Our pitch deck that we used to raise $65MSuhail Doshi
 
Y Combinator Pitch Deck Template For Startup Founders
Y Combinator Pitch Deck Template For Startup FoundersY Combinator Pitch Deck Template For Startup Founders
Y Combinator Pitch Deck Template For Startup FoundersAA BB
 
Amity Pitch Deck (June 2014)
Amity Pitch Deck (June 2014)Amity Pitch Deck (June 2014)
Amity Pitch Deck (June 2014)Amity
 
Steve Blank's Secret History of Silicon Valley Computer History Museum 120708...
Steve Blank's Secret History of Silicon Valley Computer History Museum 120708...Steve Blank's Secret History of Silicon Valley Computer History Museum 120708...
Steve Blank's Secret History of Silicon Valley Computer History Museum 120708...Stanford University
 
2018 Emerging Models in Real Estate Report
2018 Emerging Models in Real Estate Report2018 Emerging Models in Real Estate Report
2018 Emerging Models in Real Estate ReportMike DelPrete
 
The Best Start Up Pitch
The Best Start Up PitchThe Best Start Up Pitch
The Best Start Up PitchAlpesh Patel
 
Be a Great Product Leader (Zynga 2016)
Be a Great Product Leader (Zynga 2016)Be a Great Product Leader (Zynga 2016)
Be a Great Product Leader (Zynga 2016)Adam Nash
 
How to Lead Customer Value Creation by Dan Olsen at Leading the Product Melbo...
How to Lead Customer Value Creation by Dan Olsen at Leading the Product Melbo...How to Lead Customer Value Creation by Dan Olsen at Leading the Product Melbo...
How to Lead Customer Value Creation by Dan Olsen at Leading the Product Melbo...Dan Olsen
 

What's hot (20)

50.000 orange stickies later
50.000 orange stickies later50.000 orange stickies later
50.000 orange stickies later
 
Preparing the pitch and deck v1
Preparing the pitch and deck v1Preparing the pitch and deck v1
Preparing the pitch and deck v1
 
Taming technical debt
Taming technical debt Taming technical debt
Taming technical debt
 
02_08_How to master the art of storytelling_Lior Shoham.pptx
02_08_How to master the art of storytelling_Lior Shoham.pptx02_08_How to master the art of storytelling_Lior Shoham.pptx
02_08_How to master the art of storytelling_Lior Shoham.pptx
 
How to start a Startup - Sam Altman
How to start a Startup - Sam AltmanHow to start a Startup - Sam Altman
How to start a Startup - Sam Altman
 
Lean startup, customer development, and the business model canvas
Lean startup, customer development, and the business model canvasLean startup, customer development, and the business model canvas
Lean startup, customer development, and the business model canvas
 
How to Pitch Your Startup to Investors
How to Pitch Your Startup to InvestorsHow to Pitch Your Startup to Investors
How to Pitch Your Startup to Investors
 
EMPOWERED - Achieving Extraordinary Results with Ordinary People" by Marty Cagan
EMPOWERED - Achieving Extraordinary Results with Ordinary People" by Marty CaganEMPOWERED - Achieving Extraordinary Results with Ordinary People" by Marty Cagan
EMPOWERED - Achieving Extraordinary Results with Ordinary People" by Marty Cagan
 
01_08_business models that will inspire_Calum Cameron_EIA Porto 2022.pptx
01_08_business models that will inspire_Calum Cameron_EIA Porto 2022.pptx01_08_business models that will inspire_Calum Cameron_EIA Porto 2022.pptx
01_08_business models that will inspire_Calum Cameron_EIA Porto 2022.pptx
 
Pitch Deck Templates for Startups
Pitch Deck Templates for StartupsPitch Deck Templates for Startups
Pitch Deck Templates for Startups
 
Sendgrid pitch deck
Sendgrid pitch deckSendgrid pitch deck
Sendgrid pitch deck
 
Pitch Deck-Format-NinzaBiz.com | investment Deck for Fund Raising
Pitch Deck-Format-NinzaBiz.com | investment Deck for Fund RaisingPitch Deck-Format-NinzaBiz.com | investment Deck for Fund Raising
Pitch Deck-Format-NinzaBiz.com | investment Deck for Fund Raising
 
Mixpanel - Our pitch deck that we used to raise $65M
Mixpanel - Our pitch deck that we used to raise $65MMixpanel - Our pitch deck that we used to raise $65M
Mixpanel - Our pitch deck that we used to raise $65M
 
Y Combinator Pitch Deck Template For Startup Founders
Y Combinator Pitch Deck Template For Startup FoundersY Combinator Pitch Deck Template For Startup Founders
Y Combinator Pitch Deck Template For Startup Founders
 
Amity Pitch Deck (June 2014)
Amity Pitch Deck (June 2014)Amity Pitch Deck (June 2014)
Amity Pitch Deck (June 2014)
 
Steve Blank's Secret History of Silicon Valley Computer History Museum 120708...
Steve Blank's Secret History of Silicon Valley Computer History Museum 120708...Steve Blank's Secret History of Silicon Valley Computer History Museum 120708...
Steve Blank's Secret History of Silicon Valley Computer History Museum 120708...
 
2018 Emerging Models in Real Estate Report
2018 Emerging Models in Real Estate Report2018 Emerging Models in Real Estate Report
2018 Emerging Models in Real Estate Report
 
The Best Start Up Pitch
The Best Start Up PitchThe Best Start Up Pitch
The Best Start Up Pitch
 
Be a Great Product Leader (Zynga 2016)
Be a Great Product Leader (Zynga 2016)Be a Great Product Leader (Zynga 2016)
Be a Great Product Leader (Zynga 2016)
 
How to Lead Customer Value Creation by Dan Olsen at Leading the Product Melbo...
How to Lead Customer Value Creation by Dan Olsen at Leading the Product Melbo...How to Lead Customer Value Creation by Dan Olsen at Leading the Product Melbo...
How to Lead Customer Value Creation by Dan Olsen at Leading the Product Melbo...
 

Similar to Rapid prototyping

The Ring programming language version 1.9 book - Part 97 of 210
The Ring programming language version 1.9 book - Part 97 of 210The Ring programming language version 1.9 book - Part 97 of 210
The Ring programming language version 1.9 book - Part 97 of 210Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 99 of 212
The Ring programming language version 1.10 book - Part 99 of 212The Ring programming language version 1.10 book - Part 99 of 212
The Ring programming language version 1.10 book - Part 99 of 212Mahmoud Samir Fayed
 
Java And Community Support
Java And Community SupportJava And Community Support
Java And Community SupportWilliam Grosso
 
The Ring programming language version 1.5.1 book - Part 173 of 180
The Ring programming language version 1.5.1 book - Part 173 of 180 The Ring programming language version 1.5.1 book - Part 173 of 180
The Ring programming language version 1.5.1 book - Part 173 of 180 Mahmoud Samir Fayed
 
The Ring programming language version 1.3 book - Part 81 of 88
The Ring programming language version 1.3 book - Part 81 of 88The Ring programming language version 1.3 book - Part 81 of 88
The Ring programming language version 1.3 book - Part 81 of 88Mahmoud Samir Fayed
 
Building an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learnedBuilding an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learnedWojciech Koszek
 
Webdev and programming
Webdev and programming  Webdev and programming
Webdev and programming George Ingram
 
Upwork time log and difficulty 20160523
Upwork time log and difficulty 20160523Upwork time log and difficulty 20160523
Upwork time log and difficulty 20160523Sharon Liu
 
Creating a compiler for your own language
Creating a compiler for your own languageCreating a compiler for your own language
Creating a compiler for your own languageAndrea Tino
 
Android Developer Training
Android Developer TrainingAndroid Developer Training
Android Developer Trainingfaizrashid1995
 
What is a "programmer"?
What is a "programmer"?What is a "programmer"?
What is a "programmer"?Jeff Crockett
 
Michael Widenius
Michael WideniusMichael Widenius
Michael WideniusCodeFest
 
Build your own Language - Why and How?
Build your own Language - Why and How?Build your own Language - Why and How?
Build your own Language - Why and How?Markus Voelter
 
Advanced java script essentials v1
Advanced java script essentials v1Advanced java script essentials v1
Advanced java script essentials v1ASHUTOSHPATKAR1
 
Advice for Computer Science freshers!
Advice for Computer Science freshers!Advice for Computer Science freshers!
Advice for Computer Science freshers!Karan Singh
 
The Ring programming language version 1.2 book - Part 77 of 84
The Ring programming language version 1.2 book - Part 77 of 84The Ring programming language version 1.2 book - Part 77 of 84
The Ring programming language version 1.2 book - Part 77 of 84Mahmoud Samir Fayed
 
Agile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovAgile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovSvetlin Nakov
 
Functional rotterdam-20-09-16
Functional rotterdam-20-09-16Functional rotterdam-20-09-16
Functional rotterdam-20-09-16Adrien Haxaire
 

Similar to Rapid prototyping (20)

The Ring programming language version 1.9 book - Part 97 of 210
The Ring programming language version 1.9 book - Part 97 of 210The Ring programming language version 1.9 book - Part 97 of 210
The Ring programming language version 1.9 book - Part 97 of 210
 
The Ring programming language version 1.10 book - Part 99 of 212
The Ring programming language version 1.10 book - Part 99 of 212The Ring programming language version 1.10 book - Part 99 of 212
The Ring programming language version 1.10 book - Part 99 of 212
 
Java And Community Support
Java And Community SupportJava And Community Support
Java And Community Support
 
The Ring programming language version 1.5.1 book - Part 173 of 180
The Ring programming language version 1.5.1 book - Part 173 of 180 The Ring programming language version 1.5.1 book - Part 173 of 180
The Ring programming language version 1.5.1 book - Part 173 of 180
 
The Ring programming language version 1.3 book - Part 81 of 88
The Ring programming language version 1.3 book - Part 81 of 88The Ring programming language version 1.3 book - Part 81 of 88
The Ring programming language version 1.3 book - Part 81 of 88
 
Building an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learnedBuilding an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learned
 
Webdev and programming
Webdev and programming  Webdev and programming
Webdev and programming
 
Python overview
Python overviewPython overview
Python overview
 
Upwork time log and difficulty 20160523
Upwork time log and difficulty 20160523Upwork time log and difficulty 20160523
Upwork time log and difficulty 20160523
 
Creating a compiler for your own language
Creating a compiler for your own languageCreating a compiler for your own language
Creating a compiler for your own language
 
Android Developer Training
Android Developer TrainingAndroid Developer Training
Android Developer Training
 
What is a "programmer"?
What is a "programmer"?What is a "programmer"?
What is a "programmer"?
 
Is Python still production ready ? Ludovic Gasc
Is Python still production ready ? Ludovic GascIs Python still production ready ? Ludovic Gasc
Is Python still production ready ? Ludovic Gasc
 
Michael Widenius
Michael WideniusMichael Widenius
Michael Widenius
 
Build your own Language - Why and How?
Build your own Language - Why and How?Build your own Language - Why and How?
Build your own Language - Why and How?
 
Advanced java script essentials v1
Advanced java script essentials v1Advanced java script essentials v1
Advanced java script essentials v1
 
Advice for Computer Science freshers!
Advice for Computer Science freshers!Advice for Computer Science freshers!
Advice for Computer Science freshers!
 
The Ring programming language version 1.2 book - Part 77 of 84
The Ring programming language version 1.2 book - Part 77 of 84The Ring programming language version 1.2 book - Part 77 of 84
The Ring programming language version 1.2 book - Part 77 of 84
 
Agile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovAgile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin Nakov
 
Functional rotterdam-20-09-16
Functional rotterdam-20-09-16Functional rotterdam-20-09-16
Functional rotterdam-20-09-16
 

More from Yevgeniy Brikman

Cloud adoption fails - 5 ways deployments go wrong and 5 solutions
Cloud adoption fails - 5 ways deployments go wrong and 5 solutionsCloud adoption fails - 5 ways deployments go wrong and 5 solutions
Cloud adoption fails - 5 ways deployments go wrong and 5 solutionsYevgeniy Brikman
 
How to test infrastructure code: automated testing for Terraform, Kubernetes,...
How to test infrastructure code: automated testing for Terraform, Kubernetes,...How to test infrastructure code: automated testing for Terraform, Kubernetes,...
How to test infrastructure code: automated testing for Terraform, Kubernetes,...Yevgeniy Brikman
 
Lessons learned from writing over 300,000 lines of infrastructure code
Lessons learned from writing over 300,000 lines of infrastructure codeLessons learned from writing over 300,000 lines of infrastructure code
Lessons learned from writing over 300,000 lines of infrastructure codeYevgeniy Brikman
 
Gruntwork Executive Summary
Gruntwork Executive SummaryGruntwork Executive Summary
Gruntwork Executive SummaryYevgeniy Brikman
 
Reusable, composable, battle-tested Terraform modules
Reusable, composable, battle-tested Terraform modulesReusable, composable, battle-tested Terraform modules
Reusable, composable, battle-tested Terraform modulesYevgeniy Brikman
 
The Truth About Startups: What I wish someone had told me about entrepreneurs...
The Truth About Startups: What I wish someone had told me about entrepreneurs...The Truth About Startups: What I wish someone had told me about entrepreneurs...
The Truth About Startups: What I wish someone had told me about entrepreneurs...Yevgeniy Brikman
 
An intro to Docker, Terraform, and Amazon ECS
An intro to Docker, Terraform, and Amazon ECSAn intro to Docker, Terraform, and Amazon ECS
An intro to Docker, Terraform, and Amazon ECSYevgeniy Brikman
 
Comprehensive Terraform Training
Comprehensive Terraform TrainingComprehensive Terraform Training
Comprehensive Terraform TrainingYevgeniy Brikman
 
Infrastructure as code: running microservices on AWS using Docker, Terraform,...
Infrastructure as code: running microservices on AWS using Docker, Terraform,...Infrastructure as code: running microservices on AWS using Docker, Terraform,...
Infrastructure as code: running microservices on AWS using Docker, Terraform,...Yevgeniy Brikman
 
A Guide to Hiring for your Startup
A Guide to Hiring for your StartupA Guide to Hiring for your Startup
A Guide to Hiring for your StartupYevgeniy Brikman
 
Node.js vs Play Framework (with Japanese subtitles)
Node.js vs Play Framework (with Japanese subtitles)Node.js vs Play Framework (with Japanese subtitles)
Node.js vs Play Framework (with Japanese subtitles)Yevgeniy Brikman
 
Composable and streamable Play apps
Composable and streamable Play appsComposable and streamable Play apps
Composable and streamable Play appsYevgeniy Brikman
 
Play Framework: async I/O with Java and Scala
Play Framework: async I/O with Java and ScalaPlay Framework: async I/O with Java and Scala
Play Framework: async I/O with Java and ScalaYevgeniy Brikman
 
The Play Framework at LinkedIn
The Play Framework at LinkedInThe Play Framework at LinkedIn
The Play Framework at LinkedInYevgeniy Brikman
 
Startup DNA: the formula behind successful startups in Silicon Valley (update...
Startup DNA: the formula behind successful startups in Silicon Valley (update...Startup DNA: the formula behind successful startups in Silicon Valley (update...
Startup DNA: the formula behind successful startups in Silicon Valley (update...Yevgeniy Brikman
 

More from Yevgeniy Brikman (20)

Cloud adoption fails - 5 ways deployments go wrong and 5 solutions
Cloud adoption fails - 5 ways deployments go wrong and 5 solutionsCloud adoption fails - 5 ways deployments go wrong and 5 solutions
Cloud adoption fails - 5 ways deployments go wrong and 5 solutions
 
How to test infrastructure code: automated testing for Terraform, Kubernetes,...
How to test infrastructure code: automated testing for Terraform, Kubernetes,...How to test infrastructure code: automated testing for Terraform, Kubernetes,...
How to test infrastructure code: automated testing for Terraform, Kubernetes,...
 
Lessons learned from writing over 300,000 lines of infrastructure code
Lessons learned from writing over 300,000 lines of infrastructure codeLessons learned from writing over 300,000 lines of infrastructure code
Lessons learned from writing over 300,000 lines of infrastructure code
 
Gruntwork Executive Summary
Gruntwork Executive SummaryGruntwork Executive Summary
Gruntwork Executive Summary
 
Reusable, composable, battle-tested Terraform modules
Reusable, composable, battle-tested Terraform modulesReusable, composable, battle-tested Terraform modules
Reusable, composable, battle-tested Terraform modules
 
The Truth About Startups: What I wish someone had told me about entrepreneurs...
The Truth About Startups: What I wish someone had told me about entrepreneurs...The Truth About Startups: What I wish someone had told me about entrepreneurs...
The Truth About Startups: What I wish someone had told me about entrepreneurs...
 
An intro to Docker, Terraform, and Amazon ECS
An intro to Docker, Terraform, and Amazon ECSAn intro to Docker, Terraform, and Amazon ECS
An intro to Docker, Terraform, and Amazon ECS
 
Comprehensive Terraform Training
Comprehensive Terraform TrainingComprehensive Terraform Training
Comprehensive Terraform Training
 
Infrastructure as code: running microservices on AWS using Docker, Terraform,...
Infrastructure as code: running microservices on AWS using Docker, Terraform,...Infrastructure as code: running microservices on AWS using Docker, Terraform,...
Infrastructure as code: running microservices on AWS using Docker, Terraform,...
 
Agility Requires Safety
Agility Requires SafetyAgility Requires Safety
Agility Requires Safety
 
A Guide to Hiring for your Startup
A Guide to Hiring for your StartupA Guide to Hiring for your Startup
A Guide to Hiring for your Startup
 
Startup DNA: Speed Wins
Startup DNA: Speed WinsStartup DNA: Speed Wins
Startup DNA: Speed Wins
 
Node.js vs Play Framework (with Japanese subtitles)
Node.js vs Play Framework (with Japanese subtitles)Node.js vs Play Framework (with Japanese subtitles)
Node.js vs Play Framework (with Japanese subtitles)
 
Node.js vs Play Framework
Node.js vs Play FrameworkNode.js vs Play Framework
Node.js vs Play Framework
 
Composable and streamable Play apps
Composable and streamable Play appsComposable and streamable Play apps
Composable and streamable Play apps
 
Play Framework: async I/O with Java and Scala
Play Framework: async I/O with Java and ScalaPlay Framework: async I/O with Java and Scala
Play Framework: async I/O with Java and Scala
 
The Play Framework at LinkedIn
The Play Framework at LinkedInThe Play Framework at LinkedIn
The Play Framework at LinkedIn
 
Kings of Code Hack Battle
Kings of Code Hack BattleKings of Code Hack Battle
Kings of Code Hack Battle
 
Hackdays and [in]cubator
Hackdays and [in]cubatorHackdays and [in]cubator
Hackdays and [in]cubator
 
Startup DNA: the formula behind successful startups in Silicon Valley (update...
Startup DNA: the formula behind successful startups in Silicon Valley (update...Startup DNA: the formula behind successful startups in Silicon Valley (update...
Startup DNA: the formula behind successful startups in Silicon Valley (update...
 

Recently uploaded

CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .Satyam Kumar
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)dollysharma2066
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvLewisJB
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...Chandu841456
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfAsst.prof M.Gokilavani
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx959SahilShah
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionDr.Costas Sachpazis
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.eptoze12
 
An introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptxAn introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptxPurva Nikam
 
Comparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization TechniquesComparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization Techniquesugginaramesh
 
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catcherssdickerson1
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
Risk Assessment For Installation of Drainage Pipes.pdf
Risk Assessment For Installation of Drainage Pipes.pdfRisk Assessment For Installation of Drainage Pipes.pdf
Risk Assessment For Installation of Drainage Pipes.pdfROCENODodongVILLACER
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxbritheesh05
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...srsj9000
 

Recently uploaded (20)

CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvv
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
 
Design and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdfDesign and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdf
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.
 
An introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptxAn introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptx
 
Comparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization TechniquesComparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization Techniques
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
Risk Assessment For Installation of Drainage Pipes.pdf
Risk Assessment For Installation of Drainage Pipes.pdfRisk Assessment For Installation of Drainage Pipes.pdf
Risk Assessment For Installation of Drainage Pipes.pdf
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptx
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
 

Rapid prototyping