SlideShare una empresa de Scribd logo
1 de 98
Descargar para leer sin conexión
Database Version Control Without Pain




                                                    Harrie Verveer
                          PHPNW10 - Manchester - 9th October 2010


zaterdag 9 oktober 2010
Oh hai!



                          Harrie Verveer
                          aka Hairy

                          Dutchy
                          I live in Goes, which probably
                          sounds awkward to you

                          Software engineer at
                          ibuildings since 2004
                          Vlissingen (Flushing) office

                                                           2
zaterdag 9 oktober 2010
zaterdag 9 oktober 2010
zaterdag 9 oktober 2010
zaterdag 9 oktober 2010
zaterdag 9 oktober 2010
zaterdag 9 oktober 2010
zaterdag 9 oktober 2010
“Yeah, don’t get bogged down in trying to be
                    funny. Be yourself and present the info.”



zaterdag 9 oktober 2010
Sorry, this talk won’t be
                                    funny



                                                      9
zaterdag 9 oktober 2010
Database Version Control
                          What’s the problem?




                                                     10
zaterdag 9 oktober 2010
http://www.sxc.hu/photo/1207911
zaterdag 9 oktober 2010
zaterdag 9 oktober 2010




                          http://en.wikipedia.org/wiki/File:STS120LaunchHiRes.jpg
http://www.flickr.com/photos/kt/1217157/
zaterdag 9 oktober 2010
http://www.sxc.hu/photo/1255121




zaterdag 9 oktober 2010
Why Database Version Control




                                       15
zaterdag 9 oktober 2010
Simple Patching Strategy
                          The basic idea




                                                     16
zaterdag 9 oktober 2010
Simple patching strategy




                                   17
zaterdag 9 oktober 2010
Example patch file

          patch-001.sql




                             18
zaterdag 9 oktober 2010
http://www.sxc.hu/photo/314594
zaterdag 9 oktober 2010
Simple patching strategy

                                           Development
                                                 Write code
                                             Write DB patches
                                          Apply patches to own DB




                          Apply patches                             Commit




                                               Update


                                                                             20
zaterdag 9 oktober 2010
Fixing patches

          patch-002.sql




                          21
zaterdag 9 oktober 2010
Fixing patches

          patch-002.sql




                          21
zaterdag 9 oktober 2010
Fixing patches

          patch-002.sql




                          21
zaterdag 9 oktober 2010
Fixing patches

          patch-003.sql




                          22
zaterdag 9 oktober 2010
Fixing patches

          patch-003.sql




                          Never modify a patch file once
                            it’s under version control


                                                           22
zaterdag 9 oktober 2010
Undo patch files

          undo-001.sql




                           23
zaterdag 9 oktober 2010
http://www.freefoto.com/preview/41-07-7
zaterdag 9 oktober 2010
Bonus points




                          Install.sql




                                        25
zaterdag 9 oktober 2010
Bonus points




                          Initial dummy content




                                                  26
zaterdag 9 oktober 2010
http://www.sxc.hu/photo/643214
zaterdag 9 oktober 2010
http://www.sxc.hu/photo/946855
zaterdag 9 oktober 2010
Automating the process
                          Faster & Safer




                                                   29
zaterdag 9 oktober 2010
Typical patch script




                               30
zaterdag 9 oktober 2010
Typical patch script

          update.sh




                               31
zaterdag 9 oktober 2010
Branches
                          Merge problems




                                           32
zaterdag 9 oktober 2010
Branches
          Trunk
                          patch-001.sql

                          patch-002.sql


                          patch-003.sql




                                          33
zaterdag 9 oktober 2010
Branches
          Trunk
                          patch-001.sql

                          patch-002.sql


                          patch-003.sql
                                               Branch A
                               create branch

                          patch-004.sql
                                                     patch-004.sql
                          patch-005.sql

                                                     patch-005.sql
                                   Merge




                                                                     34
zaterdag 9 oktober 2010
Branches
          Trunk
                          patch-001.sql

                          patch-002.sql


                          patch-003.sql
                                               Branch A
                               create branch

                          patch-004.sql
                                                                     patch-006.sql
                                                     patch-004.sql
                          patch-005.sql
                                                                     patch-007.sql
                                                     patch-005.sql
                                   Merge




                                                                                     34
