My curated list of Computer Science learning resources. [ Note (after writing more than half of the layout): I probably should've just used latex to avoid the numbering. :'( ]
Title | Subsections | |
---|---|---|
1 | General Course Websites | |
2 | tbd | |
3 | Programming Languages, Frameworks, and Technologies | |
Refactoring Guru: Refactoring, Design Patterns, SOLID principles, and other smart programming topics. {I recommend.}
TDD (Test Driven Development) | AgileAlliance: (probably should've been in the Project Management and Development Methodologies section)
DRY (Don’t Repeat Yourself) Principle in Java with Examples - GeeksforGeeks
What are microservices?: Microservices Architecture
Basic Principles of OOPS (Object-Oriented Programming) - InterviewBit
Programming and scripting languages, Markup languages etc.*
A.K.A. C Sharp.
tbd: tbd
C# docs - get started, tutorials, reference. | Microsoft Learn
.NET documentation | Microsoft Learn: (Covers what .NET Framework and .NET Core concepts. They are now both combined and simply called .NET)
Nick Chapsas' YouTube Channel: He makes some great, informative videos on various topics such as C#, .NET, etc. Some quite advanced. I recommend periodically checking up because he also covers new features in new releases and shares some nifty tips. {I recommend.}
Restful API In .NET Core Using EF Core And Postgres (c-sharpcorner.com): A tutorial (the title explains what it is about).
Building REST APIs with .NET 5, ASP.NET Core, and PostgreSQL | End Point Dev: Tutorial for what the title says.
Tim Corey's YouTube Playlists: Teaches various topics such as .NET (WebAPIs), Blazor, etc. Recommend starting here: Start Here - YouTube (Seems to be more beginner friendly).
TimCo Retail Manager Course Introduction - A full start to finish course - YouTube
tbd: tbd
tbd: tbd
cppreference.com: Almost like C++ documentation. {I recommend.}
The C++ Annotations (rug.nl): Not for beginners, but a good resource for those who know a few things about programming (in a C-like language). [Some topics included are: STL (Standard Template Library), Multi-threading, etc.] {I recommend.}
Boost C++ Libraries - Documentation: Documentation for the nifty collection of libraries called "Boost". This probably isn't something you should learn, but instead keep it in mind and then use the relevant parts as needed whenever (and if ever) you end up needing to use one of the libraries included in Boost. The number and topics of the libraries are truly vast (from multi-threading to arbitrary precision arithmetic and so on). {I recommend.}
The Cherno (YouTube): One of the best C++ teachers. I have learned the most nifty tricks from there. (Includes related topics such "Dear ImGUI", GameDev, Game Engine Dev, and general CS concepts). {I recommend.}
C9 Lectures: Stephan T. Lavavej - Standard Template Library (STL) | Microsoft Learn
C++ FAQ - The Definitive C++ Book Guide and List - Stack Overflow
tbd: tbd
tbd: tbd
ArjanCodes - YouTube: Saw it being recommended online.
tbd: tbd.
tbd: tbd
Miss Xing - YouTube: Teaches Spring, Hibernate, MongoDB, JavaScript, Node.js, Express, Mongoose, and MORE. Also saw it being recommended by someone over at Reddit for Spring Boot (link to thread)).
tbd: tbd
Rust Documentation (rust-lang.org): The official documentation for Rust. Contains knowledge not only about Rust language but also about a vast array of related topics such as Cargo, rustdoc (their documentation tool), rustc (compiler), etc. It also contains references and such for the Rust language apart from the book meant to learn Rust. It is THE One-stop shop for Rust. {I recommend.}
Rust exercises (on Exercism.com): Exercises for Rust language.
3.Jon Gjengset - YouTube: Saw him being recommended online. Particularly, the course/playlist linked was -Crust of Rust - YouTube. Apparently, "John Gjengset’s Rust videos are fantastic for learning about intermediate-advanced Rust concepts." and "John Gjengset’s Rust videos are fantastic for learning about intermediate-advanced Rust concepts.".
Let's Get Rusty's Cheat Sheet: Cheat sheet created by a YouTuber "Let's Get Rusty". Not sure about how good it is, just know that it exists and seems useful/nifty (only had one glance at it).
tbd: tbd
Rust in Action: Seems to be recommended because of its projects (e.g. CPU emulator, OS kernel, grep clone, memory scanner, DNS resolver, etc.)
Get started with Kotlin | Kotlin Documentation (kotlinlang.org): Official docs. Apart from just the language itself, it also includes tutorials for Spring, SpringBoot, Android/iOS dev, etc.
Learning materials overview | Kotlin Documentation (kotlinlang.org)
tbd: tbd
Amigoscode - YouTube: Teaches Java, Python, Spring, Spring Boot, Algorithms, Microservices, Kubernetes, Postgre, etc. Saw it being recommended by someone over at Reddit for Spring Boot (link to thread)).
Miss Xing - YouTube: Teaches Spring, Hibernate, MongoDB, JavaScript, Node.js, Express, Mongoose, and MORE. Also saw it being recommended by someone over at Reddit for Spring Boot (link to thread)).
Chad Darby | Popular Java Spring Instructor - Best Seller | Udemy: Seems like his course(s) for Spring, Hibernate, and Spring Boot course is regarded pretty well (especially for beginners). At least in one of the Reddit threads I researched. (Paid though) Link to said Reddit thread
Learn Java (reddit.com): Look at the "Free Tutorials" sidebar and the "Community Resources" thread.
Make your own GUI apps in C++ (with ImGui and Vulkan) - on The Cherno's YouTube channel: Uses ImGUI, Vulkan, and Walnut.
Make your own GUI apps in C++ (with ImGui and Vulkan) - on The Cherno's YouTube channel
tbd: tbd
tbd: tbd
tbd: tbd
tbd: tbd
tbd: tbd
tbd: tbd
tbd: tbd
tbd: tbd
PostgreSQL: Tutorials & Other Resources: Various resources (and various types of resources). Would recommend AT LEAST checking it out. {I recommend.}
tbd: tbd
Amigoscode - YouTube: Teaches Java, Python, Spring, Spring Boot, Algorithms, Microservices, Kubernetes, Postgre, etc. Saw it being recommended by someone over at Reddit for Spring Boot (link to thread)).
tbd: tbd
tbd: tbd
tbd: tbd
Miss Xing - YouTube: Teaches Spring, Hibernate, MongoDB, JavaScript, Node.js, Express, Mongoose, and MORE. Also saw it being recommended by someone over at Reddit for Spring Boot (link to thread)).
tbd: tbd
(should I just use the language specific pages for this???)
tbd: tbd
(should I just use the language specific pages for this???)
tbd: tbd
tbd: tbd
Docker Docs: How to build, share, and run applications | Docker Documentation
Amigoscode - YouTube: Teaches Java, Python, Spring, Spring Boot, Algorithms, Microservices, Kubernetes, Postgre, and MORE. Saw it being recommended by someone over at Reddit for Spring Boot (link to thread)).
(1) What are some really good courses for Docker & Kubernetes? : devops (reddit.com)
tbd: tbd
(including related AI concepts)
(including related AI concepts)
(excluding AI concepts mentioned elsewhere in this section)
(Main: C++ | Others: C, Objective-C, C#, PHP, Java, Python, Fortran)
(JavaScript)
(C#)
(Python)
(Is this section even needed????)
Git - Documentation (git-scm.com): Official Git documentation.
Git workflow. Branch Naming conventions | by Codylillyw | Medium
Oh My Git!: A Git based video game to help practice Git. {I recommend.}
Learn Git Branching: An interactive online tool to help you practice/learn git branching. {I recommend.}
Foundations | The Odin Project: Just the "Git Basics" section {I recommend.}
(Agile, UML, etc.)
1. tbd: tbd
OSSU Computer Science - A full, long-term curriculum for CS starting from zero.
Teach Yourself CS - a full CS curriculum similar to OSSU.
Link: (Best place/resources to learn C# for backend development? : csharp (reddit.com)
Content:
My first job out of school, which I held for like 3 years, was all .net framework shitty wpf desktop and console apps. It was horrible, and I had similar feelings of being "stuck" due to having no .net core/web experience to speak of. The good news is that it really should not take much effort to get the hang of backend .net core since you already know c#. You can realisticly even learn it on the job if you can just get past the interviews.
I'd recommend just familiarizing yourself with all of the components of .net core webapi and some of the jargon. Just enough to be comfortable talking about them in an interview and you should be good.
Examples: What an http request is, and really just knowing what the difference between the 'GET' and 'POST' methods is since the other methods are used so infrequently Know the common debugging tools: swagger + postman (or insomnia) What controllers are What middleware is The concept of dependency injection, and what it means to register a service with a DI container The difference between the dependency injection life cycles (singleton vs transient vs scoped)
What JWT auth is What an orm is. If you haven't used an orm before just tell the interviewers you always used dapper, because you can probably learn it in 30 seconds by looking at one example. What deployments and CI/CD pipelines are.Before I started at my first backend web dev job I was kind of afraid I get exposed for bs-ing my way through the interview, but I picked it up quickly and now I look back and laugh at the fact I was even worried.
URL: Best Fastest way to learn Java for a job? : learnjava (reddit.com)
Content:
It seems that you are looking for resources for learning Java.
In our sidebar ("About" on mobile), we have a section "Free Tutorials" where we list the most commonly recommended courses.
To make it easier for you, the recommendations are posted right here:
MOOC Object Oriented Programming with Java from the University of Helsinki
- accompanying site CaveOfProgramming
- accompanying site NewThinkTank
Hyperskill is a fairly new resource from Jetbrains (the maker of IntelliJ)
Also, don't forget to look at:
If you are looking for learning resources for Data Structures and Algorithms, look into:
"Algorithms" by Robert Sedgewick and Kevin Wayne - Princeton University
Coursera course:
Coursebook
Your post remains visible. There is nothing you need to do.
I am a bot and this message was triggered by keywords like "learn", "learning", "course" in the title of your post.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.