Hello fellow nixers,
This thread is about having your machine help you remember things throughout your days, to be your companion.
If you’ve been in the “Unix Ricing” world for a while you’ve certainly heard of the hype around knowing how other people workflows look like.
Not so long ago we had a thread regrouping a compilation of workflows. It was quite entertaining.
What some of us tend to forget is that to make a workflow smooth you don’t especially need to know your tools by heart but you have to reach a point where your tools will guide you.
You might argue that as a Unix user you want full power over your machine but this is not what this is about. No one, except the masochist, would want to work on a system by forcing his intentions into it. As a developer, sys-admin, Unix enthusiast, you dream of those days where everything goes smooth, where you’re happy to have chosen Unix because it suits you best.
The smoothness comes from the fact that your environment evolved and morphed to your needs and is now capable of helping you get on track when you get lost.
Enough of the sentimental talk, let’s get into how you reach such state.
Apart from knowing the basics of your system and how to use the programs themselves the biggest part of a enjoyable and sweet workflow is one that can acts as your second memory.
By second memory I mean an extension of your thoughts, thinking, and physical brain memory.
Let’s start with a simple exercise, for those of you that have been on Unix for more than a year. Close your eyes and remember the last time you had to work on a machine that wasn’t yours, what were the things that annoyed you the most?
Was it the window manager itself? Was it that it was missing the tools you usually work with? Was it because it just didn’t seem to be responsive to your needs?
Or was it because you were lost on that system?
The hard truth is that the only reason it was annoying to work on that other machine was because you were lost, it wasn’t your home, you didn’t know how to handle things that weren’t in your mundane daily flow.
What makes a flow so intuitive.
My guess is that it’s all about the way you inserted your thoughts in the environment in the first place. People keep track of things, that’s what information technology is all about.
Let’s list all the places where I keep my memories as a personal example:
- A todo list
I keep a huge todo list in a text file
I use hnb to keep a list of nice commands that I might use later or if I forget them
- Browser Bookmarks/Opened Tabs
My bookmarks are my thoughts of the moment.
- Program Launchers
My program launcher keeps history of the last opened programs.
I personally stopped using those but having a wallpaper with notes of things you might forget is a heavy boost in productivity.
- Shell History/Aliases/Functions
This is where all my life is. I can just browse back in time if I don’t remember the arguments for a certain command, or just alias it and get it over with. Functions are life savers.
- File Manager Bookmarks/Soft Linking
If I have a location on my disk that I cherish, I just add it to my special list, it’s way easier to access this way.
Exercise number two: List the top of your memory-helpers on your current machine. Now think back to that time when you used that foreign machine, if you could have the equivalent of those memory-helpers on that box would you still feel the same way?
No, there’s nothing wrong with having your machine helping you remember things. No, it doesn’t make you machine dependent, on the opposite, it helps considerably. My bet is that you’re already doing all that I mentioned unconsciously. Though it would be a bad idea to start doing that if you haven’t grasp the basics and are heavily reliant on your little fake memory.
The last step is to make those actions concious. If you know that your shell history has helped you why not take it to the next level and have a side program handle that history for you.
Keep notes of all the commands you might forget.
That’s it folks!
Let’s discuss what you use as your memory-extension.
NB: It would also be cool if someone could talk about how this will extend through “The Internet of Things”, and “Wearable Computers”.
link to thread on Nixers.net.
Colin Wight in his podcast Let’s Know Things has an interesting episode about Automation and AI.
He endorses the idea that we as human should see our technology as our creation, not fear it, but instead embrace it.
Embrace it to such extent that we become one with it, that it enables us to combine the best of both the computer world and the human world.
Technology would just be our new way of evolving and dealing with the world around us.
If you want to have a more in depth discussion I'm always available by email or irc.
We can discuss and argue about what you like and dislike, about new ideas to consider, opinions, etc..
If you don't feel like "having a discussion" or are intimidated by emails then you can simply say something small in the comment sections below and/or share it with your friends.