zaterdag 9 oktober 2010
Branches
         Trunk
                    patch-001.sql                              Branch A
                                          create branch
                    patch-002.sql

                                                                     patch-002.sql
                    patch-003.sql
                                          Branch B
                          create branch
                                                                     patch-003.sql
                              Merge

                                                    patch-004.sql    patch-004.sql
                    patch-004.sql
                                                    patch-005.sql

                    patch-005.sql                      Merge


                                                                     patch-005.sql
                                                       Merge
                             Merge


                                                                                     35
zaterdag 9 oktober 2010
Separate sequence

          db/patches/trunk/   db/patches/branchA/

          patch-001.sql       patch-001.sql
          patch-002.sql       patch-002.sql
          patch-003.sql




                                                    36
zaterdag 9 oktober 2010
Separate sequence

          db/patches/trunk/           db/patches/branchA/

          patch-001.sql               patch-001.sql
          patch-002.sql               patch-002.sql
          patch-003.sql


                               Trunk version    3
                              BranchA version   2




                                                            36
zaterdag 9 oktober 2010
Patchfile naming




                          patch_20100611_1430.sql




                                                    37
zaterdag 9 oktober 2010
Patch log




                          38
zaterdag 9 oktober 2010
http://www.sxc.hu/photo/692740
zaterdag 9 oktober 2010
There is no silver bullet
                          Why it can’t exist




                                                      40
zaterdag 9 oktober 2010
http://www.flickr.com/photos/eschipul/4160817135/
zaterdag 9 oktober 2010
Comparing tables


                          Table in DB 1             Table in DB 2
                  column 1            int       column 1        int
                  column 2       varchar(255)   column 2   varchar(255)
                  column 3       varchar(255)   column 4   varchar(255)




                                                                          42
zaterdag 9 oktober 2010
Comparing tables


                            Table in DB 1            Table in DB 2
                           id           int         id           int
                          name     varchar(255)    name     varchar(255)
                          city     varchar(255)   website   varchar(255)




                                                                           43
zaterdag 9 oktober 2010
Comparing tables


                            Table in DB 1             Table in DB 2
                           id           int          id           int
                  firstname         varchar(255)   firstname   varchar(255)
                          lname    varchar(255)   lastname   varchar(255)




                                                                            44
zaterdag 9 oktober 2010
To synchronize two database
                     structures without unexpected
                    dataloss, communicating all steps
                      needed to get from A to B is
                                inevitable.



                                                        45
zaterdag 9 oktober 2010
Phing & DB Deploy




                                              46
zaterdag 9 oktober 2010
Phing & DB Deploy




                          Cartoon by Oliver Widder - http://geekandpoke.typepad.com/   47
zaterdag 9 oktober 2010
http://phing.info/




                                               48
zaterdag 9 oktober 2010
Phing




                          49
zaterdag 9 oktober 2010
50
zaterdag 9 oktober 2010
DB Deploy




                          51
zaterdag 9 oktober 2010
Phing & DB Deploy




                            52
zaterdag 9 oktober 2010
DB Deploy

          db/patches/1-create_user_table.sql




                                               53
zaterdag 9 oktober 2010
DB Deploy

          changelog table:




                             54
zaterdag 9 oktober 2010
DB Deploy

          changelog table:




                             54
zaterdag 9 oktober 2010
DB Deploy




                          PHP




                                55
zaterdag 9 oktober 2010
DB Deploy




                          SQL




                                56
zaterdag 9 oktober 2010
DB Deploy




                          Features




                                     57
zaterdag 9 oktober 2010
Liquibase
                          The most complete solution I know




                                                              58
zaterdag 9 oktober 2010
Liquibase




                          www.liquibase.org




                                              59
zaterdag 9 oktober 2010
Liquibase




                          60
zaterdag 9 oktober 2010
Liquibase




                          61
zaterdag 9 oktober 2010
Liquibase




                          62
zaterdag 9 oktober 2010
Liquibase

                Updating
                Reverting
                Tagging
                Generate XML
                Diff




                               63
