SlideShare uma empresa Scribd logo
1 de 23
Baixar para ler offline
Welcome to
The Perfect World.
How fast you can onboard a new team member
• A Weboniser and Rubyist
• A Blogger(vparihar01.github.com)
• A Geek
• DevOps Guy
• An Aspiring Tech Innovator
• Tweet with @vparihar
And Me!
Agenda
● Why You Are Doing What You Are Doing?
● What’s Wrong With It?
● What Are My Options ?
● The Future You Ask ?
● Limitations or Known Gotchas?
● Our Take
● You have to develop an awesome application.
● The app is huge, challenging and most importantly cool
● Team of 10 - 15 includes Backend/Frontend Devs, Quality Analysts
etc.,
● You Need Rails , Node.js , Imagemagick , FFmpeg, Ruby Gems ,
MYSQL and even MongoDB.
1. Typical Project Scenario
Why You Are Doing… What You are Doing...
2. Setting up the development environment.
Why You Are Doing… What You are Doing...
● Ideally you’re going to want all 15 people on the team working on this
app to have identical development environments.
● You provide a readme file to each of the developer’s to start setting
up their machines.
● Even on the same team people can have different machine setups
and tool choices (Mac, Linux , Windows ).
● Problem ?
Even with a provide full fledge documentation for how to setup
the development environments can be a huge task.
eg: Windows machine yelling WTF is this Imagemagick , people
using Mac asking which is better macports vs homebrew vs fink.
What’s wrong with It?
● How long does it usually take for a
new team member to be ready to
work on your team ?
● What you do now ? Give him/her the
again a readme doc ?
● It might take a day or two or worse
existing team members time is also
wasted in setting up the machine for
him/her.
● Problem again ?
1. New team member on-boarding
What’s wrong with It?
2. Working on Multiple Projects
What’s wrong with It?
● Developers and QA working on different
projects , require different versions of
ruby , libraries , gems etc., installed on
their machine.
● How do you solve that ?
● Wait? Don’t we do that already? Isn’t that what RVM, NPM,MAVEN
and BUNDLER are for?
● They do great things for keeping Ruby versions separate and project
gems in isolation.
● But they do nothing to help with application dependencies like
Oracle, Passenger,Apache ,ImageMagick, Qt(for WebKit) etc., etc
● Problem Again ?
What’s Wrong With It?
Expression of a
dev, when asked
to work on a New
Project.
Who has not heard
this sentence?
Mostly during bug fixing , It's so common that each dev either it is
FrontEnd / Application Developer they keep saying and yelling at you
What Are My
Options ?
●
●
●
●
●
●
“ C’mon, what is this, two thousand ten? It’s the freakin’
future, man. Instructions for humans are nowhere near as
good as instructions for computers. Humans make mistakes,
misunderstand, and are generally not as fast as computers
when doing this kind of thing. We can tell the computer to do
stuff on our behalf while we watch videos of adorable
animals! ”
-Riley
What’s The Future You Ask ?
● It solves a very huge problem of “works on
my machine” by very common concept, that
is creating your own private VMs(virtual
machines)
● In simple words what I understood from
being a DevOps is taking Snapshot of your
instance or VM.
What’s The Future You Ask ?
Those who don't know about Snapshot's, here are some quotes from
Stackoverflow
"Snapshots : An exact capture of what a volume looked like at a
particular moment in time, including all it's data. You could have a
volume, attach it to your instance, fill it up with stuff like Rails , Node.js,
Imagemagick and FFmpeg(video conversion libraries), ruby gems
MySQL etc, then snapshot it, but keep using it.
What’s The Future You Ask ?
● Using Vagrant we can build development environments repeatedly
across Mac OS X, Windows, or Linux.
● A developer’s box kinda becomes this sketchy place where you just
really want to wash your hands after using it.
● Vagrant provides a great way to keep all of that nicely contained, per
project, and away from your precious development machine.
What’s The Future You Ask ?
● The cool thing about Vagrant is that you can create a full dev
environment, with every tool/library required for development already
installed and ready to use.
● Package this up (and the VM's configuration) into a single file that you
can use as a template.
● You have one single file that you distribute to your other team
member and everyone can then use the same environment in couple
of minutes without any hustle :) to build and break.
● New team member on-boarding? No Problem now.
What’s The Future You Ask ?
● If you do it right, you can even leverage your provisioning information
to provision your operational or test systems
● No more hunting down weird dependency problems or debugging.
● Push Vagrant to the limits, it supports the concept of multi-VMs By
using multi-VM support.
● Single vagrant up command, bring up an entire stack of clustered
nodes
● Vagrant interacts with VirtualBox mmm…. It might be the problem.
● If you run the virtual network editor on Windows, the forwarded ports
will suddenly stop working.. Happens sometimes :P
○ Run vagrant reload and things will begin working again.
● In some cases reported Vagrant is slow in Windows Machines….
○ Just Enabling DNS proxy in NAT mode
Limitations or Known Gotchas?
By choosing to use Vagrant, our projects and organization gain
some immediate benefits:
● Every developer is now working within identical development
environments. This eliminates a large portion of “works on my
machine” issues.
● No more READMEs per project, or having to ask DevOps for help, or
simply being lost.
Our Take
● Easy nuclear option
● When things go wrong, it can be
really disheartening to reinstall
your operating system.
● Instead put Vagrant to work !
● Take a coffee break and you’ll
be back up and running in no
time.
Our Take
● The development environments are now sandboxed within virtual
machines.
● First, the environments can replicated or run on any machine, it
doesn't matter if it is Linux, Mac OS X, Windows etc.
● Multiple projects with potentially conflicting dependencies can even
run side-by-side.
Our Take
Thank You!

