Abstract Factories, Zygomorphisms, and You: The Role of Social Interaction in Language Ecosystems

Day 3 - Software You Can Love (Fri) • 10:30 • Duration: 45m

In linguistics, the relation between language and thought is a debated topic. Linguistic relativity is a contentious principle, suggesting that the language you speak influences your worldview and cognition. One of the reasons why it is controversial is that other factors play roles in shaping thought, such as social norms and constructs.

Programming languages are obviously different from spoken languages in a number of ways, but a common recurring topic in the developer community is that programming languages do shape the way we think about programs. But is it really the language, or is it the way this language is most commonly used? What role do the ecosystem and the implied social norms play in that process? What makes a Java program a “Java” program? What makes Go software “Go” software? What about Rust, Scala, Zig?

Let’s take together a journey through history, design, and common usage patterns of different programming languages and try to answer together these questions.