zaterdag 9 oktober 2010
http://www.sxc.hu/photo/1241520
zaterdag 9 oktober 2010
Liquibase




                          Branches




                                     65
zaterdag 9 oktober 2010
Liquibase




                          DBMS Support




                                         66
zaterdag 9 oktober 2010
Liquibase




                          Documentation




                                          67
zaterdag 9 oktober 2010
Liquibase




                          Java




                                 68
zaterdag 9 oktober 2010
Akrabat DB Schema Manager
                          Zend Framework specific solution




                                                             69
zaterdag 9 oktober 2010
Akrabat DB Schema Manager

                Zend Framework
                Proposed by Rob Allen in 2006
                Recently implemented
                Might be in ZF in the near future

          http://github.com/akrabat/Akrabat




                                                    70
zaterdag 9 oktober 2010
Akrabat DB Schema Manager

                Zend Framework
                Proposed by Rob Allen in 2006
                Recently implemented
                Might be in ZF in the near future
                Might not be in ZF in the near future as well

          http://github.com/akrabat/Akrabat




                                                                71
zaterdag 9 oktober 2010
Writing the patch

          scripts/migrations/001-CreateUserTable.php




                                                       72
zaterdag 9 oktober 2010
Writing the patch

          scripts/migrations/001-CreateUserTable.php




                                                       73
zaterdag 9 oktober 2010
Akrabat DB Schema Manager




                          PHP Patches




                                        74
zaterdag 9 oktober 2010
Akrabat DB Schema Manager




                          Easy syntax if you know ZF




                                                       75
zaterdag 9 oktober 2010
Akrabat DB Schema Manager




                          Easy to install, easy to use




                                                         76
zaterdag 9 oktober 2010
Akrabat DB Schema Manager




                          Easy to install, easy to use




                                                         76
zaterdag 9 oktober 2010
Akrabat DB Schema Manager




                          Branch merging




                                           77
zaterdag 9 oktober 2010
Doctrine Migrations
                          Doctrine ORM specific solution




                                                           78
zaterdag 9 oktober 2010
Doctrine Migrations




                          http://www.doctrine-project.org/




                                                             79
zaterdag 9 oktober 2010
Doctrine Migrations Patch




                                    80
zaterdag 9 oktober 2010
Doctrine Migrations




                          Update-to-version
                              ./doctrine migrate




                                                   81
zaterdag 9 oktober 2010
YAML




                          82
zaterdag 9 oktober 2010
YAML




                          ./doctrine generate-migrations-diff




                                                                82
zaterdag 9 oktober 2010
Doctrine Migrations




                              83
zaterdag 9 oktober 2010
Doctrine Migrations




                          Generate patches




                                             84
zaterdag 9 oktober 2010
Doctrine Migrations




            Useful if you’re already using Doctrine
                              ORM




                                                      85
zaterdag 9 oktober 2010
Summary




                                    86
zaterdag 9 oktober 2010
Summary

                Patchfiles                        Akrabat DB Schema Manager
                                                  http://akrabat.com
                • Automating
                                                  http://github.com/akrabat/Akrabat
                • Branch merging
                • Why there is no silver bullet
                                                  Doctrine Migrations
                                                  http://www.doctrine-project.org
                Phing + DB Deploy
                http://phing.info
                http://dbdeploy.com


                Liquibase
                http://www.liquibase.org




                                                                                      87
zaterdag 9 oktober 2010
Questions ?




                                        88
zaterdag 9 oktober 2010
Contact me

          Harrie Verveer
          Software Engineer at Ibuildings


          E-mail:
          harrie@ibuildings.nl


          Skype:
          harrie-ibuildings


          Twitter:
          @harrieverveer




                          http://joind.in/2056
                                                 89
zaterdag 9 oktober 2010

Más contenido relacionado

Destacado

walkmod: how it works
walkmod: how it workswalkmod: how it works
walkmod: how it workswalkmod
 
Patterns and Tools for Database Versioning, Migration, Data Loading and Test ...
Patterns and Tools for Database Versioning, Migration, Data Loading and Test ...Patterns and Tools for Database Versioning, Migration, Data Loading and Test ...
Patterns and Tools for Database Versioning, Migration, Data Loading and Test ...Alan Pinstein
 