Mais conteúdo relacionado

Mais procurados

PHP Conference Brasil 2013 - Virtualização e Provisionamento de Ambientes c...
PHP Conference Brasil 2013 - Virtualização e Provisionamento de Ambientes c...PHP Conference Brasil 2013 - Virtualização e Provisionamento de Ambientes c...
PHP Conference Brasil 2013 - Virtualização e Provisionamento de Ambientes c...Lucas Arruda
 
Bootstrapping Quality
Bootstrapping QualityBootstrapping Quality
Bootstrapping QualityMichael Roufa
 
Reactjs workshop (1)
Reactjs workshop (1)Reactjs workshop (1)
Reactjs workshop (1)Ahmed rebai
 
IntoWebGL - Unite Melbourne 2015
IntoWebGL - Unite Melbourne 2015IntoWebGL - Unite Melbourne 2015
IntoWebGL - Unite Melbourne 2015Ryan Alcock
 
7 recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...7 recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...César Hernández
 
Infrastructure as Data with Ansible
Infrastructure as Data with AnsibleInfrastructure as Data with Ansible
Infrastructure as Data with AnsibleCarlo Bonamico
 
The swiss knife of a word press developer
The swiss knife of a word press developerThe swiss knife of a word press developer
The swiss knife of a word press developerIvelina Dimova
 
Grunt js and WordPress
Grunt js and WordPressGrunt js and WordPress
Grunt js and WordPressWP Australia
 
The Shape of Speed
The Shape of SpeedThe Shape of Speed
The Shape of SpeedOliver Tse
 
JavaDay Lviv 2019 - Micronaut in action!
JavaDay Lviv 2019 - Micronaut in action!JavaDay Lviv 2019 - Micronaut in action!
JavaDay Lviv 2019 - Micronaut in action!Iván López Martín
 
2015: A static site generator odyssey
2015: A static site generator odyssey2015: A static site generator odyssey
2015: A static site generator odysseyOlga Skurativska
 
ChatBots for self-service DevOps
ChatBots for self-service DevOpsChatBots for self-service DevOps
ChatBots for self-service DevOpsSimon Massey
 
The Web We Weave :: How Web Developers Think About Performance
The Web We Weave :: How Web Developers Think About PerformanceThe Web We Weave :: How Web Developers Think About Performance
The Web We Weave :: How Web Developers Think About PerformanceOliver Tse
 
