## Why I would be very excited to study computer science So you've been doing competitive programming, maybe maths competitions, too. You did well, so it's natural for you to go study computer science at a top university. But are you aware of the huge world of computer science that is about to open up for you? This is why, if I were you, I were super excited to start a Computer Science degree in 2024. Computer science is so much more than programming. But even if we stay within the realms of programming there are tons and tons of interesting stuff to learn about various programming paradigms. There is imperative, procedural, declarative, functional programming, object-oriented programming. There are too many programming languages to learn, many different ways of thinking about problem solving. You may know how to implement an algorithm in C++ but wait until you have to find out how to implement it in Haskell. And the theory of programming languages leads to a rich landscape full of theory that provides solid computational foundations for mathematical reasoning: type theory, category theory, formal verification. Some programming langauages allow you to write software with mathematical guarantees that it does what you wanted it to do. Others allow you to express proofs of mathematical theorems as code, making it possible for mathematical proofs to be algorithmically verified by a computer. In ten year's time perhaps all of today's research mathematics will be "implemented" on top of theorem provers. And perhaps soon enough, computers will be better at finding proofs than human mathematicians. Computer science is also much more than finding fast algorithms. Theoretical computer science studies which problems admit fast algorithms in the first place. What kind of computation can you even devise an algorithm for. And does it matter what kind of computer you design the algorithm for? What happens if you have a completely new type of computing paradigm, like quantum computers. Some quantum algorithms solve problems exponentially faster than classical algorithms. But is this true for all kinds of algorithms? What are the limits of quantum computing? How do you even program a quantum computer? And we want to tackle problems that are so complex and messy that no one can possibly hope to devise an algorithm to solve them: Folding proteins, playing Go, conversing in human language, generating natural looking images, or mathematical theory. In machine learning we don't program what algorithm ot functions the computer should use, instead we only program general learning algorithms that allow it to learn from examples and find a function that works well enough. Artificial Intelligence is advancing crazy fast. The AI models we take for granted today: nothing like them existed just five years ago. Who knows what this field is going to look like in 5 or 10 years in the future? Computer Science is a massive field now, there is much more to explore than writing fast code to solve problems. This century will be defined by massive breakthroughs: the formalization of most mathematics in theorem provers, quantum computing, advances in AI. It's exciting to think you can be in the room where these breakthroughs happen.