Continuous Delivery and Zero Downtime: What your architecture needs to succeed
Continuous Delivery and Zero Downtime: What your architecture needs to succeedContinuous Delivery and Zero Downtime: What your architecture needs to succeed
Continuous Delivery and Zero Downtime: What your architecture needs to succeedAxel Fontaine
 
Road to database automation: database source control
Road to database automation: database source controlRoad to database automation: database source control
Road to database automation: database source controlEduardo Piairo
 
Database Source Control: Migrations vs State
Database Source Control: Migrations vs StateDatabase Source Control: Migrations vs State
Database Source Control: Migrations vs StateEduardo Piairo
 
Flyway (33rd Degree)
Flyway (33rd Degree)Flyway (33rd Degree)
Flyway (33rd Degree)Axel Fontaine
 
KYSUC - Keep Your Schema Under Control
KYSUC - Keep Your Schema Under ControlKYSUC - Keep Your Schema Under Control
KYSUC - Keep Your Schema Under ControlCoimbra JUG
 
Leveraging Open Source for Database Development: Database Version Control wit...
Leveraging Open Source for Database Development: Database Version Control wit...Leveraging Open Source for Database Development: Database Version Control wit...
Leveraging Open Source for Database Development: Database Version Control wit...All Things Open
 
Database migration with flyway
Database migration  with flywayDatabase migration  with flyway
Database migration with flywayJonathan Holloway
 
Javaland 2016 - Flyway vs. LiquiBase - Battle der Datenbankmigrationstools
Javaland 2016 - Flyway vs. LiquiBase - Battle der DatenbankmigrationstoolsJavaland 2016 - Flyway vs. LiquiBase - Battle der Datenbankmigrationstools
Javaland 2016 - Flyway vs. LiquiBase - Battle der DatenbankmigrationstoolsStephan Kaps
 
Liquibase & Flyway @ Baltic DevOps
Liquibase & Flyway @ Baltic DevOpsLiquibase & Flyway @ Baltic DevOps
Liquibase & Flyway @ Baltic DevOpsAndrei Solntsev
 
Database Schema Evolution
Database Schema EvolutionDatabase Schema Evolution
Database Schema EvolutionLars Thorup
 
Database migrations with Flyway and Liquibase
Database migrations with Flyway and LiquibaseDatabase migrations with Flyway and Liquibase
Database migrations with Flyway and LiquibaseLars Östling
 
Data quality and data profiling
Data quality and data profilingData quality and data profiling
Data quality and data profilingShailja Khurana
 

Destacado (17)

walkmod: how it works
walkmod: how it workswalkmod: how it works
walkmod: how it works
 
Patterns and Tools for Database Versioning, Migration, Data Loading and Test ...
Patterns and Tools for Database Versioning, Migration, Data Loading and Test ...Patterns and Tools for Database Versioning, Migration, Data Loading and Test ...
Patterns and Tools for Database Versioning, Migration, Data Loading and Test ...
 
Continuous Delivery and Zero Downtime: What your architecture needs to succeed
Continuous Delivery and Zero Downtime: What your architecture needs to succeedContinuous Delivery and Zero Downtime: What your architecture needs to succeed
Continuous Delivery and Zero Downtime: What your architecture needs to succeed
 
Road to database automation: database source control
Road to database automation: database source controlRoad to database automation: database source control
Road to database automation: database source control
 
Database Source Control: Migrations vs State
Database Source Control: Migrations vs StateDatabase Source Control: Migrations vs State
Database Source Control: Migrations vs State
 
Flyway (33rd Degree)
Flyway (33rd Degree)Flyway (33rd Degree)
Flyway (33rd Degree)
 
Database versioning with liquibase
Database versioning with liquibaseDatabase versioning with liquibase
Database versioning with liquibase
 
KYSUC - Keep Your Schema Under Control
KYSUC - Keep Your Schema Under ControlKYSUC - Keep Your Schema Under Control
KYSUC - Keep Your Schema Under Control
 
Leveraging Open Source for Database Development: Database Version Control wit...
Leveraging Open Source for Database Development: Database Version Control wit...Leveraging Open Source for Database Development: Database Version Control wit...
Leveraging Open Source for Database Development: Database Version Control wit...
 