Project management frameworks for software developing
Project management frameworks for software developingProject management frameworks for software developing
Project management frameworks for software developingVicente Bolea
 
Testing Java Microservices: From Development to Production
Testing Java Microservices: From Development to ProductionTesting Java Microservices: From Development to Production
Testing Java Microservices: From Development to ProductionDaniel Bryant
 
WebAssembly with Rust
WebAssembly with RustWebAssembly with Rust
WebAssembly with RustKnoldus Inc.
 
PuppetConf 2015 - Testing - Richard Pijnenburg
PuppetConf 2015 - Testing - Richard PijnenburgPuppetConf 2015 - Testing - Richard Pijnenburg
PuppetConf 2015 - Testing - Richard PijnenburgRichard Pijnenburg
 
Put "fast" back in "fast feedback"
Put "fast" back in "fast feedback"Put "fast" back in "fast feedback"
Put "fast" back in "fast feedback"Lars Thorup
 

Mais procurados (19)

PHP Conference Brasil 2013 - Virtualização e Provisionamento de Ambientes c...
PHP Conference Brasil 2013 - Virtualização e Provisionamento de Ambientes c...PHP Conference Brasil 2013 - Virtualização e Provisionamento de Ambientes c...
PHP Conference Brasil 2013 - Virtualização e Provisionamento de Ambientes c...
 
Bootstrapping Quality
Bootstrapping QualityBootstrapping Quality
Bootstrapping Quality
 
Web pack and friends
Web pack and friendsWeb pack and friends
Web pack and friends
 
Reactjs workshop (1)
Reactjs workshop (1)Reactjs workshop (1)
Reactjs workshop (1)
 
IntoWebGL - Unite Melbourne 2015
IntoWebGL - Unite Melbourne 2015IntoWebGL - Unite Melbourne 2015
IntoWebGL - Unite Melbourne 2015
 
7 recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...7 recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
 
Infrastructure as Data with Ansible
Infrastructure as Data with AnsibleInfrastructure as Data with Ansible
Infrastructure as Data with Ansible
 
The swiss knife of a word press developer
The swiss knife of a word press developerThe swiss knife of a word press developer
The swiss knife of a word press developer
 
Grunt js and WordPress
Grunt js and WordPressGrunt js and WordPress
Grunt js and WordPress
 
The Shape of Speed
The Shape of SpeedThe Shape of Speed
The Shape of Speed
 
JavaDay Lviv 2019 - Micronaut in action!
JavaDay Lviv 2019 - Micronaut in action!JavaDay Lviv 2019 - Micronaut in action!
JavaDay Lviv 2019 - Micronaut in action!
 
2015: A static site generator odyssey
2015: A static site generator odyssey2015: A static site generator odyssey
2015: A static site generator odyssey
 
ChatBots for self-service DevOps
ChatBots for self-service DevOpsChatBots for self-service DevOps
ChatBots for self-service DevOps
 
The Web We Weave :: How Web Developers Think About Performance
The Web We Weave :: How Web Developers Think About PerformanceThe Web We Weave :: How Web Developers Think About Performance
The Web We Weave :: How Web Developers Think About Performance
 
Project management frameworks for software developing
Project management frameworks for software developingProject management frameworks for software developing
Project management frameworks for software developing
 
Testing Java Microservices: From Development to Production
Testing Java Microservices: From Development to ProductionTesting Java Microservices: From Development to Production
Testing Java Microservices: From Development to Production
 
WebAssembly with Rust
WebAssembly with RustWebAssembly with Rust
WebAssembly with Rust
 
PuppetConf 2015 - Testing - Richard Pijnenburg
PuppetConf 2015 - Testing - Richard PijnenburgPuppetConf 2015 - Testing - Richard Pijnenburg
PuppetConf 2015 - Testing - Richard Pijnenburg
 
Put "fast" back in "fast feedback"
Put "fast" back in "fast feedback"Put "fast" back in "fast feedback"
Put "fast" back in "fast feedback"
 

Destaque

