I got a funny one this afternoon :-) I was showing to one of my friends the amazing (!), 400 lines long PHP script, that I wrote to help me manage, and keep track of, the flat renting adverts on craigslist and gumtree. The program downloads the relevant datasets from the corresponding websites, extracts the information that I am interested in (essentially just parsing the HTML file -- as a text file -- not as an HTML/XML document), feeds a local
SQLite database JSON document with newly created adverts, add some more metadata, run some home-grown algorithms (to decide how interesting the advert is), and then display short descriptions in a particular order (essentially keeps the most interesting one on top either because of the price, proximity to my university, etc...). The display is done directly on an xterm screen (with some control sequences sent to the terminal you can make the display quite user friendly) and from another xterm, I can order the program to "open" a particular item by stating its uid and the corresponding webpage opens. After which I can decide to discard the advert, or to promote it as an open thread... Of course the underlying data structures that I use are independent of which webpages (which company) I get data from, and it is possible to add or remove "data sources" at will, without changing the program. All perfect :-)
I decided to show the program to my friend (I was sat in her office when the discussion happened) and when she saw the terminal screen she said, with an once of disappointment in her voice, "Oh, you made it a desktop application !". I didn't get it at first, but then I suddenly realised that to her, "programs" on the computer are either "desktop applications" (like Microsoft Words) or "online applications" (like Facebook). I decided that the world would be a better place by spending time explaining to her that computers came along before graphical user interfaces and that there is (still) a lot of advantages working directly with the shell (after which I would have explained the difference between CLI tools and desktop graphical UI programs), but she quickly threw at me "But Pascal we moved away from that (eg the terminal), there must be a reason (^.^)", with that amazingly cute face that only the most beautiful women can display...
What could I possibly reply to that ? I was under her charm, my mind wasn't working anymore... So let my script be known as a desktop app for ever :-)