diff --git a/README.md b/README.md
index 7abfa3dfcfc4f84687f1c7a8cbcda551160edc1c..17db4f47415d55a411e331f4c825e11cc024203c 100644
--- a/README.md
+++ b/README.md
@@ -68,7 +68,7 @@ software packages are needed:
   * gnuplot (to plot some curves)
   * wget (to download some config files during the installation)
 
-For some excercises you might need UMFPack. UMFPack can be installed via Suitesparse.
+For some exercises you might need UMFPack. UMFPack can be installed via Suitesparse.
 For instance on Ubuntu use `apt-get install libsuitesparse-dev`.
 
 ## Troubleshooting
diff --git a/exercises/exercise-coupling-ff-pm/interface/main.cc b/exercises/exercise-coupling-ff-pm/interface/main.cc
index 81c3c568c490c10e47f950f4b9d241420f56db26..acfbe9fe93436cf85de1c2df698958305806ccb7 100644
--- a/exercises/exercise-coupling-ff-pm/interface/main.cc
+++ b/exercises/exercise-coupling-ff-pm/interface/main.cc
@@ -161,7 +161,7 @@ int main(int argc, char** argv)
     auto porousMediumGridVariables = std::make_shared<PorousMediumGridVariables>(porousMediumProblem, porousMediumFvGridGeometry);
     porousMediumGridVariables->init(sol[porousMediumIdx]);
 
-    // intialize the vtk output module
+    // initialize the vtk output module
     const auto freeflowName = getParam<std::string>("Problem.Name") + "_" + freeflowProblem->name();
     const auto porousMediumName = getParam<std::string>("Problem.Name") + "_" + porousMediumProblem->name();
 
diff --git a/exercises/exercise-coupling-ff-pm/models/main.cc b/exercises/exercise-coupling-ff-pm/models/main.cc
index 37ecae8ece96436520fc5d3469e810d9ec4c01e1..d2bd31ba3a2bc1f2720175869ab2b871bf3c36d0 100644
--- a/exercises/exercise-coupling-ff-pm/models/main.cc
+++ b/exercises/exercise-coupling-ff-pm/models/main.cc
@@ -127,7 +127,7 @@ int main(int argc, char** argv)
     auto porousMediumGridVariables = std::make_shared<PorousMediumGridVariables>(porousMediumProblem, porousMediumFvGridGeometry);
     porousMediumGridVariables->init(sol[porousMediumIdx]);
 
-    // intialize the vtk output module
+    // initialize the vtk output module
     const auto freeflowName = getParam<std::string>("Problem.Name") + "_" + freeflowProblem->name();
     const auto porousMediumName = getParam<std::string>("Problem.Name") + "_" + porousMediumProblem->name();
 
diff --git a/exercises/exercise-coupling-ff-pm/turbulence/README.md b/exercises/exercise-coupling-ff-pm/turbulence/README.md
index d1ec1252d021f0287ff25476f76f87e8e0094a39..c4126a5d4371299dbb98b9b14008be93623699ae 100644
--- a/exercises/exercise-coupling-ff-pm/turbulence/README.md
+++ b/exercises/exercise-coupling-ff-pm/turbulence/README.md
@@ -89,7 +89,7 @@ values.setAllSymmetry();
 
 In addition, you have to remove the condition `onUpperBoundary_(globalPos)` from the `initialAtPos(globalPos)` method and the `dirichlet(element, scvf)` method.
 
-Now it is sufficient to only calulate half of the domain height for the free-flow domain. For this, adapt the grid coordinates as well as the number of cells in y-direction in your `params.input` - file accordingly.
+Now it is sufficient to only calculate half of the domain height for the free-flow domain. For this, adapt the grid coordinates as well as the number of cells in y-direction in your `params.input` - file accordingly.
 After recompiling and running your simulation with the new boundary condition, check your results with paraview.
 Does your velocity profile at the symmetry boundary look reasonable?
 
