Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/voschezang/coding-handbook
Conjectures about Software Development & Human Behaviour
https://github.com/voschezang/coding-handbook
Last synced: about 1 month ago
JSON representation
Conjectures about Software Development & Human Behaviour
- Host: GitHub
- URL: https://github.com/voschezang/coding-handbook
- Owner: voschezang
- License: gpl-3.0
- Created: 2021-05-09T10:13:13.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-10-22T08:56:53.000Z (2 months ago)
- Last Synced: 2024-10-23T13:12:19.884Z (2 months ago)
- Language: HTML
- Homepage:
- Size: 25.4 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Coding Handbook
This respository is a collection of ideas about collaboration, in written and visual form. It connects experience, society and software engineering. It is used as a tool for learning - to map out ideas. It is meant to provoke discussion, rather than to offer in-depth explanations.
*Disclaimer: this repository does not contain advice.*
## Index
See [index](index.md).
## Table of Contents
Models
Theory: Domain modelling (of real world concepts)
-
Domain-Driven-Design- examples of DDD using OOP and FP. - Functions and Relationships
-
Programming Patterns - common programming, application and system architecture patterns.
Practice: Computer language (encoding of models)
-
Style Guide - a prescriptive guide for programming (low level) -
Language Specification - this can be implemented as a library or a new language. - Functional Programming Patterns
-
Programming Paradigms - a comparison of OOP and FP.
Systems
Theory: Systems (internal view).
-
Systems and organization -
Systems Management -
Communication Patterns for humans and computers
Theory: Subjects (functional view).
Practice: Labour (organization of work)
Practice: Management of systems
Technological
Theory: Math
- Mathematical Models.
-
Forces. -
Waves (periodic processes). -
Signal Processing (sinoids).
Practice: Software Industry
-
Security. - Software Engineering.
- Software Domains.
- Software Development Cycle.
Social
Theory: Intelligence (and reasoning)
-
Knowledge (and truth). -
Creativity (exercises for brainstorming). -
Learning (change and improvement). -
Models and modelling principles.
Practice: Collaboration (and communication)
- Communication
-
Communication principles (human communication). -
Messaging (verbally or non-verbally). -
Interview Questions (discovery). -
Retrospective exercises for reflection for groups. - Creating value
-
Labour (work and management of work). -
Organization (identity) -
Teams (structure and effectiveness)
Other
- [Quotes](quotes.md) - to contemplate (high level).
- [Behaviour](behaviour.md) - *generic* ideas, *specific* to human behaviour.
- [Documentation](documentation.md).
## Other
**Templates and exercises**
- Interactive
- [Retrospective](collaboration/retrospectives.md) exercises.
- [Brainstorming](intelligence/creativity.md#Prompts) prompts.
- [Interview questions](collaboration/interview-questions.md).
- Documentation
- [Documentation](documentation.md#Templates) templates.
- [Requirements engineering](organization/requirements.md).
**Relations between documents**
From abstract theory to application within a domain. For a full overview, see [this table](software-industry/software-domains-table.md).
- [Communication Patterns](systems/communication-patterns.md) > [Programming Patterns](domain-modelling/programming-patterns.md) > [Programming Paradigms](computer-languages/programming-paradigms.md)
- [Requirements Engineering](organization/requirements.md) > [Project Management](management/project-management.md)
- [Systems Management](systems/systems-management.md) > [Organization Structure](systems/structure.md) > [Organization Architecture](organization-architecture.md)
- [Management Principles](management/management-principles.md) > (management of) [Systems](systems/systems-management.md) > a [Product](management/product-management.md) > a [Platform](organization/platform) > a [Project](management/project-management.md)
Themes
- Quality, flow & systems: [domains](reality/structure.md), [organization](systems/system.md), [emotions](psychology/emotions.md).
- Agile coaching. [coaching](communication/coaching.md), [Scrum](collaboration/scrum-guide), [coaching](communication/coaching.md), [activity](subject/activity.md), [organization](systems/system.md), [systems](systems/systems-management.md).
**Perspective & Generalizability of Guidelines**
[Source](https://twitter.com/johncutlefish/status/1406534814673477633)
1. **Generic** but subjective.
- Theory, Principle, doctrine, culture.
- Implicit, feeling, *can be sensed*.
- Difficult to prove or falsify.
- Applicable always and anywhere.
2. Objective but **specific**.
- Practice, habit, skill.
- Explicit, Concrete, *measurable*, *actionable*.
- Provable, falsifiable.
- Applicable to a single moment or location.
E.g. a goal can be short-term and precise, or long-term but vague.
Definition of *anti-pattern*: a commonly used, bad solution to a problem. Possibly just an indicator, signaling a deeper issue.