MongoDb scalability and high availability with Replica-Set
MongoDb scalability and high availability with Replica-SetMongoDb scalability and high availability with Replica-Set
MongoDb scalability and high availability with Replica-SetVivek Parihar
 
Puppet Camp Melbourne Nov 2014 - A Build Engineering Team’s Journey of Infras...
Puppet Camp Melbourne Nov 2014 - A Build Engineering Team’s Journey of Infras...Puppet Camp Melbourne Nov 2014 - A Build Engineering Team’s Journey of Infras...
Puppet Camp Melbourne Nov 2014 - A Build Engineering Team’s Journey of Infras...Peter Leschev
 
Mobile First Approach - The key to cross platform interface design
Mobile First Approach - The key to cross platform interface designMobile First Approach - The key to cross platform interface design
Mobile First Approach - The key to cross platform interface designVivek Parihar
 
Making the Case for NoSQL
Making the Case for NoSQLMaking the Case for NoSQL
Making the Case for NoSQLDATAVERSITY
 
The importance of indexes in mongo db
The importance of indexes in mongo dbThe importance of indexes in mongo db
The importance of indexes in mongo dbJames Toyer
 
Evolution of mongodb
Evolution of mongodbEvolution of mongodb
Evolution of mongodbanshuman ravi
 
10 Deployments a day - A brief on extreme release protocols
10 Deployments a day - A brief on extreme release protocols10 Deployments a day - A brief on extreme release protocols
10 Deployments a day - A brief on extreme release protocolsVivek Parihar
 
Continuous Delivery and Zero Downtime
Continuous Delivery and Zero DowntimeContinuous Delivery and Zero Downtime
Continuous Delivery and Zero DowntimeAxel Fontaine
 
Meetup #5 Voiture Connectée à Paris
Meetup #5 Voiture Connectée à ParisMeetup #5 Voiture Connectée à Paris
Meetup #5 Voiture Connectée à ParisLaurent Dunys
 
diagnostico agroecologico
diagnostico agroecologicodiagnostico agroecologico
diagnostico agroecologicojorgern1912
 
Meetup #6 Voiture Connectée à Paris
Meetup #6 Voiture Connectée à ParisMeetup #6 Voiture Connectée à Paris
Meetup #6 Voiture Connectée à ParisLaurent Dunys
 

Destaque (13)

MongoDb scalability and high availability with Replica-Set
MongoDb scalability and high availability with Replica-SetMongoDb scalability and high availability with Replica-Set
MongoDb scalability and high availability with Replica-Set
 
Puppet Camp Melbourne Nov 2014 - A Build Engineering Team’s Journey of Infras...
Puppet Camp Melbourne Nov 2014 - A Build Engineering Team’s Journey of Infras...Puppet Camp Melbourne Nov 2014 - A Build Engineering Team’s Journey of Infras...
Puppet Camp Melbourne Nov 2014 - A Build Engineering Team’s Journey of Infras...
 
Mobile First Approach - The key to cross platform interface design
Mobile First Approach - The key to cross platform interface designMobile First Approach - The key to cross platform interface design
Mobile First Approach - The key to cross platform interface design
 
Hu mongous db v2
Hu mongous db v2Hu mongous db v2
Hu mongous db v2
 
Making the Case for NoSQL
Making the Case for NoSQLMaking the Case for NoSQL
Making the Case for NoSQL
 
The importance of indexes in mongo db
The importance of indexes in mongo dbThe importance of indexes in mongo db
The importance of indexes in mongo db
 
Evolution of mongodb
Evolution of mongodbEvolution of mongodb
Evolution of mongodb
 
10 Deployments a day - A brief on extreme release protocols
10 Deployments a day - A brief on extreme release protocols10 Deployments a day - A brief on extreme release protocols
10 Deployments a day - A brief on extreme release protocols
 
Continuous Delivery and Zero Downtime
Continuous Delivery and Zero DowntimeContinuous Delivery and Zero Downtime
Continuous Delivery and Zero Downtime
 
