> _Common name for the Rectangle Pseudo-culture: A degenerate case of computing, it primarily affects non-developers aiming to accomplish some business or scientific goal, though in more severe cases it may affect those who are culturally developers as well._
>
> -/etc/group
---
## Rho? No.
While object oriented programming may be described by the short-hand "Everything is a noun," and functional programming may be described by saying "Everything is a verb," the Rectangle pseudo-culture can be described by the (never explicitly stated) belief that "Everything is an adjective."
In other words, it is _adjectives,_ not nouns or verbs, are taken to be primary in this non-culture.
In the "dataframe supremacy" variant of this disorder, all data one recieves is stored in a rectangle with named columns and typically unnamed rows. In this case, it is the adjectives or attributes (namely columns) that recieve names, while the nouns that those attributes belong to (rows) recieve no name, either as types (e.g. Person) or as values (e.g., Dave). In such situations, the fundamental objects on which the program operates are simply represented by unnamed integer indexes into a large rectangle in which they live.
Not all uses of rectangles as a data structure are a mistake. For the symptoms to meet the diagnostic criteria for this condition, the use of rectangles must lead to a significant impairment of an individual's decision making ability in technical arenas relative to their overall technical competence.
Areas known to be affected by the Rectangle pseudo-culture include:
- In modern scientific computing: Matlab, R, Scilab.
- In modern business computing: Excel, SQL.
- In previous eras: Often found in latter day academic uses of Fortran, but not in its creators.
- In the modern era across content domains: The Python scientific computing stack (e.g., Numpy and Pandas) is perhaps the most widely used rectangle toolchain as of the time of this writing. While useful for many problems, overuse of these tools without compensating non-rectangle programming outside of work or school often leads to a progression of the rectangle disorder that undermines the user's ability to achieve their goals.
- Exceptions:
- APL: Though it is technically an array based language, experts largely agree that APL does not count as an instance of the rectangle disorder. Though consensus is not universal on this matter, the clear majority opinion is that the use or admiration of APL is a distinct phenomenon. Though use of APL comes with its own set of costs and benefits, it should not be confused with the rectangle pseudo-culture or the disorder observed within it.
- Tensorflow, Torch, Jax: Many users of these frameworks didn't come for the rectangles, and don't reach for them as the solution to other problems. Sometimes, you just need your variables to be differentiable. I mean seriously, nobody wants to do tensor calculus by hand, except maybe when we're first learning general relativity. But for users of these frameworks, your tensors aren't even real tensors, they're just big obnoxious high dimensional rectangles, and you're just trying to get things done and move on to something nu (see above). Life is about trade-offs. Don't blame these people.
Progression of Symptoms:
- Early symptoms of the rectangle disorder manifest as a set of _behaviors_, not as a set of explicitly stated beliefs. Such behaviors can be summarized by the phrase "Everything is a rectangle." In early stages of this disorder, every object one represents in any domain is represented as a row of attributes describing the object in question.
- Intermediate symptoms commonly involve either proposing or actually using SQL databases of various forms, in cases where a simple text file or directory thereof would be more than sufficient.
- In severe cases, as the disorder progresses, affected individuals often acquire a form of Stockholm Syndrome in which they develop explicit beliefs about the superiority of rectangles as a data structure for all or most problems in computing. In such cases, affected individuals are often found using terms or phrases such as "primary key," "foreign key," or "that's just a join," in areas having nothing to do with databases. Such individuals may even brag about their affliction, with language like "I just use Postgres for everything," or "A filesystem is just a database."
- The most extreme cases of the rectangle disorder do not lie on a continuum with the other three severity levels. There is disagreement about whether or not the most apparently severe cases of this disorder should be treated as, in fact, more severe at all. Though the symptoms appear on the surface to be more severe than any of the above, the underlying cause among tier 4 cases has been hypothesized to be causally distinct.
This is an area of active research, and it is beyond the scope of this file to elaborate on the details. See [[rect|/var/lib/rect]] for a more in-depth discussion of these cases.