SlideShare a Scribd company logo
1 of 114
AUTOMATE OR DIE!
Trotter Cashion / Strange Loop 2010
                        http://pinktentacle.com/images/irex2009_4_large.jpg
CO-FOUNDER
@CASHION




   http://www.charlesheflin.com/wp-content/uploads/2010/06/fail-whale.jpg
github.com/trotter




http://gems.github.com/octocat.png
AGENDA
THE MANUAL PROBLEM
CHEF SERVER VS. CHEF SOLO
COOKBOOK INTERNALS
GOING WAY BACK




         http://www.ameshistoricalsociety.org/identify/old_car1.jpg
FORD VS. THE OTHER GUYS
Pre-Ford (?-1907)     Model T (1915)


 $2,000 - $3,000          $850


  Made by hand        Assembly Line


12.5 hours to build     1.5 hours
BY 1930
  250 car companies had died




http://sdo210.files.wordpress.com/2010/05/grantwood-american-gothic-1930.jpg
SO WHAT ABOUT US?




       http://media.photobucket.com/image/nerds%20candy/civy1811/car002.jpg
Most Tech Companies are Essentially
American Auto Companies Pre-Ford
MYSQL




        http://www.dolphinsc.com/images/Dolphin.jpg
POSTGRES




http://images.buycostumes.com/mgen/merchandiser/32494.jpg
APACHE




   http://www.wallpapers-free.org/34/-/Apache_Longbow_Helicopter/
NGINX




http://www.allbestwallpapers.com/travel-kremlin_and_red_square_fireworks,_moscow,_russia_wallpapers.html
Memcached
Memcached
        Redis
Memcached
        Redis
           Mongodb
Memcached
        Redis
           Mongodb Riak
Memcached
        Redis
           Mongodb Riak

                   Cassandra
Memcached
        Redis
           Mongodb Riak

                       Cassandra


                Project Voldemort
Memcached
        Redis
           Mongodb Riak

       Ubuntu          Cassandra


                Project Voldemort
Memcached
        Redis         Redhat
           Mongodb Riak

       Ubuntu          Cassandra


                Project Voldemort
Memcached
        Redis           Redhat
   Solaris   Mongodb Riak

       Ubuntu          Cassandra


                Project Voldemort
Memcached         iptables
        Redis           Redhat
   Solaris   Mongodb Riak

       Ubuntu          Cassandra


                Project Voldemort
Memcached         iptables
        Redis           Redhat
   Solaris   Mongodb Riak

       Ubuntu             Cassandra
                   sshd
                Project Voldemort
Memcached         iptables
        Redis         Redhat
  Solaris  Mongodb Riak
DNS Servers
       Ubuntu             Cassandra
                   sshd
                Project Voldemort
Memcached            iptables
        Redis           Redhat
  Solaris    Mongodb Riak
DNS Servers
       Ubuntu                Cassandra
                      sshd
TCP/IP internals
                   Project Voldemort
We Idolize the Artisan Sysadmin
... but what do we end up with?
SNOWFLAKES
     ... that become avalanches




http://www.enviro-bc.ca/wp-content/uploads/2009/04/bowlake-aval_clair-israelson.jpg
HEISENBUGS




http://osulibrary.oregonstate.edu/specialcollections/coll/nonspcoll/catalogue/portrait-heisenberg-600w.jpg
NO MORE MONEY!




      http://assets.troubledteenswizard.com/uploaded/WoW/nomoney1.jpg
We’re really left with two choices
Automate... or die.
Automation is not hard!
CFENGINE




http://hackedgadgets.com/wp-content/2/LEGO_V8_Engine_1.jpg
PUPPET




   http://www.flickr.com/photos/willemvelthoven/381608678/sizes/l/
CHEF!




   http://www.flickr.com/photos/venndiagram/4891510333/sizes/l/
WRITTEN BY




             http://www.opscode.com/
WRITTEN IN




     http://www.prestonlee.com/wp-content/uploads/2008/09/ruby.png
Two Delicious Flavors
SERVER




