What would you learn in my position

I’m graduating from high school and I’m joining CS university starting from fall. So far, I am quite experienced with algorithms and data structures and implementing them in C++. Couple months ago I also learned some basic HTML5, CSS and JavaScript. Next year I think that I will need to learn Python and Java for university. If you were on my position what would you recommend me to spend the following 2-3 free months to work with?

Is it maybe a better idea to focus on learning math as I’ve heard it is quite needed for CS courses, but my math skills are quite good, as I had good grades in high school.

I’m not sure how much advanced math is needed. I would do some google searches and see what areas of math are needed, and if you’re comfortable with them, then I wouldn’t worry. If there is an area that makes you scratch your head, then I’d maybe do some work.

If you are going to work in Python and/or Java, doing some basic programs in them would be good - but if you understand C++ and it’s OOP features then you probably have a good start. You could also look over the CS course syllabi and see what might give you trouble.

You could always read some background stuff, classics like Clean Code and The Pragmatic Programmer. And maybe just build some projects for fun - that is where a lot of the learning comes.

1 Like

Hey Andrej,

if you are able to understand the concepts of basic data structures like doubly linked lists and binary search trees and implement them, you are good to go.

If you need some more math, I would try to repeat the basics of linear algebra and analytics from high school.

I’ve shared this before, but it might be useful too:

Basically, my suggestion is to spend your 2-3 months building something, rather than just collecting more tools for your toolbox.

If you’re not aiming to get a job, I’d still aim to build something. That’s the reason for all the tools you’re learning after all. Languages are just tools.

1 Like