Expert Free Courses
Free, open-source courses. No registration, no clickbait, no bullshit.
Lessons
Section titled “Lessons”FluxCD
kustomize-controller
The kustomize-controller will keep the cluster state in sync with the resources defined in a kustomization.yaml file.
helm-controller
In this lesson we will learn about helm-controller, and we will use it to install nginx ingress controller on our cluster
Installing Flux with Terraform/OpenTofu
In this lesson we will learn how to install Flux on our K8S cluster using Terraform or OpenTofu on GCp.
Terraform / OpenTofu
Setup with mise
Install and configure all the required tools for the IAC - Terraform/OpenTofu/Terragrunt course using mise
Introduction to Terragrunt
Proper IAC project is splitted to small modules, we need a proper dependency management for those small modules, while avoiding DRY violations. In this lesson we will learn how to achieve all that using Terragrunt.
Terraform GCP Permissions, Roles, Groups, Impersonation
Security best practices, and how to manage them in Terraform/Tofu Terragrunt project.
Terragrunt Unit
A Unit represents a small part in our infrastructure and it is identified by a terragrunt.hcl file
Angular
injection functions for repeating initializations
You can use injection functions for repeating initializations. Let's see how it works with NGRX
use *ngFor trackBy
Performance will be significantly improved if you use *ngFor trackBy functions
NGRX
Redux inspired state management for Angular.
Remove `@ngrx/store-devtools` in production
If you are using `@ngrx/store-devtools` in your application, you should remove it in production.
@for(...)
Angular 17 has a new control flow syntax and it's recommended to stop using *ngFor, and use @for instead.
Git
commit messages
It's highly recommended to work with proper conventions when writing the commit messages. It is common to work with Conventional Commits, doing so can drastically improve readability and release automation.
git config
When installing git, it is shipped with a default configuration. As you gain experience with git, you will want to change the default configuration to make it more convenient for you. In this series of lessons, we will go over important configurations that you need to be familiar with, and perhaps change the default values of those configurations.
React
Component Tree
A React application is made from many components, where each UI component can place another component, forming a tree of components.
Which Props Can I Pass?
Learn which props you can pass to DOM elements, your React components, and third‑party components.
Props Recommendations
Props are data that pass to a component from it's parent component. <br/> Here is a list of tips how to use props properly
Understanding React Elements
Creating an hello world with React and going over the basics of a react application
Express
Error handling in Node.js and Express
How we deal with errors and exceptions in Node.js, and how we handle them in Express
Typescript declaration file for extending Express Request type
We can use declaration files to teach typescript about different types we have in our app. We can also use declaration file to extend Express Request object. We often use Express middlewares to add information to the request object, with declaration files typescript can know about all the data we added to the Request object
Express
Free open source Express course, with lessons, videos, and code exercises.
Setup
Setup your development environment for the Express course
npm
introduction to npm, the package manager that ships with Node.js that we will use in this course