top | item 34206219

Ask HN: Concepts that clicked only years after you first encountered them?

579 points| luuuzeta | 3 years ago

I'm reading Petzold's Code [1], and it dawned on me that I didn't understand logic gates intuitively until now. I took a Computer Architecture course back in college, and I understood what logic gates meant in boolean algebra but not empirically. Petzold clarified this for me by going from the empirical to the theoretical using a lightbulb, a battery, wires, and relays (which he introduces when he talks about the telegraph as a way to amplify a signal).

Another concept is the relationship between current, voltage, and resistance. For example, I always failed to understand why longer wires mean more resistance while thicker wires mean less resistance.

[1]: https://www.codehiddenlanguage.com/

913 comments

order
[+] fortituded0002|3 years ago|reply
1. Everyone is the main character in their own story.

This manifest in all sorts of ways - from people not being there when you need them the most, from friends dying off as soon as proximity changes, to how and why get people get promoted in jobs. This isn't necessarily bad, but if you don't know how to navigate this it can be quite painful and confusing.

2. Representation matters.

I knew this for a long time, but it didn't fully click until years had gone by and I realized I had unconsciously held myself back from pursuing a wide range of things because I just didn't see anyone like me there.

3. Rules in life are just constructs that we as humans have created.

Starting a business helped the most on this one. That's when I started to see that "rules" or "procedure" are all made up and exceptions can always be made.

(Edit: typos)

[+] btown|3 years ago|reply
> Everyone is the main character in their own story

For those with anxiety, one of the best pieces of advice I ever received (that also took me years to internalize!) was the corollary to this: nobody is thinking about you in a critical way, at the level that you are criticizing yourself, because they are their own main character. Which is incredibly freeing, because the anxious person’s assumption that one embarrassing moment will turn into them obsessing about your failure… is absolutely nonsensical, because the only person they are obsessing about is the main character to them, themself.

[+] jahnu|3 years ago|reply
Regarding #3, the following David Graeber quote always stuck with me:

“The ultimate, hidden truth of the world is that it is something that we make, and could just as easily make differently.”

[+] vidanay|3 years ago|reply
#3 really hits home when you realize we have rules for killing each other (war). And we have separate legal trials to determine if someone broke those rules while trying to kill someone else. The penalty for breaking the rules about killing someone often is to be killed.
[+] nivethan|3 years ago|reply
2. Hits home for me as I’ve begun to realize the same thing. Not seeing any person of color in an activity makes it’s so I don’t want to be the first.
[+] bcrosby95|3 years ago|reply
I've noticed #2 with my 4 year old. She won't do anything unless there's a girl doing it. My other kids don't seem to care though.
[+] heavyset_go|3 years ago|reply
> 3. Rules in life are just constructs that we as humans have created.

> Starting a business helped the most on this one. That's when I started to see that "rules" or "procedure" are all made up and exceptions can always be made.

This is a big one that I learned through the same experience. Everything is arbitrary, the rules are made up and the points don't matter.

It made me appreciate those who recognize this, and in turn treat others well, even when shit hits the fan metaphorically, and I have absolutely zero tolerance for bullshit hoop jumping and assholes. I know you don't have to play by that book, so I won't, and I'm happier for it.

[+] crackercrews|3 years ago|reply
Interesting interplay between 2 and 3. Why does representation matter so much if these are just human-created constructs? Genuinely interested to know how the same person had both of these epiphanies.
[+] huijzer|3 years ago|reply
Point 3 also hit me a few months ago during a Dan Carlin’s Hardcore History podcast about Rome. Caesar got back from his conquests and half the senate wanted to punish him for crimes against humanity that he conducted during his wars. However, he also claimed massive amounts of land for Rome. Long story short: he wasn’t punished. And this happened 2000 years ago.
[+] ragazzina|3 years ago|reply
> 1. Everyone is the main character in their own story.

