- Introduction to shel scripting and basic functions.
- The rules that determine who can read, write, or execute a file or directory in a Unix-like operating system, typically managed using 'chmod', 'chown', and 'chgrp' commands.
- Techniques to redirect input and output of commands in the shell, including standard input, output, and error streams using operators.
- Shell variables store data like strings or numbers, while shell expansions refer to the process of replacing variables, commands, or special symbols with their values or results when a command is executed.
- Shell scripts that incorporate loops, conditional statements, and parsing to automate repetitive tasks and make decisions based on variable states.
- Managing processes and signals in Unix-like operating systems, including creating, killing, and handling processes, and sending signals to control their behavior using commands.
- Using regular expressions (regex) to match patterns within text, commonly used with tools like grep, sed, and awk for text processing and manipulation.
- Introduction to basic networking concepts, including IP addressing, DNS, and common networking tools.
- Continued exploration of networking concepts.
- Understanding the components of web infrastructure, including servers, databases, load balancers, and how they work together to host and serve web applications.
- Overview of HTTPS and SSL/TLS, including how encryption and certificates work to secure data transmission over the internet.
- A blog post explaining the detailed process that occurs when you enter a URL into your browser, including DNS resolution, TCP/IP handshakes, and rendering the webpage.
- Diagnosing and fixing issues in a web stack.
- Introduction to firewalls, including how they control network traffic and protect systems from unauthorized access.
- Basics of MySQL, a popular relational database management system, including commands for managing databases, tables, and performing queries using SQL.
- Understanding APIs (Application Programming Interfaces), including how to create, consume, and secure them using RESTful principles and tools.
- Advanced topics in API development and consumption, including authentication, rate limiting, and creating more complex API interactions.
- Further exploration of web stack debugging.
- Techniques for monitoring web stacks, including setting up alerts, logging, and using monitoring tools to ensure system health and performance.
- Writing postmortems to analyze and document incidents, including how to identify root causes, lessons learned, and steps to prevent future occurrences.
- Introduction to configuration management tools which automate the deployment and management of system configurations across multiple servers.
- Understanding and using SSH (Secure Shell) to securely connect to remote systems, including key-based authentication, port forwarding, and secure file transfers.
- Setting up and configuring web servers. Including serving static and dynamic content, virtual hosts, and securing the server.
- Introduction to web stack debugging, focusing on common issues and basic troubleshooting techniques for web servers, databases, and networking.
- Continuing from the previous module, this focuses on more specific debugging scenarios and strategies for identifying and resolving issues within a web stack.
- Introduction to load balancing, a technique used to distribute incoming network traffic across multiple servers to ensure high availability, reliability, and performance of web applications.
- Overview of application servers, which host and run web applications, handling tasks like request processing, resource management, and providing a runtime environment for server-side scripts and services.
- Advanced techniques for diagnosing and resolving complex issues in a web stack, focusing on scenarios that involve multiple layers of the stack and intricate interactions between components.