Skip to main content
Latest
Chapter 13: Append to a Slice
Golang

Chapter 13: Append to a Slice

Slices and arrays are not the same. Let's learn it clearly.

ยท Mead Naji

Chapter 12: Slices
Golang

Chapter 12: Slices

Slices solve the problem of array size.

ยท Mead Naji

Chapter 11: Access Array Elements
Golang

Chapter 11: Access Array Elements

Now that you have learned how to create an array, itโ€™s time to learn how to access a specific element in an array.

ยท Mead Naji

Chapter 10: Arrays in Golang
Golang

Chapter 10: Arrays in Golang

Like most programming languages, Go also have arrays.

ยท Mead Naji

Chapter 9: Variadic Functions
Golang

Chapter 9: Variadic Functions

This special function in Go gives you more power...

ยท Mead Naji

Chapter 8: Multiple Return
Golang

Chapter 8: Multiple Return

In Go, your function can have multiple returns.

ยท Mead Naji

Chapter 7: Functions in Golang
Golang

Chapter 7: Functions in Golang

Good coder codes, great coder reuses.

ยท Mead Naji

Chapter 6: Slicing Strings
Golang

Chapter 6: Slicing Strings

Another interesting concept in Go that you will see and use often is the concept of slicing.

ยท Mead Naji

Chapter 5: Working with Strings
Golang

Chapter 5: Working with Strings

String is an important data type in programming languages in general, and in Golang there is a specific Go package called strings which offers a bunch of functions to work with and manipulate strings.

ยท Mead Naji

Chapter 4: Variables and Datatypes
Golang

Chapter 4: Variables and Datatypes

Letโ€™s start learning some basics of the Go language syntax and how things are created.

ยท Mead Naji

Chapter 3: First Golang Project
Golang

Chapter 3: First Golang Project

With Go installed, you are ready to start writing your first Golang project.

ยท Mead Naji

Chapter 2: Setting Up Golang
Golang

Chapter 2: Setting Up Golang

Now you are ready to get your hands dirty and touch some Golang code, but first you need to install and set up Golang in order to run it on your machine. For this, you will need to install Golang.

ยท Mead Naji

Chapter 1: What is Golang?
Golang

Chapter 1: What is Golang?

Go is modular, and everything can be divided into modules, with a rich standard library that provides almost everything you need out of the box, which makes it a robust and productive language.

ยท Mead Naji

eBPF
eBPF

Module 9: Where to Go Next withย eBPF

You have learned and practiced the fundamentals. Here's how you should continue your eBPF journey.

ยท Umair Khurshid

Improving Container Security with eBPF
eBPF

Module 8: Improving Container Security with eBPF

In this module, you'll see how eBPF extends naturally from observability into container security.

ยท Umair Khurshid

Network Tracing with eBPF
eBPF

Module 7: Network Tracing with eBPF

This module focuses on aligning eBPF tracing with how packets actually live and die inside the kernel.

ยท Umair Khurshid

User Tracing With eBPF
eBPF

Module 6: User Tracing With eBPF

Let's move from kernel focused tracing into user space, showing that the same eBPF principles apply once you understand where observability data actually lives.

ยท Umair Khurshid

Kernel Tracing with BCC and libbpf
eBPF

Module 5: Kernel Tracing with BCC and libbpf

What you learned in the previous module, time to practice it with labs.

ยท Umair Khurshid

Tracing and Observability withย eBPF
eBPF

Module 4: Tracing and Observability withย eBPF

Learn how tracing and observability work in the eBPF model and why they represent a clear departure from traditional Linux tracing tools.

ยท Umair Khurshid

Building Modern eBPF with libbpf and CO RE
eBPF

Module 3: Building Modern eBPF With libbpf and CO RE

It's time for you to transition from learning eBPF concepts to building eBPF the way it is used in real systems.

ยท Umair Khurshid

Module 2: Core eBPF Fundamentals
eBPF

Module 2: Core eBPF Fundamentals

Learn how eBPF actually works inside the Linux kernel and how high level Python tooling with bcc makes it easy to experiment, trace system calls, and observe real kernel behavior with minimal friction.ย 

ยท Umair Khurshid

Build the lab
eBPF

Module 1: Building the Lab Environment

Welcome to the first module of the course. Everything that follows depends on what you build here. If the lab environment is unstable, inconsistent, or poorly understood, every later module will feel confusing for the wrong reasons.

ยท Umair Khurshid

Chapter 12: From Command to Cluster - How Kubernetes Actually Works
Kubernetes

Chapter 12: From Command to Cluster - How Kubernetes Actually Works

ยท Mead Naji

Chapter 11: Recap the Learning With a Demo
Kubernetes

Chapter 11: Recap the Learning With a Demo

ยท Mead Naji

Chapter 10: Multi-Container Pod
Kubernetes

Chapter 10: Multi-Container Pod

ยท Mead Naji

Chapter 9: Storage in Kubernetes
Kubernetes

Chapter 9: Storage in Kubernetes

ยท Mead Naji

Chapter 8: Networking in Kubernetes
Kubernetes

Chapter 8: Networking in Kubernetes

ยท Mead Naji

Chapter 7: Namespaces and Configuration Types in Kubernetes
Kubernetes

Chapter 7: Namespaces and Configuration Types in Kubernetes

ยท Mead Naji

Chapter 6: Understanding Labels and Deployments in Depth
Kubernetes

Chapter 6: Understanding Labels and Deployments in Depth

ยท Mead Naji

Chapter 5: Deep Dive into Pod Creating and Interaction
Kubernetes

Chapter 5: Deep Dive into Pod Creating and Interaction

ยท Mead Naji