Here is just one example of the total wrongness of something I tend to be automatically sure of: everything in my own immediate experience supports my deep belief that I am the absolute centre of the universe; the realest, most vivid and important person in existence. We rarely think about this sort of natural, basic self-centredness because it’s so socially repulsive. But it’s pretty much the same for all of us. It is our default setting, hard-wired into our boards at birth. Think about it: there is no experience you have had that you are not the absolute centre of. The world as you experience it is there in front of YOU or behind YOU, to the left or right of YOU, on YOUR TV or YOUR monitor. And so on. Other people’s thoughts and feelings have to be communicated to you somehow, but your own are so immediate, urgent, real.

David Foster Wallace

[+] lamontcg|3 years ago|reply
> 3. Rules in life are just constructs that we as humans have created.

Corollary to this is that human rules aren't like programming rules and that the words that make up the rules get interpreted by a human.

One thing that this means is that you can't "hack" a human rule by picking the semantic meaning of a word which works best for you. You have to actually convince the arbiter of that rule that they agree with your meaning. If they don't, and they have a hundred years of legal ruling behind them that they've read and you haven't, then you're screwed.

And good human rules usually do have exceptions to them ("yelling fire in a crowded theater" being the most well understood). This is also why "the exception that proves the rule" is not a stupid saying.

And this is a feature and not a bug. The worst rules we generate are usually the ones that require the human arbiter to be rigid and mechanical. That tends to produce injustices like "three strikes you're out" and "mandatory minimum sentencing" (or any attempt to make the handball rule in soccer/football be objective and just winds up making it worse).

[+] ssss11|3 years ago|reply
To further your point 1, I think also “Everyone sees things through their perspective”.

So when you explain something, 10 people hear 10 slightly different things as their own experiences and biases, and even hopes, interpret your statement.

That’s why being able to communicate accurately, clearly, and concisely is a very difficult and important thing. If you can do it tailored to specific groups and with humour, bonus points.

[+] atonse|3 years ago|reply
While I do see merit in the idea that representation matters, to me, it all depends on what representation in particular. Racial representation gets all the attention.

But for example, seeing that a philosophy major can have a successful computer science experience

[+] jackthetab|3 years ago|reply
Any suggested reading for #1 ("learn how to navigate \$THIS.")?
[+] chrisco255|3 years ago|reply
For #2, I would alter this to say: connections matter.

We are more likely to pursue careers or interests if we know someone (and are friends with them or related to them) that is interested in the same thing or has had experience in the same thing.

[+] r4nd0mn3rd|3 years ago|reply
Please excuse the poor grammar, English isn't my first language. For #3, this rule always fascinated/confused me the most. How did us humans (animals formed from evolution/survival of the fittest) create these abstract 'rules' or fictions we all just collectively follow. Was there some sort of cumulation of ideas of the past woven into novel ones to make an archetypal epoch? Any insight/book recommendation to bridge this knowledge gap is much appreciated.
[+] nine_k|3 years ago|reply
> because I just didn't see anyone like me there

To me, that would be the other way around: a chance to stand out and be one of a kind, act in a way nobody else had acted before, and reap the benefits of being unique, or the first at least.

(Seeing this as exciting or frightening probably depends on your level of sociopathy.)

[+] rajin444|3 years ago|reply
> 2. Representation matters.

Strange, I had the opposite encounter. I realized the only thing keeping me from doing things was myself. There are definitely real barriers (hiring quotas, affirmative action, etc.) but without artificial constraints the only thing stopping you is you. You might feel a little uncomfortable but that's something easily overcome - and almost like a superpower when you realize you can overcome an external locus of control.

[+] atonse|3 years ago|reply
While I do see merit in the idea that representation matters, to me, it all depends on what representation in particular. Racial representation gets all the attention but I find that one less compelling.

But for example, seeing that a philosophy major can have a successful programming career, can encourage others in the humanities to see themselves do it too.

Or seeing someone with ADHD run a business successfully and overcome executive function challenges, can also help others with ADHD.

