Definition - What does Hack mean?
Hack, in the context of development, has two meanings:
- A hack is an inelegant solution to a problem. In this sense, a hack gets the job done but in an inefficient, un-optimal or ugly way.
- To hack can also mean to program with exceptional skill. In this sense, a hacker produces code that not only accomplishes the task, but does so in an efficient and unique manner.
Techopedia explains Hack
Hack can be a tough term to understand for non-developers. In addition to the two meanings in programming, the common understanding of the term relates to computer security. In this sense, a hacker is somebody who breaks into computer systems with malicious intent. Though, even this definition is incorrect as it ignores white hat hackers and those who aren't malicious.
It's probably safe to say that within the development community there is a feeling that non-coders don't fully appreciate or respect great code. The Dilbertesqe "pointy-haired boss" views code production like widgets being produced at a factory, where in reality, there is a huge difference in what gets put out by a great programmer compared to a poor one. The ones with skill, the true hackers, go far beyond and understand the intricacies of a system. In doing so, there are similarities between a hacker and an artist in that it takes skill, determination and hard work to produce something that he/she feels is truly great.