SlideShare uma empresa Scribd logo
1 de 28
BOWER
POWER
Supercharging
Front-End Manageability
Code:
https://github.com/ecarlisle/bower-power
SHAMELESS SELF PROMOTION
Who?
What?
When?
Where?
Eric Carlisle (Consulting, LLC)
UI Developer, UX Designer
20-ish Years
Baltimore, MD
AGENDA
Why do I need this?
Why is it so awesome?
How does it work?
How can I be ultra-awesome with it?
Ever felt like this?
DEPENDENCY MANAGEMENT
MESSES
“WTF are we using already?”
“What version? Versions?!”
“Am I going to break it?”
“How can I optimize it?”
DEPENDENCY MANAGEMENT
MESSES
KISSAPPROACH
TAKE THE
DEPENDENCY MANAGEMENT
MESSES
Keep
It
Stunningly
Simple
DEPENDENCY MANAGEMENT
MESSES
Keep
It
Stunningly
Simple
‱ Increased Efficiency
‱ Reduced Cost
‱ Better Process
‱ Better Products
‱ Happy Team
‱ $$$
BOWER KEEPS IT SIMPLE
1. Maintains a dependency manifest.
2. Fetches them when you need it.
3. Tracks dependencies.
4. Integrates with everything.
(NOT A BUILD TOOL LIKE OR
)
PREREQUISITES
JavaScript runtime
Node.js package manager
version control system
Suggestion: The Git Bash shell for Windows:
PACKAGE MANAGEMENT SOUP
“WHICH SHOULD I USE?!”
OR
PACKAGE MANAGEMENT SOUP
“I SAY BOTH!!!”
AND
They are similar in many ways,
but also have unique strengths.
WHY BOWER TOO?
Bower focuses on client-side dependencies.
1. Abstracts, separates concerns.
2. Uses a flat dependency tree.
3. Lives and breathes Git.
4. Establishes accountability.
(For you & components developers too)
STARTING THE AWESOME
Crack open a command shell:
$ npm install –g bower
Use NPM to install Bower globally.
Initialize Bower configuration from your project root folder.
$ myProject bower init
Prepare for a bunch of questions.
If you have NPM configured, many defaults are taken from package.json.
THE BOWER.JSON MANIFAST
{
"name": "bower-power",
"version": ”1.0.0”,
"description": "Bower Power! Supercharging Front-End Manageability",
"main": “",
"authors": ["Eric Carlisle eric@ericcarlisle.com”],
"license": "MIT",
"keywords": ["Bower”, “Bower Training”],
"homepage": "https://github.com/ecarlisle/bower-power",
"moduleType": [],
"private": true,
"ignore": ["**/.*”, "node_modules”, "bower_components”, "test”, "tests”],
}
Included in your applications as well as the dependencies you will install.
(THERE’S ALSO .BOWERRC)
{
"directory": "app/components/",
"analytics": false,
"timeout": 300000,
"registry": {
"search": ["https://my-bower-server.local",
“https://bower.herokuapp.com”]
}
}
Fit Bower to some app & environment requirements.
BOWER API COMMANDS
cache
help
info
lookup
prune
register
unregister
link
login
version
Typical
Usage:init
install
list
search
update
uninstall
Component Dev: Utility:
INSTALLING DEPENDENCIES
# install by name
$ bower install jquery
# By (Github) shortcut
$ bower install twbs/bootstrap
# By GitHub and Subversion endpoints (SSH, HTTPS, HTTP)
$ bower install git@github.com:Modernizr/Modernizr.git
# By URL
$ bower install http://http://bower.io/img/bower-logo.png
# By folder
$ bower install ~/assets/stylesheets/theme3/variables.sass

 and several, several ways to choose versions.
There are many installation options

THE BOWER_COMPONENTS FOLDER
Contains EVERYTHING – often more than expected.
But that’s ok!
THE BOWER_COMPONENTS FOLDER
‱ Usually gets the dependency’s entire GitHub
repo.
‱ Sometimes results in positive discovery (Hey,
look!)
‱ Empowered to use whatever you need.
‱ Many ways to integrate needed files into your
TRACK WHAT WE NEED!
# install for production use.
$ bower install jquery --save
# Install for testing, debugging, development purposes only.
$ bower install modernizr --save-dev
"dependencies": { "jquery": "~2.1.4" },
"devDependencies": { "modernizr": ”~3.1.0"},
Production or Dev?
Then in bower.json:
SEMANTIC VERSIONING (SEMVER)
Versioning Pattern: MAJOR.MINOR.PATCH
STRICT
1.9.3
SIMPLE
>=1.9.3
CLOSE TO
~1.9.3
COMPATIBLE WITH
^1.9.3
EXAMPLES
INTEGRATE! INTEGRATE!
INTEGRATE!
INTEGRATE! INTEGRATE!
INTEGRATE!
GRUNT
PROGRAMS AND APIS
Bower Programmatic API
bower-installer
GULP INTEGRATION
gulp-bower
gulp-main-bower-files
GRUNT INTEGRATION
grunt-wiredep
BUILD & REGISTER A BOWER
PACKAGE
‱ Have a working GitHub repository.
‱ Please don’t squat dependency names.
‱ Make certain your bower.json is solid!
# Indicate package name and Github endpoint.
$ bower register my-package https://github.com/you/my-package.git
http://bower.io/search/Bower Registry:
Q/A
www.ericcarlisle.com
eric@ericcarlisle.com
@eric_carlisle

Mais conteĂșdo relacionado

Mais procurados

Packing for the Web with Webpack
Packing for the Web with WebpackPacking for the Web with Webpack
Packing for the Web with WebpackThiago Temple
 
Packing it all: JavaScript module bundling from 2000 to now
Packing it all: JavaScript module bundling from 2000 to nowPacking it all: JavaScript module bundling from 2000 to now
Packing it all: JavaScript module bundling from 2000 to nowDerek Willian Stavis
 
Node.js & Twitter Bootstrap Crash Course
Node.js & Twitter Bootstrap Crash CourseNode.js & Twitter Bootstrap Crash Course
Node.js & Twitter Bootstrap Crash CourseAaron Silverman
 
Once upon a time, there were css, js and server-side rendering
Once upon a time, there were css, js and server-side renderingOnce upon a time, there were css, js and server-side rendering
Once upon a time, there were css, js and server-side renderingAndrea Giannantonio
 
Webpack Tutorial, Uppsala JS
Webpack Tutorial, Uppsala JSWebpack Tutorial, Uppsala JS
Webpack Tutorial, Uppsala JSEmil Öberg
 
Webpack
Webpack Webpack
Webpack DataArt
 
Integrating Browserify with Sprockets
Integrating Browserify with SprocketsIntegrating Browserify with Sprockets
Integrating Browserify with SprocketsSpike Brehm
 
Cloud browser testing with Gradle and Geb
Cloud browser testing with Gradle and GebCloud browser testing with Gradle and Geb
Cloud browser testing with Gradle and GebDavid Carr
 
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]Let Grunt do the work, focus on the fun! [Open Web Camp 2013]
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]Dirk Ginader
 
Don't Over-React - just use Vue!
Don't Over-React - just use Vue!Don't Over-React - just use Vue!
Don't Over-React - just use Vue!Raymond Camden
 
Responsive Design with WordPress
Responsive Design with WordPressResponsive Design with WordPress
Responsive Design with WordPressJoe Casabona
 
Automating WordPress Theme Development
Automating WordPress Theme DevelopmentAutomating WordPress Theme Development
Automating WordPress Theme DevelopmentHardeep Asrani
 
HTTPS + Let's Encrypt
HTTPS + Let's EncryptHTTPS + Let's Encrypt
HTTPS + Let's EncryptWalter Ebert
 

Mais procurados (20)

Packing for the Web with Webpack
Packing for the Web with WebpackPacking for the Web with Webpack
Packing for the Web with Webpack
 
Packing it all: JavaScript module bundling from 2000 to now
Packing it all: JavaScript module bundling from 2000 to nowPacking it all: JavaScript module bundling from 2000 to now
Packing it all: JavaScript module bundling from 2000 to now
 
Node.js & Twitter Bootstrap Crash Course
Node.js & Twitter Bootstrap Crash CourseNode.js & Twitter Bootstrap Crash Course
Node.js & Twitter Bootstrap Crash Course
 
Nuxt Talk
Nuxt TalkNuxt Talk
Nuxt Talk
 
Once upon a time, there were css, js and server-side rendering
Once upon a time, there were css, js and server-side renderingOnce upon a time, there were css, js and server-side rendering
Once upon a time, there were css, js and server-side rendering
 
Nuxt.js - Introduction
Nuxt.js - IntroductionNuxt.js - Introduction
Nuxt.js - Introduction
 
An Intro into webpack
An Intro into webpackAn Intro into webpack
An Intro into webpack
 
Webpack Tutorial, Uppsala JS
Webpack Tutorial, Uppsala JSWebpack Tutorial, Uppsala JS
Webpack Tutorial, Uppsala JS
 
Webpack
Webpack Webpack
Webpack
 
Webpack slides
Webpack slidesWebpack slides
Webpack slides
 
Nodejs.meetup
Nodejs.meetupNodejs.meetup
Nodejs.meetup
 
Integrating Browserify with Sprockets
Integrating Browserify with SprocketsIntegrating Browserify with Sprockets
Integrating Browserify with Sprockets
 
Hello npm
Hello npmHello npm
Hello npm
 
Cloud browser testing with Gradle and Geb
Cloud browser testing with Gradle and GebCloud browser testing with Gradle and Geb
Cloud browser testing with Gradle and Geb
 
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]Let Grunt do the work, focus on the fun! [Open Web Camp 2013]
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]
 
Don't Over-React - just use Vue!
Don't Over-React - just use Vue!Don't Over-React - just use Vue!
Don't Over-React - just use Vue!
 
Responsive Design with WordPress
Responsive Design with WordPressResponsive Design with WordPress
Responsive Design with WordPress
 
Yeoman
YeomanYeoman
Yeoman
 
Automating WordPress Theme Development
Automating WordPress Theme DevelopmentAutomating WordPress Theme Development
Automating WordPress Theme Development
 
HTTPS + Let's Encrypt
HTTPS + Let's EncryptHTTPS + Let's Encrypt
HTTPS + Let's Encrypt
 

Destaque

ĐĐŸĐŸŃŃ„Đ”Ń€ĐœĐŸĐ” Đ·ĐœĐ°ĐœĐžĐ”
ĐĐŸĐŸŃŃ„Đ”Ń€ĐœĐŸĐ” Đ·ĐœĐ°ĐœĐžĐ”ĐĐŸĐŸŃŃ„Đ”Ń€ĐœĐŸĐ” Đ·ĐœĐ°ĐœĐžĐ”
ĐĐŸĐŸŃŃ„Đ”Ń€ĐœĐŸĐ” Đ·ĐœĐ°ĐœĐžĐ”lukoshka
 
Mother teresa[1]
Mother teresa[1]Mother teresa[1]
Mother teresa[1]Soo Yiying
 
Mvp2 edited
Mvp2 editedMvp2 edited
Mvp2 editedJill Bender
 
Working practices workbook
Working practices workbookWorking practices workbook
Working practices workbookharisshaikhPBM
 
АĐșŃĐžĐŸĐ»ĐŸĐłĐžŃ. Đ˜ŃŃ…ĐŸĐŽĐœĐ°Ń ĐžĐœŃ„ĐŸŃ€ĐŒĐ°Ń†ĐžŃ
АĐșŃĐžĐŸĐ»ĐŸĐłĐžŃ. Đ˜ŃŃ…ĐŸĐŽĐœĐ°Ń ĐžĐœŃ„ĐŸŃ€ĐŒĐ°Ń†ĐžŃĐĐșŃĐžĐŸĐ»ĐŸĐłĐžŃ. Đ˜ŃŃ…ĐŸĐŽĐœĐ°Ń ĐžĐœŃ„ĐŸŃ€ĐŒĐ°Ń†ĐžŃ
АĐșŃĐžĐŸĐ»ĐŸĐłĐžŃ. Đ˜ŃŃ…ĐŸĐŽĐœĐ°Ń ĐžĐœŃ„ĐŸŃ€ĐŒĐ°Ń†ĐžŃlukoshka
 
The undateables
The undateablesThe undateables
The undateablesbeckyhenry242
 
Egg Program - End 3rd year -
Egg Program - End 3rd year - Egg Program - End 3rd year -
Egg Program - End 3rd year - Ngovan93
 
Human Body - Nervous System
Human Body - Nervous SystemHuman Body - Nervous System
Human Body - Nervous Systemvzt00
 
InTouch scheduled communication
InTouch scheduled communicationInTouch scheduled communication
InTouch scheduled communicationJill Bender
 
ResĂ­duos de Solow industriais: um estudo empĂ­rico para o Brasil
ResĂ­duos de Solow industriais: um estudo empĂ­rico para o BrasilResĂ­duos de Solow industriais: um estudo empĂ­rico para o Brasil
ResĂ­duos de Solow industriais: um estudo empĂ­rico para o BrasilMatheus Albergaria
 
Storaging equipment 1
Storaging equipment 1Storaging equipment 1
Storaging equipment 1Ipris-Profil
 
Question 2
Question 2Question 2
Question 2lucygrace96
 
Youth business loanapplication 2014 complete
Youth business loanapplication 2014 completeYouth business loanapplication 2014 complete
Youth business loanapplication 2014 completeKamran Aziz
 
Engage vr jackson_quach
Engage vr jackson_quachEngage vr jackson_quach
Engage vr jackson_quachJackson Quach
 

Destaque (20)

ĐĐŸĐŸŃŃ„Đ”Ń€ĐœĐŸĐ” Đ·ĐœĐ°ĐœĐžĐ”
ĐĐŸĐŸŃŃ„Đ”Ń€ĐœĐŸĐ” Đ·ĐœĐ°ĐœĐžĐ”ĐĐŸĐŸŃŃ„Đ”Ń€ĐœĐŸĐ” Đ·ĐœĐ°ĐœĐžĐ”
ĐĐŸĐŸŃŃ„Đ”Ń€ĐœĐŸĐ” Đ·ĐœĐ°ĐœĐžĐ”
 
Mother teresa[1]
Mother teresa[1]Mother teresa[1]
Mother teresa[1]
 
Mvp2 edited
Mvp2 editedMvp2 edited
Mvp2 edited
 
Working practices workbook
Working practices workbookWorking practices workbook
Working practices workbook
 
Orange Dice Branding
Orange Dice BrandingOrange Dice Branding
Orange Dice Branding
 
New Presentation
New PresentationNew Presentation
New Presentation
 
АĐșŃĐžĐŸĐ»ĐŸĐłĐžŃ. Đ˜ŃŃ…ĐŸĐŽĐœĐ°Ń ĐžĐœŃ„ĐŸŃ€ĐŒĐ°Ń†ĐžŃ
АĐșŃĐžĐŸĐ»ĐŸĐłĐžŃ. Đ˜ŃŃ…ĐŸĐŽĐœĐ°Ń ĐžĐœŃ„ĐŸŃ€ĐŒĐ°Ń†ĐžŃĐĐșŃĐžĐŸĐ»ĐŸĐłĐžŃ. Đ˜ŃŃ…ĐŸĐŽĐœĐ°Ń ĐžĐœŃ„ĐŸŃ€ĐŒĐ°Ń†ĐžŃ
АĐșŃĐžĐŸĐ»ĐŸĐłĐžŃ. Đ˜ŃŃ…ĐŸĐŽĐœĐ°Ń ĐžĐœŃ„ĐŸŃ€ĐŒĐ°Ń†ĐžŃ
 
The undateables
The undateablesThe undateables
The undateables
 
Egg Program - End 3rd year -
Egg Program - End 3rd year - Egg Program - End 3rd year -
Egg Program - End 3rd year -
 
Task 4
Task 4Task 4
Task 4
 
Human Body - Nervous System
Human Body - Nervous SystemHuman Body - Nervous System
Human Body - Nervous System
 
Happiness as a business model - Delivering Happiness Carlos Piera Serra
Happiness as a business model - Delivering Happiness Carlos Piera SerraHappiness as a business model - Delivering Happiness Carlos Piera Serra
Happiness as a business model - Delivering Happiness Carlos Piera Serra
 
InTouch scheduled communication
InTouch scheduled communicationInTouch scheduled communication
InTouch scheduled communication
 
ResĂ­duos de Solow industriais: um estudo empĂ­rico para o Brasil
ResĂ­duos de Solow industriais: um estudo empĂ­rico para o BrasilResĂ­duos de Solow industriais: um estudo empĂ­rico para o Brasil
ResĂ­duos de Solow industriais: um estudo empĂ­rico para o Brasil
 
Storaging equipment 1
Storaging equipment 1Storaging equipment 1
Storaging equipment 1
 
Senthil _Updated _Resume_V1
Senthil _Updated _Resume_V1Senthil _Updated _Resume_V1
Senthil _Updated _Resume_V1
 
Task 4
Task 4Task 4
Task 4
 
Question 2
Question 2Question 2
Question 2
 
Youth business loanapplication 2014 complete
Youth business loanapplication 2014 completeYouth business loanapplication 2014 complete
Youth business loanapplication 2014 complete
 
Engage vr jackson_quach
Engage vr jackson_quachEngage vr jackson_quach
Engage vr jackson_quach
 

Semelhante a Bower power

Azure functions
Azure functionsAzure functions
Azure functionsvivek p s
 
Building a REST API Microservice for the DevNet API Scavenger Hunt
Building a REST API Microservice for the DevNet API Scavenger HuntBuilding a REST API Microservice for the DevNet API Scavenger Hunt
Building a REST API Microservice for the DevNet API Scavenger HuntAshley Roach
 
CCI2018 - Automatizzare la creazione di risorse con ARM template e PowerShell
CCI2018 - Automatizzare la creazione di risorse con ARM template e PowerShellCCI2018 - Automatizzare la creazione di risorse con ARM template e PowerShell
CCI2018 - Automatizzare la creazione di risorse con ARM template e PowerShellwalk2talk srl
 
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data FactorTechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data FactorErwin de Kreuk
 
Why Startups Are Still On AWS
Why Startups Are Still On AWSWhy Startups Are Still On AWS
Why Startups Are Still On AWSAmazon Web Services
 
Frontend Workflow
Frontend WorkflowFrontend Workflow
Frontend WorkflowDelphiCon
 
Azure, DevOps and the Commodore 64
Azure, DevOps and the Commodore 64Azure, DevOps and the Commodore 64
Azure, DevOps and the Commodore 64Todd Whitehead
 
Don't screw it up! How to build durable API
Don't screw it up! How to build durable API Don't screw it up! How to build durable API
Don't screw it up! How to build durable API Alessandro Cinelli (cirpo)
 
Scalable APIs with Azure Functions
Scalable APIs with Azure FunctionsScalable APIs with Azure Functions
Scalable APIs with Azure FunctionsChristos Matskas
 
Creating Scalable JVM/Java Apps on Heroku
Creating Scalable JVM/Java Apps on HerokuCreating Scalable JVM/Java Apps on Heroku
Creating Scalable JVM/Java Apps on HerokuJoe Kutner
 
Introduction to Ember.js and how we used it at FlowPro.io
Introduction to Ember.js and how we used it at FlowPro.ioIntroduction to Ember.js and how we used it at FlowPro.io
Introduction to Ember.js and how we used it at FlowPro.ioPaul Knittel
 
Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...
Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...
Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...Vadym Kazulkin
 
Swagger / Quick Start Guide
Swagger / Quick Start GuideSwagger / Quick Start Guide
Swagger / Quick Start GuideAndrii Gakhov
 
DataSaturdayNL 2019 Azure Key Vault, Azure Dev Ops and Azure Data Factory h...
DataSaturdayNL 2019  Azure Key Vault, Azure Dev Ops and Azure Data Factory  h...DataSaturdayNL 2019  Azure Key Vault, Azure Dev Ops and Azure Data Factory  h...
DataSaturdayNL 2019 Azure Key Vault, Azure Dev Ops and Azure Data Factory h...Erwin de Kreuk
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSDanilo Poccia
 
Serverless in production (O'Reilly Software Architecture)
Serverless in production (O'Reilly Software Architecture)Serverless in production (O'Reilly Software Architecture)
Serverless in production (O'Reilly Software Architecture)Yan Cui
 
ă‚Żăƒ©ă‚Šăƒ‰ïŒ†Azureć…„é–€ ă‚»ăƒƒă‚·ăƒ§ăƒł at Microsoft Ignite the Tour Tokyo 2019
ă‚Żăƒ©ă‚Šăƒ‰ïŒ†Azureć…„é–€ ă‚»ăƒƒă‚·ăƒ§ăƒł at Microsoft Ignite the Tour Tokyo 2019ă‚Żăƒ©ă‚Šăƒ‰ïŒ†Azureć…„é–€ ă‚»ăƒƒă‚·ăƒ§ăƒł at Microsoft Ignite the Tour Tokyo 2019
ă‚Żăƒ©ă‚Šăƒ‰ïŒ†Azureć…„é–€ ă‚»ăƒƒă‚·ăƒ§ăƒł at Microsoft Ignite the Tour Tokyo 2019Madoka Chiyoda
 
Azure Web SItes - Things they don't teach kids in school - Multi-Mania
Azure Web SItes - Things they don't teach kids in school - Multi-ManiaAzure Web SItes - Things they don't teach kids in school - Multi-Mania
Azure Web SItes - Things they don't teach kids in school - Multi-ManiaMaarten Balliauw
 
Making Sense Out of Amazon EC2 Container Service
Making Sense Out of Amazon EC2 Container ServiceMaking Sense Out of Amazon EC2 Container Service
Making Sense Out of Amazon EC2 Container ServiceSwapnil Dahiphale
 

Semelhante a Bower power (20)

Azure functions
Azure functionsAzure functions
Azure functions
 
Building a REST API Microservice for the DevNet API Scavenger Hunt
Building a REST API Microservice for the DevNet API Scavenger HuntBuilding a REST API Microservice for the DevNet API Scavenger Hunt
Building a REST API Microservice for the DevNet API Scavenger Hunt
 
CCI2018 - Automatizzare la creazione di risorse con ARM template e PowerShell
CCI2018 - Automatizzare la creazione di risorse con ARM template e PowerShellCCI2018 - Automatizzare la creazione di risorse con ARM template e PowerShell
CCI2018 - Automatizzare la creazione di risorse con ARM template e PowerShell
 
Making Sense out of Amazon ECS
Making Sense out of Amazon ECSMaking Sense out of Amazon ECS
Making Sense out of Amazon ECS
 
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data FactorTechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
 
Why Startups Are Still On AWS
Why Startups Are Still On AWSWhy Startups Are Still On AWS
Why Startups Are Still On AWS
 
Frontend Workflow
Frontend WorkflowFrontend Workflow
Frontend Workflow
 
Azure, DevOps and the Commodore 64
Azure, DevOps and the Commodore 64Azure, DevOps and the Commodore 64
Azure, DevOps and the Commodore 64
 
Don't screw it up! How to build durable API
Don't screw it up! How to build durable API Don't screw it up! How to build durable API
Don't screw it up! How to build durable API
 
Scalable APIs with Azure Functions
Scalable APIs with Azure FunctionsScalable APIs with Azure Functions
Scalable APIs with Azure Functions
 
Creating Scalable JVM/Java Apps on Heroku
Creating Scalable JVM/Java Apps on HerokuCreating Scalable JVM/Java Apps on Heroku
Creating Scalable JVM/Java Apps on Heroku
 
Introduction to Ember.js and how we used it at FlowPro.io
Introduction to Ember.js and how we used it at FlowPro.ioIntroduction to Ember.js and how we used it at FlowPro.io
Introduction to Ember.js and how we used it at FlowPro.io
 
Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...
Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...
Revolutionize DevOps with ML capabilities. Deep dive into Amazon CodeGuru and...
 
Swagger / Quick Start Guide
Swagger / Quick Start GuideSwagger / Quick Start Guide
Swagger / Quick Start Guide
 
DataSaturdayNL 2019 Azure Key Vault, Azure Dev Ops and Azure Data Factory h...
DataSaturdayNL 2019  Azure Key Vault, Azure Dev Ops and Azure Data Factory  h...DataSaturdayNL 2019  Azure Key Vault, Azure Dev Ops and Azure Data Factory  h...
DataSaturdayNL 2019 Azure Key Vault, Azure Dev Ops and Azure Data Factory h...
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWS
 
Serverless in production (O'Reilly Software Architecture)
Serverless in production (O'Reilly Software Architecture)Serverless in production (O'Reilly Software Architecture)
Serverless in production (O'Reilly Software Architecture)
 
ă‚Żăƒ©ă‚Šăƒ‰ïŒ†Azureć…„é–€ ă‚»ăƒƒă‚·ăƒ§ăƒł at Microsoft Ignite the Tour Tokyo 2019
ă‚Żăƒ©ă‚Šăƒ‰ïŒ†Azureć…„é–€ ă‚»ăƒƒă‚·ăƒ§ăƒł at Microsoft Ignite the Tour Tokyo 2019ă‚Żăƒ©ă‚Šăƒ‰ïŒ†Azureć…„é–€ ă‚»ăƒƒă‚·ăƒ§ăƒł at Microsoft Ignite the Tour Tokyo 2019
ă‚Żăƒ©ă‚Šăƒ‰ïŒ†Azureć…„é–€ ă‚»ăƒƒă‚·ăƒ§ăƒł at Microsoft Ignite the Tour Tokyo 2019
 
Azure Web SItes - Things they don't teach kids in school - Multi-Mania
Azure Web SItes - Things they don't teach kids in school - Multi-ManiaAzure Web SItes - Things they don't teach kids in school - Multi-Mania
Azure Web SItes - Things they don't teach kids in school - Multi-Mania
 
Making Sense Out of Amazon EC2 Container Service
Making Sense Out of Amazon EC2 Container ServiceMaking Sense Out of Amazon EC2 Container Service
Making Sense Out of Amazon EC2 Container Service
 

Último

Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...SUHANI PANDEY
 
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Call Girls in Nagpur High Profile
 
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...SUHANI PANDEY
 
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >àŒ’8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >àŒ’8448380779 Escort ServiceBusty Desi⚡Call Girls in Vasundhara Ghaziabad >àŒ’8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >àŒ’8448380779 Escort ServiceDelhi Call girls
 
20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdfMatthew Sinclair
 
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...SUHANI PANDEY
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtrahman018755
 
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)Delhi Call girls
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...tanu pandey
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...tanu pandey
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdfMatthew Sinclair
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.soniya singh
 
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...SUHANI PANDEY
 
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge GraphsEleniIlkou
 
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdfMatthew Sinclair
 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC
 
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...SUHANI PANDEY
 

Último (20)

Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
 
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
 
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
 
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >àŒ’8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >àŒ’8448380779 Escort ServiceBusty Desi⚡Call Girls in Vasundhara Ghaziabad >àŒ’8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >àŒ’8448380779 Escort Service
 
20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf
 
đŸ“±Dehradun Call Girls Service đŸ“±â˜Žïž +91'905,3900,678 â˜ŽïžđŸ“± Call Girls In Dehradun đŸ“±
đŸ“±Dehradun Call Girls Service đŸ“±â˜Žïž +91'905,3900,678 â˜ŽïžđŸ“± Call Girls In Dehradun đŸ“±đŸ“±Dehradun Call Girls Service đŸ“±â˜Žïž +91'905,3900,678 â˜ŽïžđŸ“± Call Girls In Dehradun đŸ“±
đŸ“±Dehradun Call Girls Service đŸ“±â˜Žïž +91'905,3900,678 â˜ŽïžđŸ“± Call Girls In Dehradun đŸ“±
 
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
 
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirt
 
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
 
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
 
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
 
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
 
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53
 
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
 

Bower power

Notas do Editor

  1. Bower is named after the bowerbird, a family of birds where males build a structure [the bower] and decorate it with sticks and brightly coloured objects in an attempt to attract a mate.
  2. BECAUSE
 You start asking yourself these questions. CODING ON QUICKSAND 1. Unmaintainable situation. 2. Common to a lot of projects, especially those that have history, multiple owners. You start asking yourself: 1. “This is impossible. I just need to rewrite this.” 2. There are clever ways to unravel and existing mess a. Scalable and Modular Architecture for CSS (Mina Markham – fantastic session name) b. What I’ll be presenting isn’t so much about unraveling an existing mess. c. Instead it’s about (being lucky and) getting a clean start and do our best to maintain it. d. Essentially preventing your X-Wing from getting stuck on a swamp.
  3. You’ve probably heard this advice before to avoid all kinds or production trouble. Do you all know what the KISS approach is? Just call it out if so. Well, I heard the one that most people use. In a situation where I’m managing a dependency nightmare, it’s more like

  4. STUNNINGLY SIMPLE: Special to achieve excellence this way. 1. If you haven’t already read The Toyota Way, I recommend. 2. Mantra of Kaizen or “Continuous Improvement.” 3. A big part of that is in creating and maintaining cleaner, simpler methodologies that were initially seemingly impossible. When it happens: 1. It’s initially funny because you just don’t believe it or trust it – “Nothing is ever this easy. What’s the catch?” 2. Once you start believing, we start having some gleeful “My life just got a lot better” 3. Definite pride component – you turned what was once elusive, bewildering, and frustrating into something easy. BUT TO MAKE THIS HAPPEN, YOU HAVE TO MAINTAIN THIS OVER TIME.
  5. And, of course, there’s the bottom line factor.
  6. - Examples of dependencies
  7. Funny note – you use NPM, the Node.JS package installer to install Bower. I can hear the voice of all my DevOps colleagues “Let me get this right? You’re using a package manager to install a package manager.”
  8. Now remember, at this point you’re already using NPM so the amount of “OR” in this equation is relative.
  9. I say “Use them both” – which is fairly controversial and a topic of many opinions. At first this seems contradictory because you might be saying to yourself: “Eric, you just told me to keep things simple and here you are using both.” But
 Note: By making this decision, we haven’t affected a project’s client-side footprint yet.
  10. “Why do I want to have two different manifests for dependencies?” Separating Cioncerns: 1. This is an opportunity for abstraction, ultimately organization. 2. Lot unlike deciding how you want to separate files in a folder tree. Flat Dependency Tree: 1. “One version to rule them all” - In the end, you’re have only one version of each dependency. 2. This is a huge concern for a front-end developer. 3. Note – recently NPM now has flat-tree capability – BUT I again defer to #1. Lives and Breathes Git: 1. There are many git-related versioning choices that work very well. 2. In addition to selecting a repo – branch, tag, commit. Accountability: 1. Since you have a flat dependency tree and one version of each dependency, your ultimately responsible for the version that works for you. 2. This also goes for people that develop the dependencies you’re using. They want to make sure that they’re also tracking their dependency resolutions.
  11. Many Questions: Some defaults are taken from package package.json. Keep in mind – some questions apply to the authoring of a bower package, so all may not apply.
  12. Fields: You don’t need them all filled out. Notice “private = true” For dependencies you install, these fields can be more important: Versioning Dependency tracking (Backbone has a dependency on Underscore)
  13. INSTALL FILES – REAL EXAMPLE WE’RE STILL NOT SENDING BYTES TO YOUR SITE
  14. Entire GitHub Repo: Sometimes the natural reaction to this is Only the ones you need: This can differ from resource to resource. jQuery – I just need jQuery.min.js and a sourcemap. Bootstrap – I make just want variables.less and grid.less to get scaffolding on my site. Integration: Build tools Build platforms like grunt and gulp. Another Node module like Bower Installer. .gitignore: No need to keep these files around all the time. Keep up with the versions you specify.
  15. Entire GitHub Repo: Sometimes the natural reaction to this is: “Why do I need the ENTIRE repo” “Am I also putting entire Git repos in my project” Only the ones you need: This can differ from resource to resource. jQuery – I just need jQuery.min.js and a sourcemap. Bootstrap – I make just want variables.less and grid.less to get scaffolding on my site. Integration: Build tools Build platforms like grunt and gulp. Another Node module like Bower Installer. .gitignore: No need to keep these files around all the time. Keep up with the versions you specify.
  16. RUN GULP BUILD1
  17. Important for you
  18. Most of what we’re using now comes out of the Node runtime. 1. Bower-installer – command-line tool. 2. Bower – API that you can use within your own Node applications. 3.
  19. Clean and simple.
  20. Clean and simple.
  21. Clean and simple.