http://upload.wikimedia.org/wikipedia/commons/e/e0/Google%E2%80%99s_First_Production_Server.jpg
HOW IT WORKS
HOW IT WORKS

      Your
    Computer
HOW IT WORKS

              Your
            Computer




 Box to
Provision
HOW IT WORKS

              Your
            Computer




 Box to
                       Chef Server
Provision
HOW IT WORKS

               Your
             Computer
Prepare


  Box to
                        Chef Server
 Provision
HOW IT WORKS

                Your
              Computer
Prepare

             What now?
  Box to
                         Chef Server
 Provision
HOW IT WORKS

                Your
              Computer
Prepare                    Cookbooks

             What now?
  Box to
                         Chef Server
 Provision
HOW IT WORKS

                Your
              Computer
Prepare                    Cookbooks

             What now?
  Box to
                         Chef Server
 Provision
                Run!
SOLO




http://www.pbs.org/parents/supersisters/han_solo-thumb-454x654.jpg
HOW IT WORKS
HOW IT WORKS


  Your
Computer
HOW IT WORKS


  Your         Box to
Computer      Provision
HOW IT WORKS

           Prepare
  Your                Box to
Computer             Provision
HOW IT WORKS

            Prepare
  Your                  Box to
Computer
           Cookbooks   Provision
HOW IT WORKS

            Prepare
  Your                  Box to
Computer
           Cookbooks   Provision
              Go!
Chef Structure
CHEF HEIRARCHY
                         Node



       Roles                             Cookbooks



Cookbooks



     Recipes    Attributes   Templates   Definitions
ROLES ARE REUSABLE!

 config/dev.json   config/db.json



           roles/db.rb
GETTING
              GOING




http://www.flickr.com/photos/seandreilinger/959864706/sizes/o/
WHAT YOU NEED
WHAT YOU NEED
           Ruby &
          Rubygems
WHAT YOU NEED
                      Ruby &
                     Rubygems



`gem install chef`   Chef Gem
WHAT YOU NEED
                                 Ruby &
                                Rubygems



     `gem install chef`         Chef Gem



`git clone http://github.com/
                                Chef Repo
   opscode/chef-repo.git`
COOKBOOKS.OPSCODE.COM




                 http://cookbooks.opscode.com/
TERMINAL JUNKIES
TERMINAL JUNKIES
•spatula   search mysql
TERMINAL JUNKIES
•spatula   search mysql
•spatula   install mysql
TERMINAL JUNKIES
•spatula   search mysql
•spatula   install mysql
•spatula   show mysql
TERMINAL JUNKIES
•spatula     search mysql
•spatula     install mysql
•spatula     show mysql
•... knife   has similar functionality
GET THE BOX READY

                                ssh db-one.host “install ruby”
spatula prepare db-one.host =
                                ssh db-one.host “install chef”
GO GO GO!

                                 rsync repo to db-one.host

spatula cook db-one.host db = ssh db-one.host “sudo 
                                chef-solo -c config/solo.rb 
                                -j config/db.json”
WITH CHEF SERVER
    install dependencies


       turn on client


  send cookbooks to client
DIGGING DEEPER




    http://media.photobucket.com/image/minecraft/bluekabal/roma/minesofroma.jpg
CHEF HEIRARCHY
                         Node



       Roles                             Cookbooks



Cookbooks



     Recipes    Attributes   Templates   Definitions
A NODE
// ./config/db_one.json
{ "run_list": ["role[db]"] }


        Recipes and Roles go here
CHEF HEIRARCHY
                         Node



       Roles                             Cookbooks



Cookbooks



     Recipes    Attributes   Templates   Definitions
A ROLE
# ./roles/db.rb
name "database"
description "Be a DB"
run_list [ "apache2", "mysql::server" ]
A ROLE
# ./roles/db.rb
name "database"
                            Recipes to run
description "Be a DB"
run_list [ "apache2", "mysql::server" ]
A ROLE
# ./roles/db.rb
name "database"
description "Be a DB"
run_list [ "apache2", "mysql::server" ]


  ./cookbooks/apache2/recipes/default.rb
