I know there are many self-taught engineers and programmers. However, most often we are taught by some one.
1. An author who wrote your favorite book that you studied from.
2. Your dad, mom, uncle, aunt or elder family friend.
3. Your peer, your friend pushed you to learn.
4. Your school or college teacher.
HN, tell me who taught you engineering. Describe how they influenced you.
He also taught me to take inspiration from different sources instead of trying to be too clever and retry everything from scratch. There's the meme that developers just copy paste stuff from Stack Overflow, but engineering is really just building on the shoulders of giants. There's usually ego involved in trying to figure someone out without seeing what others have done.
As a university student: some brilliant young academics and read a lot + self-taught
As a professional: working with experienced engineers from many different disciplines.
In non-software field, engineering is more a design, specification role. You identify and document the requirements, breakdown the design into modules and carefully specify, etc the solution. So often what is called software engineering is, in effect, software construction with minimal design. No wonder so many enterprise-sized projects end up over budget and late.
There were a lot of things that made me curious, and alas, I learned things myselves. I would give not all but a significant credit to academia as well.
That certainly didn't make me an engineer, so when I do have to pick up where engineers leave off, I just have to make it up for myself.
My parents in a somewhat indirect way. They let me have a computer in my room as a kid despite complaining about how much time I spent on it. They'd complain about how I didn't want to go outside, but still took me to the library to get programming books or amuse me by looking at my random projects. They complained about how much time I spent playing video games, but would still come home with random interesting looking video game discs they'd found at some dollar store (one of which became my favorite game of all time). Having access to these resources taught me the first steps of curiosity about programming and building simple things. They also encouraged my interests and exploration in various implicit ways, accepting whatever I was interested in and never really pushing me toward one direction or another.