[+] concordDance|3 years ago|reply
> 2. Representation matters.

As a well represented person I can tell you this has nothing to do with representation, its just that the vast majority of humans in the modern world have close to zero agency and/or don't think they can actually change things.

[+] machina_ex_deus|3 years ago|reply
Learning history / literature in school is important.

I was a total STEM math nerd in school. I used to frequently complain how I don't get what's the point of it, or how it's a waste of time and I'm learning nothing. I still think the emphasis of school was off, but I get the point of it now.

Stories are like code for humans. You can't tell someone what it means to be good or bad, or to give them a course in philosophy and they will become good people. But you can tell them a good story, that engages with them emotionally, and it will change their perception. And history shows that in fact, those stories being told and repeated aren't just interesting minor curiosity, but they have shaped the direction of humanity and they are driving it. A single person with a single story can change history in such a way that it would be completely different without it. And some stories about stories need to be told as a warning so that people will not fall for those kinds of stories again.

[+] satvikpendem|3 years ago|reply
Regarding literature, I'll give an opposite opinion. Being forced to read the classics in school led me to not caring about them at all because I just couldn't relate at all, I had not had the requisite life experience for them to make an impact on me. Now, being an adult and having the life experience, reading them again makes me think more deeply and I can actually relate. So I think in school, we actually shouldn't read high literature lest we hate reading them as adults, which is really when they should be read, not before.
[+] 9804|3 years ago|reply
I think people come out of school hating reading because nobody likes being forced to read specific books, as everyone's tastes are different. It sounds like this might have been what happened to you.
[+] thewebcount|3 years ago|reply
I was fine with literature, but yeah, history, what a snooze-fest. Why do I care who fought what war 1,500 years ago and who won? It seemed like it mostly came down to a bunch of pompous elites having dick-measuring contests a lot of the time.

Then one day the teacher didn’t want to teach and instead showed an episode of Connections, and I was blown away. Learning about how and why our science and technology became what it is was something I could related to and seemed actually useful. I still don’t care for military history, though.

[+] MichaelDickens|3 years ago|reply
> You can't tell someone what it means to be good or bad, or to give them a course in philosophy and they will become good people. But you can tell them a good story, that engages with them emotionally, and it will change their perception.

Is that actually true? Do we have good reason to believe that people who study history/literature behave more ethically?

[+] chestervonwinch|3 years ago|reply
Additionally, I would say more historical emphasis within STEM itself would be beneficial. Motivate through context. Show students that the concepts arose from people solving problems.
[+] Akronymus|3 years ago|reply
> Learning history / literature in school is important.

Really depends on HOW you learn it IME. If it's just regurgitating dates/names/whatever it isn't helpful at all, at least for me. If you establish that event x led to y because of z, it just clicks and suddenly makes sense.

For example, let's take hitlers rise to power: "He became the chancellor of germany in 1933" That is just about useless. "Hitler rose to power with the help of the nazi party, which was partially formed in response to the treaty of versailles' excessively harsh terms, leading to an extreme amount of inflation and a harsh drop in industry. This set the stage for hitler arguing to use a war as a means of getting rid of the penalties of versailles and bringing germany out from the slump"

For me, in school I was mostly taught the first variation.

[+] thyrox|3 years ago|reply
The power of follow ups (especially in sales)

One thing which held me back for a very long time was not following up with people who didn't show much interest initially.

I wasted so many good leads thinking it is impolite to follow up with people after contacting them once. My whole life changed once I understood the power of follow ups and understanding that most people are so busy that it takes at least 6 reminders before most people will take any substantial action.

The reverse is also true. People say a lot of things and most of the times you never cross the bridge or reach it. Nowadays, I rarely argue about anything and don't act on stuff until a person reminds me once or twice. This small filter can be like a miracle for saving your time and energy.

[+] geocrasher|3 years ago|reply
Narcissism.

My grandmother was a terrible narcissist. I loved her dearly and she had a lot of wonderful qualities, but The quality that stood out the most, sadly, was narcissism.

