What you will learn in The Creative Programmer
Chapter by chapter
Concepts explained in this book
- creativityCreativity is the socially recognized production of ideas or artifacts judged novel, high-quality, and relevant within a context.
- constraintA constraint is a limitation or condition that restricts the possible approaches to a problem or creative endeavor.
- creative programmerA creative programmer is a programmer who applies creative thinking and problem-solving practices to software work.
- creative problem solvingCreative problem solving is an approach to solving problems that combines idea generation with evaluation and implementation.
- growth mindsetA psychological perspective that treats abilities as capable of development through learning, effort, and persistence.
- fixed mindsetA fixed mindset is the belief that abilities or traits are largely stable and cannot be substantially developed.
- problem solvingProblem solving is the process of analyzing a problem and developing, evaluating, and applying a solution.
- curiosityCuriosity is a motivation to seek knowledge by exploring questions, possibilities, and unfamiliar subjects.
- workspaceA workspace is the physical or digital environment in which work is performed.
- creative state of mindA creative state of mind is a mental condition that supports sustained, effective, and inventive creative work.
- generalismA person who develops competence across multiple fields or areas rather than concentrating on one specialization.
- creative methodA structured practice intended to stimulate, develop, evaluate, or improve creative ideas.
- insightInsight is a sudden or novel understanding that connects seemingly disconnected pieces of information.
- multipotentialityMultipotentiality is the capacity or tendency to develop interests, abilities, and creative activity across multiple disciplines.
- notesThe practice of recording information, observations, and ideas for later recall, connection, or development.
- social debtSocial debt is the accumulated cost of unresolved interpersonal or team problems that impair collaboration and performance.
- perseverancePerseverance is continued effort toward a goal despite obstacles, delay, or discouragement.
- specializationSustained concentration of knowledge, skills, or work within a narrow field or subject area.
- creative codingCreative coding is programming practiced primarily to create expressive or visually engaging works.
- communicationCommunication is the exchange of information, ideas, or intentions between people or groups.
- deep workDeep work is professional activity performed with sustained, distraction-free concentration on cognitively demanding tasks.
- diffuse thinkingDiffuse thinking is a mode of cognition that allows attention to broaden and ideas or connections to emerge without concentrating continuously on one specific problem.
- illuminationA stage of creative work in which a potentially useful idea, insight, or understanding becomes consciously apparent.
- sleepA recurring natural state of reduced consciousness and responsiveness during which the body and brain undergo restorative and information-processing activity.
- writingWriting is the activity of composing text to communicate ideas, information, or arguments.
- divergent thinkingDivergent thinking is the cognitive ability to generate multiple varied ideas or solutions from a common starting point.
- inspirationInspiration is a stimulus or mental state that prompts the formation of creative ideas.
- intrinsic motivationMotivation arising from inherent interest, enjoyment, satisfaction, or challenge in an activity rather than from external rewards or pressures.
- extrinsic motivationExtrinsic motivation is motivation driven by external incentives or pressures rather than inherent interest in an activity.
- collaborationCollaboration is the social process of working with other people to develop, refine, and improve ideas.
- shallow workA mode of work involving relatively routine, low-cognitive-demand tasks that can often be performed with limited concentration.
- code kataA code kata is a small programming exercise repeatedly implemented or rewritten to practice software development skills.
- mutual learningMutual learning is reciprocal learning in which interacting participants change their understanding or capabilities through one another.
- stimulating environmentA setting whose social, cultural, or intellectual conditions encourage renewed energy, exploration, and creative activity.
- zettelkastenA Zettelkasten is a personal knowledge-management system consisting of interconnected notes that support learning and the generation of ideas.
- social verdictA sociocultural verdict is a socially and culturally conferred judgment that an idea or work qualifies as creative.
- creative processThe sequence of cognitive and practical activities through which a creative work is developed, including preparation, incubation, illumination, verification, and presentation or acceptance.
- serendipitySerendipity is the occurrence of valuable or interesting discoveries while searching for something else or without a specific intended target.
- focused thinkingFocused thinking is a deliberate, incremental mode of reasoning that concentrates attention on a specific problem and works consciously toward a solution.
- pair programmingPair programming is a software-development practice in which two programmers work together at one workstation or on the same code.
- knowledge transferTransfer is the application of learned knowledge or skills to a different task or context.
- flow stateFlow is a psychological state of deeply absorbed, intrinsically rewarding engagement in an activity.
- community smellA recurring social or organizational dysfunction in a software-development community that impairs collaboration, communication, or software outcomes.
- context switchingThe shift from one active task, system, language, or conceptual framework to another, including the effort required to resume the original context.
- thought walkA thought walk is a walking activity undertaken while reflecting on or developing ideas and solutions.
- creative freedomCreative freedom is the latitude to choose among possible ideas, methods, or forms when creating something.
- liquid networkA network of people or ideas with enough mobility and exchange to support the formation, propagation, and refinement of novel connections.
- perfectionismPerfectionism is a persistent tendency to demand flawlessness or excessively high standards from one's work or performance.
- idea synthesisThe process of combining ideas from different sources or domains into a new, coherent idea.
- motivationMotivation is the set of internal or external factors that initiates, directs, and sustains goal-oriented behavior.
- retrospectiveA Scrum event in which a team reflects on completed work and identifies improvements to people, relationships, processes, and tools.
- unit testA unit test is an automated test that verifies the behavior of a small, isolated unit of software.
- intrinsic constraintAn intrinsic constraint is a limitation or condition inherent to the material, medium, or problem being worked with.
- brainstormingBrainstorming is a method for generating many ideas through unconstrained or lightly constrained ideation before evaluation.
- separation of concernsSeparation of concerns is the organization of a system so that distinct responsibilities or decision criteria remain independently managed.
- naivetyNaivety is a lack of established knowledge or assumptions that can leave a person more open to attempting unconventional possibilities.
- Dreyfus Skill ModelThe Dreyfus model of skill acquisition describes progression from novice to expert through stages of developing skill and expertise.
- mental oscillationMental oscillation is the deliberate or spontaneous alternation between different modes of thought, such as broad ideation and focused evaluation.
- verificationVerification is the systematic checking of an idea, assumption, or creation to determine whether it is correct and functions as intended.
- collective creativityCollective creativity is creativity that emerges through the combined participation and interaction of a group of people.
- gritA trait combining sustained passion and persistence toward long-term goals despite difficulty or setbacks.
- genius clusterA group of mutually influencing people whose interactions support exceptional creative or intellectual output.
- skill levelA skill is an acquired ability to perform a task or activity effectively.
- closed office spaceA workspace arrangement consisting primarily of enclosed rooms or separated offices.
- Consensual Assessment TechniqueA creativity-assessment method in which qualified experts independently judge the creativity of a product.
- coworking spaceA shared work environment in which people or teams work in a common facility with configurable areas.
- creative performanceCreative performance is the quality or effectiveness of a person's output in generating creative ideas or results.
- creative productA produced work judged to combine novelty with value or effectiveness.
- environmental designThe practice of shaping physical or spatial environments to support particular human activities and outcomes.
- hybrid coworking spaceA coworking-space pattern that combines shared social areas with separated spaces for focused or specialized work.
- open spaceA workspace arrangement organized around shared, relatively unobstructed areas rather than enclosed offices.
- problem findingThe process of noticing, discovering, or formulating a problem that has not yet been defined.
- shared problemA shared problem is a problem jointly recognized, adopted, and pursued by members of a group.
- symmathesyA symmathesy is an entity or process constituted by contextual mutual learning through interaction among living systems or their parts.
- sabbaticalA sabbatical is an extended period of leave from customary work or duties, often devoted to rest, study, or creative pursuits.
- time offTime off is a period during which a person is not engaged in their usual work or occupational duties.
- ObsidianObsidian is a note-taking application that stores interconnected Markdown notes and provides link discovery and backlink navigation.
- hardware-software co-designHardware/software co-design is the coordinated design of hardware and software components as parts of one computational system.
- lateral thinking with withered technologyLateral Thinking With Withered Technology is a design philosophy of applying mature, inexpensive, and limited technology in unconventional ways to prioritize useful experiences over technical novelty.
- optimization solverA solver is a procedure or computational system that determines a solution to a specified problem.
- palette swappingPalette swapping is a graphics technique that changes the color mapping applied to an existing image or sprite to produce visual variants.
- constraint-based thinkingAn approach to problem solving that deliberately treats limitations and conditions as sources of direction for decisions and solutions.
- wisdomWisdom is a coherent understanding that emerges when meaningful paths connect multiple insights.
- Creative Programming Problem Solving TestThe Creative Programming Problem Solving Test is a questionnaire-based assessment of programmers' or students' creative problem-solving tendencies.
- sweet spotA desirable balance between restriction and creative freedom that supports effective creative work.
- analog note-takingAnalog note-taking is recording information by hand on physical media such as paper notebooks.
- commonplace bookA commonplace book is a personal compilation of quotations, ideas, sayings, and other excerpts accompanied by the compiler’s remarks.
- journalingJournaling is the practice of recording thoughts, observations, experiences, or information in an ongoing personal record.
- knowledge managementKnowledge management is the systematic collection, organization, processing, and retrieval of knowledge and information.
- pseudocodePseudocode is an informal, language-independent notation for expressing program logic without requiring executable syntax.
- knowledge management techniqueA knowledge management technique is a structured practice for capturing, organizing, connecting, retrieving, or developing knowledge.
- learning by writingLearning by writing is a learning process in which composing and reformulating ideas supports understanding and memory.
- zettelA Zettel is an individual atomic note or index card within a Zettelkasten system.
- walkingThe activity of moving on foot, especially when used to support reflection, ideation, or physical activity.
- adaptabilityThe capacity to adjust behavior, methods, or knowledge to changing situations and requirements.
- behavioral code analysis toolA software tool that analyzes behavioral and social patterns associated with source code and its development.
- CodeSceneA software tool that performs behavioral analysis of source code and software-development data to identify patterns associated with code and team activity.
- polymathA person whose knowledge and abilities span multiple distinct fields.
- art-based learningArt-Based Learning is a reflective method that engages with artworks to explore personal questions and generate new understanding.
- associative free thinkingAssociative free thinking is a mode of ideation in which loosely connected thoughts and associations are allowed to emerge without tightly directed analysis.
- creative tinkeringTinkering is exploratory making or modification through informal experimentation with materials, tools, or technology.
- incubationA stage of creative work in which conscious attention is temporarily withdrawn from a problem while ideas or solutions develop in the background.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.
