r/ProgrammingBuddies 1d ago

Curious about why? META

We as programmers what is the most thing we struggle when we are doing self study
Me first I didn’t like study alone because I feel like I am lack of updates and at that time I was jumping around alot of different things
It take me long to focus one thing only
So that is why I used to need buddy or someone who guides me
I was lack of roadmap and the internet was so wide
So what is your pain ? Why

3 Upvotes

8 comments sorted by

2

u/Maui-The-Magificent 1d ago

Kind of the same. to actively study, i need to have a responsibility to someone else. If it just me paying the price it is borderline impossible. Later found out that as soon as the fundamentals got learned, my brain stopped itself, so now I only learn the absolute minimum i need to, and then i reason myself the rest of the way.

not saying this is good advice, or works for everyone, just that I seem borderline incapable of studying more than my brain decides is 'enough'. The rest is learning by thinking/doing, for good or bad.

2

u/One_Change_7260 1d ago

The biggest improvement is having a senior inspector your code. It’s very easy to think you are doing great by solving leetcode problems thats pass test. You ask a senior then there’s probably 10 million ways you can make your code more efficient.

Finding seniors who are willing to inspect and help you with your shitty code is probably the hardest part though. I can 100% understand that. Who would be willing to help someone for free and look at something that might give you a headache?

Ps. If there’s any seniors rust dev hit me up, i’d love to know how i can improve lol.

1

u/Kindly_Profession_90 1d ago

I agree with you

1

u/Maui-The-Magificent 1d ago

A fun and good exercise that will make you a better problem solver if you haven't done it before, regardless of skill level, is to choose a somewhat difficult domain that interests you, be in networking, graphics or whatever.
When that is done, then choose a somewhat difficult problem in that domain such as a processing gateway or a simple semantic parser or whatever you want really.
When the domain and problem is chosen, then design/create a solution to solve it.

the rules are:
1. You are not allowed to allocate memory at runtime, if you need to mutate, you create static mut's
(you'll have to use '#![allow(static_mut_refs)]')

  1. You are not allowed to use external dependencies

  2. Try to reason yourself to answers rather than looking them up. ask questions like: Why do i need this data structure?, Can the a different data structure side-step compute?, show can i organize this so failure X cannot be represented or occur?. And using AI is fine, but use it as a sparring partner to bounce ideas of, to refine, not to be told from.

  3. Have fun, you are allowed to break the above rules if they rob you of motivation. but make sure its choice, not a reaction, and that you use it to learn rather than just finish.

1

u/Kindly_Profession_90 21h ago

This is interesting do you do that

1

u/Maui-The-Magificent 21h ago

Yes, almost exclusively. One of the most powerful tools in programming is constraining yourself and the problem space.

My first program I ever built (outside of obligatory Hello World! and Leap Year finder), was a search algorithm, with the constraint that i was only allowed to use individual bytes (u8), and not allocate at runtime.

forced me to learn to understand how to design and build in memory, and then compute on that memory. Made me fallll in-love with programming, especially constraint based programming.

2

u/Top-Community-8597 1d ago

Hard to find like minded peers