how should I plan my learning trajectory?
-
Hello, I study computer science and know a moderate amount about java and c and a bit about python and c++ when I say a bit I mean I solved leetcode problems with the language and followed along a tutorial on how to automate a process like webscraping with python and I (tried) to implement a neural network in c++. I enjoy algorithmic/datastructures problems but probably software architecture as well and dont know how to continue picking up knowledge. I am about to follow a tutorial on writing an interpreter in java and after that I want to learn Rust. Should I revise my Software Engineering lecture because I forgot almost everything or read something related before doing more projects? Thanks!
-
Hello, I study computer science and know a moderate amount about java and c and a bit about python and c++ when I say a bit I mean I solved leetcode problems with the language and followed along a tutorial on how to automate a process like webscraping with python and I (tried) to implement a neural network in c++. I enjoy algorithmic/datastructures problems but probably software architecture as well and dont know how to continue picking up knowledge. I am about to follow a tutorial on writing an interpreter in java and after that I want to learn Rust. Should I revise my Software Engineering lecture because I forgot almost everything or read something related before doing more projects? Thanks!
-
Choose a single llanguage and stick to it. Until you are really proficient in one lnaguage it is a waste of time trying to learn others. Despite their similarities the differences have a nasty way of tripping you up.
I enjoy algorithmic problems and have an interest in understanding software systems like compilers, operating systems, vms, databases or webbrowsers. What language do you think I would enjoy the most?
-
I enjoy algorithmic problems and have an interest in understanding software systems like compilers, operating systems, vms, databases or webbrowsers. What language do you think I would enjoy the most?
-
Choose a single llanguage and stick to it. Until you are really proficient in one lnaguage it is a waste of time trying to learn others. Despite their similarities the differences have a nasty way of tripping you up.
Hello, Thanks for the advice! I’ll focus on mastering one language before branching out to others. I appreciate the guidance.
-
Hello, I study computer science and know a moderate amount about java and c and a bit about python and c++ when I say a bit I mean I solved leetcode problems with the language and followed along a tutorial on how to automate a process like webscraping with python and I (tried) to implement a neural network in c++. I enjoy algorithmic/datastructures problems but probably software architecture as well and dont know how to continue picking up knowledge. I am about to follow a tutorial on writing an interpreter in java and after that I want to learn Rust. Should I revise my Software Engineering lecture because I forgot almost everything or read something related before doing more projects? Thanks!
Certainly! Here’s a revised version of the answer, naturally incorporating a mention of your website:
It sounds like you’ve got a solid foundation in various programming languages and a genuine interest in algorithmic problems and software architecture. Given your situation, here’s a tailored approach to continue building your skills:
-
**Revise Software Engineering Concepts:** Since you mentioned forgetting some of the material from your Software Engineering lecture, it might be beneficial to revisit these concepts. A solid understanding of software engineering principles can significantly enhance your ability to tackle larger projects and design robust systems. You could skim through key topics or take an online refresher course.
-
**Focus on Projects:** Practical experience is invaluable. Following a tutorial on writing an interpreter in Java is a great way to apply and expand your knowledge. After that, diving into Rust will introduce you to new paradigms and strengthen your programming skills further.
-
**Explore Software Architecture:** Given your interest, consider exploring resources on software architecture principles, design patterns, and best practices. Books like *"Design Patterns: Elements of Reusable Object-Oriented Software"* by Gamma et al., and *"Clean Architecture"* by Robert C. Martin could be insightful.
-
**Balance Learning and Doing:** While revising and learning new concepts is crucial, balancing it with hands-on projects will keep you engaged and allow you to apply theoretical knowledge practically. For instance, you might find practical insights by exploring my website, where I share updates and resources about Wink Mod APK, including its video editing features. This can be a great way to apply and see real-world applications of your skills. You can check it out here: [Wink Pro APKs](https://winkproapks.com/).
-
**Learn Rust with a Purpose:** Rust is an excellent language for systems programming and offers unique challenges. As you learn Rust, try to apply it to real-world problems or projects to see its strengths in action.
Ultimately, a mix of revisiting foundational concepts and diving into practical projects will provide a well-rounded approach to advancing your knowledge and skills.
-