SlideShare une entreprise Scribd logo
1  sur  35
Télécharger pour lire hors ligne
Automation
Justification
judy johnson
Onyx Point
@miz_j
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
NOTE
If you are watching me live, feel free to
drop a question using the Q&A chat
feature
If you’re not, you can always use twitter or
email and catch me later!
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Automation Justification
● What is Automation and how does it relate to DevOps
● Why we automate
● How we automate
● What we automate
● What we may not want to automate
● What to tell the naysayers
● The right combination
© 123RF.com
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Who am I?
● Started programming in middle school in the 19XXes when my Dad brought
home a PDP-8.
● Computer Science Degree
● Software engineer for [many] years in many languages and contexts
● Various career job titles: Software Engineer, Systems Engineer, Project
Manager, ScrumMaster, and a record store clerk.
● Onyx Point since 2015 (Disclaimer: views here are my own).
Outside of work - baking, hockey, rock concerts, reading, volunteering
(especially in events that promote diversity in tech)
● I have two daughters that are engineers!
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
...and what do I do?
● Coding
● Systems Engineering
● Team Lead
● ScrumMaster
● Reporting, general administrative junk
● AND I have hobbies outside of work…
Who has enough time?????
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
So… what is Automation?
Automation, or labor-saving technology is the technology by which a process or
procedure is performed with minimal human assistance. (Wikipedia)
A friend calls it, “optimizing
and transformation”
It’s a way to get machines
(computers, specifically) to do
the stuff I don’t have the time
(or want) to do? And with
minimal supervision!!??
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
What is DevOps?
DevOps is a set of practices that combines software development (Dev)
and IT operations (Ops). It aims to shorten the systems development life
cycle and provide continuous delivery with high software quality. DevOps
is complementary with Agile software development; several DevOps
aspects came from Agile methodology. (Wikipedia)
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Why is DevOps so important to me?
● I’m all about cooperation and
communication
● I like efficiency
● I like repeatability/consistency
● I think it’s important that everyone on the
team knows what everyone else is doing
● ...I like to automate stuff!
8
© 123RF
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Why is Automation important to DevOps?
My Personal DevOps Process
● Perform manually
● Document
● Script
● Test/Peer Review
● Release
● Monitor
● Retrospect and start again
Every step in this process brings improvement to your process, so even if you do
not get beyond the documentation step, you’re ahead...
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Why do we want to automate?
● Speed
● Consistency
● Cost-savings
● Reduce human error
● As part of CI Process
● Reduce tech debt
● Scalability - creating the ability to operate closer to production
limits (“just in time”)
● Flexibility to make changes on the fly, aided by short feedback loop
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Why do we want to automate
● Simplify startup/training for new employees (or hardware)
● Preserve enterprise knowledge
● Opportunities to update processes and procedures to boost
efficiency by eliminating repetition and/or redistributing staff.
● Allow humans to do less repetitive work and more meaningful work
(also decreasing the chance of negligence due to boredom)
● Learn as you automate (e.g. you are writing a hardware controller; as
you write code, you learn about the attributes you have control over)
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
...and what are we automating?
● Repeatable Processes
● Testing
● Deployment Processes
● Hardware/Software Status
● Metrics/Reporting
● Boring stuff (email sorting, etc)
● Data manipulation
● Processes/tests that take a lot of time
● Fun and convenient items (IFTTT)
© Thanks, Allie Brosh, “Hyperbole and a Half”
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
What are some of the tools and processes
● Coding and scripting languages - Ruby, Perl, Python, Java, etc
● Database tools
● CLIs, APIs
● Cron jobs
● Continuous Integration Tools (Jenkins, Travis, Gitlab-CI, etc)
● CM/Provisioning tools such as Puppet, Chef, Salt, Ansible
● ...and many more
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Code!
● “Quick” script
● Languages - C, Java, etc
● Spreadsheet formulas
● Database calls
● Web scripts
● Apps for your phone
● ...
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
CLIs and APIs
● Accessibility (screen-readers are happier
with plain text)
● Easy to read and recreate/repeat
● Often too many options to fit on a
readable GUI screen
...or too much output to view at once
● Return data in a format for reuse (.csv,
.json, etc)
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
CLIs
Let’s use the windows standard pkzip as an example…
Navigate this gui…
or use options --password --span here -- >
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
APIs
● “a set of functions and procedures allowing the creation of applications that
access the features or data of an operating system, application, or other
service.” – Wikipedia
● Get data needed from a function call rather than navigating
● Data is returned in a readable format
● Data can be manipulated before presented to the end user
17
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
An API in action
18
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
An API in action
19
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
CI Tools
....automate the parts of
software development
related to building,
testing, and deploying,
facilitating continuous
integration and
continuous delivery.
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Infrastructure Management Tools
...manage large-scale
server infrastructure
with minimal or no
human interaction.
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Other tools such as IFTTT
...enable your apps and
devices to work together to do
specific things they couldn't do
otherwise.
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Do you need to add Automation tools?
● Evaluate what tools are available to you already before you purchase
● Ensure you do a thorough study (“Analysis of Alternatives”) of what
you need and what is out there
● There are many good open source tools that could save you a lot of
money, but ensure that the capabilities you need are available in the
edition you select
● Note that everyone’s automation needs are slightly different, so even
if something comes highly recommended from another, it may not be
the best for you
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
But, wait!!!!
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
What are some reasons we might not automate
● The time to automate is longer than time to perform the task and
...the task is not performed often
● Interim results and statuses need to be available
● Security risk (e.g. plain-text passwords)
● Correct automation tools not available
● Trying to automate too much at once
● Training/startup costs
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
What are some reasons we might not automate
● Human intervention needed
● Creativity
● Human Interface Testing (Testing assumes
creative questioning and automation is not
ready to do that yet)
● Organizations become so dependent on
automation that may lose the ability to rethink
their own processes.
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
What about the naysayers
Some people don’t trust automation
● “If it isn’t broken, don’t fix it” mentality
● Don’t trust what they can’t control
● Lack of knowledge of tools
● Fear of losing a job
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
What about the naysayers
What do we tell them?
● Show them metrics
● Teach them how to use these tools to their advantage
● Ensure, as co-workers or bosses, that there’s cool stuff they can do
when their boring stuff is automated
● Be part of the solution! A manual tester can document and create
automated versions of their own tests - even this process has been
simplified by automation!
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Some Metrics that show what we’ve gained
● Cost
● Test coverage
● Customer Satisfaction
● Defects Found
● MTTR (mean time to recover)
● Time Saved on testing
● Time to release
● Risk
● # Test cases we can run (e.g. looping through multiple versions of O/S,
tools)
29
© 123RF
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
The Compromise
● Ensure you go through the steps of trying, documenting, etc to decide
whether to automate and how much
● Ensure that your management and team are comfortable with
decisions of what to automate, and, especially, which tools
● If you are converting a larger project, do your changes gradually
● Remember, there are places where it is totally appropriate to use
human creativity
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Automation and Baking...
Some creative tricks that make your store bought box mix
more exciting (in other words, “automate” the boring stuff, and add fun)
● Add crushed oreo cookies to a brownie mix
● Replace the oil in a brownie mix with red wine, or the water with coffee
● Use a cake mix, ⅓ c water and 2 eggs to get a quick cookie dough - add
chips, nuts, whatever looks good
● Brown sugar, pineapple, butter, and maraschino cherries make a boring
yellow cake into a pineapple upside-down cake
● Take a lemon cake mix, add white chocolate chips, bake into cookies, and
sprinkle with lemon kool-aid mixed with confectioners sugar
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
My D&I Slide
A look back at some of the ways Automation/DevOps are good for diversity &
Inclusion
● DevOps responsibilities include many that allow a new to the team/tool/field
to ease in (e.g. Documenting, Testing, Code Review)
● Text-based processes not only help CI/CD, but also are simpler for many to
use
● Automation allows for processing at odd hours with less human intervention,
thus less disruptive
● Cooperation, feedback (blameless post-mortem), scrum processes
encourage all to speak and participate
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Quotations
“If you automate a process that has errors, all you’ve done is automate the
generation of those errors.” – W.L.W. Borowiecki
“Automation won’t take your job, but the self-inflicted imprisonment of industrial
isolation will.” – Richie Norton
“Any daily work task that takes 5 minutes will cost over 20 hours a year, or over half
of a work week. Even if it takes 20 hours to automate that daily 5 minute task, the
automation will break even in a year.” – Anthony J. Stieber
"I will always choose a lazy person for a difficult job. Because, he will find an easy
way to do it." – Bill Gates
“You can’t automate stupid!” – Kitt
33
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
Thanks!
● Thanks for listening
● Thanks to the other speakers
● Thank you to my friends and co-workers
● Yay TechWell and xOps
● ...and Onyx Point
https://unsplash.com/ and
https://www.123rf.com/ (for photos)
Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit
© 123RF.com
In conclusion...
35