My mother was also a narcissist to a somewhat lesser degree. It didn't occur to me that I too was a narcissist until I was about 35 years old. It took waking up in the corner of the living room in my friends one bedroom apartment Early one morning to see it.

I had pushed away my wife and kids because in my mind all of my problems were their fault. I had blamed others for every thing that had ever happened to me or every feeling that I had felt. And in that moment I realized:

It's ME.

Everything changed in that instant. It was no longer just about me anymore. I stopped seeing the people closest to me as opponents and started seeing them as what they were, family. My support system. The love of my life.

As the years have gone by since then I have seen more of my past through that light and things have become so much more clear.

Understanding that my grandmother was a very damaged person who turned a narcissist to deal with it, then raise my mother similarly, help me understand two things. The first was that the things I blamed myself for in the past weren't my fault. Secondly, it helped me forgive them for some of the awful things that happened. I'm not saying it's okay to be a narcissist. But recognizing that their narcissism affected my life, and it was something that I could shed in my own personality was a serious life changer. And the funny part is that after I realized all of this, my debilitating depression essentially went away. And that was a big deal.

I also learned not even 2 years ago that I have ADHD which was like a light bulb moment for me as well because it explained so much of my life.

[+] theptip|3 years ago|reply
Domain Driven Design. The book by Eric Evans lays out a bunch of concepts and as a developer that had not owned the architecture of a big domain, it was hard for me to see exactly where they fit. But after reading the book a couple times, and then encountering a few tricky domain modeling challenges, I started to see where these patterns add value. Also, as I started trying to describe the cohesive domain architecture of the system to a growing engineering organization, I also clicked on the advantage of having a standardized set of terminology for the problem, rather than inventing your own. It's nice to be able to link to an existing explanation of what a Repository is for, instead of having to name and document your own ad-hoc architectural patterns (or more likely, end up with you ad-hoc architecture being under-documented).

Things like Repositories, Aggregates, Bounded Contexts, and so on are going to be a net drag on your system if you only have a few 100 kloc of code in a monolith. But they really start to shine as you grow beyond that. Bounded Contexts in particular are a gem of an idea, so good that Uber re-discovered them in their microservices design: https://www.uber.com/blog/microservice-architecture/.

(Edited to clarify the book author)

[+] rolenthedeep|3 years ago|reply
It took me an embarrassing amount of time to fully grok what object oriented programming really means. It's one thing to have someone tell you what an object is, but it's another thing entirely to build a fully object oriented system.

I remember what made it click: I was designing an animation system, which had a bunch of different interdependent moving parts. Once I started treating each part like an object and letting it manage its own state it all just clicked. I started with this massively complex functional-like system that managed four or five different motions, but once it was broken into objects most of the code just fell off and it became a nice clean system.

I was super proud of it at the time, but it's pretty bad by my current standards.

[+] bsuvc|3 years ago|reply
Unit testing and using dependency injection to write test-able code.

I'm not sure if it was years, but it wasn't immediate. I just didn't understand why dependency injection was good at first, and not just someone's weird personal code style choice.

I thought it was just people being "Enterprisey" which I'd encountered many times over the years.

Once I committed to unit testing, I realized how necessary it is.

Unfortunately I still encounter customers who haven't bought into it and as a result have untestable code. It's so hard to go back and retrofit testing.

[+] a_c|3 years ago|reply
People never change because of YOU. This applies to work, relationship and family.

It made me click about the saying that science advances one funeral at a time. It is easier to rally people of similar thought than to change people of opposite opinion. Not impossible, just more difficult. It explains a lot of thing in my opinion.

1. It is easier to start a start up than to convince your boss to take a certain product direction. E.g to not pursue certain pursuit, as outlined by John carmack's departure from meta. The ultimate judgement will be whether YOUR idea survive rather than whether your boss buy your idea. And I prefer bootstrap, at least for now, for that reason.

