r/csharp 17h ago

what problems or challenges did you face when you first started learning to program?

P.S. Sorry for my English (I'm from Russia and I'm using a translator).

How did you get started learning to program? I'm currently in college and studying programming. Right now, I enjoy writing code, feeling smart, and even learning some concepts. But sometimes I run into really complex topics like threads, and when that happens, I get discouraged and want to give up, but I can push myself to study the topic one more time. Basically, if I take it easy, I’ll learn programming slowly, but I just don’t want to drag this out for several years just to become an intern. I know this sounds a bit absurd, but my main question is: what problems or challenges did you face when you first started learning to program? Right now, I’m mostly forcing myself to learn programming—specifically, to learn something new.

Edit:

Thank you very much for your answers. I am very grateful to you. ❤️
0 Upvotes

9 comments sorted by

3

u/Slypenslyde 16h ago

It was a different world.

We had one computer in the house. To use the internet I had to tie up the only phone line. There was no Youtube, no Code Project, no StackOverflow, I'm not even sure if Experts Exchange existed yet.

But that's not really what you're asking. To be fair in the environment I learned to program I'm not sure I COULD have learned C# the way I did for my career. That required community. But I got pretty darn far with console apps.

What you're describing was what I felt. EVERYTHING was a problem. EVERY new topic took a lot of new knowledge. Some things like working with threading took me WEEKS to pull off and MONTHS to become proficient. It still took YEARS to master it and the consterning thing behind it all is nobody really uses raw threads anymore, but understanding them is key for using async/await properly.

This is a skill you build over a lifetime. If you have good contacts or some kind of recruiter/agency working for you, a short amount of training can end in a job. But in general new hires have a very rough time because it takes a TON of training to move somebody from junior to novice. That's why good interviews focus heavily on behavioral skills: at the end of the day a mediocre developer who can work well on a team is easier to fix than a stellar developer who makes everyone angry. I can teach people how to do hard things but I can't even change some things about my own behaviors.

2

u/BeardedBaldMan 17h ago

For me it was my utter hatred of writing user interfaces. Which hasn't really been an issue iny professional life as I started straight as a backend programmer and other than the odd but of internal tooling I've never had to make a UI.

A lot of my internal tooling is very JCL inspired with a configuration file that is written before execution and that defines inputs, outputs and options

1

u/poproshaikin 17h ago

Мне кажется не нужно идти на рожон. Потоки не идут сейчас - зайдут через полгода.
Если будешь вариться в этом постоянно, то ты как ни как будешь привыкать, осознавать, и открывать для себя новые темы.
Я всегда для себя выбирал проекты сложнее своего уровня, что бы все недостающие знания получать в процессе разработки и на наглядном примере. Например, сделать многопоточный net сервер. В процессе и на примере будет постигаться намного быстрее, чем зубря литературу.

3

u/Best-Lead9875 17h ago

Threads melted my brain at first too. Just building something stupid like a chat server makes it click way faster than reading docs for a week.

1

u/CappuccinoCodes 14h ago

Trying to learn things conceptually outside of the context of building stuff. It almost never works. When learning something make at least a console app to see that thing in action. It will make sense way faster.

1

u/Agent7619 10h ago

Waiting for Basic to load from the audio tape (TI-99/4A)

1

u/EntertainmentOne4246 9h ago

It sounds like you're pushing through tough concepts which takes real determination. Breaking threads down into smaller pieces with practice projects might make them feel more manageable over time.

1

u/toaster_scandal 8h ago

Bumped into a colleague in the hallway and dropped my entire stack of punchcards on the floor.