Flyway
FlywayFlyway
Flyway
 
Database migration with flyway
Database migration  with flywayDatabase migration  with flyway
Database migration with flyway
 
Javaland 2016 - Flyway vs. LiquiBase - Battle der Datenbankmigrationstools
Javaland 2016 - Flyway vs. LiquiBase - Battle der DatenbankmigrationstoolsJavaland 2016 - Flyway vs. LiquiBase - Battle der Datenbankmigrationstools
Javaland 2016 - Flyway vs. LiquiBase - Battle der Datenbankmigrationstools
 
Liquibase & Flyway @ Baltic DevOps
Liquibase & Flyway @ Baltic DevOpsLiquibase & Flyway @ Baltic DevOps
Liquibase & Flyway @ Baltic DevOps
 
Database Schema Evolution
Database Schema EvolutionDatabase Schema Evolution
Database Schema Evolution
 
Database security issues
Database security issuesDatabase security issues
Database security issues
 
Database migrations with Flyway and Liquibase
Database migrations with Flyway and LiquibaseDatabase migrations with Flyway and Liquibase
Database migrations with Flyway and Liquibase
 
Data quality and data profiling
Data quality and data profilingData quality and data profiling
Data quality and data profiling
 

Similar a Database version control without pain - the PHPNW10 version

Derailed chef update-oct2010
Derailed chef update-oct2010Derailed chef update-oct2010
Derailed chef update-oct2010jtimberman
 
Chef in the cloud [dbccg]
Chef in the cloud [dbccg]Chef in the cloud [dbccg]
Chef in the cloud [dbccg]jtimberman
 
Advanced Data Widgets and Server Integration
Advanced Data Widgets and Server IntegrationAdvanced Data Widgets and Server Integration
Advanced Data Widgets and Server IntegrationSencha
 
PLNOG 5: Adam Jacob - Choose your own PLNOGventure
PLNOG 5: Adam Jacob - Choose your own PLNOGventurePLNOG 5: Adam Jacob - Choose your own PLNOGventure
PLNOG 5: Adam Jacob - Choose your own PLNOGventurePROIDEA
 
Sharing content between hippo and solr
Sharing content between hippo and solrSharing content between hippo and solr
Sharing content between hippo and solrJettro Coenradie
 
Agile Enterprise Devops and Cloud - Interop 2010 NYC
Agile Enterprise Devops and Cloud - Interop 2010 NYCAgile Enterprise Devops and Cloud - Interop 2010 NYC
Agile Enterprise Devops and Cloud - Interop 2010 NYCChef Software, Inc.
 
Metacello
MetacelloMetacello
MetacelloESUG
 
Opscode Lightning Talk - Operations as Code
Opscode Lightning Talk - Operations as CodeOpscode Lightning Talk - Operations as Code
Opscode Lightning Talk - Operations as CodeJohn Willis
 
2010-06 - a smalltalk about salesforce.com with java architects at YaJuG
2010-06 - a smalltalk about salesforce.com with java architects at YaJuG2010-06 - a smalltalk about salesforce.com with java architects at YaJuG
2010-06 - a smalltalk about salesforce.com with java architects at YaJuGYves Leblond
 
Macruby - RubyConf Presentation 2010
Macruby - RubyConf Presentation 2010Macruby - RubyConf Presentation 2010
Macruby - RubyConf Presentation 2010Matt Aimonetti
 
Compiling and Optimizing Your Own Browser with WebKit
Compiling and Optimizing Your Own Browser with WebKitCompiling and Optimizing Your Own Browser with WebKit
Compiling and Optimizing Your Own Browser with WebKitSencha
 
The Tech Side of Project Argo
The Tech Side of Project ArgoThe Tech Side of Project Argo
The Tech Side of Project ArgoWesley Lindamood
 
Creating OpenSocial Apps
Creating OpenSocial AppsCreating OpenSocial Apps
Creating OpenSocial AppsBastian Hofmann
 