Meetup #5 Voiture Connectée à Paris
Meetup #5 Voiture Connectée à ParisMeetup #5 Voiture Connectée à Paris
Meetup #5 Voiture Connectée à Paris
 
Creative sonic ppt
Creative sonic pptCreative sonic ppt
Creative sonic ppt
 
diagnostico agroecologico
diagnostico agroecologicodiagnostico agroecologico
diagnostico agroecologico
 
Meetup #6 Voiture Connectée à Paris
Meetup #6 Voiture Connectée à ParisMeetup #6 Voiture Connectée à Paris
Meetup #6 Voiture Connectée à Paris
 

Semelhante a How fast can you onboard a new team member with VAGRANT ?

Beyond Local Development w/Kalabox (SFDUG July 2015)
Beyond Local Development w/Kalabox (SFDUG July 2015)Beyond Local Development w/Kalabox (SFDUG July 2015)
Beyond Local Development w/Kalabox (SFDUG July 2015)Alec Reynolds
 
WordPress Local Environments VVV
WordPress Local Environments   VVVWordPress Local Environments   VVV
WordPress Local Environments VVVAli Basheer
 
Bledar Gjocaj - Java open source
Bledar Gjocaj - Java open sourceBledar Gjocaj - Java open source
Bledar Gjocaj - Java open sourceOpen Labs Albania
 
Quo vadis, JavaScript? Devday.pl keynote
Quo vadis, JavaScript? Devday.pl keynoteQuo vadis, JavaScript? Devday.pl keynote
Quo vadis, JavaScript? Devday.pl keynoteChristian Heilmann
 
What can possibly go wrong if i dont e2 e test my packages?
What can possibly go wrong if i dont e2 e test my packages?What can possibly go wrong if i dont e2 e test my packages?
What can possibly go wrong if i dont e2 e test my packages?Juan Picado
 
Nodejs web service for starters
Nodejs web service for startersNodejs web service for starters
Nodejs web service for startersBruce Li
 
Magnificent Meteor -By Dipali Vyas (PM Zestard Technologies) for GDG Ahmedaba...
Magnificent Meteor -By Dipali Vyas (PM Zestard Technologies) for GDG Ahmedaba...Magnificent Meteor -By Dipali Vyas (PM Zestard Technologies) for GDG Ahmedaba...
Magnificent Meteor -By Dipali Vyas (PM Zestard Technologies) for GDG Ahmedaba...Dipali Vyas
 
Take Home Your Very Own Free Vagrant CFML Dev Environment
Take Home Your Very Own Free Vagrant CFML Dev Environment Take Home Your Very Own Free Vagrant CFML Dev Environment
Take Home Your Very Own Free Vagrant CFML Dev Environment ColdFusionConference
 
Take home your very own free Vagrant CFML Dev Environment - Presented at dev....
Take home your very own free Vagrant CFML Dev Environment - Presented at dev....Take home your very own free Vagrant CFML Dev Environment - Presented at dev....
Take home your very own free Vagrant CFML Dev Environment - Presented at dev....Gavin Pickin
 
30 Skills to Master to Become a Senior Software Engineer
30 Skills to Master to Become a Senior Software Engineer30 Skills to Master to Become a Senior Software Engineer
30 Skills to Master to Become a Senior Software EngineerSean Coates
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building ProductsHayden Bleasel
 
ZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small TeamsZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small TeamsJoe Ferguson
 
The JavaScript Delusion
The JavaScript DelusionThe JavaScript Delusion
The JavaScript DelusionJUGBD
 
Node.js vs. java which one should you choose for backend development
Node.js vs. java  which one should you choose for backend development Node.js vs. java  which one should you choose for backend development
Node.js vs. java which one should you choose for backend development Moon Technolabs Pvt. Ltd.
 
Why is .Net Technology Recognised for Software Development?
Why is .Net Technology Recognised for Software Development?Why is .Net Technology Recognised for Software Development?
Why is .Net Technology Recognised for Software Development?LOGINPHP360
 
From Ant to Rake
From Ant to RakeFrom Ant to Rake
From Ant to Rakejazzman1980
 

