• Ads Work via Cultural Imprinting

    Ads don’t work by creating a Pavlovian response through association (emotional inception), they work through changing the cultural landscape around us (cultural imprinting). Ads create the impression that everyone else has made the association between a product and a context. Therefore, we make rational decisions by fitting into how other people may perceive what we buy. This largely explains why common consumer goods (highly visible purchases by others) are more effectively advertised at large scale (like the Super Bowl watched by 100MM people).

    This only works for products that other people can see broadly. For example, bed sheets can not be advertised in this way because other people don’t have access to seeing your bed sheets so there is no shared cultural context on which to sway your decisions.

    Read the essay.

    See also:


  • Libraries Provide, Applications Consume

    In software development, a simple framework to keep in mind that clarifies how to write certain code is that libraries provide and applications consume. Libraries should useful and reusable in most contexts, therefore it should play nicely with other code and be more or less agnostic. Applications on the other hand are intended for end users and make different trade offsβ€”the code is written for a user not for other code or contexts.

    A simple example to highlight the difference is error handling. A library should encapsulate and provide all errors that can be thrown by code in the library so that it’s easily discoverable and can be handled by downstream callers. Applications on the other hand need to catch errors so they can provide feedback to users or log them appropriatelyβ€”they consume errors produced by the code in their application.

    See also:

    • This is easily apparent in Rust error handling libraries: thiserror for libraries and anyhow for applications

  • Doughnut Economic Model

    A visualization of sustainability represented by concentric rings (hence the doughnut). At the center are twelve factors necessary to support life that array outward. The first ring closest to the center is the minimum required for society to function, but as it extends outward it reaches the ‘ecological ceiling’ such as climate change, pollution, etc.

    The purpose of the model is to use it as a framework for making economic decisions. For example, an economic policy could encourage more oil drilling, but that would cause an overshoot of the energy needs of society causing harmful effects (e.g. greenhouse gases, pollution, and land conversion). Using this framework, one could better make decisions that are grounded in sustainability.

    See the visualization

    See also:


  • Olbers' Paradox

    If the universe is infinite and there are an infinite number of stars then every point in the sky should be a star. However, we observe the night sky as being dark not bright.

    This has been attempted to be explained a few ways, that the universe is finite (not generally accepted) or the Big Bang means a finite amount of stars are observable because the universe is expanding (microwave background radiation, invisible to the human eye, seems to prove that).


  • Baumol Effect

    Salaries rise in response to other salaries rising in jobs that experience productivity gains. For example, the ticket prices in the classical arts rise not because they can put on a concert with half the orchestra, but because the salaries of their patrons have grown. Similarly, the salary of managers grew not because their productivity increased, but because the salaries of engineers the manage grew exponentially.

    See also:

    • Peter Principle, traditionally management is a promotion and therefore needs to be paid more, amplifying Baumol’s cost disease

  • Pareto Optimal

    Occurs when one party’s position can not be improved without loss to the other party. For example, in negotiations, that would the point where the terms are optimized for both parties such that it can not be improved further without loss to either side. A Pareto improvement is when something can be improved without loss and Pareto dominated is when there is a possible Pareto improvement.

    See also:

    • Homeostasis is a similar concept in biology
    • Novice software engineers being too dogmatic about duplication can be explained as a lack of understanding of Pareto optimal in engineering

  • Ideas to Support a Key Line Should Be Inductive or Deductive

    When forming a horizontal relationship between ideas (e.g. supporting sentences of a summary statement), they should form an inductive or deductive argument. This makes the connection of ideas more clear to the reader and improves overall reader understanding.

    An inductive argument is a collection of ideas that can be described with a plural noun e.g. reasons, steps, problems.

    A deductive argument is a statement about the situation and the second idea comments on the subject and predicate of the first. The third idea states the implications. For example, dogs are great, Noodle is a dog, therefore Noodle is great.

    See also:


  • Conceptual Integrity

    As mentioned in The Mythical Man Month, good system design (user friendly) requires a small (ideally singular) team of architects, separated from implementation, that decide what goes into the system and what stays out. This avoids rogue ideas making it in that muddy the overall product.

    In No Silver Bullets, Fred Brooks adds that conceptual integrity is difficult to achieve because of the inherent complexity of software systemsβ€”complexities can not be ignored as one would a simplified model in mathematics or physics because the complexities are the essence.

    See also:


  • Measure Progress Rather Than Outcomes

    When you are feeling overwhelmed by something you are working on, measure the progress you are making rather than the final outcome. This helps to break down the larger work into actions you can do and control rather than fixating on the size of the endeavor. For example, rather than focus on having the perfect startup idea measure your progress by the number of things you learned, users you interviewed, and notes you’ve written.