Sencha Touch beta — Amazing Mobile Web Apps with HTML5, CSS3 & JavaScript
Sencha Touch beta — Amazing Mobile Web Apps with HTML5, CSS3 & JavaScriptSencha Touch beta — Amazing Mobile Web Apps with HTML5, CSS3 & JavaScript
Sencha Touch beta — Amazing Mobile Web Apps with HTML5, CSS3 & JavaScriptDavid Kaneda
 
3. cloudcamp lt
3. cloudcamp lt3. cloudcamp lt
3. cloudcamp ltOpsCamp
 
Operations as Code
Operations as CodeOperations as Code
Operations as CodeOpsCamp
 

Similar a Database version control without pain - the PHPNW10 version (20)

OpenDj Fossa2011
OpenDj Fossa2011OpenDj Fossa2011
OpenDj Fossa2011
 
Life after sun solaris death - open dj - fossa2011
Life after sun solaris death - open dj - fossa2011Life after sun solaris death - open dj - fossa2011
Life after sun solaris death - open dj - fossa2011
 
Derailed chef update-oct2010
Derailed chef update-oct2010Derailed chef update-oct2010
Derailed chef update-oct2010
 
Chef in the cloud [dbccg]
Chef in the cloud [dbccg]Chef in the cloud [dbccg]
Chef in the cloud [dbccg]
 
Advanced Data Widgets and Server Integration
Advanced Data Widgets and Server IntegrationAdvanced Data Widgets and Server Integration
Advanced Data Widgets and Server Integration
 
PLNOG 5: Adam Jacob - Choose your own PLNOGventure
PLNOG 5: Adam Jacob - Choose your own PLNOGventurePLNOG 5: Adam Jacob - Choose your own PLNOGventure
PLNOG 5: Adam Jacob - Choose your own PLNOGventure
 
Html5 Development
Html5 DevelopmentHtml5 Development
Html5 Development
 
Sharing content between hippo and solr
Sharing content between hippo and solrSharing content between hippo and solr
Sharing content between hippo and solr
 
Agile Enterprise Devops and Cloud - Interop 2010 NYC
Agile Enterprise Devops and Cloud - Interop 2010 NYCAgile Enterprise Devops and Cloud - Interop 2010 NYC
Agile Enterprise Devops and Cloud - Interop 2010 NYC
 
Metacello
MetacelloMetacello
Metacello
 
Opscode Lightning Talk - Operations as Code
Opscode Lightning Talk - Operations as CodeOpscode Lightning Talk - Operations as Code
Opscode Lightning Talk - Operations as Code
 
2010-06 - a smalltalk about salesforce.com with java architects at YaJuG
2010-06 - a smalltalk about salesforce.com with java architects at YaJuG2010-06 - a smalltalk about salesforce.com with java architects at YaJuG
2010-06 - a smalltalk about salesforce.com with java architects at YaJuG
 
Macruby - RubyConf Presentation 2010
Macruby - RubyConf Presentation 2010Macruby - RubyConf Presentation 2010
Macruby - RubyConf Presentation 2010
 
Compiling and Optimizing Your Own Browser with WebKit
Compiling and Optimizing Your Own Browser with WebKitCompiling and Optimizing Your Own Browser with WebKit
Compiling and Optimizing Your Own Browser with WebKit
 
The Tech Side of Project Argo
The Tech Side of Project ArgoThe Tech Side of Project Argo
The Tech Side of Project Argo
 
Creating OpenSocial Apps
Creating OpenSocial AppsCreating OpenSocial Apps
Creating OpenSocial Apps
 
Oper
OperOper
Oper
 
Sencha Touch beta — Amazing Mobile Web Apps with HTML5, CSS3 & JavaScript
Sencha Touch beta — Amazing Mobile Web Apps with HTML5, CSS3 & JavaScriptSencha Touch beta — Amazing Mobile Web Apps with HTML5, CSS3 & JavaScript
Sencha Touch beta — Amazing Mobile Web Apps with HTML5, CSS3 & JavaScript
 
3. cloudcamp lt
3. cloudcamp lt3. cloudcamp lt
3. cloudcamp lt
 
Operations as Code
Operations as CodeOperations as Code
Operations as Code
 

Último

Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
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
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 

Último (20)

Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
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
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 

Database version control without pain - the PHPNW10 version