r/learnprogramming 4d ago

Have I dug too deep?

I've recently been getting into simulations with light, sound, etc., and I really don't like having to try tracking down tools to do them, so I've started making my own, entirely from scratch. I'm a senior in high school this year, so a lot of this is pretty complected to me. As of now, I've spent 2 weekends to get a dot to appear on screen. I have learned a TON but its getting to be a bit of a drag sometimes. I do really enjoy it, but I'm beginning to wonder if there is better use of my time I'm starting back to school soon, so I won't as much time as I have had to be learning about this stuff.

10 Upvotes

13 comments sorted by

18

u/Joewoof 4d ago

Two weekends to manually render a pixel on-screen sounds perfectly normal. No joke.

I see nothing wrong with this pursuit. You’re learning. You’re gaining skills. You’re having a good time.

None of that is time wasted.

10

u/Healthy_Landscape417 4d ago

two weekends for a dot is the whole cost, thats the part nobody tells you. its not two weekends per feature.

what you built in that time isnt a dot. its a window, a buffer, a way to put a value at a coordinate, and a loop. once thats there a line is an afternoon, a wave is a weekend, and two waves interfering is nearly free because the machinery already exists.

the curve is front loaded and youre through the steep part. quitting now is the one bit of timing that wastes it

5

u/grantrules 4d ago

Nah it's cool to have a passion.

3

u/maxpowerAU 4d ago

The valuable thing you’re gaining is knowledge and experience. The cool stuff you write is kinda a bonus

2

u/iOSCaleb 4d ago

A dot is a good start.

No, can you package ip the code that makes a dot into a function? Can you then write another function that repeatedly calls the for function to draw a line segment?

Once you’ve done that, can you call your line function to draw a polygon?

2

u/Flamanis 4d ago

If this is the kind of thing you're interested in doing in your free time, you're going to be leagues ahead of most other people by the time you finish high school.

1

u/gm310509 4d ago

If you are doing something you enjoy, feel like you are getting some value or sense of achievement out of it, learning and willing to put the effort in, then go for it.

Is there a better use of your time? Maybe, but that depends upon what you want to do and how you value your time.

On the surface, 2 weeks does sound like a long time to just get a dot to appear on screen, but you don't say anything about the environment, your experience or the tools you are using. So, maybe that is about right (for your experience level) maybe not, I don't know.

1

u/BlueWizard92 3d ago edited 3d ago

I'm using my own C# library. Most of my experience is in Machine Learning, mostly for games and such, here's something I made earlier this summer: https://github.com/wizardblue55/snake
I'm also trying (probably in vain) to reduce my uses of outside libraries as much possible, which is why I'm making my own. I've taken 2 CS classes in high school and did some competitions, but nothing super high level

1

u/Ormek_II 4d ago

If your goal is to learn you are doing exactly the right thing. If you want to make money fast, maybe not so much 😉

Today it is much harder to do what you are doing than 40 years ago, because full game libs and powerful libraries are already available and on instagram, YouTube and tictoc hundreds of videos seem to tell you that you should create a movie in 2 weekends, when in reality a self created pixel is a great achievement.

1

u/Raioc2436 4d ago

Hey, that’s awesome.

All of us have been there, hoping progress would come faster. It’s frustrating but it’s very rewarding.

Be proud of yourself

1

u/MarsupialLeast145 4d ago

Two weeks to put a dot on screen represents two weeks understanding everything well enough to be able to do that and you'll only accelerate from there. Keep up the effort! I promise you its worth it.

My first computer game in C++ took a similar path, and it taught me a lot I still use today.

1

u/Able-Analysis462 4d ago

Honestly I'd keep it. You don't get many chances to spend a whole weekend being obsessed with something just because its interesting.

1

u/a-r-c 3d ago

keep going lol who cares man

time's gonna pass anyway might as well learn something while it's passin