Skip to content

moxley01/phrases

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 

Repository files navigation

Engineering Terms and Concepts

This repository contains a curated list of phrases, proverbs, and sayings that are particularly useful in the practice of engineering. Each term is accompanied by a brief description to help you understand its specific meaning and relevance.

List of Terms and Descriptions

1. Red Herring

A distraction or misleading clue that diverts attention away from the real issue.

2. Non Sequitur

A statement or conclusion that does not logically follow from the previous argument or statement.

3. Chesterton's Fence

The principle that reforms should not be made until the reasoning behind the existing state of affairs is understood.

4. Metcalfe's Law

The value of a telecommunications network is proportional to the square of the number of connected users of the system.

5. Gold Plating

Adding unnecessary features to a project, increasing complexity and cost without proportional benefits.

6. Gall's Law

A complex system that works is invariably found to have evolved from a simple system that worked.

7. Heisenbug

A software bug that seems to disappear or change behavior when one attempts to study it.

8. Technical Debt

The implied cost of additional rework caused by choosing an easier solution now instead of using a better approach that would take longer.

9. Murphy's Law

The adage that anything that can go wrong will go wrong, emphasizing the importance of risk management.

10. Critical Path

The sequence of stages determining the minimum time needed to complete a project, crucial for project management.

11. Yak Shaving

Engaging in seemingly pointless activities that are actually necessary to solve a larger problem.

12. Boiling the Ocean

Attempting to solve a problem by taking on too much at once, rather than breaking it down into manageable parts.

13. Dogfooding

The practice of using one's own products or services to test and validate them before releasing to customers.

14. Bike-shedding

The tendency to spend discussion time on trivial details while important matters are inadequately attended to.

15. Single Point of Failure (SPOF)

A part of a system that, if it fails, will stop the entire system from working, highlighting the need for redundancy.

16. Black Swan

An unpredictable or unforeseen event, typically one with extreme consequences, often used in risk assessment.

17. Minimum Viable Product (MVP)

A product with the minimum set of features required to gather validated learning about customers with the least effort.

18. Elephant in the Room

An obvious problem or risk that no one wants to discuss, often due to discomfort or taboo.

19. Root Cause Analysis

A method of problem solving used to identify the underlying reasons for faults or problems.

20. Bleeding Edge

Refers to a product or technology so new that it has a high risk of being unreliable and may cause problems.

21. Post-Mortem

A process conducted after project completion to analyze what went wrong and what can be improved for future projects.

22. Cargo Cult Programming

The ritual inclusion of code or program structures that serve no real purpose, based on blind faith that it's necessary.

23. Catch-22

A dilemma or difficult circumstance from which there is no escape because of mutually conflicting conditions.

24. KISS Principle

"Keep It Simple, Stupid" - A design principle that states simplicity should be a key goal, avoiding unnecessary complexity.

25. Principle of Least Astonishment

A principle stating that a component of a system should behave in a way that most users will find least surprising.

26. Iron Triangle

A model of the constraints of project management: scope, time, and cost, where changes to one constraint affect the others.

27. Law of Instrument

"If all you have is a hammer, everything looks like a nail." - The tendency to rely on a familiar tool or approach.

28. Broken Windows Theory

The idea that visible signs of disorder and misbehavior in an environment encourage further disorder and misbehavior.

29. Goodhart's law

When a measure becomes a target, it ceases to be a reliable measure ("story points", anyone?).

30. Parkinson's Law

The adage that "work expands to fill the time available for its completion," often used to highlight inefficiencies in time management.

31. Brooks' Law

The adage that adding more people to a late software project delays it even further.

32. Conway's Law

The principle that organizations design systems that mirror their own communication structure.

33. Dunning-Kruger Effect

A cognitive bias where people with limited knowledge in a domain overestimate their competence in that area.

34. Rubber Duck Debugging

The practice of explaining code line by line to an inanimate object to find errors.

35. Occam's Razor

The problem-solving principle that the simplest explanation tends to be the correct one.

36. Premature Optimization

Optimizing a system or code before it's necessary, often increasing complexity without significant benefits.

37. Bottleneck

A point of congestion in a system that occurs when workloads arrive too quickly for the production process to handle.

38. The Peter Principle

The concept that people in a hierarchy tend to rise to their level of incompetence.

39. Sunk Cost Fallacy

The tendency to continue an endeavor due to past investments, despite new evidence suggesting it's no longer viable.

40. Hofstadter's Law

It always takes longer than you expect, even when you take into account Hofstadter's Law.

41. Separation of Concerns

A design principle for separating a program into distinct sections, each addressing a separate concern.

42. DRY Principle

"Don't Repeat Yourself" - A principle aimed at reducing repetition of software patterns.

43. Feature Creep

The ongoing expansion or addition of new features in a product, especially in software development.

44. Analysis Paralysis

The state of over-analyzing a situation so that a decision or action is never taken.

45. Pareto Principle (80/20 Rule)

The observation that roughly 80% of consequences come from 20% of causes.

46. Bus Factor

The minimum number of team members that have to disappear before a project stalls due to lack of knowledge.

47. Worse is Better

The idea that sometimes a simpler, less perfect solution is preferable to a more complex, theoretically better one.

48. Survivorship Bias

The logical error of focusing on things that survived a selection process, overlooking those that did not.

49. Robustness Principle

Be conservative in what you do, be liberal in what you accept from others.

50. Kerchkhoff's Principle

A cryptographic system should be secure even if everything about the system, except the key, is public knowledge.

51. Rabbit Hole

Getting lost in the details of a problem while losing sight of the main objective.

52. Low-Hanging Fruit

The easiest or most obvious tasks or solutions that can be tackled first.

53. Reinventing the wheel

Unnecessarily re-engineering a solution that already exists.

54. Moving the goalposts

Changing the criteria of a process or decision when the original goals are met.

55. Throwing the Baby Out with the Bathwater

Discarding something valuable along with something undesirable.

56. Cutting corners

Skipping important steps to save time or effort, often leading to problems later.

57. Can't See the Forest for the Trees

Becoming so focused on details that one loses sight of the overall situation.

58. Kicking the Can Down the Road

Postponing dealing with a problem, hoping it will resolve itself or become someone else's responsibility.

59. Opening Pandora's Box

Starting a process that will cause many unforeseen problems.

60. Death by a Thousand Cuts

Failing due to an accumulation of small issues rather than one major problem.

61. Chicken and Egg Problem

A situation where it's unclear which of two interrelated events should happen first.

62. Achilles Heel

A fundamental weakness or vulnerability in an otherwise strong system or project.

63. Pyrrhic Victory

A success that inflicts such a devastating toll that it carries the implication of defeat.

64. Silver Bullet

A simple and seemingly magical solution to a complicated problem.

65. Not Invented Here (NIH)

The tendency to avoid using or buying existing products or solutions because of their external origins.

66. Divide And Conquer

The practice of splitting up a task, and devoting undivided attention to each, thereby completing the task.


Feel free to contribute to this list by submitting a pull request or opening an issue.

About

A glossary for the working Software Developer.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published