A ROLE
# ./roles/db.rb
name "database"
description "Be a DB"
run_list [ "apache2", "mysql::server" ]


                  ./cookbooks/mysql/recipes/server.rb
CHEF HEIRARCHY
                         Node



       Roles                             Cookbooks



Cookbooks



     Recipes    Attributes   Templates   Definitions
ATTRIBUTES
# ./cookbooks/mysql/attributes/server.rb
default[:mysql][:server_debian_password]   =   secure_password
default[:mysql][:server_root_password]     =   secure_password
default[:mysql][:server_repl_password]     =   secure_password
default[:mysql][:bind_address]             =   ipaddress
default[:mysql][:datadir]                  =   "/var/lib/mysql"

# Tunables
default[:mysql][:tunable][:key_buffer]              = "250M"
default[:mysql][:tunable][:max_connections]         = "800"
default[:mysql][:tunable][:wait_timeout]            = "180"
OVERRIDING ATTRIBUTES
   Node
// ./config/db.json
{ "mysql": { "server_root_password": "beefcake" },
  "recipes": [ "mysql" ] }



   Role
# ./roles/db.rb
name "database"
description "Be a DB"
run_list [ "mysql::server" ]
default_attributes :mysql => { :server_root_password =>
                               "beefcake" }
CHEF HEIRARCHY
                         Node



       Roles                             Cookbooks



Cookbooks



     Recipes    Attributes   Templates   Definitions
THE RECIPE... PART 1
# ./cookbooks/mysql/recipes/server.rb
include_recipe "mysql::client"
THE RECIPE... PART 2
package "mysql-server" do
  action :install
end
THE RECIPE... PART 3
template "/etc/mysql/my.cnf" do
  source "my.cnf.erb"
  owner "root"
  group "root"
  mode "0644"
  notifies :restart,
           resources(:service => "mysql"),
           :immediately
end
CHEF HEIRARCHY
                         Node



       Roles                             Cookbooks



Cookbooks



     Recipes    Attributes   Templates   Definitions
A TEMPLATE SAMPLE
user            =   mysql
pid-file        =   /var/run/mysqld/mysqld.pid
socket          =   /var/run/mysqld/mysqld.sock
datadir         =   <%= @datadir %>
bind-address    =   <%= @node[:mysql][:bind_address] %>
A TEMPLATE SAMPLE
user            =   mysql
pid-file        =   /var/run/mysqld/mysqld.pid
socket          =   /var/run/mysqld/mysqld.sock
datadir         =   <%= @datadir %>
bind-address    =   <%= @node[:mysql][:bind_address] %>


                               OMG, ERB!!
A TEMPLATE SAMPLE
user            =   mysql
pid-file        =   /var/run/mysqld/mysqld.pid
socket          =   /var/run/mysqld/mysqld.sock
datadir         =   <%= @datadir %>
bind-address    =   <%= @node[:mysql][:bind_address] %>


                               From Attributes
A TEMPLATE SAMPLE
user            =   mysql
pid-file        =   /var/run/mysqld/mysqld.pid
socket          =   /var/run/mysqld/mysqld.sock
datadir         =   <%= @datadir %>     From Template
bind-address    =   <%= @node[:mysql][:bind_address] %>
ASSIGNING VARIABLES
template "/etc/mysql/my.cnf" do
  source "my.cnf.erb"
  owner "root"
  group "root"
  mode "0644"
  variables :datadir => “/var/lib/mysql”
end
CHEF HEIRARCHY
                         Node



       Roles                             Cookbooks



Cookbooks



     Recipes    Attributes   Templates   Definitions
DEFINITIONS
define :apache_conf do
  dir = node[:apache][:dir]
  template "#{dir}/mods-available/#{params[:name]}.conf" do
    source "mods/#{params[:name]}.conf.erb"
    notifies :restart, resources(:service => "apache2")
  end
end

# In your recipe
apache_conf "mod_ssl"
LET’S
                  WRAP
                  IT U P




http://www.flickr.com/photos/andresthor/3946773501/sizes/l/in/photostream/
AUTOMATE EVERYTHING!!




            http://www.flickr.com/photos/kenfagerdotcom/3409813881/