Contenu connexe

Tendances

Tendances (19)

20 Ideas On How To Improve Your Agile Board
20 Ideas On How To Improve Your Agile Board20 Ideas On How To Improve Your Agile Board
20 Ideas On How To Improve Your Agile Board
 
YOUR OPEN SOURCE PROJECT IS LIKE A STARTUP, TREAT IT LIKE ONE, EYAR ZILBERMAN...
YOUR OPEN SOURCE PROJECT IS LIKE A STARTUP, TREAT IT LIKE ONE, EYAR ZILBERMAN...YOUR OPEN SOURCE PROJECT IS LIKE A STARTUP, TREAT IT LIKE ONE, EYAR ZILBERMAN...
YOUR OPEN SOURCE PROJECT IS LIKE A STARTUP, TREAT IT LIKE ONE, EYAR ZILBERMAN...
 
DevOps Anti-Patterns
DevOps Anti-PatternsDevOps Anti-Patterns
DevOps Anti-Patterns
 
DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)
 
(Ignite) OPEN SOURCE - OPEN CHOICE: HOW TO CHOOSE AN OPEN-SOURCE PROJECT, HIL...
(Ignite) OPEN SOURCE - OPEN CHOICE: HOW TO CHOOSE AN OPEN-SOURCE PROJECT, HIL...(Ignite) OPEN SOURCE - OPEN CHOICE: HOW TO CHOOSE AN OPEN-SOURCE PROJECT, HIL...
(Ignite) OPEN SOURCE - OPEN CHOICE: HOW TO CHOOSE AN OPEN-SOURCE PROJECT, HIL...
 
