<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Delivery &amp; Operations on DATATWEETS</title><link>https://datatweets.com/courses/software-engineering/delivery-and-operations/</link><description>Recent content in Delivery &amp; Operations on DATATWEETS</description><generator>Hugo</generator><language>en</language><copyright>Copyright (c) 2025 Datatweets</copyright><lastBuildDate>Sun, 05 Jul 2026 09:00:00 +0200</lastBuildDate><atom:link href="https://datatweets.com/courses/software-engineering/delivery-and-operations/index.xml" rel="self" type="application/rss+xml"/><item><title>Lesson 1 - Version Control Essentials</title><link>https://datatweets.com/courses/software-engineering/delivery-and-operations/lesson-1-version-control-essentials/</link><pubDate>Sun, 05 Jul 2026 09:00:00 +0200</pubDate><guid>https://datatweets.com/courses/software-engineering/delivery-and-operations/lesson-1-version-control-essentials/</guid><description>This lesson opens Module 4 with a fast, conceptual tour of version control, using Ledgerly&amp;rsquo;s three-person team as the running example. You will see the working directory, staging area, and commit history as one mental model, understand why Ledgerly uses one branch per feature, and see real &lt;code>git status&lt;/code>, &lt;code>git add&lt;/code>, &lt;code>git commit&lt;/code>, &lt;code>git branch&lt;/code>, and &lt;code>git push&lt;/code> output from a live demo repository. Deep Git mechanics — merging, rebasing, pull requests, conflict resolution — live in the dedicated Git and GitHub course, linked at the end.</description></item><item><title>Lesson 2 - CI/CD and DevOps</title><link>https://datatweets.com/courses/software-engineering/delivery-and-operations/lesson-2-cicd-and-devops/</link><pubDate>Sun, 05 Jul 2026 09:00:00 +0200</pubDate><guid>https://datatweets.com/courses/software-engineering/delivery-and-operations/lesson-2-cicd-and-devops/</guid><description>This lesson builds a real GitHub Actions pipeline that lints, tests, and builds Ledgerly&amp;rsquo;s code on every commit, then runs a Python script that simulates one pipeline stage against the pricing tests from Module 3. You will see real output from a passing build and a real failing build after a pricing bug is introduced, then use a concrete staging-to-production scenario to tell continuous delivery apart from continuous deployment. The lesson closes with DevOps culture: why the people who write Ledgerly&amp;rsquo;s code also need to feel what happens when it breaks in production.</description></item><item><title>Lesson 3 - Security Best Practices</title><link>https://datatweets.com/courses/software-engineering/delivery-and-operations/lesson-3-security-best-practices/</link><pubDate>Sun, 05 Jul 2026 09:00:00 +0200</pubDate><guid>https://datatweets.com/courses/software-engineering/delivery-and-operations/lesson-3-security-best-practices/</guid><description>This lesson covers four defensive habits every Ledgerly developer needs: validating input and using parameterized queries to stop SQL injection, reading secrets like the payment gateway API key from environment variables instead of hardcoding them, granting each service only the database access its job requires, and checking dependencies for known vulnerabilities before they ship. Every example runs against a real SQLite database, including a live demonstration of an injection attack succeeding against unsafe code and failing against the fixed version.</description></item><item><title>Lesson 4 - Guided Project: Shipping Ledgerly Safely</title><link>https://datatweets.com/courses/software-engineering/delivery-and-operations/lesson-4-guided-project-shipping-ledgerly-safely/</link><pubDate>Sun, 05 Jul 2026 09:00:00 +0200</pubDate><guid>https://datatweets.com/courses/software-engineering/delivery-and-operations/lesson-4-guided-project-shipping-ledgerly-safely/</guid><description>In this guided project you take a real Ledgerly feature, safer customer search plus a payment gateway config fix, from a messy working directory to a live deploy. You organize the change into clean, logical commits using Lesson 1&amp;rsquo;s version control model, write a GitHub Actions YAML pipeline that runs the test suite and a security lint before any deploy job can run, and fix two concrete security issues: a SQL injection bug and a hardcoded API key. Both fixes get a real, runnable Python test, and the project closes with a deployment checklist that reflects Lesson 2&amp;rsquo;s distinction between continuous delivery and continuous deployment.</description></item></channel></rss>