Over the years, I’ve given quite a few technical presentations, mostly on optimizing SQL and PHP application performance and C++ development for Drizzle.  I list them here in no particular order.
OpenStack QA – Walkthrough of Processes, Tools and Code
Google Presentation (HTML)
PDF slides
Topics included in the slides:
- OpenStack Contribution Process
- Running Devstack Locally
- Running Tempest against an Environment
- Walkthrough the Tempest Source Code
- Progressively improving a test case
- Common Scenarios in Code Review and Submission
Developing Drizzle Replication Plugins
Open Office Impress slides
PDF slides
Topics included in the slides:
- About the Drizzle Community and Expectations of Contributors
- Getting started on Launchpad
- Various features of Launchpad
- Understanding the Source Code Directory Structure
- Code walkthrough of Drizzle plugin basics
- Drizzle’s System Architecture
- Overview of Drizzle’s Replication System
- Understanding Google Protobuffers
- The Transaction message in Detail
- In-depth code walkthrough of the Filtered Replicator module
- In-depth code walkthrough of the Transaction Log module
- Future of Drizzle replication – Publisher and Subscriber plugins
A Drizzle Code Excursion
Open Office Impress slides
PDF slides
Topics included in the slides:
- About the Drizzle Community and Expectations of Contributors
- Getting started on Launchpad
- Various features of Launchpad
- Understanding the Source Code Directory Structure
- What are the Big Modules and Code Pieces?
- Walk through the Execution of a SELECT statement
- How Does the Plugin System Work?
A Contributor’s Guide to Launchpad and Bazaar
Open Office Impress slides
PDF slides
Topics included in the slides:
- Getting started on Launchpad
- Various features of Launchpad
- Setting up a Bazaar repository
- Bazaar Commands
- Working in a decentralized gatekeeper model
- Linking to tasks through Launchpad
- Resolving merge conflicts using Meld
Legend of Drunken Query Master: The Apprentice’s Journey
Open Office Impress slides
PDF slides
Topics included in the slides:
- Schema optimization and vertical partitioning
- SQL Coding style guidelines
- Set-wise problem solving in SQL (and why it kicks for-loop-fu’s ass.)
- Rewriting correlated subqueries into joins
- Using derived tables or subqueries in the FROM clause
- Working with N:M or “mapping” tables
- Dealing with OR conditions
- Dealing with AND conditions
- Combatting filesorts using Cross-join-fu
- Understanding Left-join-fu
- Handling Heirarchical Data
- Adjacency Lists
- Nested Sets
- Reporting techniques in SQL
- Calculating running sums and aggregates
- Calculating rank of results
Join-fu: The Art of SQL – Part I
Open Office Impress slides
PDF slides
Topics include:
- Schema optimization and vertical partitioning
- SQL Coding style guidelines
- Set-wise problem solving in SQL (and why it kicks for-loop-fu’s ass.)
- Rewriting correlated subqueries into joins
- Using derived tables or subqueries in the FROM clause
- Working with N:M or “mapping” tables
- Dealing with OR conditions
- Dealing with AND conditions
- Combatting filesorts using Cross-join-fu
- Understanding Left-join-fu
Join-fu: The Art of SQL – Part II
Open Office Impress slides
PDF slides
Topics include:
- Handling Heirarchical Data
- Adjacency Lists
- Nested Sets
- Doing GIS calculations in SQL
- Without using user variables, the spatial extensions or stored functions
- Calculating distance between two points
- Doing radius searches in spherical geometries
- Reporting techniques in SQL
- Calculating running sums and aggregates
- Calculating rank of results
15 Ways to Kill Your MySQL Application Performance
Open Office Impress slides
PDF slides
Topics include:
- Understanging EXPLAIN
- Finding Poor Index Choices
- PHP and Stored Procedures
- Cost of Heavy Abstraction Layers
- Understanding Differences in Index Layouts
- Understanding the MySQL Query Cache
- Solving the Spider Deep Scan Problem
- Using AUTO_INCREMENT
- Using INSERT ON DUPLICATE KEY UPDATE