Lean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partnerLean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partner
 
Devops for drupal
Devops for  drupalDevops for  drupal
Devops for drupal
 
Fundamental Principles of Software Development
Fundamental Principles of Software Development Fundamental Principles of Software Development
Fundamental Principles of Software Development
 
Technical Testing Webinar
Technical Testing WebinarTechnical Testing Webinar
Technical Testing Webinar
 
Continuous Infrastructure First
Continuous Infrastructure FirstContinuous Infrastructure First
Continuous Infrastructure First
 
Common Sense Software Development
Common Sense Software DevelopmentCommon Sense Software Development
Common Sense Software Development
 
10 years of #devopsdays, but what have we really learned ?
10 years of #devopsdays, but what have we really learned ? 10 years of #devopsdays, but what have we really learned ?
10 years of #devopsdays, but what have we really learned ?
 
Agile 2 - The Next Iteration of Agile - Lisa Cooney for Agile Nova 7-29-2021
Agile 2  - The Next Iteration of Agile - Lisa Cooney for Agile Nova 7-29-2021Agile 2  - The Next Iteration of Agile - Lisa Cooney for Agile Nova 7-29-2021
Agile 2 - The Next Iteration of Agile - Lisa Cooney for Agile Nova 7-29-2021
 
Andy Rachleff, Wealthfront Presentation at Lean Startup SXSW
Andy Rachleff, Wealthfront Presentation at Lean Startup SXSWAndy Rachleff, Wealthfront Presentation at Lean Startup SXSW
Andy Rachleff, Wealthfront Presentation at Lean Startup SXSW
 
Bringing Change to Life | YOW 2016 | Melbourne, Brisbane, Sydney - Australia
Bringing Change to Life | YOW 2016 | Melbourne, Brisbane, Sydney - AustraliaBringing Change to Life | YOW 2016 | Melbourne, Brisbane, Sydney - Australia
Bringing Change to Life | YOW 2016 | Melbourne, Brisbane, Sydney - Australia
 
DevOps Days Kyiv 2019 -- continuous Infrafirstructure First //Kris buytaert
DevOps Days Kyiv 2019 -- continuous Infrafirstructure First //Kris buytaertDevOps Days Kyiv 2019 -- continuous Infrafirstructure First //Kris buytaert
DevOps Days Kyiv 2019 -- continuous Infrafirstructure First //Kris buytaert
 
bringing design to life with lean ux & lean engineering - Lean Day West 2013
bringing design to life with  lean ux & lean engineering - Lean Day West 2013bringing design to life with  lean ux & lean engineering - Lean Day West 2013
bringing design to life with lean ux & lean engineering - Lean Day West 2013
 