Deploying == Provisioning
USE CHEF!!!!!




      http://www.flickr.com/photos/martin_borjesson/4083726805/sizes/o/
ON THE INTERNETS
ON THE INTERNETS
•twitter   - @cashion
ON THE INTERNETS
•twitter   - @cashion
•github    - http://github.com/trotter
ON THE INTERNETS
•twitter   - @cashion
•github    - http://github.com/trotter
•email   - cashion on the gmailz
DOMO ARIGATO




       http://www.flickr.com/photos/dancoulter/21042744/sizes/o/
RESOURCES
RESOURCES
• http://wiki.opscode.com/display/chef/Resources
RESOURCES
• http://wiki.opscode.com/display/chef/Resources

•#chef   on freenode
RESOURCES
• http://wiki.opscode.com/display/chef/Resources

•#chef   on freenode
•cashion@gmail.com

More Related Content

What's hot

Chef Fundamentals Training Series Module 4: The Chef Client Run and Expanding...
Chef Fundamentals Training Series Module 4: The Chef Client Run and Expanding...Chef Fundamentals Training Series Module 4: The Chef Client Run and Expanding...
Chef Fundamentals Training Series Module 4: The Chef Client Run and Expanding...
Chef Software, Inc.
 

What's hot (20)

Lights, Camera, Docker: Streaming Video at DramaFever
Lights, Camera, Docker: Streaming Video at DramaFeverLights, Camera, Docker: Streaming Video at DramaFever
Lights, Camera, Docker: Streaming Video at DramaFever
 
Chef
ChefChef
Chef
 
Getting Started with Ansible
Getting Started with AnsibleGetting Started with Ansible
Getting Started with Ansible
 
Chef Fundamentals Training Series Module 2: Workstation Setup
Chef Fundamentals Training Series Module 2: Workstation SetupChef Fundamentals Training Series Module 2: Workstation Setup
Chef Fundamentals Training Series Module 2: Workstation Setup
 
Cool like a Frontend Developer: Grunt, RequireJS, Bower and other Tools
Cool like a Frontend Developer: Grunt, RequireJS, Bower and other ToolsCool like a Frontend Developer: Grunt, RequireJS, Bower and other Tools
Cool like a Frontend Developer: Grunt, RequireJS, Bower and other Tools
 
Automated infrastructure is on the menu
Automated infrastructure is on the menuAutomated infrastructure is on the menu
Automated infrastructure is on the menu
 
Using Sinatra to Build REST APIs in Ruby
Using Sinatra to Build REST APIs in RubyUsing Sinatra to Build REST APIs in Ruby
Using Sinatra to Build REST APIs in Ruby
 
Chef Fundamentals Training Series Module 4: The Chef Client Run and Expanding...
Chef Fundamentals Training Series Module 4: The Chef Client Run and Expanding...Chef Fundamentals Training Series Module 4: The Chef Client Run and Expanding...
Chef Fundamentals Training Series Module 4: The Chef Client Run and Expanding...
 
Chef
ChefChef
Chef
 
Ruby talk romania
Ruby talk romaniaRuby talk romania
Ruby talk romania
 
Brasil Ross 2011
Brasil Ross 2011Brasil Ross 2011
Brasil Ross 2011
 
Rocket Fuelled Cucumbers
Rocket Fuelled CucumbersRocket Fuelled Cucumbers
Rocket Fuelled Cucumbers
 
Chef: Smart infrastructure automation
Chef: Smart infrastructure automationChef: Smart infrastructure automation
Chef: Smart infrastructure automation
 
The unintended benefits of Chef
The unintended benefits of ChefThe unintended benefits of Chef
The unintended benefits of Chef
 
Nginx Workshop Aftermath
Nginx Workshop AftermathNginx Workshop Aftermath
Nginx Workshop Aftermath
 
Puppet at janrain
Puppet at janrainPuppet at janrain
Puppet at janrain
 
Consegi 2010 - Dicas de Desenvolvimento Web com Ruby
Consegi 2010 - Dicas de Desenvolvimento Web com RubyConsegi 2010 - Dicas de Desenvolvimento Web com Ruby
Consegi 2010 - Dicas de Desenvolvimento Web com Ruby
 
