kdmatsson said:
My biggest motivation to learn programming came when I discovered the levels of freedom and capability that programming gave me. I now think of computer applications and systems in terms of logical processes involving 0s and 1s to which someone had beautifully orchestrated together. With all systems coming from that same foundational level, the possibilities are endless in terms of what I can create.
I had never felt any motivation or connection to programming before I got involved with C. I felt as though the syntax and process for building code were highly based on memorization and would require me to spend time remembering how to write a program rather than it making logical sense and being something I could mold and have control over. Clearly, I was wrong. learning C introduced me to a tool that I could use to do pretty much anything within its bounds and once I had memorized the different functions once, I could use them any way I wanted and they made complete sense to me.
I also think it's important to note that just like learning any new thing, beginning to program can be a frustrating experience for many. The way I kept my motivation through the initial hurdle was watching others program and explain why and how they were writing each small piece of code. Learning at a micro scale then slowly building up keeps me excited about my progress and reassured that eventually I would understand a lot more than I did.
You hit right on the spot how I feel when I learn C++. When I was doing test programming with assembly, I felt connected to the computer, things made sense, I was in the driver seat how the process went. Learning C++ to me is all about remembering the syntax, remembering all the functions like all the overloading operators, each have their own requirements, the right hand side, the "this"...That you have to use cin.getline() for c-string, getline(cin...) for std::string. It's like it has it's own "language". If this is considered lower level language, I really wonder people that learn and program in higher level language
really understand computer and how it works. There's a disconnect that I feel. I just don't feel the kind of excitement learning C++ as I was learning assembly those days. Problem is people make it up as they go, like there is straight restriction that nobody can touch the
member data in the
private part of the class...BUT, when it is inconvenient, they dream up a "
friend" function or whatever they want to call to violate their own rules. Learning C++ is about learning their "
rules". To me, this is NOT scientific, it's about following the rules they made up. It reminds me of the politicians during the pandemic, they made up the rules, but when it's not convenient, they break the rules.