SlideShare une entreprise Scribd logo
1  sur  74
Télécharger pour lire hors ligne
CHEF
or how to make computers do the work for us




      Marcin Kulik, Lunar Logic Polska

             KRUG 2011/11/08
Everyday we're dealing with mechanical, repetitive tasks... we
                       can automate.
What is Chef?
Automation tool
written in Ruby
DSL
Created by Opscode
"Chef is an open source systems integration framework built
 to bring the benefits of configuration management to your
                   entire infrastructure."

"You write source code to describe how you want each part of
your infrastructure to be built, then apply those descriptions
                      to your servers."

 "The result is a fully automated infrastructure: when a new
server comes on line, the only thing you have to do is tell Chef
        what role it should play in your architecture."
Why do you need it?
Economics + Efficiency + Scalability
Terms
Node
remote server, local machine...
Role
web server, database server, ruby dev workstation...
Cookbook
mysql, ssh-access, dotfiles...
Recipe
install mysql-server, create database, add user...
Resource
file, dir, user, package, service, gem, virtual host...
Run list
list of recipes to run in order
{
    "run_list": [
      "recipe[mysql]",
      "recipe[git]",
      "recipe[ruby19]"
    ]
}
Cookbook structure
|--   config
|     |-- node.json
|     `-- solo.rb
|--   cookbooks
|     |-- book1
|     |   |-- attributes
|     |   |-- files
|     |   |-- metadata.rb
|     |   |-- recipes
|     |   |   |-- default.rb
|     |   |   `-- source.rb
|     |   `-- templates
|     |-- book2
|     |   |-- attributes
|     |   |   `-- default.rb
|     |   |-- files
|     |   |-- recipes
|     |   |   `-- default.rb
|     |   `-- templates
|     |   `-- templates
|     |       `-- default
|     |           `-- authorized_keys.erb
|     |-- book3
|     |   |-- attributes
|     |   |-- files
|     |   |   `-- default
|     |   |       `-- secret-key
|     |   |-- recipes
|     |   |   `-- default.rb

              Installation
