Design Tools And Laboratory Engineering (2024)
==============================================

.. contents::
   :local:

.. sidebar:: Work Environment

   A VirtualBox image with Debian Linux is provided
   

C
-

Type System, Structures, Pointers And Arrays
............................................

* :doc:`/trainings/material/soup/c/020-types-operators-expressions/080-type-conversions/topic`

From :doc:`/trainings/material/soup/c/060-structures/group` ...

* :doc:`/trainings/material/soup/c/060-structures/010-basics-of-structures/topic`
* :doc:`/trainings/material/soup/c/060-structures/020-structures-and-functions/topic`

From :doc:`/trainings/material/soup/c/050-pointers-and-arrays/group` ...

* :doc:`/trainings/material/soup/c/050-pointers-and-arrays/010-pointers-and-addresses/topic`
* :doc:`/trainings/material/soup/c/050-pointers-and-arrays/020-pointers-and-function-arguments/topic`

* :doc:`/trainings/material/soup/c/050-pointers-and-arrays/030-exercise-swap/topic`
* :doc:`/trainings/material/soup/c/050-pointers-and-arrays/040-pointers-and-arrays/topic`

Recommended Readings, Links
...........................

* `FH Joanneum: Egon Teiniker on Computer Science (Github)
  <https://github.com/teiniker/teiniker-lectures-computerscience>`__
  (`"programming-c"
  <https://github.com/teiniker/teiniker-lectures-computerscience/tree/master/programming-c>`__)
* `Brian W. Kernighan, Dennis M. Ritchie: The C Programming Language
  (Second Edition/ANSI C), Prentice Hall
  <https://en.wikipedia.org/wiki/The_C_Programming_Language>`__
* `Pointers in C for Absolute Beginners – Full Course
  <https://youtu.be/MIL2BK02X8A?si=T8w9O7a-AM7T2IMu>`__

  .. raw:: html

     <iframe width="560" height="315" 
             src="https://www.youtube.com/embed/MIL2BK02X8A?si=vX5AVl0BJvyZU3Eo" 
	     title="YouTube video player" 
	     frameborder="0" 
	     allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" 
	     referrerpolicy="strict-origin-when-cross-origin" 
	     allowfullscreen>
     </iframe>

Linux Basics
------------

Filesystem Commands
...................

From :doc:`/trainings/material/soup/linux/basics/shell/group` ...

* :doc:`/trainings/material/soup/linux/basics/shell/commandline`
* :doc:`/trainings/material/soup/linux/basics/shell/paths`
* :doc:`/trainings/material/soup/linux/basics/shell/special-paths`
* :doc:`/trainings/material/soup/linux/basics/shell/ls`
* :doc:`/trainings/material/soup/linux/basics/shell/cwd`
* :doc:`/trainings/material/soup/linux/basics/shell/file_dir_create_rm`
* :doc:`/trainings/material/soup/linux/basics/shell/cp`
* :doc:`/trainings/material/soup/linux/basics/shell/mv`

Exercises
.........

* :doc:`/trainings/material/soup/linux/basics/shell/exercises/cp-mv-mkdir-rm/mkdir-p-rm-r`
* :doc:`/trainings/material/soup/linux/basics/shell/exercises/cp-mv-mkdir-rm/echo-create-files`
* :doc:`/trainings/material/soup/linux/basics/shell/exercises/cp-mv-mkdir-rm/echo-copy-files`
* :doc:`/trainings/material/soup/linux/basics/shell/exercises/cp-mv-mkdir-rm/echo-move-files`
* :doc:`/trainings/material/soup/linux/basics/shell/exercises/cp-mv-mkdir-rm/verify-hierarchy`
* :doc:`/trainings/material/soup/linux/basics/shell/exercises/cp-mv-mkdir-rm/copy-tree`
* :doc:`/trainings/material/soup/linux/basics/shell/exercises/cp-mv-mkdir-rm/rm-tree`
* :doc:`/trainings/material/soup/linux/basics/shell/exercises/cp-mv-mkdir-rm/rm-rf`

Recommended Readings, Links
...........................

* Willian E. Shotts: The Linux Command Line, 2nd Edition: A Complete
  Introduction 1st Edition, no starch press (`Amazon
  <https://www.amazon.com/Linux-Command-Line-Complete-Introduction/dp/1593273894>`__)
* `Linux Command-Line for Beginners: Your First 5 Minutes
  <https://youtu.be/id3DGvljhT4?si=PVgFncafJCy8CgaO>`__

  .. raw:: html

     <iframe width="560" height="315" 
             src="https://www.youtube.com/embed/id3DGvljhT4?si=PVgFncafJCy8CgaO" 
	     title="YouTube video player" 
	     frameborder="0" 
	     allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" 
	     referrerpolicy="strict-origin-when-cross-origin" 
	     allowfullscreen>
     </iframe>

* `Linux Commandline: Full Course <https://youtu.be/5jIIOkA0NpI?si=V0tNpDqphK095RLn>`__

  .. raw:: html

     <iframe width="560" height="315" 
             src="https://www.youtube.com/embed/5jIIOkA0NpI?si=V0tNpDqphK095RLn" 
	     title="YouTube video player" 
	     frameborder="0" 
	     allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" 
	     referrerpolicy="strict-origin-when-cross-origin" 
	     allowfullscreen>
     </iframe>