Performance testing crash course (Dustin Whittle)
Performance testing crash course (Dustin Whittle)Performance testing crash course (Dustin Whittle)
Performance testing crash course (Dustin Whittle)
 
Ansible for beginners ...?
Ansible for beginners ...?Ansible for beginners ...?
Ansible for beginners ...?
 
Introduction to Chef
Introduction to ChefIntroduction to Chef
Introduction to Chef
 

Similar to Automate or Die

chef loves windows
chef loves windowschef loves windows
chef loves windows
Mat Schaffer
 
Rails Presentation (Anton Dmitriyev)
Rails Presentation (Anton Dmitriyev)Rails Presentation (Anton Dmitriyev)
Rails Presentation (Anton Dmitriyev)
True-Vision
 

Similar to Automate or Die (20)

chef loves windows
chef loves windowschef loves windows
chef loves windows
 
Cloud Automation with Opscode Chef
Cloud Automation with Opscode ChefCloud Automation with Opscode Chef
Cloud Automation with Opscode Chef
 
Linecook - A Chef Alternative
Linecook - A Chef AlternativeLinecook - A Chef Alternative
Linecook - A Chef Alternative
 
Chef or how to make computers do the work for us
Chef or how to make computers do the work for usChef or how to make computers do the work for us
Chef or how to make computers do the work for us
 
Cloud Automation with Opscode Chef
Cloud Automation with Opscode ChefCloud Automation with Opscode Chef
Cloud Automation with Opscode Chef
 
infra-as-code
infra-as-codeinfra-as-code
infra-as-code
 
Wordpress y Docker, de desarrollo a produccion
Wordpress y Docker, de desarrollo a produccionWordpress y Docker, de desarrollo a produccion
Wordpress y Docker, de desarrollo a produccion
 
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, OrchestrationThe Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
 
AWS OpsWorks Under the Hood (DMG304) | AWS re:Invent 2013
AWS OpsWorks Under the Hood (DMG304) | AWS re:Invent 2013AWS OpsWorks Under the Hood (DMG304) | AWS re:Invent 2013
AWS OpsWorks Under the Hood (DMG304) | AWS re:Invent 2013
 
Squashing the Heisenbugs
Squashing the HeisenbugsSquashing the Heisenbugs
Squashing the Heisenbugs
 
Cook Infrastructure with chef -- Justeat.IN
Cook Infrastructure with chef  -- Justeat.INCook Infrastructure with chef  -- Justeat.IN
Cook Infrastructure with chef -- Justeat.IN
 
Chef introduction
Chef introductionChef introduction
Chef introduction
 
Rails Presentation (Anton Dmitriyev)
Rails Presentation (Anton Dmitriyev)Rails Presentation (Anton Dmitriyev)
Rails Presentation (Anton Dmitriyev)
 
The Environment Restaurant
The Environment RestaurantThe Environment Restaurant
The Environment Restaurant
 
Ruby on Rails and Docker - Why should I care?
Ruby on Rails and Docker - Why should I care?Ruby on Rails and Docker - Why should I care?
Ruby on Rails and Docker - Why should I care?
 
Mitchell Hashimoto, HashiCorp
Mitchell Hashimoto, HashiCorpMitchell Hashimoto, HashiCorp
Mitchell Hashimoto, HashiCorp
 
Test Driven Development with Chef
Test Driven Development with ChefTest Driven Development with Chef
Test Driven Development with Chef
 
Chef training - Day2
Chef training - Day2Chef training - Day2
Chef training - Day2
 
Chef Tutorial for DEVOPS Newbies
Chef Tutorial for DEVOPS NewbiesChef Tutorial for DEVOPS Newbies
Chef Tutorial for DEVOPS Newbies
 
Cloud Automation with Opscode Chef
Cloud Automation with Opscode ChefCloud Automation with Opscode Chef
Cloud Automation with Opscode Chef
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
+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@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
+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...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
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
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
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
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 

Automate or Die

Editor's Notes