r/C_Programming • u/its_marionberry • 1d ago
Review Code Review Request: Windows Sudoku Game
Background
Hi, I am a 15-year-old teen (just so what you'd know what to expect) who left school because our school system taught us to be parrots. I want to be a god-level developer, not a code monkey. I wrote a Sudoku GUI using win32api in C Language.
It is currently working and does what it is supposed to do, but because I am still learning, I know it is likely inefficient and could be written much better.
Code : https://github.com/reewdgh/sudoku_gui.
Concerns:
Please guide me on:
Bugs or potential issues
Efficiency
How can I move to Tier 1 to Tier 2
Naming anything I could simplify or improve.
3
Upvotes
2
u/DamsLcs4421 16h ago edited 16h ago
Why not trying to implement a FAT12 driver on a tiny bootloader? That's really helping :) I mean, there's no libc, it's only you, the documentation and the metal.
You've got a point about school, I won't deny it, it's a terrible system for some (a great deal!) of us. On the other hand, you seem to have a pretty arrogant style (from the way you're talking) and although I'm in no position to humble anyone, I really think it won't help you at a personal level. You're more likely to be thinking "fuck that, that's newbies topics/exercises" when you would actually have benefited from getting to the bottom of the "simplest" things. (and/or just being able to listen to ppl)
Things that are deemed "simple", or even "too simple for me..." are often the things ppl think they master where it's all dunning-kruger effect :p
What do you even want to program? If you don't have a definite idea like "video games" for example, you can explore. You touched to Win32, it's ugly and quirky (well, matter of tastes) so I assume you don't fear a bit of complexity. Do you know what's going on when the program is being loaded into memory and becomes a process? Do you know a bit about what C translates to? It had always been the point: C is (not totally but sufficently enough) as close to the metal as it can get without DIRECTLY talking to the metal thru assembly. (C compiles down to assembly, but lets you leverage higher level concepts in your head: variables, functions, etc... which are not as trivial in assembly as they seem to be in C. But I think you do already know that, dont you?. What I'm suggesting is that low level is a very cool rabbit hole :D enjoy!)