Track Awesome Naming Updates Daily
A curated list for when naming things is done right.
🏠 Home · 🔍 Search · 🔥 Feed · 📮 Subscribe · ❤️ Sponsor · 😺 gruhn/awesome-naming · ⭐ 1.3K · 🏷️ Miscellaneous
Oct 28, 2024
Other
- Cookie licking - E.g. claiming a GitHub issue, then not working on it.
Aug 19, 2024
Tools, Applications, Libraries, Frameworks
- CockroachDB - Database application, that is marketed as being so fault tolerant and resilient as a cockroach.
Apr 04, 2024
Tools, Applications, Libraries, Frameworks
- Webpack - A bundler for JavaScript and other web assets with a short and descriptive name that also somewhat rhymes.
Mar 10, 2024
Design Patterns and Anti Patterns
- Spaghetti Code - A program with a tangled and hard-to-follow stucture.
Mar 02, 2024
Other
- Hydra - A bug that, when an attempt to fix is made, introduces multiple new bugs. It's a bug that cannot be fixed.
Nov 04, 2023
Programming Languages and Programming Language Theory
- Syntactic sugar - Syntax that makes the language "sweeter" for human use. Usually a shorthand for common operations that can also be expressed in a more verbose form.
Oct 28, 2023
Tools, Applications, Libraries, Frameworks
- Safari - Web browser developed by Apple.
Oct 19, 2023
Functions
- munch - Parser function that greedily consumes an input stream until it's satisfied.
Oct 08, 2023
Programming Languages and Programming Language Theory
- Choreographic programming - A programming paradigm where programs are compositions of interactions among multiple concurrent participants.
User Interface Design
- Bento layout - A grid based layout resembling the compartmentation of bento boxes.
Sep 21, 2023
Tools, Applications, Libraries, Frameworks
- horcrux (⭐4.6k) - Splits a file into encrypted fragments that only together can be decrypted again. In the Harry Potter universe, Horcruxes are fragments of a persons soul. To kill the person, all fragments must be destroyed.
Jul 26, 2023
Machine Learning and Artificial Intelligence
- Gradient descent - Minimizing a cost function by iteratively computing the gradient and moving in the direction of steepest descent.
- Hallucination - A confident response by an AI that does not seem to be justified by its training data.
Jul 19, 2023
Theoretical Computer Science
- Busy Beaver - Turing machines that produce numbers so insanly large, no other algorithm can keep up with them.
Apr 12, 2023
Machine Learning and Artificial Intelligence
- Training - The process of showing the machine a bunch of examples, until it learns what we want from it.
Nov 25, 2022
Other
- Unfair enumeration - A program that outputs all even numbers and then all odd numbers generates an unfair enumeration of the natural numbers because some numbers are never reached.
Nov 17, 2022
Data Structures and Algorithms
- Backtracking - When you explore a search space and you reach a dead end, you follow your tracks back to the last crossroad and try the other way.
Other
- camelCase, snake_case, kebab-case - Different case styles where the name illustrates its appearance.
- Yoda condition - When you write
if ("red" === color) {
instead ofif (color === "red") {
because it reads as, “if red equals the color”, similar to the way the Star Wars character Yoda speaks.
Feb 15, 2022
Other
- Brick - When your device is so corrupted it virtually turns into a brick.
Jan 24, 2022
Other
- a11y, i18n, k8s, ... - Abbreviating long words by keeping the first and last letter and writing the number of omitted letters in between.
Dec 31, 2021
Tools, Applications, Libraries, Frameworks
- tldr - Simplified man pages with practical examples.
- yarn - NodeJS dependency manager.
Dec 29, 2021
Data Structures and Algorithms
- Tree - A hierarchically organized data structure. From the root item the other items branch out into nodes and leaves. A collection of trees is often called a forest.
Oct 11, 2021
Tools, Applications, Libraries, Frameworks
- Puppeteer (⭐89k) - A browser automation library. If the browser is the puppet, this is the puppeteer.
Oct 08, 2021
Design Patterns and Anti Patterns
- Shotgun surgery - A programming antipattern where in a single change you wildly add code everywhere in your codebase.
Sep 02, 2021
Programming Languages and Programming Language Theory
- Clojure - A functional language making extensive use of closures but with a j because it's running on the Java virtual machine.
- C++ - Although C was certainly a bad name, C++ was quite clever. The iconic increment operator ++ indicates that C++ is the successor.
Jul 26, 2021
User Interface Design
- Clipboard - Where you temporarily put files you are working with (i.e. the copy & paste buffer).
Jul 01, 2021
Other
- Magic - A magic program/piece of code is doing it's job but nobody knows how. Like in reality, magic doesn't actually exist. Once you understand it, it's not magic anymore.
Jun 22, 2021
Theoretical Computer Science
- Oracle - A black box that magically gives answers even to undeciable questions like the halting problem.
May 05, 2021
Theoretical Computer Science
- Game of Life - A game world that showcases how astonishing complexity can arise from very simple ingredients.
- Pumping lemma - The fact that in some formal languages any sufficiently long string can be pumped with repetitions of its substring and the result stays in the same formal language.
Tools, Applications, Libraries, Frameworks
- Uglify (⭐13k) - A JavaScript minifier. Removes everything that makes the code readable and pretty to make it smaller.
Apr 21, 2021
Data Structures and Algorithms
- Brute force - Violence is actually almost always a solution but not a very clever one.
Mar 04, 2021
Data Structures and Algorithms
- Hill climbing - Starting somewhere in the hilly "landscape" of solutions you go in the direction of steepest ascent until reaching the top of a hill. You might miss higher hills though.
Mar 02, 2021
Programming Languages and Programming Language Theory
- Garbage Collector - Part of a program that attempts to find and reclaim garbage pieces of memory not used anymore.
Aug 18, 2020
Other
- Floating point number - This representation can encode numbers at very different magnitudes with limited amount of digits by letting the radix point float instead of being fixed in place.
Aug 13, 2020
Other
- Framework - In software architecture (like in actual architecture) frameworks provide basic structure to build upon that guide and constrain the further development.
Aug 12, 2020
User Interface Design
- Optimistic UI - User interfaces that assume expensive operations will complete successfully thereby improving the perceived performance.
- Scrolling - Screen content is often less like a book with discrete pages and more like a continuous roll of parchment, i.e. a scroll.
Aug 11, 2020
Machine Learning and Artificial Intelligence
- Confusion matrix - A tabular summary of a classifiers "confusion", i.e. how often it thought to make correct predictions when it actually didn't.
Jul 23, 2020
Other
- Bottleneck - A central part of a network/application that significantly limits throughput/performance and should ideally be eliminated.
Jul 17, 2020
Other
- Heisenbug - A bug that seems to disappear or change when one tries to study it. It's a pun on Werner Heisenberg who discovered that the act of observing quantum systems inevitably alters their state.
Jul 11, 2020
Tools, Applications, Libraries, Frameworks
- uppy (⭐29k) - A dog themed uploader component. The name is a blend of upload and puppy. It even comes with a crash recovery plugin called Golden Retriever.
Jun 13, 2020
Other
- Tree shaking - Shake the dependency tree until all the dead parts are falling off and you end up with a nice lean tree.
May 04, 2020
Machine Learning and Artificial Intelligence
- Decision boundary - A boundary dividing the space of possible data points. Here you decide, everything on this side is SPAM, everything on that side is not.
Apr 23, 2020
Data Structures and Algorithms
- Israeli Queue - A type of priority queue and a reference to the infamously unorganized queues in Israel. Here items can cut in line when they have already waiting friends.
Mar 27, 2020
Other
- Glue Code - Jenga and LEGO bricks don't share the same interface but you can always glue them together.
Feb 14, 2020
Theoretical Computer Science
- Clique problem - The problem of finding groups of mutual friends in a network of people with friendship relations. Or more general, finding complete subgraphs.
Feb 11, 2020
Data Structures and Algorithms
- Stack - Like with a stack of pancakes you can only add and remove items from the top of this data structure.
- Queue - In this data structure items are always added at the end and removed at the front as if the items were waiting in line.
Design Patterns and Anti Patterns
- Facade - Analogous to a facade in architecture, a facade is an object that serves as a front-facing interface masking more complex underlying structure.
Jan 16, 2020
Design Patterns and Anti Patterns
- Promise - A representation of a result that is available in the future, unless there are errors. Like in reality, promises are broken sometimes.
Nov 26, 2019
IT Security
- Computer virus - A computer program that self replicates by infecting other computer programs similar to the behavior of biological viruses.
Nov 25, 2019
Tools, Applications, Libraries, Frameworks
- clooney (⭐1.4k) - A JavaScript library implementing the actor model for concurrent computation. The term is a reference to George Clooney who is also an actor.
Other
- Easter egg - A hidden feature especially in video games in reference to the Easter egg hunt.
Nov 23, 2019
Data Structures and Algorithms
- Greedy algorithm - An algorithm that finds a solution by always picking the currently best looking option without thinking too much about past and future decisions.
IT Security
- Cyber hygiene - Steps and practices that users should take to maintain system health and improve online security.
- Honeypot - Part of a system meant to look like an attractive target but actually helps detect and deflect attackers.
- Phoning home - When a system (e.g. stolen computer) secretly reports back to a third party other than the current possessor. The name is a reference to the movie E.T.
- Sandbox - A safe and isolated environment to test unverified programs that may contain malicious code.
- Trojan horse - Malware which misleads users of its true intent. The term is derived from the Ancient Greek story of the deceptive Trojan Horse.
Programming Languages and Programming Language Theory
- Lazy evaluation - An evaluation stategy which suspends evaluation until it's absolutely necessary and then never does it again.
Oct 19, 2019
Functions
- fold - Like a blanket being folded up, this function iterates a collection and in each step combines the current item with everything that has already been folded.
User Interface Design
- Hamburger button - A button to toggle a menu. The associated icon resembles a hamburger.
Other
- Process starvation - A problem where a process is perpetually denied resources to do its work.
- Time travel debugging - Stepping back in time through source code to understand execution and sometimes even to change history.
Oct 18, 2019
Design Patterns and Anti Patterns
- Adapter - Allows classes with incompatible interfaces to work together by wrapping its own interface around that of an already existing class.
Functions
- trampoline - Continuously runs functions which itself return functions. Like a child on a trampoline that returns and bounces back up.
- zip - Merges two lists into one list of pairs like the interlocking teeth of a zipper.
IT Security
- Backdoor - A method of bypassing normal authentication in a computer system.
User Interface Design
- Breadcrumb - Navigational aid allowing users to keep track of their location within programs, documents, or websites. The term is a reference to the fairy tale Hansel and Gretel.
- Carousel - A kind of animated slideshow looping back on itself.
- Desktop - The metaphorical top of the user's desk, upon which objects such as documents and folders of documents can be placed.
Other
- ACID vs. BASE - Acronyms describing competing database ideologies (aka. SQL vs. NoSQL). Note that acid and base are also opposites in chemistry.