Complexity-levels
            in ascending order of complexity:
            
              main phases
              
                learning the basics by playing.
              
              
                internalizing and extending the basic concepts:
                
                e.g. what conditions have to be present, if we want the control-flow reach a certain branch.
              
              
                modeling and understanding of standard algorithms (e.g. bubble sort)
              
              
                parallel modeling and programming on a computer
              
            
            
              increasing complexity during the main phases
              each section has different complexity levels, e.g.:
              
                
                  while learning the basics:
                
                
                subroutines will initially be games and slowly give place to subroutines that are built with blocks themselves.
              
              
                
                  while modeling and understanding standard-algorithms
                
                
                complex actions like swapping two adjacent list-elements, i.e.
                swap(list[idx], list[idx+1])
                will initially explained in words and later built with the blocks