Skip to content

Commit

Permalink
Migrate presentations from other repos (#2)
Browse files Browse the repository at this point in the history
* Update README.md

* Edit markdownlint config to be compatible with slidev

* Add DevOpsDays Geneva 2023 slides

* Migrate presentations from five-min-talks
  • Loading branch information
devpro authored Feb 12, 2024
1 parent 8cd79c6 commit da592ea
Show file tree
Hide file tree
Showing 12 changed files with 220 additions and 7 deletions.
3 changes: 3 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,9 @@ jobs:
cp -r assets dist/assets
npm run build src/index.md -- --base presentations -o ../dist
npm run build src/demo.md -- --base presentations/demo -o ../dist/demo
npm run build src/automated-testing.md -- --base presentations/automated-testing -o ../dist/automated-testing
npm run build src/code-quality.md -- --base presentations/code-quality -o ../dist/code-quality
npm run build src/presentation-as-code.md -- --base presentations/presentation-as-code -o ../dist/presentation-as-code
npm run build src/202402_securite_conteneur.md -- --base presentations/meetup-secu-conteneur-202402 -o ../dist/meetup-secu-conteneur-202402
- name: Setup Pages
uses: actions/configure-pages@v4
Expand Down
5 changes: 5 additions & 0 deletions .markdownlint.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
default: true
MD003: false # Heading style
MD013: # Line length
line_length: 300
MD022: false # Headings should be surrounded by blank lines
MD024: false # Multiple headings with the same content
MD025: false # Multiple top-level headings in the same document
MD033: false # Inline HTML
MD034: false # Bare URL used
MD053: false # Link and image reference definitions should be needed
18 changes: 14 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,24 @@
# Devpro's presentations

[![CI](https://github.com/devpro/presentations/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/devpro/presentations/actions/workflows/ci.yml)
[![Deploy](https://github.com/devpro/presentations/actions/workflows/deploy.yml/badge.svg?branch=main)](https://github.com/devpro/presentations/actions/workflows/deploy.yml)

Source or links to presentations made by Bertrand Thomas.

Feel free to [contribute](CONTRIBUTING.md).
You are welcome to [contribute](CONTRIBUTING.md).

## Content
## Events

💡 Files in `exports` folder are manually downloaded from [slides.com](https://slides.com/devprofr) as a backup

### DevOps

Event | Session | Slides
------------------------------|---------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------
DevOpsDays Geneva 2023 | [🇫🇷 Transformation numérique et DevOps à l'heure des conteneurs](https://devopsdays.org/events/2023-geneva/program/bertrand-thomas) | [PDF](slides/202304_devopsdays_geneva_2023.pdf)
Meetup DevOps Geneva Feb 2024 | [🇫🇷 La sécurité des conteneurs rendue simple grâce à l'open source](https://www.meetup.com/fr-FR/devops-geneve/events/298652964/) | [PDF](slides/202402_securite_conteneur-export.pdf)

### Technical

Title | Host | Source
-------------------------------------------------------------------------|------------|-------------------------------------------------
Expand All @@ -15,5 +27,3 @@ Title | Host
[.NET Core 101](https://slides.com/devprofr/net-core-101) | Slides.com | [html](exports/slides-net-core-101.html)
[MongoDB News 2009 Q1](https://slides.com/devprofr/mongodb-news-2019-q1) | Slides.com | [html](exports/slides-mongodb-news-2019-q1.html)
[Puppet Dojo](https://slides.com/devprofr/dojo-puppet) | Slides.com | [html](exports/slides-dojo-puppet.html)

💡 Files in `exports` folder are manually downloaded from [slides.com](https://slides.com/devprofr) as a backup
Binary file added assets/images/bdd.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/los-3-amigos.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/pyramid-test.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added slides/202304_devopsdays_geneva_2023.pdf
Binary file not shown.
115 changes: 115 additions & 0 deletions src/automated-testing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
---
theme: seriph
highlighter: shiki
lineNumbers: false
css: unocss
transition: slide-left
title: Automated Testing
---

# Automated Testing

Want to know about one of the most important best practices in software development?

---

# Objectives

What can be achieved with automated testing?

- 🎯 **Focus** on the real added value
- 🚀 **Reduce** the Time To Market
- 🛎 **Guarantee** the quality of service
- 💪 **Overcome** IT complexity
- 👷 **Enable** technical improvement reworks

---

# Pyramid of Tests

Foundation of any testing strategy

<img src="/images/pyramid-test.png" alt="pyramid of tests" class="m-8 ml-30 h-80 rounded shadow" />

---

# Challenges

What is difficult to have with test automation?

-**Maintenable** tests (over time)
- 🏬 **Reproducible** data set
-**Open** solution with contributions from non-technical people
- 🧪 **Straightforward** test plan
- 📖 **Comprehensive** test results
- 🐛 **Investigable** errors

---

# Lessons learned

Known recipes for success

- Tests are executed in a neutral environment (automation pipelines)
- Development and testing of any change are done at the same time
- Specifications are accessible and explicit
- Best practices and patterns are followed while engineering the solution
- Any failure in production is a perfect candidate for test automation
- Focus is made on the most used and critical usecases

---

# PageObject Pattern

Split the code between the application features and the UI components

<img src="https://www.martinfowler.com/bliki/images/pageObject/pageObject.png" alt="Page Objects, HTML Wrapper" class="m-8 ml-50 h-80 rounded shadow" />

---

# BDD (Behavior driven development)

An Agile software development process that encourages collaboration

<img src="/images/bdd.png" alt="Automated Tests, Executable Specifications, Living Documentation" class="m-8 ml-60 h-80 rounded shadow" />

---

# Los 3 amigos

Business, Testing, Development

<img src="/images/los-3-amigos.jpg" alt="Los 3 Amigos" class="ml-70 h-100 rounded shadow" />

---

# Gherkin language

Describe any process in simple words

```gherkin
Feature: Guess the word
# The first example has two steps
Scenario: Maker starts a game
When the Maker starts a game
Then the Maker waits for a Breaker to join
# The second example has three steps
Scenario: Breaker joins a game
Given the Maker has started a game with the word "silky"
When the Breaker joins the Maker's game
Then the Breaker must guess a word with 5 characters
```

---

# Open-source tooling

Most used projects

- [**Cucumber**](https://cucumber.io/) ([GitHub org](https://github.com/cucumber))
- [**Cypress**](https://www.cypress.io/) ([code](https://github.com/cypress-io/cypress) _★ 42.6k_)
- [**Jest**](https://jestjs.io/) ([code](https://github.com/facebook/jest) _★ 41.4k_)
- [**Playwright**](https://playwright.dev/) ([code](https://github.com/microsoft/playwright) _★ 47.7k_)
- [**Selenium**](https://www.selenium.dev/) ([code](https://github.com/SeleniumHQ/selenium) _★ 25.8k_)
28 changes: 28 additions & 0 deletions src/code-quality.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
theme: seriph
highlighter: shiki
lineNumbers: false
css: unocss
transition: slide-left
title: Code Quality
---

# Code Quality

---

# MegaLinter

<Youtube id="NauVD4z-cMA" />

---

# EditorConfig

<Youtube id="7sdHJtfTGa4" />

---

# Sonar

<Youtube id="Mha6VjmJyus" />
10 changes: 7 additions & 3 deletions src/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,15 @@ transition: slide-left

# Devpro's presentations

## Recent
## Events

* [🇫🇷 - Sécurité des conteneurs (Meetup DevOps Genève)](https://devpro.github.io/presentations/meetup-secu-conteneur-202402/) - Feb 2024
* [Automated Testing](https://github.com/devpro/five-min-talks/blob/main/five-min-talks/automated-testing)
* [Presentation-as-code](https://github.com/devpro/five-min-talks/blob/main/five-min-talks/presentation-as-code)

## Recent

* [Automated Testing](https://devpro.github.io/presentations/automated-testing)
* [Code quality](https://devpro.github.io/presentations/automated-testing)
* [Presentation-as-code](https://devpro.github.io/presentations/presentation-as-code)

## Archive

Expand Down
48 changes: 48 additions & 0 deletions src/presentation-as-code.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
theme: seriph
highlighter: shiki
lineNumbers: false
css: unocss
transition: slide-left
title: Presentation-as-code
background: /images/presentation-as-code-ai-20230306.jpg
---

# Presentation-as-code

Yes, we can create and manage slides from a source code!

---

# Markdown

```md
# My nice title

## My first subtitle

**Here** I am going to write _very good_ documentation about some stuff.
```

---

# Free web hosting

- 🐙 **GitHub** Pages
- 🦊 **GitLab** Pages

---

# Open-source tooling

Interesting projects

- [**Marp**](https://marp.app/) ([code](https://github.com/marp-team/marp) _★ 5.7k_)
- [**Slidev**](https://sli.dev/) ([code](https://github.com/slidevjs/slidev) _★ 25.6k_)

---

# Examples

- [devpro/fun-with-containers](https://github.com/devpro/fun-with-containers)
- [devpro/presentations](https://github.com/devpro/presentations)

0 comments on commit da592ea

Please sign in to comment.