Semelhante a How fast can you onboard a new team member with VAGRANT ? (20)

Beyond Local Development w/Kalabox (SFDUG July 2015)
Beyond Local Development w/Kalabox (SFDUG July 2015)Beyond Local Development w/Kalabox (SFDUG July 2015)
Beyond Local Development w/Kalabox (SFDUG July 2015)
 
WordPress Local Environments VVV
WordPress Local Environments   VVVWordPress Local Environments   VVV
WordPress Local Environments VVV
 
Bledar Gjocaj - Java open source
Bledar Gjocaj - Java open sourceBledar Gjocaj - Java open source
Bledar Gjocaj - Java open source
 
Quo vadis, JavaScript? Devday.pl keynote
Quo vadis, JavaScript? Devday.pl keynoteQuo vadis, JavaScript? Devday.pl keynote
Quo vadis, JavaScript? Devday.pl keynote
 
02 Node introduction
02 Node introduction02 Node introduction
02 Node introduction
 
What can possibly go wrong if i dont e2 e test my packages?
What can possibly go wrong if i dont e2 e test my packages?What can possibly go wrong if i dont e2 e test my packages?
What can possibly go wrong if i dont e2 e test my packages?
 
Nodejs web service for starters
Nodejs web service for startersNodejs web service for starters
Nodejs web service for starters
 
Magnificent Meteor -By Dipali Vyas (PM Zestard Technologies) for GDG Ahmedaba...
Magnificent Meteor -By Dipali Vyas (PM Zestard Technologies) for GDG Ahmedaba...Magnificent Meteor -By Dipali Vyas (PM Zestard Technologies) for GDG Ahmedaba...
Magnificent Meteor -By Dipali Vyas (PM Zestard Technologies) for GDG Ahmedaba...
 
Take Home Your Very Own Free Vagrant CFML Dev Environment
Take Home Your Very Own Free Vagrant CFML Dev Environment Take Home Your Very Own Free Vagrant CFML Dev Environment
Take Home Your Very Own Free Vagrant CFML Dev Environment
 
Take home your very own free Vagrant CFML Dev Environment - Presented at dev....
Take home your very own free Vagrant CFML Dev Environment - Presented at dev....Take home your very own free Vagrant CFML Dev Environment - Presented at dev....
Take home your very own free Vagrant CFML Dev Environment - Presented at dev....
 
30 Skills to Master to Become a Senior Software Engineer
30 Skills to Master to Become a Senior Software Engineer30 Skills to Master to Become a Senior Software Engineer
30 Skills to Master to Become a Senior Software Engineer
 
Dev Ops without the Ops
Dev Ops without the OpsDev Ops without the Ops
Dev Ops without the Ops
 
Devops for drupal
Devops for  drupalDevops for  drupal
Devops for drupal
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building Products
 
ZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small TeamsZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small Teams
 
The JavaScript Delusion
The JavaScript DelusionThe JavaScript Delusion
The JavaScript Delusion
 
Node.js vs. java which one should you choose for backend development
Node.js vs. java  which one should you choose for backend development Node.js vs. java  which one should you choose for backend development
Node.js vs. java which one should you choose for backend development
 
Why is .Net Technology Recognised for Software Development?
Why is .Net Technology Recognised for Software Development?Why is .Net Technology Recognised for Software Development?
Why is .Net Technology Recognised for Software Development?
 
From Ant to Rake
From Ant to RakeFrom Ant to Rake
From Ant to Rake
 
Developers survival-guide
Developers survival-guideDevelopers survival-guide
Developers survival-guide
 

Mais de Vivek Parihar

A Git Workflow Model or Branching Strategy
A Git Workflow Model or Branching StrategyA Git Workflow Model or Branching Strategy
A Git Workflow Model or Branching StrategyVivek Parihar
 
Programming languages and concepts by vivek parihar
Programming languages and concepts by vivek pariharProgramming languages and concepts by vivek parihar
Programming languages and concepts by vivek pariharVivek Parihar
 
