Created: 2023.07.07
A hack I would define as:
or
or
or
or
The reasons get less and less justifiable, and on our team less acceptable, as you go down the list!
The polyfills for JavaScript are the 1st category. Emergency hacks for customers are in the 2nd. But on our team we try very hard to not LEAVE them that way. The 3rd and further down are almost never acceptable on our team other than for 'proof of concept' though arguably, those fall into the 2nd, not the ones below. OCCASSIONALLY, for fun we will do the 3rd - but very rarely, and then they get fixed. Usually we just 'propose' the 3rd. 'propose' in quotes meaning it is tongue in cheek with no intention of really being done that way. Meaning we feel the ability to think of the fun hack is 90% of the emotional value, and saves a lot of time spending the 99% of the time 'doing' it.
In Alberta, getting away from computers, it is often proudly called a 'red neck hack'