DockerCon US 2016 - Scaling Open Source operations
DockerCon US 2016 - Scaling Open Source operationsDockerCon US 2016 - Scaling Open Source operations
DockerCon US 2016 - Scaling Open Source operations
 
8 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
8 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action8 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
8 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
 

Similaire à Automation Justification

QCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and MockitoQCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
Szczepan Faber
 

Similaire à Automation Justification (20)

The Science of Compliance
The Science of ComplianceThe Science of Compliance
The Science of Compliance
 
Don’t Let Process Hold You Back: Best Practices for Cross-Functional Collabor...
Don’t Let Process Hold You Back: Best Practices for Cross-Functional Collabor...Don’t Let Process Hold You Back: Best Practices for Cross-Functional Collabor...
Don’t Let Process Hold You Back: Best Practices for Cross-Functional Collabor...
 
Pusheando en master, que es gerundio
Pusheando en master, que es gerundioPusheando en master, que es gerundio
Pusheando en master, que es gerundio
 
5/ GitHub Inner Source @ OPEN'16
5/ GitHub Inner Source @ OPEN'165/ GitHub Inner Source @ OPEN'16
5/ GitHub Inner Source @ OPEN'16
 
UiPath Studiox session I
UiPath Studiox session IUiPath Studiox session I
UiPath Studiox session I
 
Functional Prototyping For Mobile Apps
Functional Prototyping For Mobile AppsFunctional Prototyping For Mobile Apps
Functional Prototyping For Mobile Apps
 
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and MockitoQCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
 
Tooling Matters - Development tools
Tooling Matters - Development toolsTooling Matters - Development tools
Tooling Matters - Development tools
 
When e-commerce meets Symfony
When e-commerce meets SymfonyWhen e-commerce meets Symfony
When e-commerce meets Symfony
 
You cant be agile if your code sucks
You cant be agile if your code sucksYou cant be agile if your code sucks
You cant be agile if your code sucks
 
Full stack conference talk slides
Full stack conference talk slidesFull stack conference talk slides
Full stack conference talk slides
 
Raising the Bar
Raising the BarRaising the Bar
Raising the Bar
 
Building a Beer Recommender with Yhat (PAPIs.io - November 2014)
Building a Beer Recommender with Yhat (PAPIs.io - November 2014)Building a Beer Recommender with Yhat (PAPIs.io - November 2014)
Building a Beer Recommender with Yhat (PAPIs.io - November 2014)
 
Content In The Age of AI
Content In The Age of AIContent In The Age of AI
Content In The Age of AI
 
Practical automation for beginners
Practical automation for beginnersPractical automation for beginners
Practical automation for beginners
 
Building and Scaling High Performing Technology Organizations by Jez Humble a...
Building and Scaling High Performing Technology Organizations by Jez Humble a...Building and Scaling High Performing Technology Organizations by Jez Humble a...
Building and Scaling High Performing Technology Organizations by Jez Humble a...
 
Agility via Software Engineering Practices - Agile Tour Montreal 2015
Agility via Software Engineering Practices - Agile Tour Montreal 2015Agility via Software Engineering Practices - Agile Tour Montreal 2015
Agility via Software Engineering Practices - Agile Tour Montreal 2015
 
Applied Data Science: Building a Beer Recommender | Data Science MD - Oct 2014
Applied Data Science: Building a Beer Recommender | Data Science MD - Oct 2014Applied Data Science: Building a Beer Recommender | Data Science MD - Oct 2014
Applied Data Science: Building a Beer Recommender | Data Science MD - Oct 2014
 
CI/CD: Lessons from LinkedIn and Mockito
CI/CD: Lessons from LinkedIn and MockitoCI/CD: Lessons from LinkedIn and Mockito
CI/CD: Lessons from LinkedIn and Mockito
 
Info Session GDSC USICT
Info Session GDSC USICTInfo Session GDSC USICT
Info Session GDSC USICT
 

Dernier

