Hi, I'm new to programming with shallow knowledge on this area,I would like to have a career in this path of system programming. I kindly need guidance on how to go on it with to become a full stack developer
The best way to learn this stuff is to just dive in and try it in a low-stakes environment:
- Pick a project that you find interesting
- Try to implement it, looking up whatever details you need along the way
- When the project becomes uninteresting for whatever reason, go back to step (1) with another project and the knowledge you gained along the way.
Importantly, it doesn't really matter if any given project gets anywhere-- The journey is what matters here, not the destination. Even failed projects can be useful in a portfolio, as long as you have a good story to tell about what went wrong.
Given the way you've phrased it, I can't help but wonder if English is your first language or otherwise. It isn't exactly a trivial matter, given that your ability to act on any single piece of advice or "guidance" will heavily depend on your ability to comprehend + imagine + process + implement it. If you're not exactly sure what I mean by this, try asking some of your fellow countrymen first.
Assuming you've had no trouble reading and understanding the previous paragraph:
- becoming a developer (as in: becoming employed as a "developer" in your job's title)
- building up your knowledge as a programmer (past the basic level of "shallow")
- creating a "career path" with several years of foresight into the future
- understanding the low-level specifics of "system programming"
- and figuring out how to be a "full stack developer" specifically
are all (some a bit and some quite wildly) different tasks.
If you don't have much of an idea of what you actually want, to begin with - spend some time becoming familiar with the terminology. System programming is not full stack, switching careers is not the same as starting a new career fresh out of a college, and building up "knowledge" for the sake of knowledge alone might make you feel smart but will ultimately lead nowhere.
If you're brand new to this "programming" thing, start with PY4E. If that's too basic, start with CC4E. If that's too low-level, start with D4JE. You can follow along in Rust, if you want: the core concepts remain the same, regardless of the language you're using.
Try to have fun along the way.
If want to learn system programming, is it good for me to learn it with rust or should I start with other languages first.
For that specific goal, learning Rust would be better than learning most other languages. The other popular systems languages are C and C++.
However, I think it's still a good idea to start with Python, even for just a short period, for two reasons: 1) this will be a gentler initial introduction to programming, 2) being familiar with Python is useful for most all programmers, since you can use it to do scripting, etc, and most everyone needs to be able to at least read Python code from time to time.
Edit: A third reason is that there currently aren't any books for learning Rust as your very first language.
Just to be sure, can you describe what you believe is systems programming? There is more than one definition. I think of it as programming infrastructure/foundational software, but other people have narrower definition.
What I makes me interested in programming, is to learn how to write a program that captures, stores and analyze data given specific instructions. That's how I understand programming
You can learn to do that using almost any programming language. However, what you described is very general so it doesn't narrow down what you might want to do. Therefore I suggest following the advice from @00100011.
Thank you