Serial ports seems to be part of the past, but surely is one of the most straight ways to communicate a linux box with the external world.
Recently I need to use a single button which a user could push and trigger some event, in my case a bash script to scan a document.
I wanted to do a "headeless" print and scan box (of course running Linux), where a user could just print documents (through samba+cups) and scan documents, then the scanned documents are available to local...