Click here to Skip to main content
15,885,244 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
So I'm currently a freshman at a high school in Germany and plan to work in a field closely related to Computer Science, for example Software Engineering or Date Science. I would like to get a head start before going to Uni or College and I wanted to ask what the best resources to learning CS is. I've studied Web Design on The Odin Project before that and finished the course so I'm not a complete beginner when it comes to coding.

The only things I did so far was goole "best free computer science courses" or "best python courses", etc., the results that I got were pretty disappointing to say the least. I got a couple of "free" resources like Coursera which seemed like a scam once they clarified that it was only a 7 day trial for a "free" 3 month course and a quick Google search has shown that people have already fallen for their subscription trap. Udemy was recommended to me but after having a look on their website on different devices and on Icognito Mode on and Icognito Mode off it showed me that their claims that a "SPECIAL OFFER ENDING IN 12 HOURS" were false claims and also 2€ differences on PC and on Smartphone seem pretty scamy, hence why I'm asking one of my favorite Programming/Coding websites on the web whether there are some good resources for people like myself.

I would appreciate all help and have a great day.

What I have tried:

I tried Googling and also researching some lists which might be helpful.
Posted
Updated 16-Jun-20 0:59am
Comments
KarstenK 16-Jun-20 13:41pm    
I like openhpi.de but it are mostly beginner courses, but sometimes in german.

Google will find you lots of resources, such as:
The Java™ Tutorials[^]
3. An Informal Introduction to Python — Python 3.7.7 documentation[^]
etc.

But first you should decide which language to start with. If you try to learn multiple languages at the same time you will most likely end up confused.
 
Share this answer
 
You have to know that you can do pretty much anything in any language, simply some languages are harder for beginners because there is more pitfalls to handle.
You need to master a set of techniques that are the basis of the job and are not linked to a language.

Advices:
- Start with an easy/safe language: VB, Java, C#, not C or C++. I do not recommend to start with Python either because of the usage of indentation.
- Read documentation / Follow tutorials (a lot of them)
- Start with tiny/useless projects, the purpose is to learn programming, not doing something useful.
- Start with console mode programs (no fancy graphics, no mouse)
- Learn debugger (an incredible learning tool)
Debugger - Wikipedia, the free encyclopedia[^]
Mastering Debugging in Visual Studio 2010 - A Beginner's Guide[^]
- A problem ? Google is your friend.
- Learn one or more analyze methods, E.W. Djikstra/N. Wirth Stepwize Refinement/top-Down method is a good start.
Structured Programming.pdf[^]
https://en.wikipedia.org/wiki/Top-down_and_bottom-up_design[^]
https://en.wikipedia.org/wiki/Structured_programming[^]
https://en.wikipedia.org/wiki/Edsger_W._Dijkstra[^]
https://www.cs.utexas.edu/users/EWD/ewd03xx/EWD316.PDF[^]
- Learn Algorithms and Data-Structures.
- Learn Boole algebra
- Learn SQL
- Learn Databases design and Administration
Introduction to database design[^]
1NF, 2NF, 3NF and BCNF in Database Normalization | DBMS Tutorial | Studytonight[^]
- Learn Regular Expressions

Interesting link:
stanford.edu: Learn to Program[^]
CodersLegacy - Imparting knowledge to the Future[^]

There is no shortcut to knowledge, no one can learn for you, you are the only one that can do it.
Remember the exercises and little projects are not here to make something useful, they are here to teach you programming.
 
Share this answer
 
Comments
DimaZ5 16-Jun-20 8:00am    
This is extremely helpful, thank you very much Patrice :)

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900