Published on November 28th, 2022 📆 | 5146 Views ⚑
011 technology acronyms software developers need to know
If you’re a junior developer on your first project, you’ll likely encounter a variety of technology acronyms, italicizations and abbreviations you’ve never heard before.
Not knowing if the confusing term you just heard is something everyone’s expected to know can be intimidating. Furthermore, it can be embarrassing asking for clarification on what a software abbreviation or technical acronym means.
Software technology acronyms
To help alleviate some embarrassment on your first software development project, we will explain the meaning of the following technical acronyms:
- KISS
- YAGNI
- TAGRI
- DRY
- WET
- POC
- MVP
- ORM
- OBOE
- POS
- SOLID
KISS – Keep it simple, stupid
This technology acronym actually means ‘keep it simple, stupid.’
Don’t worry, the term will be said in jest. Despite the use of the word ‘stupid’, this programming acronym is not intended as an insult.
Inexperienced developers will often overdesign a system and deliver an increment of work that is far more complicated than it needs to be. In such cases, it would be better for them to keep it simple.
YAGNI – You Ain’t Gonna Need It
It’s difficult to write code and not envision multiple, optional, ways that code might be used in the future.
This then leads the developer to add additional methods, functions and constructors that aren’t required today, but thought to possibly be needed in the future. That’s a bad practice.
Don’t write methods or functions you think you might need in the future. Doing so is a waste of time because more often that not, you ain’t gonna need it (YAGNI).
TAGRI – They Ain’t Gonna Read It
When the manager asks you to work some overtime to write some in depth documentation, you can hit them with this technical acronym.
The production of superfluous documentation for your users can be a genuine waste of time, because the reality is, they ain’t gonna read it (TAGRI).
DRY – Don’t Repeat Yourself
Don’t copy and paste code, and don’t create a bunch of functions that do essentially the same thing.
Write code that is concise, reusable, modular and abstract enough that it can be called in multiple places throughout your program.
Keep your code DRY. Don’t repeat yourself.
WET – Write Everything Twice
Abstraction is often used to implement the DRY principle.
Unfortunately, poorly implemented abstractions added early into the codebase can cause serious headaches when changes need to be made in the future.
Some software architects like to be WET before they are DRY, encouraging developers to write everything twice until the codebase becomes established, and the benefit of using abstractions is completely clear.
SOLID
The SOLID acronym refers to the following five, object-oriented software development principles and best practices:
- Single-responsibility principle
- Open-closed principle
- Liskov substitution principle
- Interface segregation principle
- Dependency inversion principle
Applications that enforce these principles will be more reliable and more easily maintained than ones that don’t.
ORM – Object Relational Mapping
It can be difficult to map object-oriented code in a Java program to tables and records in a database.
To alleviate the object-relational impedance mismatch, many database driven applications use an ORM tool like Hibernate, JPA or Toplink to bridge the gap.
OBOE: Off by one error
Also known as a fencepost error, an off-by-one-error will occur when conditional logic within a loop uses a ‘less-than’ operator rather than a ‘less-than-and-equal-to’ operator.
This will cause a loop to either exit one iteration too early, or leave one iteration too soon, thus the reference to the off-by-one-error (OBOE).
POC – Proof of Concept
A POC provides a working piece of software that proves an idea or a vision is feasible.
A POC only needs to implement happy-path programming, it does not need to have a polished UI. It won’t be launched at customers.
A POC is just used internally to prove that a given idea or product is ‘doable.’
MVP – Minimal Viable Product
In software development, an MVP is not your most valuable player.
MVP is the minimal viable product you could deliver to customers in an initial release.
The MVP provides only the core features an application needs to satisfy user needs. It also needs to be bug free and look polished.
An MVP release has a much higher quality and functionality standard than a POC.
POS – Point of Sale
You’ve likely run into this acronym outside of the technical world.
It has a different meaning for software developers employed in the retail industry.
Point of sale machines are essentially cash registers, although the term can apply to any cell phone, mobile or embedded device that can handle product payments.
Acronyms, italicizations and abbreviations
Hopefully this list of 11 technology acronyms commonly heard on software development projects will help you better understand the conversations you have with developers and product owners in your daily scrums and standup meetings.
Gloss