I've been absorbed by the use of computers for a very long time.
My first experience with programming was way back in the stone ages of high school. Then, the bleeding edge of computer access was using a teletype console which punched paper-tape and then sent the result through a 300 baud acoustical modem which was dialed in to a timeshare system several cities away. Within that environment, I learned several things... how to program in basic and Fortran, how to generate concise output, and that I couldn't type worth a damn.
One discovers very quickly the problems you can have when an undetected mistyped key goes onto the tape. Fortunately, backspace characters were functional, and the tape stream could be corrected sufficiently with them when creating the tape. Unfortunately, only two tty terminals were available and they were frequently in use. Should you realize your problem once giving up the seat, you may have had a long wait before a seat opened so that you could start from scratch again.
My second experience with computers was with card readers and batch runs. Frequently you would spy one student or a dozen students carrying around a deck of punch cards, or even a box full of blank and punched cards. While this was much better than a one shot stream of paper-tape, often you could invalidate a complete set of cards by changing something important that you hadn't considered originally. Fortunately, it was relatively easy to get a seat at a card punching terminal. Unfortunately, I once mis-counted my columns and so invalidated several days of work because Fortran has rules about indenting positions.
When all was finally in order, you took your deck of punch cards to the window and a bored operator passed them through the reader. In return you got a batch number and waited for up to an hour, depending on how busy the computer was, before your number came up as done and you could view the results. If there were any problems with that, you would have to figure out your mistake and punch more cards, and visit the window, and wait.
A few years after that, the big PC explosion started. A bunch of tiny, home-built kits came out, then PETs, and Ataris, and eventually Apple ][s. That's when I got on the bandwagon. Finally a machine for me. Two thousand dollars, and you loaded your programs using audio tape. The machine was more fun that the video games of the day.
Then floppy drives came out for the personal computer. OMG! What can I say... this was a miracle of technology. With that one upgrade, you could read and write your programs and data instantly. Accessible storage, shared programs, real games, real work. Suddenly, my Apple Computer was my tool, an outlet yet not just toy.
Since that time, I have experienced a wide range of computer offerings... Apple ][e, Apple Lisa, Macintosh (original), Amiga, 8086, x86, Windows DOS, W95, W98, W-XP, Linux 0.99, Slackware, Red Hat, Fedora, SUSE, Ubuntu, and the MacBook. Interestingly, the list transitions from dedicated hardware to the operating systems, because often it doesn't matter what the core machine is anymore.
I may be a software developer, but having experienced the nuts and bolts of it, I still think about the hardware. Even now, the way we interact with computers are limited. Channelled through keyboards and finger gestures; through light and sound we observe the results of those physical actions.
Someday, someone will look back on today's technology and consider it cumbersome and difficult. How much better will technology be? How ubiquitous? Will we need keyboards or even words? Will we use video monitors or even our eyes? Can additional senses be utilized to complete the communication cycle?
Technology is interesting now and can only have more surprising turns tomorrow. I can only stand and watch in awe.
Stephen Opal