2. Never attempt to change your spouse. Find the common ground instead.

3. Empathy is mostly about experience sharing. You can't have people feel something they never experience before. If you can empathize, it means you have experience to draw similarity between. Imagine teaching a 18yo to be a father, that's how preaching people to be empathetic felt like.

[+] fritzo|3 years ago|reply
Yes, that resonates. But how do people change? Through their own rude awakenings? When they contrast their own selected peer group with other teams?
[+] H8crilA|3 years ago|reply
Reminds me of "managing unmotivated people is hard, so don't".
[+] itsmemattchung|3 years ago|reply
The power of an outline when writing.

Over the past few years, I've been teaching myself how to write better. I'm not talking about elementary syntax or grammar. I'm not talking about writing the traditional, American English five paragraph essay. I'm talking about writing longer pieces of prose, articles or blog posts or short chapters with word counts ranging anywhere between 1500-3000 words. On this journey of improving the craft, I realized that one of my biggest struggles was writing cohesively. Although I've been able to get lots of words on (digital) paper, eventually I'd get lost in my own web of thoughts, the article itself totally incoherent, no structure, no organization.

Constructing outlines and reverse outlines[0] has helped me tremendously. It's not easy ... but the concept itself is finally — years later — starting to click.

[0] - https://explorationsofstyle.com/2011/02/09/reverse-outlines/

[+] sowbug|3 years ago|reply
Taking the point of view of others, and learning to view a situation from a "perspective-less perspective."

It's easy to think you have people skills because you listen to others and repeat their point of view back to them before telling them they're wrong. And unfortunately you can get quite far in the business world simply by being good at demolishing other people's positions.

As a mental exercise, a few years ago in meetings I started deleting the names from the running transcript I keep in my head. "Joe said X and Jane said Y and then I said Z" was replaced with "we said X, then Y, then Z." It was a remarkably effective device to rise above the "who's going to win?" attitude and instead think about the best way for everyone to proceed as a group. I suddenly started to get what people say about meditation and removing the "I" perspective from your life. If instead of being you, you're a quadcopter hovering near the person you call yourself, it's so much easier to get your ego to shut up and start listening for once.

[+] DylanSp|3 years ago|reply
Matrix multiplication. First encountered it in high school, where the textbooks presented matrices without any real motivation, and matrix multiplication just seemed like a weirdly-defined operation. Once I got to linear algebra in college and matrix multiplication was presented as the way to compose linear transformations, it made a lot more sense.
[+] tezza|3 years ago|reply
1/2) Trusting Institutions

Institutions such as Police, Universities, NHS, Scouts, MsF, Religions, Churches, YCombinator et alia have a hierarchy of internal loyalties in strict precedence:

* The Staff Member

* The Staff Member’s Family

* The Friends of the Staff Member

* The Colleagues of the Staff Member

* The Group within the Institution the Staff Member belongs to

* Wider Groups in the Institution

* The actual powerbrokers within the Institution

* The acknowledged Leadership of the Institution (may be different to actual powerbrokers)

* The actual goals of the Institution

* The acknowledged goals of the Institution (may be different to actual goals)

* Helping YOU in accordance with what the acknowledged goals of the Institution are…

Only when all the loyalties in that list are satisfied is there the slightest chance you may get anything positive from the Institution.

Despite the long list of higher precedence loyalties it is still frequently possible to have positive outcomes…

But because it is a long list of loyalties far more important than helping YOU, there are often breaks.

And because people and families and relationships are involved they can change at any moment.

So trusting Institutions to do the best for you or act honourably needs to be carefully weighed against the likelihood that will happen

2/2) Mortgages

How mortgage repayments change over time as you pay off some of it (YMMV)