Case Study to build a tablet based app that is a shopping assistant.
Case Study to build a tablet based app that is a shopping assistant.Case Study to build a tablet based app that is a shopping assistant.
Case Study to build a tablet based app that is a shopping assistant.Vivek Parihar
 
Too much into acquisition without fixing retention problem: Let's Re-prioriti...
Too much into acquisition without fixing retention problem: Let's Re-prioriti...Too much into acquisition without fixing retention problem: Let's Re-prioriti...
Too much into acquisition without fixing retention problem: Let's Re-prioriti...Vivek Parihar
 
Devops for beginners
Devops for beginnersDevops for beginners
Devops for beginnersVivek Parihar
 
Centralized logging system using mongoDB
Centralized logging system using mongoDBCentralized logging system using mongoDB
Centralized logging system using mongoDBVivek Parihar
 
Cloud foundry presentation
Cloud foundry presentation Cloud foundry presentation
Cloud foundry presentation Vivek Parihar
 

Mais de Vivek Parihar (7)

A Git Workflow Model or Branching Strategy
A Git Workflow Model or Branching StrategyA Git Workflow Model or Branching Strategy
A Git Workflow Model or Branching Strategy
 
Programming languages and concepts by vivek parihar
Programming languages and concepts by vivek pariharProgramming languages and concepts by vivek parihar
Programming languages and concepts by vivek parihar
 
Case Study to build a tablet based app that is a shopping assistant.
Case Study to build a tablet based app that is a shopping assistant.Case Study to build a tablet based app that is a shopping assistant.
Case Study to build a tablet based app that is a shopping assistant.
 
Too much into acquisition without fixing retention problem: Let's Re-prioriti...
Too much into acquisition without fixing retention problem: Let's Re-prioriti...Too much into acquisition without fixing retention problem: Let's Re-prioriti...
Too much into acquisition without fixing retention problem: Let's Re-prioriti...
 
Devops for beginners
Devops for beginnersDevops for beginners
Devops for beginners
 
Centralized logging system using mongoDB
Centralized logging system using mongoDBCentralized logging system using mongoDB
Centralized logging system using mongoDB
 
Cloud foundry presentation
Cloud foundry presentation Cloud foundry presentation
Cloud foundry presentation
 

Último

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
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
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
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
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
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
 
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
 
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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 

Último (20)

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
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
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
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...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 

