Some actionable advice: Keep written notes about people (don’t let them know about that). For every person, create a file that will contain their name, e-mail, web page, facebook link, etc., and the information about their hobbies, what you did together, whom they know, etc. Plus a photo.
This will come very useful if you haven’t been in contact with the person for years, and want to reconnect. (Read the whole file before you call them, and read it again before you meet them.) Bonus points if you can make the information searchable, so you can ask queries like “Who can speak Japanese?” or “Who can program in Ruby?”.
This may feel a bit creepy, but many companies and entrepreneurs do something similar, and it brings them profit. And the people on the other side like it (at least if they don’t suspect you to use a system for this). Simply think about your hard disk as your extended memory. There would be nothing wrong or creepy if you simply remembered all this stuff; and there are people with better memory who would.
Maybe make some schedule to reconnect with each person once in a few years, so they don’t forget you completely. This also gives you an opportunity to update the info.
If you start doing it while young, your high-school and university classmates will already make a decent database. Then add your colleagues. You will appreciate it ten years later, when you would naturally forget most of them.
When you have a decent database, you can provide useful social service by connecting people. -- Your friend X asks you: “Do you know something who can program in Ruby?” “Uhm, not sure, but let me make a note and I’ll think about it.” Go home, look at the database. Find Y. Ask Y whether it is okay to give their contact to someone interested in Ruby. Give X contact to Y. At this moment, your friend X owes you a favor, and if X and Y do some successful business, also Y owes you a favor. The cost of you is virtually zero; apart from costs of maintaining the database, which you would do anyway.
An important note is that of course there is a huge difference between close friends and random acquaintances, but both can be useful in some situations, so you want to keep a database for both. Don’t be selective. If your database has too much people, think about better navigation, but don’t remove items.
I’m inclined to ask: Are there ready-made software solutions for this or should I roll my own in Python or some office program? If it wasn’t for the secretive factor I’d write a simple program to put on my github and show off programming skills.
I don’t know. But if I really did it (instead of just talking that this is the wise thing to do), I would probably use some offline wiki software. Preferably open source. Or at least something I can easily extract data from if I change my mind later.
I would use something like wiki—nodes connected by hyperlinks—because I tried this in the past with hierarchical structure, and it didn’t work well. Sometimes a person is a member of multiple groups, which makes classification difficult. Or if you have a few dozen people in the database, it becomes difficult to navigate (which in turn becomes a trivial inconvenience for adding more people, which defeats the whole purpose).
But if every person (important or unimportant) has their own node, and you also create nodes for groups (e.g. former high school classmates, former colleagues from company X, rationalists,...), you can find anyone with two clicks: click on the category, click on the name. Also the hyperlinks would be useful to describe how people are connected with each other. It would be also nice to have automatic collections of nodes that have some atrribute (e.g. can program in Ruby); but you can manually add the links in both directions.
A few years ago I looked at some existing software, a lot of it was nice, but missed a feature or two I considered important. (For example, didn’t support Unicode, or required web server, or just contained too many bugs.) In hindsight, if I would just use one of them, for example the one that didn’t support Unicode, it would still be better than not having any.
Writing your own program… uhm, consider planning fallacy. Is this the best way to use your time? And by the way, if you do something like that, make it a general-purpose offline Unicode wiki-like editor, so that people can also use it for many other things.
Some actionable advice: Keep written notes about people (don’t let them know about that). For every person, create a file that will contain their name, e-mail, web page, facebook link, etc., and the information about their hobbies, what you did together, whom they know, etc. Plus a photo.
This will come very useful if you haven’t been in contact with the person for years, and want to reconnect. (Read the whole file before you call them, and read it again before you meet them.) Bonus points if you can make the information searchable, so you can ask queries like “Who can speak Japanese?” or “Who can program in Ruby?”.
This may feel a bit creepy, but many companies and entrepreneurs do something similar, and it brings them profit. And the people on the other side like it (at least if they don’t suspect you to use a system for this). Simply think about your hard disk as your extended memory. There would be nothing wrong or creepy if you simply remembered all this stuff; and there are people with better memory who would.
Maybe make some schedule to reconnect with each person once in a few years, so they don’t forget you completely. This also gives you an opportunity to update the info.
If you start doing it while young, your high-school and university classmates will already make a decent database. Then add your colleagues. You will appreciate it ten years later, when you would naturally forget most of them.
When you have a decent database, you can provide useful social service by connecting people. -- Your friend X asks you: “Do you know something who can program in Ruby?” “Uhm, not sure, but let me make a note and I’ll think about it.” Go home, look at the database. Find Y. Ask Y whether it is okay to give their contact to someone interested in Ruby. Give X contact to Y. At this moment, your friend X owes you a favor, and if X and Y do some successful business, also Y owes you a favor. The cost of you is virtually zero; apart from costs of maintaining the database, which you would do anyway.
An important note is that of course there is a huge difference between close friends and random acquaintances, but both can be useful in some situations, so you want to keep a database for both. Don’t be selective. If your database has too much people, think about better navigation, but don’t remove items.
I’m inclined to ask: Are there ready-made software solutions for this or should I roll my own in Python or some office program? If it wasn’t for the secretive factor I’d write a simple program to put on my github and show off programming skills.
I don’t know. But if I really did it (instead of just talking that this is the wise thing to do), I would probably use some offline wiki software. Preferably open source. Or at least something I can easily extract data from if I change my mind later.
I would use something like wiki—nodes connected by hyperlinks—because I tried this in the past with hierarchical structure, and it didn’t work well. Sometimes a person is a member of multiple groups, which makes classification difficult. Or if you have a few dozen people in the database, it becomes difficult to navigate (which in turn becomes a trivial inconvenience for adding more people, which defeats the whole purpose).
But if every person (important or unimportant) has their own node, and you also create nodes for groups (e.g. former high school classmates, former colleagues from company X, rationalists,...), you can find anyone with two clicks: click on the category, click on the name. Also the hyperlinks would be useful to describe how people are connected with each other. It would be also nice to have automatic collections of nodes that have some atrribute (e.g. can program in Ruby); but you can manually add the links in both directions.
A few years ago I looked at some existing software, a lot of it was nice, but missed a feature or two I considered important. (For example, didn’t support Unicode, or required web server, or just contained too many bugs.) In hindsight, if I would just use one of them, for example the one that didn’t support Unicode, it would still be better than not having any.
Writing your own program… uhm, consider planning fallacy. Is this the best way to use your time? And by the way, if you do something like that, make it a general-purpose offline Unicode wiki-like editor, so that people can also use it for many other things.
ISTR there’s something in the Evernote family that does this.