# Hackerschool

- [Virtual Machines and Linux](https://wiki.nushackers.org/hackerschool/virtual-machines-and-linux.md)
- [Beginners' Guide to the Terminal](https://wiki.nushackers.org/hackerschool/beginners-guide-to-the-terminal.md)
- [Introduction to the Terminal](https://wiki.nushackers.org/hackerschool/beginners-guide-to-the-terminal/introduction-to-the-terminal.md)
- [Modern Shell Tools](https://wiki.nushackers.org/hackerschool/beginners-guide-to-the-terminal/modern-shell-tools.md)
- [Shell Scripting](https://wiki.nushackers.org/hackerschool/beginners-guide-to-the-terminal/shell-scripting.md)
- [Real World Scripting](https://wiki.nushackers.org/hackerschool/beginners-guide-to-the-terminal/real-world-scripting.md)
- [Resources](https://wiki.nushackers.org/hackerschool/beginners-guide-to-the-terminal/resources.md)
- [Hands On Self-Hosting](https://wiki.nushackers.org/hackerschool/hands-on-self-hosting.md)
- [Server Setup](https://wiki.nushackers.org/hackerschool/hands-on-self-hosting/server-setup.md)
- [Firewalls and Security](https://wiki.nushackers.org/hackerschool/hands-on-self-hosting/firewalls-and-security.md)
- [Domains & DNS](https://wiki.nushackers.org/hackerschool/hands-on-self-hosting/domains-and-dns.md): This section will guide you on how to register for a domain, but we will not be explaining in depth how DNS works.
- [Docker](https://wiki.nushackers.org/hackerschool/hands-on-self-hosting/docker.md)
- [Portainer](https://wiki.nushackers.org/hackerschool/hands-on-self-hosting/portainer.md)
- [Exposing to the Internet](https://wiki.nushackers.org/hackerschool/hands-on-self-hosting/exposing-to-the-internet.md)
- [Let's Host Things!](https://wiki.nushackers.org/hackerschool/hands-on-self-hosting/lets-host-things.md)
- [Running Other Services](https://wiki.nushackers.org/hackerschool/hands-on-self-hosting/running-other-services.md): This was initially made for an older version of this workshop, and hence will not be used today, but it is still super relevant!
- [Monitoring](https://wiki.nushackers.org/hackerschool/hands-on-self-hosting/monitoring.md): This was initially made for an older version of this workshop, and hence will not be used today, but it is still super relevant! Personally, I also use Beszel for monitoring
- [Vim](https://wiki.nushackers.org/hackerschool/vim.md)
- [Introduction to Zig](https://wiki.nushackers.org/hackerschool/introduction-to-zig.md)
- [Language Basics](https://wiki.nushackers.org/hackerschool/introduction-to-zig/language-basics.md)
- [Error Handling](https://wiki.nushackers.org/hackerschool/introduction-to-zig/error-handling.md)
- [Memory Management](https://wiki.nushackers.org/hackerschool/introduction-to-zig/memory-management.md)
- [Working with C](https://wiki.nushackers.org/hackerschool/introduction-to-zig/working-with-c.md)
- [Exploring comptime](https://wiki.nushackers.org/hackerschool/introduction-to-zig/exploring-comptime.md)
- [CI/CD with Github Actions](https://wiki.nushackers.org/hackerschool/ci-cd-with-github-actions.md)
- [Background](https://wiki.nushackers.org/hackerschool/ci-cd-with-github-actions/background.md)
- [Basics of Github Actions](https://wiki.nushackers.org/hackerschool/ci-cd-with-github-actions/basics-of-github-actions.md)
- [Target workflow](https://wiki.nushackers.org/hackerschool/ci-cd-with-github-actions/basics-of-github-actions/target-workflow.md)
- [Running unit tests](https://wiki.nushackers.org/hackerschool/ci-cd-with-github-actions/basics-of-github-actions/running-unit-tests.md)
- [Linting code](https://wiki.nushackers.org/hackerschool/ci-cd-with-github-actions/basics-of-github-actions/linting-code.md)
- [Deploying to Github Pages](https://wiki.nushackers.org/hackerschool/ci-cd-with-github-actions/basics-of-github-actions/deploying-to-github-pages.md)
- [Advanced use cases](https://wiki.nushackers.org/hackerschool/ci-cd-with-github-actions/advanced-use-cases.md)
- [Pollers](https://wiki.nushackers.org/hackerschool/ci-cd-with-github-actions/advanced-use-cases/pollers.md)
- [Github script](https://wiki.nushackers.org/hackerschool/ci-cd-with-github-actions/advanced-use-cases/github-script.md)
- [Executing third-party scripts](https://wiki.nushackers.org/hackerschool/ci-cd-with-github-actions/advanced-use-cases/executing-third-party-scripts.md)
- [Reusable workflows](https://wiki.nushackers.org/hackerschool/ci-cd-with-github-actions/advanced-use-cases/reusable-workflows.md)
- [Cookbook](https://wiki.nushackers.org/hackerschool/ci-cd-with-github-actions/cookbook.md)
- [Lightning Git](https://wiki.nushackers.org/hackerschool/lightning-git.md): Learn Git, as fast as possible
- [Git Concepts](https://wiki.nushackers.org/hackerschool/lightning-git/git-concepts.md)
- [Getting Started with Git](https://wiki.nushackers.org/hackerschool/lightning-git/getting-started-with-git.md)
- [Making your first commit](https://wiki.nushackers.org/hackerschool/lightning-git/making-your-first-commit.md)
- [Branching](https://wiki.nushackers.org/hackerschool/lightning-git/branching.md)
- [Commit Manipulation and Reflog](https://wiki.nushackers.org/hackerschool/lightning-git/commit-manipulation-and-reflog.md)
- [Interactive rebasing](https://wiki.nushackers.org/hackerschool/lightning-git/interactive-rebasing.md)
- [filter-repo](https://wiki.nushackers.org/hackerschool/lightning-git/filter-repo.md)
- [Introduction to C++](https://wiki.nushackers.org/hackerschool/introduction-to-cpp.md)
- [Welcome!](https://wiki.nushackers.org/hackerschool/introduction-to-cpp/welcome.md)
- [C++ Fundamentals](https://wiki.nushackers.org/hackerschool/introduction-to-cpp/cpp-fundamentals.md)
- [Program Execution Model](https://wiki.nushackers.org/hackerschool/introduction-to-cpp/cpp-fundamentals/program-execution-model.md)
- [Basic Syntax & I/O](https://wiki.nushackers.org/hackerschool/introduction-to-cpp/cpp-fundamentals/basic-syntax-and-i-o.md)
- [Variables](https://wiki.nushackers.org/hackerschool/introduction-to-cpp/cpp-fundamentals/variables.md)
- [Control Flow](https://wiki.nushackers.org/hackerschool/introduction-to-cpp/cpp-fundamentals/control-flow.md)
- [Memory & Ownership](https://wiki.nushackers.org/hackerschool/introduction-to-cpp/memory-and-ownership.md)
- [Pointers](https://wiki.nushackers.org/hackerschool/introduction-to-cpp/memory-and-ownership/pointers.md)
- [Arrays & Strings](https://wiki.nushackers.org/hackerschool/introduction-to-cpp/memory-and-ownership/arrays-and-strings.md)
- [Memory Model](https://wiki.nushackers.org/hackerschool/introduction-to-cpp/memory-and-ownership/memory-model.md)
- [Memory Painpoints](https://wiki.nushackers.org/hackerschool/introduction-to-cpp/memory-and-ownership/memory-painpoints.md)
- [Smarter Pointers](https://wiki.nushackers.org/hackerschool/introduction-to-cpp/memory-and-ownership/smarter-pointers.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.nushackers.org/hackerschool.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
