In
amateur radio
Amateur radio, also known as ham radio, is the use of the radio frequency spectrum for purposes of non-commercial exchange of messages, wireless experimentation, self-training, private recreation, radiosport, contesting, and emergency communi ...
and
computing
Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes, and development of both hardware and software. Computing has scientific, ...
, a boat anchor or boatanchor is something obsolete, useless, and cumbersome – so-called because metaphorically its only productive use is to be thrown into the water as a boat
mooring
A mooring is any permanent structure to which a vessel may be secured. Examples include quays, wharfs, jetties, piers, anchor buoys, and mooring buoys. A ship is secured to a mooring to forestall free movement of the ship on the water. An ''an ...
. Terms such as
brick, doorstop, and paperweight are similar.
Amateur radio
In
amateur radio
Amateur radio, also known as ham radio, is the use of the radio frequency spectrum for purposes of non-commercial exchange of messages, wireless experimentation, self-training, private recreation, radiosport, contesting, and emergency communi ...
, a ''boat anchor'' or ''boatanchor'' is an old piece of
radio
Radio is the technology of signaling and communicating using radio waves. Radio waves are electromagnetic waves of frequency between 30 hertz (Hz) and 300 gigahertz (GHz). They are generated by an electronic device called a transm ...
equipment. It is usually used in reference to large, heavy radio equipment of earlier decades that used tubes. In this context ''boat anchors'' are often prized by their owners and their strengths (e.g. immunity to
EMP) emphasised, even if newer equipment is more capable.
An early use of the term appeared in a 1956 issue of ''
CQ Amateur Radio
''CQ Amateur Radio'' (also known simply as ''CQ'' or ''CQ magazine'', and formerly as ''CQ: The Radio Amateur's Journal'') is a magazine for amateur radio enthusiasts first published in 1945. The English language edition is read worldwide; Spani ...
Magazine''. The magazine published a letter from a reader seeking "schematics or conversion data" for a war surplus
Wireless Set No. 19 MK II
transceiver
In radio communication, a transceiver is an electronic device which is a combination of a radio ''trans''mitter and a re''ceiver'', hence the name. It can both transmit and receive radio waves using an antenna, for communication purposes. The ...
in order to modify it for use on the amateur bands. The editor added this reply:
The editor's use of the term generated some reader interest, and in February 1957, CQ published a follow-up story that included photos.
Computers
The metaphor transfers directly from old radios to old computers. It also has been extended to refer to relic software.
Hardware
Early
computers were physically large and heavy devices. As computers became more compact, the term ''boat anchor'' became popular among users to signify that the earlier, larger computer gear was obsolete, no longer useful, or even
damaged
Damage is any change in a thing, often a physical object, that degrades it away from its initial state. It can broadly be defined as "changes introduced into a system that adversely affect its current or future performance".Farrar, C.R., Sohn, H. ...
.
Software
The term ''boat anchor'' has been extended to
software
Software is a set of computer programs and associated software documentation, documentation and data (computing), data. This is in contrast to Computer hardware, hardware, from which the system is built and which actually performs the work.
...
codeboat anchor - NetLingo The Internet Dictionary
/ref> that is left in a system's codebase
In software development, a codebase (or code base) is a collection of source code used to build a particular software system, application, or software component. Typically, a codebase includes only human-written source code files; thus, a codeba ...
, typically in case it is needed later. This is an example of an anti-pattern
An anti-pattern in software engineering, project management, and business processes is a common response to a recurring problem that is usually ineffective and risks being highly counterproductive. The term, coined in 1995 by computer programmer An ...
and therefore can cause many problems for people attempting to maintain the program that contains the obsolete code. The key problem comes from the fact that programmers will have a hard time differentiating between obsolete code which doesn't do anything and working code which does. For example, a programmer may be looking into a bug with the program's input handling system, so they search through the code looking for code that links into the input handling API. Obviously if the programmer comes across obsolete input handling code they may well start editing and debugging it, wasting valuable time before they realise that the code that they're working with is never executed and therefore not part of the problem they're trying to solve. Other problems include longer compile times and the risk that programmers may accidentally link working code into the defunct code, inadvertently resurrecting it. A recommended solution for dealing with boat anchors in source code is to remove them from the code base and to place them in a separate location so that they can be referred to if necessary, but will not be compiled or be mistaken as "working" code. (For example, deleting them, knowing they are stored in the project's source control
In software engineering, version control (also known as revision control, source control, or source code management) is a class of systems responsible for managing changes to computer programs, documents, large web sites, or other collections o ...
)
See also
*Anti-pattern
An anti-pattern in software engineering, project management, and business processes is a common response to a recurring problem that is usually ineffective and risks being highly counterproductive. The term, coined in 1995 by computer programmer An ...
*Vintage amateur radio
Vintage amateur radio is a subset of amateur radio hobby where enthusiasts collect, restore, preserve, build, and operate amateur radio equipment from bygone years, such as those using vacuum tube technology. Popular modes of operation include spe ...
*Legacy system
In computing, a legacy system is an old method, technology, computer system, or application program, "of, relating to, or being a previous or outdated computer system", yet still in use. Often referencing a system as "legacy" means that it paved ...
References
{{reflist
External links
Origin of Ham Speak
BoatAnchor Manual Archive
Computer jargon
Amateur radio
Anti-patterns