diff --git a/exercises/exercise-coupling-ff-pm/turbulence/main.cc b/exercises/exercise-coupling-ff-pm/turbulence/main.cc
index 68714797c97469ee4211a61f44c91fde0739e996..545c11373ee9a082e7c79797db24eb40069ba6a3 100644
--- a/exercises/exercise-coupling-ff-pm/turbulence/main.cc
+++ b/exercises/exercise-coupling-ff-pm/turbulence/main.cc
@@ -136,7 +136,7 @@ int main(int argc, char** argv)
     auto porousMediumGridVariables = std::make_shared<PorousMediumGridVariables>(porousMediumProblem, porousMediumFvGridGeometry);
     porousMediumGridVariables->init(sol[porousMediumIdx]);
 
-    // intialize the vtk output module
+    // initialize the vtk output module
     const auto freeflowName = getParam<std::string>("Problem.Name") + "_" + freeflowProblem->name();
     const auto porousMediumName = getParam<std::string>("Problem.Name") + "_" + porousMediumProblem->name();
 
diff --git a/exercises/solution/exercise-coupling-ff-pm/interface/main.cc b/exercises/solution/exercise-coupling-ff-pm/interface/main.cc
index f4d21addce35e71c0aa9fac5b8ddb95df5bfb03f..626b5bde27ec6f7baaf018dc4ef1c580e5c724b5 100644
--- a/exercises/solution/exercise-coupling-ff-pm/interface/main.cc
+++ b/exercises/solution/exercise-coupling-ff-pm/interface/main.cc
@@ -153,7 +153,7 @@ int main(int argc, char** argv)
     auto porousMediumGridVariables = std::make_shared<PorousMediumGridVariables>(porousMediumProblem, porousMediumFvGridGeometry);
     porousMediumGridVariables->init(sol[porousMediumIdx]);
 
-    // intialize the vtk output module
+    // initialize the vtk output module
     const auto freeflowName = getParam<std::string>("Problem.Name") + "_" + freeflowProblem->name();
     const auto porousMediumName = getParam<std::string>("Problem.Name") + "_" + porousMediumProblem->name();
 
diff --git a/exercises/solution/exercise-coupling-ff-pm/turbulence/main.cc b/exercises/solution/exercise-coupling-ff-pm/turbulence/main.cc
index 168f78676dd2451d156cb5e5a135715065712966..76159fc8a0df2f2e4aa953f4b5c67d451ab646d1 100644
--- a/exercises/solution/exercise-coupling-ff-pm/turbulence/main.cc
+++ b/exercises/solution/exercise-coupling-ff-pm/turbulence/main.cc
@@ -137,7 +137,7 @@ int main(int argc, char** argv)
     auto porousMediumGridVariables = std::make_shared<PorousMediumGridVariables>(porousMediumProblem, porousMediumFvGridGeometry);
     porousMediumGridVariables->init(sol[porousMediumIdx]);
 
-    // intialize the vtk output module
+    // initialize the vtk output module
     const auto freeflowName = getParam<std::string>("Problem.Name") + "_" + freeflowProblem->name();
     const auto porousMediumName = getParam<std::string>("Problem.Name") + "_" + porousMediumProblem->name();
 
diff --git a/prerequisites.md b/prerequisites.md
index 852f33822bc22c37c98530f4e342679cae128ff9..e9c8459e6064f42b516f471bff1f613133bc506c 100644
--- a/prerequisites.md
+++ b/prerequisites.md
@@ -2,11 +2,11 @@
 
 For mastering the DuMu<sup>x</sup> course, we recommend the following prerequisites:
 
