Skip to content

My BSc computer science degree

Sebastian Simon edited this page May 8, 2023 · 2 revisions

I’m about to finish a bachelor’s degree in computer science at the Technische Universität Berlin. Here’s what I’ve learned in the courses:

Course Type Topics
Computer architecture Mandatory CPU design, FPU, Caches, Pipelining, Machine code, Assembly, MIPS
Introduction to programming Mandatory C, Algorithm basics
Computer science propaedeutic Mandatory Basics
Formal languages and automatons Mandatory State machines, Propositional logic, Chomsky hierarchy
Analysis I for engineers Mandatory Complex numbers, Convergence, Functions, Differentiation, Integration, Fourier analysis, Infinite series
Systems programming Mandatory C, Processes, Threads, Scheduling, Parallelization, Mutexes, Memory
Algorithms and data structures Mandatory Java, OOP, Graph theory, Dynamic programming
Information systems and data analysis Mandatory SQL, ER diagrams, Relational database design, Relational algebra
Computability and complexity Mandatory Turing machines, Decidability, Halting problem, Complexity classes (P vs. NP)
Linear algebra for engineers Mandatory Vectors, Matrices, Linear mappings
Computer networks and distributed systems Mandatory DNS, WWW, OSI layers, NTP, Pub–Sub
Software techniques and programming paradigms Mandatory Requirements engineering, Correctness, Testing, Code quality, UML, Functional programming, Logical programming, Haskell, Prolog, C, Java
Scientific computing Mandatory Python, Numerical analysis, Numerical approximation and error, Regression, SVD, Interpolation, DFT, FFT, Optimization
Logic Mandatory Predicate logic, Normalization, Resolution, Satisfiability problem, Sequent calculus, Models and structures, Finite games
Discrete structures Mandatory Combinatorics, Principle of inclusion and exclusion, Permutations, Partitioning, Recursion, Number theory, Modular arithmetic, Graph theory
Stochastics for computer science Mandatory Probability theory, Random variables, Distributions, Markov chains, Central limit theorem, Hypothesis tests
Information governance Mandatory Scientific and technical writing, Big Data, eCommerce, Privacy
Digital systems ⭐ Elective-compulsory Boolean algebra, CMOS, Logic gates, Number encoding, Circuits
Programming practical coutse: cyber-physical systems ⭐ Elective-compulsory JavaScript, HTML, CSS, Client and server, Node.js, Express.js, Teamwork
Principles of algorithmics ⭐ Elective-compulsory Algorithmics
Web technologies ⭐ Elective-compulsory HTML, CSS, JavaScript, jQuery, Bootstrap, Node.js, Express.js, Client–Server, SPA
Cognitive algorithms ⭐ Elective-compulsory Machine learning, Gradients, Perceptron, NNs, PCA, OLS, KPCA, LDA, MLP
Python for machine learning ⭐ Elective-compulsory Python, machine learning, Numpy, MatPlotLib, Linear algebra, Regression, Cython
Principles of information security ⭐ Elective-compulsory Social engineering, Information security management systems, authentication and authorization, CIA, Standards, PKIs
Usability engineering ⭐ Elective-compulsory Quality engineering, Perception psychology, Human factors, Media systems, Audio and video quality, Video game network considerations, System design, Experiment design
Database seminar: foundations of database systems ⭐ Elective-compulsory Query processing, Presenting, Scientific and technical writing, LaTeX, SQL, Data Warehousing, Transaction management, Parallelism in database systems
Computer graphics ⭐ Elective-compulsory TypeScript, THREE.js, OpenGL, WebGL, GLSL, Perspective geometry and projection, Clipping and culling, Shading and ligting, Texturing, Rasterization, Ray casting, Radiosity, Color theory, Image encoding
Bachelor’s thesis ⭐ Elective-compulsory DNS-based Authentication of Named Entities (DANE) TLSA, TLS, RSA, Security, DNS, DNSSEC, OpenSSL, Identity management
LaTeX introduction 🌟 Optional LaTeX, Typesetting, Packages, Editors, Distributions, Compilation, Document structure
Data science toolbox 🌟 Optional Java, Crawling, Machine learning basics, visualization
Intellectual property law 🌟 Optional Copyright, Software distribution, Brands, Patents
Clone this wiki locally