Plug-and-surf is applied to network devices to connect to the Internet. It generally uses DHCP.
In the beginnings of computing technology, the hardware logic was just a collection of building blocks that had to be completely redesigned to accommodate different calculating operations. These changes were usually done by connecting some wires between modules and disconnecting others. The very earliest of mechanical computing devices such as the IBM punchcard accounting, tabulating and interpreting machines were programmed entirely in this manner, by the use of a quick-swap plugboard wired to route signals between configuration sockets.
As general purpose computing devices developed, these connections and disconnections were instead used to specify locations in the system address space where an expansion device should appear, in order for the device to be accessible by the central processing unit. If two or more of the same device were installed in one computer, it would be necessary to assign the second device to a separate, non-overlapping region of the system address space so that both can be accessible at the same time.
Some early microcomputing devices such as the Apple II required the end-user to physically cut some wires and solder others together to make these configuration changes. The changes were intended to be mostly permanent for the life of the hardware.
Over time the need developed for more frequent changes and for easier changes to be done by unskilled computer users. Rather than cutting and soldering connections, the header and jumper was developed. The header consists of two or more vertical pins arranged in an evenly-spaced grid. The jumper is a small conductive strip of metal clipped across the header pins. The conductive jumper strip is commonly encased in a plastic shell to help prevent electrical shorting.
Jumpers have the unfortunate habit of being easy to misplace if not needed, and are difficult to grasp in order to remove them from headers. To help make these changes easier, the DIPswitch was developed, also known as a dual in-line package switch. The DIPswitch has either small rocker or sliding switches enclosed in a plastic shell and usually numbered for easy reference. DIPswitches are particularly useful when a long string of four or more jumpers would be closely packed together, or would be used in combination to configure one device function.
As computing devices spread further out into the general population, there was an ever greater pressure developing to automate this configuration process. One of the first major industry efforts towards self-configuration was done by IBM with the creation of their Personal System/2 line of computers using the Micro Channel Architecture (MCA). This took a giant leap forward, with expansion devices that had absolutely no jumpers or DIPswitches.
However, IBM's first attempt at self-configuration had a few major problems. In an attempt to simplify device setup, all hardware was issued with a driver disk containing both the operating system drivers plus a special file used to auto-configure the hardware to work with the computer. Without this disk the new hardware would be completely useless and the computer would not boot at all until the offending device was removed.
MCA also suffered in that it was a proprietary technology, and the developing PC clone market did not want to pay royalties to IBM in order to use this new technology. The PC clone makers instead developed EISA, an extension to the existing old non-PnP ISA slot standard, and MCA eventually failed in the marketplace.
The problems of requiring jumpers continued on but slowly diminished as more and more devices included extra self-configuration hardware to allow even ISA devices to be self-configuring. These efforts still did not solve the problem of making sure the end-user has the appropriate software driver for the hardware.