I have some background in Python and Bash (this is entirely self-taught and i think the easiest language from all). I know that C# is much different, propably this is why it is hard. I've been learning it for more than 4 months now, and the most impressive thing i can do with some luck is to write a console application that reads 2 values from the terminal, adds them together and prints out the result. Yes, seriously. The main problem is that there are not much usable resources to learn C#. For bash, there is Linux, a shit ton of distros, even BSD, MacOS and Solaris uses it. For python, there are games and qtile window manager. For C, there is dwm. I don't know anything like these for C#, except Codingame, but that just goes straight to the deep waters and i have no idea what to do. Is my whole approach wrong? How am i supposed to learn C#? I'm seriously not the sharpest tool in the shed, but i have a pretty good understanding of hardware, networking, security, privacy. Programming is beyond me however, except for small basic scripts
Well yeah. You find yourself some simple project and try to build it. When you don't know how to do something, you look it up.
Like, make a command line clock, for example. Figure out how to get the current time, and then how to print it. And after that how to make it print the time once a second.
Edit: probably the most important skill in programming is breaking the problem into smaller pieces that you can then figure out. With experience, getting stuck like this becomes much less of a problem.
That's just basically looking up the answer. Even if i find it (which is unlikely without asking an llm), i will not learn anything from it. I tried creating a wimforms application with the same method, and eventually succeeded. But i don't know how i did it, and i couldn't recreate it by myself. This is the problem
That's just basically looking up the answer. ... i will not learn anything from it.
Looking up the answer is the way to do it. You're of course supposed to pay at some attention instead of copy-pasting without using your brains. As you keep doing things, you'll develop a rough idea of how things are done.
Even if i find it (which is unlikely without asking an llm)
But i don't know how i did it, and i couldn't recreate it by myself.
You mean building the thing without any reference? Except for the most basics, you're not supposed to memorize everything by the smallest details. Imagine asking a lawyer to know the details of every single law off the top of their head.
I agree with all the advice given in this thread. I just want to add that I think you should try to avoid chatgpt (or least use it in a way it explains the problem to you without giving you the answer), as it solves trivial problems easily, and solves complex problems with bugs.
I learned everything I know about c# by looking it up on Google, copy and paste is king. Just keep working with it until you can make sense out of the code you're copying. An llm would work similar but might feed you bs, everything you'll want to know is on stack overflow. You're unlikely to have an original, unasked question...I never have.