liveBook · Manning

Generalism

As explained in The Creative Programmer

A person who develops competence across multiple fields or areas rather than concentrating on one specialization.

What if moving between interests is not a failure to choose, but a way of thinking? A generalist develops competence across several domains and brings those domains together to spot connections or address complex problems. The related term multipotentialite names someone with multiple interests rather than one fixed calling. section 6.5.1

Generalist strengths can include:

  • Idea synthesis: combining perspectives from different domains to form new connections. section 6.5.1
  • Rapid learning: becoming comfortable with being a beginner and learning unfamiliar things. section 6.5.1
  • Adaptability and big-picture thinking: choosing approaches for changing situations while avoiding an overly narrow view. section 6.5.1
  • Relating and translating: using familiarity with several areas to communicate across expertise. section 6.5.1

A wider programming toolkit

A programmer can cultivate generalism by exploring another programming language, a new technique, or a hobby outside programming. The goal is not to master everything at once, but to let varied experiences add possible approaches to future problems. Heavy specialization can narrow the field of view, while multiple interests may support learning, adaptation, and synthesis. section 6.8 section 6.5.1

Generalism is not a demand to become a Renaissance ideal. It is a permission to take several interests seriously, test what they contribute, and remain curious about where an unexpected connection might help. section 6.5.1 section 6.8

How The Creative Programmer covers it

How deep it goes
Defines generalism and enumerates idea synthesis, learning, adaptability, perspective, and translation without prescribing a fixed method.
Examples
Uses Leonardo da Vinci and exploration of programming languages or hobbies to illustrate multiple interests.
What it assumes
Requires no stated technical prerequisites and treats unfamiliar areas as opportunities to practice being a beginner.
What you can do after
Apply it by broadening a programming toolkit through unfamiliar languages, techniques, people, or hobbies.
How it connects
Connects generalism with multipotentiality, creativity, specialization, growth mindset, motivation, and programming languages.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of The Creative Programmer. The section links point to the parts of the book it draws on.