+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...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
+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...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
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
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
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...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
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
 
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
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
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...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Automation Justification

  • 2. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit NOTE If you are watching me live, feel free to drop a question using the Q&A chat feature If you’re not, you can always use twitter or email and catch me later!
  • 3. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Automation Justification ● What is Automation and how does it relate to DevOps ● Why we automate ● How we automate ● What we automate ● What we may not want to automate ● What to tell the naysayers ● The right combination © 123RF.com
  • 4. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Who am I? ● Started programming in middle school in the 19XXes when my Dad brought home a PDP-8. ● Computer Science Degree ● Software engineer for [many] years in many languages and contexts ● Various career job titles: Software Engineer, Systems Engineer, Project Manager, ScrumMaster, and a record store clerk. ● Onyx Point since 2015 (Disclaimer: views here are my own). Outside of work - baking, hockey, rock concerts, reading, volunteering (especially in events that promote diversity in tech) ● I have two daughters that are engineers!
  • 5. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit ...and what do I do? ● Coding ● Systems Engineering ● Team Lead ● ScrumMaster ● Reporting, general administrative junk ● AND I have hobbies outside of work… Who has enough time?????
  • 6. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit So… what is Automation? Automation, or labor-saving technology is the technology by which a process or procedure is performed with minimal human assistance. (Wikipedia) A friend calls it, “optimizing and transformation” It’s a way to get machines (computers, specifically) to do the stuff I don’t have the time (or want) to do? And with minimal supervision!!??
  • 7. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit What is DevOps? DevOps is a set of practices that combines software development (Dev) and IT operations (Ops). It aims to shorten the systems development life cycle and provide continuous delivery with high software quality. DevOps is complementary with Agile software development; several DevOps aspects came from Agile methodology. (Wikipedia)
  • 8. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Why is DevOps so important to me? ● I’m all about cooperation and communication ● I like efficiency ● I like repeatability/consistency ● I think it’s important that everyone on the team knows what everyone else is doing ● ...I like to automate stuff! 8 © 123RF
  • 9. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Why is Automation important to DevOps? My Personal DevOps Process ● Perform manually ● Document ● Script ● Test/Peer Review ● Release ● Monitor ● Retrospect and start again Every step in this process brings improvement to your process, so even if you do not get beyond the documentation step, you’re ahead...
  • 10. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Why do we want to automate? ● Speed ● Consistency ● Cost-savings ● Reduce human error ● As part of CI Process ● Reduce tech debt ● Scalability - creating the ability to operate closer to production limits (“just in time”) ● Flexibility to make changes on the fly, aided by short feedback loop
  • 11. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Why do we want to automate ● Simplify startup/training for new employees (or hardware) ● Preserve enterprise knowledge ● Opportunities to update processes and procedures to boost efficiency by eliminating repetition and/or redistributing staff. ● Allow humans to do less repetitive work and more meaningful work (also decreasing the chance of negligence due to boredom) ● Learn as you automate (e.g. you are writing a hardware controller; as you write code, you learn about the attributes you have control over)
  • 12. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit ...and what are we automating? ● Repeatable Processes ● Testing ● Deployment Processes ● Hardware/Software Status ● Metrics/Reporting ● Boring stuff (email sorting, etc) ● Data manipulation ● Processes/tests that take a lot of time ● Fun and convenient items (IFTTT) © Thanks, Allie Brosh, “Hyperbole and a Half”
  • 13. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit What are some of the tools and processes ● Coding and scripting languages - Ruby, Perl, Python, Java, etc ● Database tools ● CLIs, APIs ● Cron jobs ● Continuous Integration Tools (Jenkins, Travis, Gitlab-CI, etc) ● CM/Provisioning tools such as Puppet, Chef, Salt, Ansible ● ...and many more
  • 14. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Code! ● “Quick” script ● Languages - C, Java, etc ● Spreadsheet formulas ● Database calls ● Web scripts ● Apps for your phone ● ...
  • 15. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit CLIs and APIs ● Accessibility (screen-readers are happier with plain text) ● Easy to read and recreate/repeat ● Often too many options to fit on a readable GUI screen ...or too much output to view at once ● Return data in a format for reuse (.csv, .json, etc)
  • 16. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit CLIs Let’s use the windows standard pkzip as an example… Navigate this gui… or use options --password --span here -- >
  • 17. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit APIs ● “a set of functions and procedures allowing the creation of applications that access the features or data of an operating system, application, or other service.” – Wikipedia ● Get data needed from a function call rather than navigating ● Data is returned in a readable format ● Data can be manipulated before presented to the end user 17
  • 18. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit An API in action 18
  • 19. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit An API in action 19
  • 20. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit CI Tools ....automate the parts of software development related to building, testing, and deploying, facilitating continuous integration and continuous delivery.
  • 21. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Infrastructure Management Tools ...manage large-scale server infrastructure with minimal or no human interaction.
  • 22. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Other tools such as IFTTT ...enable your apps and devices to work together to do specific things they couldn't do otherwise.
  • 23. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Do you need to add Automation tools? ● Evaluate what tools are available to you already before you purchase ● Ensure you do a thorough study (“Analysis of Alternatives”) of what you need and what is out there ● There are many good open source tools that could save you a lot of money, but ensure that the capabilities you need are available in the edition you select ● Note that everyone’s automation needs are slightly different, so even if something comes highly recommended from another, it may not be the best for you
  • 24. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit But, wait!!!!
  • 25. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit What are some reasons we might not automate ● The time to automate is longer than time to perform the task and ...the task is not performed often ● Interim results and statuses need to be available ● Security risk (e.g. plain-text passwords) ● Correct automation tools not available ● Trying to automate too much at once ● Training/startup costs
  • 26. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit What are some reasons we might not automate ● Human intervention needed ● Creativity ● Human Interface Testing (Testing assumes creative questioning and automation is not ready to do that yet) ● Organizations become so dependent on automation that may lose the ability to rethink their own processes.
  • 27. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit What about the naysayers Some people don’t trust automation ● “If it isn’t broken, don’t fix it” mentality ● Don’t trust what they can’t control ● Lack of knowledge of tools ● Fear of losing a job
  • 28. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit What about the naysayers What do we tell them? ● Show them metrics ● Teach them how to use these tools to their advantage ● Ensure, as co-workers or bosses, that there’s cool stuff they can do when their boring stuff is automated ● Be part of the solution! A manual tester can document and create automated versions of their own tests - even this process has been simplified by automation!
  • 29. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Some Metrics that show what we’ve gained ● Cost ● Test coverage ● Customer Satisfaction ● Defects Found ● MTTR (mean time to recover) ● Time Saved on testing ● Time to release ● Risk ● # Test cases we can run (e.g. looping through multiple versions of O/S, tools) 29 © 123RF
  • 30. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit The Compromise ● Ensure you go through the steps of trying, documenting, etc to decide whether to automate and how much ● Ensure that your management and team are comfortable with decisions of what to automate, and, especially, which tools ● If you are converting a larger project, do your changes gradually ● Remember, there are places where it is totally appropriate to use human creativity
  • 31. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Automation and Baking... Some creative tricks that make your store bought box mix more exciting (in other words, “automate” the boring stuff, and add fun) ● Add crushed oreo cookies to a brownie mix ● Replace the oil in a brownie mix with red wine, or the water with coffee ● Use a cake mix, ⅓ c water and 2 eggs to get a quick cookie dough - add chips, nuts, whatever looks good ● Brown sugar, pineapple, butter, and maraschino cherries make a boring yellow cake into a pineapple upside-down cake ● Take a lemon cake mix, add white chocolate chips, bake into cookies, and sprinkle with lemon kool-aid mixed with confectioners sugar
  • 32. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit My D&I Slide A look back at some of the ways Automation/DevOps are good for diversity & Inclusion ● DevOps responsibilities include many that allow a new to the team/tool/field to ease in (e.g. Documenting, Testing, Code Review) ● Text-based processes not only help CI/CD, but also are simpler for many to use ● Automation allows for processing at odd hours with less human intervention, thus less disruptive ● Cooperation, feedback (blameless post-mortem), scrum processes encourage all to speak and participate
  • 33. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Quotations “If you automate a process that has errors, all you’ve done is automate the generation of those errors.” – W.L.W. Borowiecki “Automation won’t take your job, but the self-inflicted imprisonment of industrial isolation will.” – Richie Norton “Any daily work task that takes 5 minutes will cost over 20 hours a year, or over half of a work week. Even if it takes 20 hours to automate that daily 5 minute task, the automation will break even in a year.” – Anthony J. Stieber "I will always choose a lazy person for a difficult job. Because, he will find an easy way to do it." – Bill Gates “You can’t automate stupid!” – Kitt 33
  • 34. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit Thanks! ● Thanks for listening ● Thanks to the other speakers ● Thank you to my friends and co-workers ● Yay TechWell and xOps ● ...and Onyx Point https://unsplash.com/ and https://www.123rf.com/ (for photos)
  • 35. Automation Justification judy johnson Twitter: @miz_j GitHub: judyj Agile + DevOps Virtual Summit © 123RF.com In conclusion... 35