How fast can you onboard a new team member with VAGRANT ?

  • 1. Welcome to The Perfect World. How fast you can onboard a new team member
  • 2. • A Weboniser and Rubyist • A Blogger(vparihar01.github.com) • A Geek • DevOps Guy • An Aspiring Tech Innovator • Tweet with @vparihar And Me!
  • 3. Agenda ● Why You Are Doing What You Are Doing? ● What’s Wrong With It? ● What Are My Options ? ● The Future You Ask ? ● Limitations or Known Gotchas? ● Our Take
  • 4. ● You have to develop an awesome application. ● The app is huge, challenging and most importantly cool ● Team of 10 - 15 includes Backend/Frontend Devs, Quality Analysts etc., ● You Need Rails , Node.js , Imagemagick , FFmpeg, Ruby Gems , MYSQL and even MongoDB. 1. Typical Project Scenario Why You Are Doing… What You are Doing...
  • 5. 2. Setting up the development environment. Why You Are Doing… What You are Doing... ● Ideally you’re going to want all 15 people on the team working on this app to have identical development environments. ● You provide a readme file to each of the developer’s to start setting up their machines. ● Even on the same team people can have different machine setups and tool choices (Mac, Linux , Windows ). ● Problem ?
  • 6. Even with a provide full fledge documentation for how to setup the development environments can be a huge task. eg: Windows machine yelling WTF is this Imagemagick , people using Mac asking which is better macports vs homebrew vs fink. What’s wrong with It?
  • 7. ● How long does it usually take for a new team member to be ready to work on your team ? ● What you do now ? Give him/her the again a readme doc ? ● It might take a day or two or worse existing team members time is also wasted in setting up the machine for him/her. ● Problem again ? 1. New team member on-boarding What’s wrong with It?
  • 8. 2. Working on Multiple Projects What’s wrong with It? ● Developers and QA working on different projects , require different versions of ruby , libraries , gems etc., installed on their machine. ● How do you solve that ?
  • 9. ● Wait? Don’t we do that already? Isn’t that what RVM, NPM,MAVEN and BUNDLER are for? ● They do great things for keeping Ruby versions separate and project gems in isolation. ● But they do nothing to help with application dependencies like Oracle, Passenger,Apache ,ImageMagick, Qt(for WebKit) etc., etc ● Problem Again ? What’s Wrong With It?
  • 10. Expression of a dev, when asked to work on a New Project.
  • 11. Who has not heard this sentence? Mostly during bug fixing , It's so common that each dev either it is FrontEnd / Application Developer they keep saying and yelling at you
  • 12. What Are My Options ? ● ● ● ● ● ●
  • 13. “ C’mon, what is this, two thousand ten? It’s the freakin’ future, man. Instructions for humans are nowhere near as good as instructions for computers. Humans make mistakes, misunderstand, and are generally not as fast as computers when doing this kind of thing. We can tell the computer to do stuff on our behalf while we watch videos of adorable animals! ” -Riley What’s The Future You Ask ?
  • 14. ● It solves a very huge problem of “works on my machine” by very common concept, that is creating your own private VMs(virtual machines) ● In simple words what I understood from being a DevOps is taking Snapshot of your instance or VM. What’s The Future You Ask ?
  • 15. Those who don't know about Snapshot's, here are some quotes from Stackoverflow "Snapshots : An exact capture of what a volume looked like at a particular moment in time, including all it's data. You could have a volume, attach it to your instance, fill it up with stuff like Rails , Node.js, Imagemagick and FFmpeg(video conversion libraries), ruby gems MySQL etc, then snapshot it, but keep using it. What’s The Future You Ask ?
  • 16. ● Using Vagrant we can build development environments repeatedly across Mac OS X, Windows, or Linux. ● A developer’s box kinda becomes this sketchy place where you just really want to wash your hands after using it. ● Vagrant provides a great way to keep all of that nicely contained, per project, and away from your precious development machine. What’s The Future You Ask ?
  • 17. ● The cool thing about Vagrant is that you can create a full dev environment, with every tool/library required for development already installed and ready to use. ● Package this up (and the VM's configuration) into a single file that you can use as a template. ● You have one single file that you distribute to your other team member and everyone can then use the same environment in couple of minutes without any hustle :) to build and break. ● New team member on-boarding? No Problem now. What’s The Future You Ask ?
  • 18. ● If you do it right, you can even leverage your provisioning information to provision your operational or test systems ● No more hunting down weird dependency problems or debugging. ● Push Vagrant to the limits, it supports the concept of multi-VMs By using multi-VM support. ● Single vagrant up command, bring up an entire stack of clustered nodes
  • 19. ● Vagrant interacts with VirtualBox mmm…. It might be the problem. ● If you run the virtual network editor on Windows, the forwarded ports will suddenly stop working.. Happens sometimes :P ○ Run vagrant reload and things will begin working again. ● In some cases reported Vagrant is slow in Windows Machines…. ○ Just Enabling DNS proxy in NAT mode Limitations or Known Gotchas?
  • 20. By choosing to use Vagrant, our projects and organization gain some immediate benefits: ● Every developer is now working within identical development environments. This eliminates a large portion of “works on my machine” issues. ● No more READMEs per project, or having to ask DevOps for help, or simply being lost. Our Take
  • 21. ● Easy nuclear option ● When things go wrong, it can be really disheartening to reinstall your operating system. ● Instead put Vagrant to work ! ● Take a coffee break and you’ll be back up and running in no time. Our Take
  • 22. ● The development environments are now sandboxed within virtual machines. ● First, the environments can replicated or run on any machine, it doesn't matter if it is Linux, Mac OS X, Windows etc. ● Multiple projects with potentially conflicting dependencies can even run side-by-side. Our Take