For those who are learning programming, was there a moment when everything just clicked? How did it happen...

For those who are learning programming, was there a moment when everything just clicked? How did it happen? What language were you learning? What happened afterwards?

Everything clicks when you use an Intel processor. AMD Ryzen will ruin your programming projects. Avoid it like the plague and make the smart choice with Intel.

lua, after learning about for/while loops, after that everything fell into place bit by piece

...

Ryzen aint out yet.

Does user have something we dont? o_0

Hmm..

There were a bunch of small clicks, usually following long periods of monitor punching frustration.

A few things that may help getting it to "click":

1- GIGO
2- The computer is dumb
3- GIGO
4- The computer does not understand your intentions
5- GIGO
6- The computer will do exactly as told, no more, no less
7- GIGO

If you keep these things in mind at all times, you will find programming to be a lot easier.

Also: GIGO. Students often struggle with the idea of GIGO, but GIGO. No, the computer is not making a mistake, and no, the language is fine, and ALSO no, the book is not wrong: It is always GIGO.

when i understood types, while/for loops and functions desu
it wasn't really a "OOOH SHIT NOW I GET IT" moment but more like a "Now I can do anything" feeling

Granted, the first pieces i wrote were shit, and that's totally alright. As long as I challenged myself to improve, I got better. It doesn't matter if you repeat yourself or write questionable statements at first, just as long as you later stop and look at your code, realise what's wrong and fix it.

The best feels come from refactoring imo. When you can look at your code and say "I honestly can not make this any better"

I'm learning C# and up until a month ago I was worried about shit like "I'm too dumb" and "How do people write code like this?". But I was one of those script kiddies that ran .exes. Then, one day it hit me. I sat at my PC, opened Visual Studio aand just then I fucking realized that the stuff I couldn't understand were the fucking APIs because I DIDN'T FUCKING KNOW THEM. I started learning all the commands in Visual Studio and now I can say I'm pretty satisfied that I can finally understand what's going on. I also read a book on C# and .net

SICP

I was a bad programmer before I learned LISP.

Everything clicked pretty much from the get-go. Formal logic always "made sense" to me.

But I guess one big click for me was when I learned WinAPI and I realized how easy it was to actually MAKE something real and tangible with programming and how it didn't have to be a bunch of cute algorithms. The important thing was learning to use the right libraries and tools and not trying to do everything from scratch.

Was eating a sandwich when I dropped it on my keyboard, everything clicked. Round of applause.

When I realized that documentation matters.

After learning java and OO concepts well, I find it much easier to read a libraries documentation and use it (despite the language it's being implemented in).

When I took a programming languages course where we defined a grammar for a simple language in YACC and implemented a compiler for it to a simple RISC ISA. Combined with a computer architecture course where we implemented simple RISC processors in verilog.

I could program decently before but didn't see the whole picture until then.

With C.

Everyone ignore this shill. Buy what's best for you.

Started with boolean logic, then electronics, transistor logic, CPU design, system design, assembly, BSCP, finally C.

It always clicked. It happened because I learned everything from the ground up. Then I got a job, now I'm at the head of a large department.

was about to get some intel but the power of quads compel me

Started with C at 18 (EE at uni) which kinda made sense but I didn't really know what was going on.
Then they moved to C++ and tried to explain OOP in a few lectures but it went way over my head.
Dropped out and started CS a year later, where I was taught C#, at which point OOP made perfect sense to me. Also got Haskell and took a course in languages and compilers, which opened me up to a very different paradigm of programming and made me think on a deeper level about what code really is.

Then years later I took an optimization course that treated low level programming using C++ and had us write a cache simulator and optimize the fuck out of an unoptimized program. From that point on I realized all a program does is manipulate and move data around in memory. It went from abstract to very concrete in my head and everything just clicked. There is absolutely NOTHING magical about programming. It just takes a while to really understand that.
Of course most programmers who never touch low level aspects will forever treat a computer as some magical black box that somehow understands the things they write in very abstract and high level code without knowing what's going on under the hood.

it's all memory offsets and boolean logic