content: tighten text across 14 slides
- Convert long sentences to bullet lists (slides 6, 8) - Convert <p><br> platform lists to <ul> (slides 19, 26) - Trim wordy phrases (slides 3, 9, 10, 11, 14, 15, 24, 28, 31, 34) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
56
index.html
56
index.html
@@ -141,7 +141,7 @@
|
|||||||
<!-- ─── SLIDE 3 ─────────────────────────────────────────────────── -->
|
<!-- ─── SLIDE 3 ─────────────────────────────────────────────────── -->
|
||||||
<section>
|
<section>
|
||||||
<h2>"It works on my server."</h2>
|
<h2>"It works on my server."</h2>
|
||||||
<p><em>Or: why doesn't it work here, when it works everywhere else?</em></p>
|
<p><em>Why doesn't it work here when it works everywhere else?</em></p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<!-- ─── SLIDE 4 ─────────────────────────────────────────────────── -->
|
<!-- ─── SLIDE 4 ─────────────────────────────────────────────────── -->
|
||||||
@@ -265,7 +265,10 @@
|
|||||||
<!-- ─── SLIDE 6 ─────────────────────────────────────────────────── -->
|
<!-- ─── SLIDE 6 ─────────────────────────────────────────────────── -->
|
||||||
<section>
|
<section>
|
||||||
<h2>Now you have 100 servers.</h2>
|
<h2>Now you have 100 servers.</h2>
|
||||||
<p><em>Some 2 years old. Some a couple of months. Some freshly provisioned.<br>None of them are exactly alike.</em></p>
|
<ul>
|
||||||
|
<li>Some 2 years old. Some a few months. Some brand new.</li>
|
||||||
|
<li>None of them are exactly alike.</li>
|
||||||
|
</ul>
|
||||||
<!-- SVG3 — 100-server chaos grid with drift indicators -->
|
<!-- SVG3 — 100-server chaos grid with drift indicators -->
|
||||||
<svg width="700" height="260" viewBox="0 0 700 260" style="margin-top:0.5em;" xmlns="http://www.w3.org/2000/svg">
|
<svg width="700" height="260" viewBox="0 0 700 260" style="margin-top:0.5em;" xmlns="http://www.w3.org/2000/svg">
|
||||||
<defs>
|
<defs>
|
||||||
@@ -409,7 +412,12 @@
|
|||||||
<!-- ─── SLIDE 8 ─────────────────────────────────────────────────── -->
|
<!-- ─── SLIDE 8 ─────────────────────────────────────────────────── -->
|
||||||
<section>
|
<section>
|
||||||
<h2>Configuration drift is silent…</h2>
|
<h2>Configuration drift is silent…</h2>
|
||||||
<p><em>Prod breaks on a Tuesday. You can't reproduce the bug locally. You can't scale reliably. You can't onboard a new server without fear.</em></p>
|
<ul>
|
||||||
|
<li>Prod breaks on a Tuesday</li>
|
||||||
|
<li>Can't reproduce the bug locally</li>
|
||||||
|
<li>Can't scale reliably</li>
|
||||||
|
<li>Can't onboard a new server without fear</li>
|
||||||
|
</ul>
|
||||||
<svg width="750" height="220" style="margin-top:0.5em;" viewBox="0 0 750 220" xmlns="http://www.w3.org/2000/svg">
|
<svg width="750" height="220" style="margin-top:0.5em;" viewBox="0 0 750 220" xmlns="http://www.w3.org/2000/svg">
|
||||||
<line x1="60" y1="180" x2="700" y2="180" stroke="#666666" stroke-width="2.5"/>
|
<line x1="60" y1="180" x2="700" y2="180" stroke="#666666" stroke-width="2.5"/>
|
||||||
<polygon points="700,174 720,180 700,186" fill="#666666"/>
|
<polygon points="700,174 720,180 700,186" fill="#666666"/>
|
||||||
@@ -449,7 +457,7 @@
|
|||||||
<!-- ─── SLIDE 9 ─────────────────────────────────────────────────── -->
|
<!-- ─── SLIDE 9 ─────────────────────────────────────────────────── -->
|
||||||
<section style="height:100%;">
|
<section style="height:100%;">
|
||||||
<h2>What if your infrastructure was just… code?</h2>
|
<h2>What if your infrastructure was just… code?</h2>
|
||||||
<p><em>Yes, even your AI assistant can write it*. But you still need to understand what it deploys.</em></p>
|
<p><em>Your AI assistant can write it*. You still need to understand what it deploys.</em></p>
|
||||||
<svg width="750" height="220" style="margin-top:0.5em;" viewBox="0 0 750 220" xmlns="http://www.w3.org/2000/svg">
|
<svg width="750" height="220" style="margin-top:0.5em;" viewBox="0 0 750 220" xmlns="http://www.w3.org/2000/svg">
|
||||||
<!-- Code file icon -->
|
<!-- Code file icon -->
|
||||||
<rect x="80" y="35" width="120" height="150" rx="6" fill="none" stroke="#0050d7" stroke-width="2.5"/>
|
<rect x="80" y="35" width="120" height="150" rx="6" fill="none" stroke="#0050d7" stroke-width="2.5"/>
|
||||||
@@ -480,7 +488,7 @@
|
|||||||
<!-- ─── SLIDE 10 ────────────────────────────────────────────────── -->
|
<!-- ─── SLIDE 10 ────────────────────────────────────────────────── -->
|
||||||
<section>
|
<section>
|
||||||
<h2>Configuration as Code</h2>
|
<h2>Configuration as Code</h2>
|
||||||
<p>Managing infrastructure through machine-readable files, stored in version control.</p>
|
<p>Machine-readable files. Version-controlled. Automated.</p>
|
||||||
<svg width="750" height="220" style="margin-top:0.5em;" viewBox="0 0 750 220" xmlns="http://www.w3.org/2000/svg">
|
<svg width="750" height="220" style="margin-top:0.5em;" viewBox="0 0 750 220" xmlns="http://www.w3.org/2000/svg">
|
||||||
<!-- Reproducible -->
|
<!-- Reproducible -->
|
||||||
<g transform="translate(125,80)">
|
<g transform="translate(125,80)">
|
||||||
@@ -522,7 +530,7 @@
|
|||||||
<!-- ─── SLIDE 11 ────────────────────────────────────────────────── -->
|
<!-- ─── SLIDE 11 ────────────────────────────────────────────────── -->
|
||||||
<section>
|
<section>
|
||||||
<h2>Meet the three musketeers of infrastructure.</h2>
|
<h2>Meet the three musketeers of infrastructure.</h2>
|
||||||
<p><span class="puppet-col">Puppet</span> · <span class="ansible-col">Ansible</span> · <span class="tf-col">Terraform</span> — each fights a different battle.</p>
|
<p><span class="puppet-col">Puppet</span> · <span class="ansible-col">Ansible</span> · <span class="tf-col">Terraform</span> — each solves a different problem.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<!-- ─── SLIDE 12 : Terraform intro ──────────────────────────────── -->
|
<!-- ─── SLIDE 12 : Terraform intro ──────────────────────────────── -->
|
||||||
@@ -599,7 +607,7 @@
|
|||||||
<li>Store it <strong>remotely</strong> — never commit it to Git</li>
|
<li>Store it <strong>remotely</strong> — never commit it to Git</li>
|
||||||
<li>May contain sensitive values: credentials, tokens, secrets</li>
|
<li>May contain sensitive values: credentials, tokens, secrets</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p><em>Handle it with care. Don't feed it to your LLM.</em></p>
|
<p><em>Handle with care.</em></p>
|
||||||
<svg width="750" height="220" style="margin-top:0.5em;" viewBox="0 0 750 220" xmlns="http://www.w3.org/2000/svg">
|
<svg width="750" height="220" style="margin-top:0.5em;" viewBox="0 0 750 220" xmlns="http://www.w3.org/2000/svg">
|
||||||
<defs>
|
<defs>
|
||||||
<marker id="st-arrow" viewBox="0 0 8 6" refX="8" refY="3" markerWidth="8" markerHeight="6" orient="auto-start-auto">
|
<marker id="st-arrow" viewBox="0 0 8 6" refX="8" refY="3" markerWidth="8" markerHeight="6" orient="auto-start-auto">
|
||||||
@@ -667,7 +675,7 @@
|
|||||||
<h2>One tool. Every API.</h2>
|
<h2>One tool. Every API.</h2>
|
||||||
<ul>
|
<ul>
|
||||||
<li><strong>1000+ providers</strong> — AWS, GCP, Azure, Cloudflare, GitHub, Kubernetes…</li>
|
<li><strong>1000+ providers</strong> — AWS, GCP, Azure, Cloudflare, GitHub, Kubernetes…</li>
|
||||||
<li>Not just cloud — GitHub teams, Datadog monitors, PagerDuty schedules, DNS records</li>
|
<li>Not just cloud — DNS, monitoring, CI/CD, anything with an API</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p><em>If it has an API, there's a Terraform provider for it.</em></p>
|
<p><em>If it has an API, there's a Terraform provider for it.</em></p>
|
||||||
</section>
|
</section>
|
||||||
@@ -738,12 +746,12 @@ Apply complete! Resources: 2 added, 0 changed, 0 destroyed.
|
|||||||
<!-- ─── SLIDE 19 : Terraform platforms ──────────────────────────── -->
|
<!-- ─── SLIDE 19 : Terraform platforms ──────────────────────────── -->
|
||||||
<section class="s-tf">
|
<section class="s-tf">
|
||||||
<h2>Terraform at scale needs a platform.</h2>
|
<h2>Terraform at scale needs a platform.</h2>
|
||||||
<p>
|
<ul>
|
||||||
<strong>Terraform Enterprise / HCP Terraform</strong> — HashiCorp's commercial offering: remote state, RBAC, audit logs<br>
|
<li><strong>Terraform Enterprise / HCP Terraform</strong> — remote state, RBAC, audit logs</li>
|
||||||
<strong>Spacelift</strong> — GitOps-first CI/CD for Terraform (and OpenTofu)<br>
|
<li><strong>Spacelift</strong> — GitOps-first CI/CD for Terraform and OpenTofu</li>
|
||||||
<strong>Atlantis</strong> — open-source: plan & apply triggered by pull requests<br>
|
<li><strong>Atlantis</strong> — open-source, plan & apply from pull requests</li>
|
||||||
<strong>env0, Scalr</strong> — SaaS alternatives with policy & cost management
|
<li><strong>env0, Scalr</strong> — SaaS with policy & cost management</li>
|
||||||
</p>
|
</ul>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<!-- ─── SLIDE 20 : Ansible intro ────────────────────────────────── -->
|
<!-- ─── SLIDE 20 : Ansible intro ────────────────────────────────── -->
|
||||||
@@ -858,7 +866,7 @@ finistdevs-web : ok=4 changed=3 unreachable=0 failed=0 skipped=0
|
|||||||
<li>Roll out a kernel upgrade with a canary strategy</li>
|
<li>Roll out a kernel upgrade with a canary strategy</li>
|
||||||
<li>Run a compliance audit across your whole fleet</li>
|
<li>Run a compliance audit across your whole fleet</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p><em>Ansible is the tool you reach for when you need to do something — once, or every week.</em></p>
|
<p><em>The go-to tool for one-off tasks and recurring operations.</em></p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<!-- ─── SLIDE 25 : Ansible Galaxy ───────────────────────────────── -->
|
<!-- ─── SLIDE 25 : Ansible Galaxy ───────────────────────────────── -->
|
||||||
@@ -874,12 +882,12 @@ finistdevs-web : ok=4 changed=3 unreachable=0 failed=0 skipped=0
|
|||||||
<!-- ─── SLIDE 26 : Ansible platforms ────────────────────────────── -->
|
<!-- ─── SLIDE 26 : Ansible platforms ────────────────────────────── -->
|
||||||
<section class="s-ansible">
|
<section class="s-ansible">
|
||||||
<h2>Ansible at scale: open-source vs enterprise.</h2>
|
<h2>Ansible at scale: open-source vs enterprise.</h2>
|
||||||
<p>
|
<ul>
|
||||||
<strong>AWX</strong> — open-source web UI, API, and scheduler for Ansible<br>
|
<li><strong>AWX</strong> — open-source web UI, API, and scheduler</li>
|
||||||
<strong>Ansible Automation Platform</strong> (Red Hat) — enterprise version of AWX, with support & integrations<br>
|
<li><strong>Ansible Automation Platform</strong> (Red Hat) — enterprise AWX with support</li>
|
||||||
<strong>Semaphore</strong> — lightweight open-source alternative to AWX<br>
|
<li><strong>Semaphore</strong> — lightweight open-source alternative</li>
|
||||||
<em>The core Ansible engine remains Apache 2.0 — truly open-source.</em>
|
</ul>
|
||||||
</p>
|
<p><em>Core engine remains Apache 2.0 — truly open-source.</em></p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<!-- ─── SLIDE 27 : Puppet intro ─────────────────────────────────── -->
|
<!-- ─── SLIDE 27 : Puppet intro ─────────────────────────────────── -->
|
||||||
@@ -895,7 +903,7 @@ finistdevs-web : ok=4 changed=3 unreachable=0 failed=0 skipped=0
|
|||||||
<li>Every 30 minutes, each <code>puppet-agent</code> polls the Puppet Server</li>
|
<li>Every 30 minutes, each <code>puppet-agent</code> polls the Puppet Server</li>
|
||||||
<li>Compiles a catalog and enforces it locally</li>
|
<li>Compiles a catalog and enforces it locally</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p><em>Drift is corrected automatically — without anyone lifting a finger.</em></p>
|
<p><em>Drift is corrected automatically.</em></p>
|
||||||
<svg width="750" height="250" viewBox="0 0 750 250" xmlns="http://www.w3.org/2000/svg" style="margin-top:0.5em;">
|
<svg width="750" height="250" viewBox="0 0 750 250" xmlns="http://www.w3.org/2000/svg" style="margin-top:0.5em;">
|
||||||
<defs>
|
<defs>
|
||||||
<marker id="a-pull" viewBox="0 0 10 7" refX="9" refY="3.5" markerWidth="9" markerHeight="7" orient="auto">
|
<marker id="a-pull" viewBox="0 0 10 7" refX="9" refY="3.5" markerWidth="9" markerHeight="7" orient="auto">
|
||||||
@@ -981,7 +989,7 @@ Notice: Applied catalog in 12.34 seconds
|
|||||||
<ul>
|
<ul>
|
||||||
<li>Puppet noticed. Puppet fixed it.</li>
|
<li>Puppet noticed. Puppet fixed it.</li>
|
||||||
<li>Continuous compliance — not just at deploy time. <strong>Every. 30. Minutes.</strong></li>
|
<li>Continuous compliance — not just at deploy time. <strong>Every. 30. Minutes.</strong></li>
|
||||||
<li>No more gardening your servers by hand</li>
|
<li>No manual remediation</li>
|
||||||
</ul>
|
</ul>
|
||||||
<svg width="750" height="200" viewBox="0 0 750 200" xmlns="http://www.w3.org/2000/svg" style="margin-top:0.5em;">
|
<svg width="750" height="200" viewBox="0 0 750 200" xmlns="http://www.w3.org/2000/svg" style="margin-top:0.5em;">
|
||||||
<defs>
|
<defs>
|
||||||
@@ -1040,7 +1048,7 @@ Notice: Applied catalog in 12.34 seconds
|
|||||||
<!-- ─── SLIDE 34 : They're complementary ────────────────────────── -->
|
<!-- ─── SLIDE 34 : They're complementary ────────────────────────── -->
|
||||||
<section>
|
<section>
|
||||||
<h2>They're not competing. They're complementary.</h2>
|
<h2>They're not competing. They're complementary.</h2>
|
||||||
<p>Each one solves a different layer of the same problem.</p>
|
<p>Each solves a different layer of the same problem.</p>
|
||||||
<svg width="800" height="280" viewBox="0 0 800 280" xmlns="http://www.w3.org/2000/svg" style="margin-top:0.5em;">
|
<svg width="800" height="280" viewBox="0 0 800 280" xmlns="http://www.w3.org/2000/svg" style="margin-top:0.5em;">
|
||||||
<defs>
|
<defs>
|
||||||
<marker id="a-down" viewBox="0 0 10 10" refX="5" refY="10" markerWidth="10" markerHeight="10" orient="auto">
|
<marker id="a-down" viewBox="0 0 10 10" refX="5" refY="10" markerWidth="10" markerHeight="10" orient="auto">
|
||||||
|
|||||||
Reference in New Issue
Block a user