|     |   `-- templates
|--   config
|     |-- node.json
|     `-- solo.rb
|--   cookbooks
|     |-- book1
|     |   |-- attributes
|     |   |-- files
|     |   |-- metadata.rb
|     |   |-- recipes
|     |   |   |-- default.rb
|     |   |   `-- libs.rb
|     |   `-- templates
$ gem install chef
Modes of operation
Cookbooks stored
in central repository
  (free cookbooks hosting by Opscode:
     https://manage.opscode.com/)
$ sudo chef-client
Cookbooks stored
  on the node
$ sudo chef-solo -c /path/to/cfg.rb
                 -j /path/to/node-data.json
Use cases
Configure new machine
(in the cloud with Knife)
  Amazon EC2, Engine Yard, Linode, BrightBox...
Manage config of existing
          company servers
Client demo apps (directory, vhost, god config), developers' ssh
                            keys...
Bootstrap workstation!
   rvm + ruby 1.9, git, mysql, vim/emacs...
Enough with theory!
Lunar Station
https://github.com/LunarLogicPolska/lunar-station
Lunar Station is a set of Chef cookbooks and a bash script (???)
for bootstrapping developers machines at Lunar Logic Polska.
You need ruby to run Chef
(We assume) you use RVM
  No need for system ruby for ruby devs nowadays
bootstrap.sh
detects platform (Ubuntu, Fedora, OSX)

   installs compilers and other RVM
              dependencies

  installs RVM & ruby 1.9 & chef gem

    downloads latest Lunar Station
            cookbooks

            runs chef-solo
$ curl -skL http://bit.ly/lunar-station | bash
Initializing Lunar Workstation...
>> Fedora Linux detected.
>> Checking for RVM...
>> Fetching latest version of Lunar Station cookbooks...
>> Starting chef-solo run...
[Mon, 07 Nov 2011 22:19:54 +0100] INFO: *** Chef 0.10.4 ***
[Mon, 07 Nov 2011 22:19:54 +0100] INFO: Setting the run_list to
...
Nodes
# linux-rubydev.json

{
    "run_list": [ "role[rubydev]" ]
}
# osx-rubydev.json

{
    "run_list": [ "role[osx]", "role[rubydev]" ]
}
Roles
# base.rb

run_list 'recipe[repos]',   'recipe[curl]',
         'recipe[wget]',    'recipe[git]',
         'recipe[libxml2]', 'recipe[ack]',
         'recipe[vim]',     'recipe[ctags]',
         'recipe[skype]',   'recipe[firefox]' ,
         'recipe[google-chrome]'
# rubydev.rb

run_list 'role[base]', 'recipe[mysql]'
# osx.rb

run_list "recipe[homebrew]"
Cookbooks
repos cookbook
# cookbooks/repos/recipes/default.rb

case node[:platform]
when 'fedora'
  path = "/tmp/rpmfusion-free-release-stable.noarch.rpm"

  bash "download rpmfusion free package" do
    code "wget http://download1.rpmfusion.org/.../" +
      "rpmfusion-free-release-stable.noarch.rpm -O #{path}"
    not_if { File.exist?(path) }
  end

  package "rpmfusion-free-release-stable" do
    source path
    options "--nogpgcheck"
  end
when 'ubuntu'
  ...
end
end



# cookbooks/repos/recipes/default.rb

case node[:platform]
when 'fedora'
  ...

when 'ubuntu'
  bash "enable multiverse repo" do
    code "head -n 1 /etc/apt/sources.list | " +
      "sed 's/main universe/multiverse/' " +
      ">> /etc/apt/sources.list"

    not_if "egrep '^deb.+multiverse' /etc/apt/sources.list"
  end
end
vim cookbook
# cookbooks/vim/recipes/default.rb

case node[:platform]
when "ubuntu"
  package "vim"
  package "vim-gnome"

when "fedora"
  package "vim-enhanced"
  package "vim-X11"

when 'mac_os_x'
  package "macvim"
end
skype cookbook
# cookbooks/skype/recipes/default.rb

case node[:platform]
when 'ubuntu'
  include_recipe 'init::ubuntu' # for partner repo
  package 'skype'

when 'mac_os_x'
  dmg_package "Skype" do
    source "http://www.skype.com/go/getskype-macosx.dmg"
    action :install
  end
when 'fedora'
  ...
end
Lunar Kitchen
Source of LLP servers configuration data and a set of Chef
                       cookbooks
chef-solo invoked on
  remote machines
    no chef server
Each server we configure has its corresponding node
configuration file in nodes/ directory of kitchen project that
         specifies run_list and few other settings
# nodes/deneb.json

{
    "run_list": [ "recipe[ssh_access]" ],

    "ssh_access": [ "marcin.kulik", "anna.lesniak", ...],
    "opened_ports": {
       "tcp": [80, 443, 22, 8080],
       "udp": []
    },
    ...
How do we run chef-solo
  on remote machine?
Capistrano!
# See the list of configured servers:
$ cap -T


# Make the changes happen on the server:

$ cap configure:deneb
How does Capfile look like?
set :user, 'chef'
NODE_LIST = Dir["nodes/*.json"].map do |nodefile|
  File.basename(nodefile, '.json')
end
NODE_LIST.each do |node|
  role node.to_sym, node
end
NODE_CONFIG = <<-EOS
  file_cache_path '/tmp/chef-solo'
  cookbook_path '/tmp/chef-solo/cookbooks'
  role_path '/tmp/chef-solo/roles'
EOS
...
...
namespace :configure do
  NODE_LIST.each do |node|
    desc "Configure #{node}"
    task node.to_sym, :roles => node.to_sym do
      run "if [ ! -e /tmp/chef-solo ]; then mkdir /tmp/chef-sol
      upload("cookbooks", "/tmp/chef-solo/", :via => :scp, :rec
      upload("roles", "/tmp/chef-solo/", :via => :scp, :recursi
      upload("nodes/#{node}.json", "/tmp/chef-solo/node.json",
      put(NODE_CONFIG, "/tmp/chef-solo/solo.rb")
      run "rvmsudo chef-solo " +
                   "-c /tmp/chef-solo/solo.rb " +
                   "-j /tmp/chef-solo/node.json"
    end
  end
end
SSH access
├──   Capfile
├──   config
├──   cookbooks
├──   nodes
├──   README.md
├──   roles
└──   ssh_keys
      ├── anna.lesniak
      ├── artur.bilski
      ├── ...
      └── marcin.kulik
# cookbooks/access/recipes/default.rb

username = 'dev'

ssh_keys = node[:ssh_access].map do |f|
  File.read("/tmp/chef-solo/ssh_keys/#{f}")
end

template "/home/#{username}/.ssh/authorized_keys" do
  source "authorized_keys.erb"
  owner username
  group 'users'
  mode "0600"
  variables :ssh_keys => ssh_keys
end
# cookbooks/access/templates/authorized_keys.erb

# Generated by Chef, do not edit!

<%= @ssh_keys.join("n") %>
Tips
Learn step by step
EC2 + Chef + Knife + Opscode... = Fuuuuuuuuuuuuuuuuuuuuu
Start with chef-solo
Run on local machine
    Easy to troubleshoot problems
Use Vagrant
                 http://vagrantup.com/


Great for testing cookbooks - doesn't pollute your system
Q?
Thanks!
marcin.kulik@llp.pl | @sickill | https://github.com/sickill

Contenu connexe

Tendances

A tour of Ansible
A tour of AnsibleA tour of Ansible
A tour of AnsibleDevOps Ltd.
 
docker build with Ansible
docker build with Ansibledocker build with Ansible
docker build with AnsibleBas Meijer
 
Configuration management and orchestration with Salt
Configuration management and orchestration with SaltConfiguration management and orchestration with Salt
Configuration management and orchestration with SaltAnirban Saha
 
Ansible Meetup Hamburg / Quickstart
Ansible Meetup Hamburg / QuickstartAnsible Meetup Hamburg / Quickstart
Ansible Meetup Hamburg / QuickstartHenry Stamerjohann
 
Automated infrastructure is on the menu
Automated infrastructure is on the menuAutomated infrastructure is on the menu
Automated infrastructure is on the menujtimberman
 
Ansible roles done right
Ansible roles done rightAnsible roles done right
Ansible roles done rightDan Vaida
 
Ansible leveraging 2.0
Ansible leveraging 2.0Ansible leveraging 2.0
Ansible leveraging 2.0bcoca
 
More tips n tricks
More tips n tricksMore tips n tricks
More tips n tricksbcoca
 
Drupal cambs ansible for drupal april 2015
Drupal cambs ansible for drupal april 2015Drupal cambs ansible for drupal april 2015
Drupal cambs ansible for drupal april 2015Ryan Brown
 
Hacking ansible
Hacking ansibleHacking ansible
Hacking ansiblebcoca
 
Ansible Automation to Rule Them All
Ansible Automation to Rule Them AllAnsible Automation to Rule Them All
Ansible Automation to Rule Them AllTim Fairweather
 
IT Automation with Ansible
IT Automation with AnsibleIT Automation with Ansible
IT Automation with AnsibleRayed Alrashed
 
Best practices for ansible
Best practices for ansibleBest practices for ansible
Best practices for ansibleGeorge Shuklin
 
Herd your chickens: Ansible for DB2 configuration management
Herd your chickens: Ansible for DB2 configuration managementHerd your chickens: Ansible for DB2 configuration management
Herd your chickens: Ansible for DB2 configuration managementFrederik Engelen
 
V2 and beyond
V2 and beyondV2 and beyond
V2 and beyondjimi-c
 

Tendances (20)

Chef
ChefChef
Chef
 
A tour of Ansible
A tour of AnsibleA tour of Ansible
A tour of Ansible
 
docker build with Ansible
docker build with Ansibledocker build with Ansible
docker build with Ansible
 
Chef
ChefChef
Chef
 
Configuration management and orchestration with Salt
Configuration management and orchestration with SaltConfiguration management and orchestration with Salt
Configuration management and orchestration with Salt
 
Ansible Meetup Hamburg / Quickstart
Ansible Meetup Hamburg / QuickstartAnsible Meetup Hamburg / Quickstart
Ansible Meetup Hamburg / Quickstart
 
Automated infrastructure is on the menu
Automated infrastructure is on the menuAutomated infrastructure is on the menu
Automated infrastructure is on the menu
 
Ansible roles done right
Ansible roles done rightAnsible roles done right
Ansible roles done right
 
Ansible leveraging 2.0
Ansible leveraging 2.0Ansible leveraging 2.0
Ansible leveraging 2.0
 
More tips n tricks
More tips n tricksMore tips n tricks
More tips n tricks
 
Drupal cambs ansible for drupal april 2015
Drupal cambs ansible for drupal april 2015Drupal cambs ansible for drupal april 2015
Drupal cambs ansible for drupal april 2015
 
Cooking with Chef
Cooking with ChefCooking with Chef
Cooking with Chef
 
Hacking ansible
Hacking ansibleHacking ansible
Hacking ansible
 
Ansible Automation to Rule Them All
Ansible Automation to Rule Them AllAnsible Automation to Rule Them All
Ansible Automation to Rule Them All
 
IT Automation with Ansible
IT Automation with AnsibleIT Automation with Ansible
IT Automation with Ansible
 
Best practices for ansible
Best practices for ansibleBest practices for ansible
Best practices for ansible
 
Introducing Ansible
Introducing AnsibleIntroducing Ansible
Introducing Ansible
 
Chef
ChefChef
Chef
 
Herd your chickens: Ansible for DB2 configuration management
Herd your chickens: Ansible for DB2 configuration managementHerd your chickens: Ansible for DB2 configuration management
Herd your chickens: Ansible for DB2 configuration management
 
V2 and beyond
V2 and beyondV2 and beyond
V2 and beyond
 

Similaire à Chef or how to make computers do the work for us

Practical Chef and Capistrano for Your Rails App
Practical Chef and Capistrano for Your Rails AppPractical Chef and Capistrano for Your Rails App
Practical Chef and Capistrano for Your Rails AppSmartLogic
 
Cook Infrastructure with chef -- Justeat.IN
Cook Infrastructure with chef  -- Justeat.INCook Infrastructure with chef  -- Justeat.IN
Cook Infrastructure with chef -- Justeat.INRajesh Hegde
 
[MDBCI] Mariadb continuous integration tool
[MDBCI] Mariadb continuous integration tool[MDBCI] Mariadb continuous integration tool
[MDBCI] Mariadb continuous integration toolOSLL
 
Introduction to chef framework
Introduction to chef frameworkIntroduction to chef framework
Introduction to chef frameworkmorgoth
 
Kickstarter - Chef Opswork
Kickstarter - Chef OpsworkKickstarter - Chef Opswork
Kickstarter - Chef OpsworkHamza Waqas
 
Introduction to Chef
Introduction to ChefIntroduction to Chef
Introduction to Chefkevsmith
 
Cooking 5 Star Infrastructure with Chef
Cooking 5 Star Infrastructure with ChefCooking 5 Star Infrastructure with Chef
Cooking 5 Star Infrastructure with ChefG. Ryan Fawcett
 
Stack kicker devopsdays-london-2013
Stack kicker devopsdays-london-2013Stack kicker devopsdays-london-2013
Stack kicker devopsdays-london-2013Simon McCartney
 
Deploying OpenStack with Chef
Deploying OpenStack with ChefDeploying OpenStack with Chef
Deploying OpenStack with ChefMatt Ray
 
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 2013Amazon Web Services
 
Linecook - A Chef Alternative
Linecook - A Chef AlternativeLinecook - A Chef Alternative
Linecook - A Chef Alternativethinkerbot
 
EC2 AMI Factory with Chef, Berkshelf, and Packer
EC2 AMI Factory with Chef, Berkshelf, and PackerEC2 AMI Factory with Chef, Berkshelf, and Packer
EC2 AMI Factory with Chef, Berkshelf, and PackerGeorge Miranda
 
Practical introduction to dev ops with chef
Practical introduction to dev ops with chefPractical introduction to dev ops with chef
Practical introduction to dev ops with chefLeanDog
 
Toolbox of a Ruby Team
Toolbox of a Ruby TeamToolbox of a Ruby Team
Toolbox of a Ruby TeamArto Artnik
 
DevOps hackathon Session 2: Basics of Chef
DevOps hackathon Session 2: Basics of ChefDevOps hackathon Session 2: Basics of Chef
DevOps hackathon Session 2: Basics of ChefAntons Kranga
 

Similaire à Chef or how to make computers do the work for us (20)

Practical Chef and Capistrano for Your Rails App
Practical Chef and Capistrano for Your Rails AppPractical Chef and Capistrano for Your Rails App
Practical Chef and Capistrano for Your Rails App
 
Cook Infrastructure with chef -- Justeat.IN
Cook Infrastructure with chef  -- Justeat.INCook Infrastructure with chef  -- Justeat.IN
Cook Infrastructure with chef -- Justeat.IN
 
[MDBCI] Mariadb continuous integration tool
[MDBCI] Mariadb continuous integration tool[MDBCI] Mariadb continuous integration tool
[MDBCI] Mariadb continuous integration tool
 
Chef introduction
Chef introductionChef introduction
Chef introduction
 
Chef training - Day2
Chef training - Day2Chef training - Day2
Chef training - Day2
 
Configuration management with Chef
Configuration management with ChefConfiguration management with Chef
Configuration management with Chef
 
Chef solo the beginning
Chef solo the beginning Chef solo the beginning
Chef solo the beginning
 
Introduction to chef framework
Introduction to chef frameworkIntroduction to chef framework
Introduction to chef framework
 
Kickstarter - Chef Opswork
Kickstarter - Chef OpsworkKickstarter - Chef Opswork
Kickstarter - Chef Opswork
 
Introduction to Chef
Introduction to ChefIntroduction to Chef
Introduction to Chef
 
Cooking 5 Star Infrastructure with Chef
Cooking 5 Star Infrastructure with ChefCooking 5 Star Infrastructure with Chef
Cooking 5 Star Infrastructure with Chef
 
Stack kicker devopsdays-london-2013
Stack kicker devopsdays-london-2013Stack kicker devopsdays-london-2013
Stack kicker devopsdays-london-2013
 
Deploying OpenStack with Chef
Deploying OpenStack with ChefDeploying OpenStack with Chef
Deploying OpenStack with Chef
 
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
 
Linecook - A Chef Alternative
Linecook - A Chef AlternativeLinecook - A Chef Alternative
Linecook - A Chef Alternative
 
EC2 AMI Factory with Chef, Berkshelf, and Packer
EC2 AMI Factory with Chef, Berkshelf, and PackerEC2 AMI Factory with Chef, Berkshelf, and Packer
EC2 AMI Factory with Chef, Berkshelf, and Packer
 
Practical introduction to dev ops with chef
Practical introduction to dev ops with chefPractical introduction to dev ops with chef
Practical introduction to dev ops with chef
 
Toolbox of a Ruby Team
Toolbox of a Ruby TeamToolbox of a Ruby Team
Toolbox of a Ruby Team
 
infra-as-code
infra-as-codeinfra-as-code
infra-as-code
 
DevOps hackathon Session 2: Basics of Chef
DevOps hackathon Session 2: Basics of ChefDevOps hackathon Session 2: Basics of Chef
DevOps hackathon Session 2: Basics of Chef
 

Dernier

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 

Dernier (20)

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 

Chef or how to make computers do the work for us