[+] robg|3 years ago|reply
The autonomic nervous system and the adrenal cortex. Homeostasis is taught as a textbook fact, the body reverting to a baseline over time. What’s not taught is how much the impacts of daily life events drive a continuous stress response. Fight or flight is not just a reaction to deadly threats. It’s active every moment of every day to ensure survival. The adrenal cortex is always active, to traffic, your boss and colleagues, relationship struggles, and overall health and wellness like sleep and nutrition. Yes, the system reverts to a baseline over time but how much that baseline varies is obvious in tracking resting heart rate.
[+] khaledh|3 years ago|reply
YAGNI and KISS.

When I was a junior developer I used to overthink and overdesign solutions, most of which was never needed. It took many years and a lot of battle scars to realize that less abstraction is more. Today I see a lot of juniors do the same mistake and I ask them to revise their designs to keep it simple.

[+] _huayra_|3 years ago|reply
Pretty much anything related to personal growth (however you define it) takes time to click, but it took a while to understand two things at a deep enough level to begin to make change:

* everyone has a set of habits that served them well during childhood, but may be maladaptive as an adult (e.g. getting angry is almost universal a sign of this maladaptive childhood habit rearing up). Book recommendation [0]

* the fear of hope is a key thing to understand when it comes to why people (myself included) hold themselves back. Taking the first step can feel terrifying because it demonstrates that one is responsible for creating one's own life. Book recommendation [1]

The only way out of this is to deliberately design your days so that you get the most out of them, even if it is fumbling at the start. Add in some times to relax here and there, but if you have a plan, it's much easier than staring at a blank Saturday with the vague goal of "I MUST learn JS/Rust/Go/Scala or my career will be over!!!" and then getting nothing done.

[0] https://www.goodreads.com/book/show/23129659-adult-children-...

[1] https://www.harpercollins.com/products/how-we-change-ross-el...

[+] MichaelDickens|3 years ago|reply
What an algebra equation is. I could solve linear equations, quadratic equations, and systems of equations by adding/subtracting/multiplying/dividing both sides of the equation and by adding two equations together. But I didn't know why you were allowed to do any of those things, or what else might be allowed. Are you allowed to square both sides? Raise both sides to a power?

It wasn't until maybe my third year of algebra that I realized an equation means both sides of the equation are equal to each other, which means you can perform any operation at all to both sides, and the result will still be equal.

[+] alexmolas|3 years ago|reply
Social constructs aren't less real than other tangible concepts. For instance, I used to complain a lot about the non-sense that's to wear a tuxedo in weddings. I was the typical kid saying that I would like to go wearing my best sweatpants to weddings, and that probably my sweatpants are more expensive than some of the tuxedos there. Then, I matured and realized that what we wear have a meaning, wether we like it or not. It's like words, maybe you don't like the definition of the word "car", but using an alternative word would be useles since nobody else would understand you. So if you care about the people getting married and you want to communicate it you need to wear the damn tuxedo.
[+] parasti|3 years ago|reply
One of the biggest realizations recently for me was realizing that a nearly all of software development is basically about turning a slow, manual process into a faster, automated process. Modern CI/CD stems from a bunch of shell commands that somebody wrote and manually executed to test an app and upload it to a server. Modern automated software testing stems from humans writing small test apps and running them to confirm correct behavior. Many modern development practices stem from allowing small test apps to be written easier and faster. It's all just a giant manual process-to-automated process time-saving machine.
[+] nkrisc|3 years ago|reply
Two concepts that I never really understood until I encountered them together: functional programming and recursion.

When I first encountered recursive functions when I began learning programming I had a really hard time understanding what the function would do and how it would play out as it called itself. I couldn't think through the recursion and imagine what would happen. Nor did I really understand how to usefully apply one to a situation. I would either use a loop or a recursive function that utilized lots of external state to work.

When I later encountered functional programming, having learned programming with OOP languages, it was a real mind-bender. I finally started to understand it but when I encountered the need for recursion in FP, it really threw me for a loop. How the hell was I supposed to do this without external state? So it was that restriction that really let me understand how to create a recursive function that could return something useful with nothing more than the initial input. This new understanding also gave me a better appreciation of functional programming and the idea of pure functions.