If you’re a junior developer on your first project, you’ve likely come across all kinds of technical acronyms, italics, and abbreviations that you’ve never heard of before. Not knowing if it’s a term everyone should know, it can be awkward to ask what a given software abbreviation or technical acronym means.
software technology acronym
To help take some of the awkwardness out of your first software development project, we’ll explain what the following technical acronyms mean:
- proof of concept
- most valuable Player
- object relationship management
KISS – Keep it Simple, Stupid
This tech acronym actually means “keep it simple, stupid.”
Don’t worry, the word will be joked about. Despite the use of the word “stupid,” this programming acronym isn’t meant to be an insult.
Inexperienced developers often over-engineer systems and deliver work increments that are much more complex than necessary. In this case, they’re best kept simple.
YAGNI – you won’t need it
It’s hard to write code without envisioning the many alternative ways you might use it in the future.
This causes developers to add additional methods, functions, and constructors that are not needed today but thought they might be needed in the future. This is a bad practice.
Don’t write methods or functions that you think you might need in the future. Doing this is a waste of time, because you generally don’t need it (YAGNI).
TAGRI – they won’t read
When managers ask you to work overtime to write some in-depth documentation, you can use this technical acronym to impress them.
Making redundant documentation for your users can be a real waste of time because the reality is, they won’t read it (TAGRI).
DRY – Don’t Repeat Yourself
Don’t copy and paste code, and don’t create a bunch of functions that essentially do the same thing.
Write code that is concise, reusable, modular, and abstract enough that it can be called from multiple places throughout the program.
Keep your code DRY. Don’t repeat yourself.
Law – write everything twice
Abstractions are often used to implement the DRY principle.
Unfortunately, a poorly implemented abstraction added to a codebase early on can cause serious headaches when changes need to be made in the future.
Some software architects like to WET first, then DRY, and encourage developers to write everything twice until the code base is established. The benefits of using abstraction are obvious.
The SOLID acronym refers to the following five object-oriented software development principles and best practices:
- Single Responsibility Principle
- Open and close principle
- Liskov Substitution Principle
- Interface Segregation Principle
- Dependency Inversion Principle
Applications that enforce these principles will be more reliable and easier to maintain than applications that do not.
ORM – Object Relational Mapping
Mapping object-oriented code in a Java program to tables and records in a database can be difficult.
To alleviate object-relational impedance mismatches, many database-driven applications use ORM tools such as Hibernate, JPA, or Toplink to bridge the gap.
OBOE: closed due to an error
Also known as a fence error, a difference-by-one error occurs when the conditional logic in a loop uses the “less than” operator instead of the “less than or equal to” operator.
This would cause the loop to exit an iteration too early, or leave an iteration prematurely, thus citing an off-by-one error (OBOE).
POC – proof of concept
A POC provides a working piece of software that proves that an idea or a vision is feasible.
A POC only needs to implement happy path programming, it doesn’t need to have a pretty UI. It will not be rolled out to customers.
A POC is only used internally to prove that a given idea or product “works”.
MVP – Minimum Viable Product
In software development, the MVP is not your most valuable player.
The MVP is the minimum viable product that you can ship to your customers in an initial release.
MVP provides only the core functionality that the application needs to satisfy the user’s needs. It also needs to be bug-free and look nice.
The MVP version has a higher standard of quality and functionality than the POC.
POS – point of sale
You may have come across this acronym outside of the technical world.
It has a different meaning for a software developer employed in the retail industry.
Point-of-sale machines are essentially cash registers, although the term applies to any cell phone, mobile device, or embedded device that can process payment for a product.
Acronyms, italics and abbreviations
Hopefully this list of 11 technical acronyms you hear frequently in software development projects will help you better understand the conversations you have with developers and product owners in your daily Scrum and standup meetings.