-- **CLI:** Knowledge of basic Unix shell commands and interaction with a corresponding terminal is essential for the installation process as well as the compiliation and execution of the exercise programs. We can recommend this [Software Carpentry course](https://swcarpentry.github.io/shell-novice/) for learning the basics and this [cheat sheet](https://phoenixnap.com/kb/wp-content/uploads/2022/11/linuxCommandsAllUsersShouldKnow.pdf) for remembering them.
+- **CLI:** Knowledge of basic Unix shell commands and interaction with a corresponding terminal is essential for the installation process as well as the compilation and execution of the exercise programs. We can recommend this [Software Carpentry course](https://swcarpentry.github.io/shell-novice/) for learning the basics and this [cheat sheet](https://phoenixnap.com/kb/wp-content/uploads/2022/11/linuxCommandsAllUsersShouldKnow.pdf) for remembering them.
 
 - **C++:** DuMu<sup>x</sup> is a module on top of the C++ code base DUNE and itself contains several more advanced C++ language features. We recommend to be familiar with C++ templates and can recommend the following educational resources:
  
-  In general we recommend most CppCon Back to Basics videos, but here is a list of taylored suggestions for this course.
+  In general we recommend most CppCon Back to Basics videos, but here is a list of tailored suggestions for this course.
   - OOP:
     - https://www.youtube.com/watch?v=32tDTD9UJCE
   - Compiling and Linking:
diff --git a/slides/intro.md b/slides/intro.md
index 0369ae13b489bb1ae607448ea44dd04d6b0f34ab..25ded6ac703b40e58b521ffbf8a5aa3d8cb92d6f 100644
--- a/slides/intro.md
+++ b/slides/intro.md
@@ -76,8 +76,8 @@ subtitle: Overview and Available Models
 
 ## Funding
 
-Efforts mainly funded through ressources at the LH^2^: [Department of Hydromechanics and Modelling of Hydrosystems at the University of Stuttgart](https://www.iws.uni-stuttgart.de/en/lh2/)
-and third-party funding aquired at the LH^2^
+Efforts mainly funded through resources at the LH^2^: [Department of Hydromechanics and Modelling of Hydrosystems at the University of Stuttgart](https://www.iws.uni-stuttgart.de/en/lh2/)
+and third-party funding acquired at the LH^2^
 
 <img src="img/lh2.jpeg" width="300"/>
 
@@ -413,7 +413,7 @@ Control-volume finite element scheme based on $\mathrm{P}_1/\mathrm{Q}_1$ basis
 * Typically, the following components have to be specified
     * **Model**: Equations and constitutive models
     * **Assembler**: Key properties (Discretization, Variables, LocalResidual)
-    * **Solver**: Type of solution stategy (e.g. Newton)
+    * **Solver**: Type of solution strategy (e.g. Newton)
     * **LinearSolver**: Method for solving linear equation systems (e.g. direct / Krylov subspace methods)
     * **Problem**: Initial and boundary conditions, source terms
     * **TimeLoop**: For time-dependent problems
diff --git a/slides/materialsystem.md b/slides/materialsystem.md
index 9b1ba27260adc4fb364efbf0ee102ba27b04f38e..5bc09035e115457715a5067c15d6f532127f715c 100644
--- a/slides/materialsystem.md
+++ b/slides/materialsystem.md
@@ -118,7 +118,7 @@ static Scalar heatCapacity(const FluidState& fluidState, int phaseIdx)
 
 ## Example implementations
 
-* _H2O_Air_ : Henry coefficient, gas diffusion coefficient, liquid diffusion coefficent for water and air
+* _H2O_Air_ : Henry coefficient, gas diffusion coefficient, liquid diffusion coefficient for water and air
 * More, see [DuMu^x^ binary coefficients docs](https://dumux.org/docs/doxygen/master/namespace_dumux_1_1_binary_coeff.html)
 
 ## Example interface
diff --git a/slides/model.md b/slides/model.md
index 92c1cdcf1c26276c04ec2fd9a9718ef1aa17febe..5ba1131623cd88cb73c5fedccd665e1c5be868c9 100644
--- a/slides/model.md
+++ b/slides/model.md
@@ -268,4 +268,4 @@ Implementation of a **nonlinear diffusion model** for denoising of an MRI image
 - Use model in test case
 - Customize volume variables
 
-* Go to [Model excercise](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-course/tree/master/exercises/exercise-model#exercise-model-dumux-course)
+* Go to [Model exercise](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-course/tree/master/exercises/exercise-model#exercise-model-dumux-course)
diff --git a/slides/problem.md b/slides/problem.md
index 275db90858941fcd1b09bb47452870f0f8e23376..a142c7e4fa105cb9029045d7930e0e7a490853a6 100644
--- a/slides/problem.md
+++ b/slides/problem.md
@@ -362,7 +362,7 @@ Inherit from `FVPorousMediumFlowSpatialParamsMP` where
 
 ##
 
-A function returning the instrinsic permeability $K$:
+A function returning the intrinsic permeability $K$:
 
 ```cpp
 auto permeabilityAtPos(const GlobalPosition& globalPos) const