How to make friends as an adult

I’ve never been the best at making friends, even as a kid or college student when I was around people all the time and ran into people spontaneously and regularly. I was always the perosn on the fringe of several friend groups, the person who knew almost everyone but had few true friends, people I would hang out with regularly outside of school and go spend the night with and invite to birthday parties. I had very few of those friends before high school, and most of my high school friends were older than me. No wonder I started taking college classes early.

After high school and college, the spontaneous and regular interactions happen far less often. Unless you’re in some kind of program that keeps its communities in tight-knit groups, making friends after school is a challenge.

I’m not alone in feeling this way, something I discovered when asking Twitter and Facebook how to make friends as an adult. One of the most popular responses (even though I explicitly asked for places outside of work — after all, I work remotely and don’t have many coworkers to speak of) was through work. This doesn’t surprise me. It’s a similar situation to being in school: you’re around a lot of the same people for eight hours a day with opportunities to chat and get to know each other.

Some of the other responses, for the curious:

  • Meetups for whatever you’re interested in. Some of the things suggested to me include board game groups, writing groups, book clubs, runs coordinated by running stores… and the list goes on.
  • NaNoWriMo events (so basically how I’ve met almost every current friend of mine)
  • Church. Doesn’t work so well for me since I’m not religious, but it definitely fits the regular interaction bill for those who are.
  • Volunteering. I enjoy volunteering at events, mostly because it means people can approach me instead of the other way around. And I can usually give them answers!
  • Going to concerts and other performances. I’ve seen some of the same people at shows and am still in touch with a few show folks.
  • Community theatre and improv. I’ve been wanting to take an improv class for awhile. This may have to happen.

One thing I’m surprised weren’t mentioned, not even once: conventions and conferences. I suppose this falls under meetups, but in my experience conventions are a different beast from a regular one-evening meetup.

My problem isn’t with meeting people. Once I convince myself to get dressed and leave the house (a challenge during the winter months like now) I can go to meetups and board game groups and NaNoWriMo events and volunteer at shindigs all I want. I can make casual conversation and only come off as a partial weirdo.

My problem is with reaching out to those people and making other plans and starting to extend our friendship. Heck, I still find it hard to initiate plans with existing friends, and I’ve already gone through the effort to become good frinds with them. This is more anxiety at work than anything else in situations like these.

So once I’ve met those people… then what?


50k Day: how I did it

I completed a 50,000 word day on November first for each of the past three years. I fully recognize the ridiculousness of this feat and have wondered how people have done it in the past before my overachieving days, so let’s talk about how I did it.

Before beginning: I know several other people who have done a 50k day in the past, and one who went beyond this crazy to do a 75k day. At least one has written up their tips on completing the challenge. Besides the sitting down and writing part, all of our approaches are different. What works for me might not work for them (or you), and vice versa.

So without further ado…

How to write a novel in a day

Plan your novel beforehand. Or don’t. It’s up to you, really. Just be okay if that outline you painstakingly thought through weeks in advance gets tossed out the window at 5am because your main character decided to go on a killing spree. Not that this has happened before or anything. It is a very good idea to have at least a vague premise unless you’re REALLY good at making stuff up as you go along. And make sure it’s something you’re excited about writing. You know how you find yourself hating what you’re writing and the world sucks and why didn’t you just write 2k for day one? Well, imagine that feeling at 6am when you’ve barely slept for the last day. It sucks. But just like the week two blues, you can get past the 6am blues.

Take care of important tasks due during the first week of NaNo before November gets here. Chances are good you have some bill due at the beginning of the month. For me, that’s rent. Send out those bills before November first so you don’t realize they’re late on the second. Especially if, like 2014, the second is on a Sunday.

Tell everyone you know. Well, tell everyone you’re normally in contact with that you have some big plans for that day and seriously, don’t contact you unless the house is on fire or something equally in need of your intervention. If you normally work on the day you’re attempting this, I highly recommend taking a day off from work if you’d otherwise be working because you need all the time you can get.

Take a nap the evening before. This is where I usually fail miserably thanks to putting off everything until the last minute. But if you can manage it, finish all your prep before All NaNo’s Eve, then do whatever you need to do to fall asleep until around 11pm.

Sleep–but not for long. Our bodies need sleep (unless you’re already a cyborg, in which case TELL ME YOUR SECRET). But let’s be real here, you’ll probably need almost the entire 24 hours to write that 50k. Sleeping takes up a lot of time. My recommendation: catnaps. Set a timer and sleep for 15 or so minutes at a time. It won’t be as refreshing as a full night’s sleep (especially if you didn’t follow the tip about the evening nap), but it might be enough until you get that second wind.

Drink fluids that aren’t caffeinated. Caffeine is great, but too much caffeine isn’t. Water is a good thing to have too. I like to alternate tea with water or hot chocolate to hit all these needs. If you do go with coffee or soda, watch the intake.

Eat. And not just candy or chips or whatever you can get your hands on. You’re staying up for at least 24 hours straight, and your body needs long-lasting nourishment to do that without keeling over. I wake up starving every morning, and the only thing that keeps my stomach from eating itself in the middle of the night is that part where I’m sleeping. As for 50k day, I make a big pot of soup a day or two before and eat off it throughout the day (after breakfast, of course). Be prepared to eat at unusual times, like those times just before dawn when you might otherwise be sleeping.

Write consistently. That’s the only way you’re going to get this done, after all. But considering most folks need to write for almost all the 24 hours, it’s a good idea to have a consistent writing schedule and set goals for yourself. I wrote for 45 minutes, then took a 15-minute brain break. You can do this or a 15/5 or 10/5 or whatever you want as long as you sit down and write consistently. I used my fifteen minute breaks for Internet and brain and stretch and food breaks, then watched the minutes pass and thought “Hocrap, better get back into writing mode” as the top of the hour grew closer.

Pay attention to your body. This includes your wrists, your elbows, and posture. Make sure you’re writing in a comfortable and ergonomic writing environment. That means shoulders relaxed, 90-degree angle at your elbow, sitting up straight. Most of my pain didn’t come from my wrists (though there was some–the wrist braces helped there) but from my shoulders and back because my posture is atrocious. When something starts hurting, stop. That pain’s there for a reason.

Reward yourself. Who doesn’t like rewards? You can do mini-rewards or a big one at the end. Last year I had five bonbons left and ate one for every 10,000 words. My first attempt, I had a bottle of wine ready for the end. Do whatever works for you.

Stay strong. Never give up. Be awesome. No matter how much you write, you’re doing something amazing. Own it. Then when the calendar turns to November second, go to sleep, wake up later, and do something else awesome.


tweetwc knows how many words you’ve tweeted

I passed 50,000 tweets recently. Because my life really is NaNoWriMo, I found myself wondering how many words these 50,000 tweets make. It turns out the Twitter archive gives you a CSV (comma separated values) file, something I can work with easily.

So I got to work writing a script that would do just this. The result is available on Github, and any comments/feedback are welcome. The script is licensed under the MIT license, so use it for whatever you want–just give credit and don’t blame me/sue me if things go wrong.

The tweetwc script looks at each row in your CSV file and first checks to see if the tweet in that row is a retweet. This is done by looking at the CSV file’s columns that are only filled if the tweet in question is a retweet. If the tweet is a retweet, the script skips that row and keeps going. But if the tweet isn’t a retweet, then the contents of the tweet are added to a separate plaintext file, along with a linebreak for ease of reading.

Once the script has executed, you can then count the words of this plaintext file or do other exciting things.

Of course, there are a few things I’d like to change about this script. tweetwc doesn’t currently count the words for you, instead relying on an external word counter of your choice to do so. I’d like to fix this. Also, you currently have to create the text file to write to before running the script. This should be an easy improvement. The big improvement is that the script doesn’t take into account old-school RTs and counts the full text of the tweet as part of your tweet word count.

What you need

Getting started with tweetwc is easy. You just need a few things:

* Your Twitter archive. You can request this from your Twitter profile. Unzip it and save the files somewhere you can remember.
* Python 2.7 (this may work with Python 3, but I haven’t confirmed.) Chances are good you already have Python on your computer if you use Linux or Mac OSX. But if you don’t, or if you run Windows, follow Zed Shaw’s instructions on installing Python.
* A terminal that accepts command line prompts. If you’re a Mac or Linux user, you probably already have one.
* a method of counting words. This may be the wc command or a word processor (like LibreOffice of MS Office) that can count words.
* The code itself. Get the source on Github.

Got those? Let’s get started.

1. Unzip your Twitter archive.
If you haven’t already, use winrar, unzip, or whatever you use to unzip files. Once you have, find your Twitter archive. The directory structure will look like this:

—a few files like index.html and the file we want, tweets.csv
—folders like css, data, img, js, and lib. Look around them if you like, but we don’t need them here.

If you like, you can open index.html in a browser for a pretty version of your archive. Today we’re using a different version of the archive. Find the file named tweets.csv. Make a note of what folder it’s in.

Example: my tweets.csv file is stored in /home/sushi/Backup/tweets/tweets.csv

2. Edit the path to your tweets.csv file.
Remember how you found the path to your tweets.csv file? Now open the file in a text editor of your choice and change the path to the file MY_FILE will refer to.

3. Open a terminal and run that code
Got a terminal open? Now go to the directory with your code with cd /path/to/that/directory. Enter python yourtweetfile.txt. The yourtweetfile.txt file is where this script will write your tweets. You can then use a word counter to count these words.

And you’re done! Questions? Let me know.


Import your LiveJournal entries into private WordPress posts

A few months ago I imported every single blog I’ve ever written into this site, but since all 2000+ posts are private you wouldn’t know it if I didn’t tell you. Turning LiveJournal posts into private WordPress posts takes a little more effort than retaining the privacy level, but if you want to hide your young days or you’re running for public office it’s worth the effort.

There are lots of ways to do this, but some of the information I found was several years old, depended on software that didn’t run on Linux, or didn’t even work. Here’s what worked for me.

(By the way, if you do want to import your LJ posts and keep the privacy level what it is, the LJ to WordPress plugin by itself can help you there.)

1. Create an account at the hosted site

Go to, the WordPress hosted version, and create an account if you don’t already have one. Then create a site. Name it whatever you want. You may want to mark it as private so no one can see or search for the site.

Import your entries to the site from LiveJournal

Fortunately the hosted dashboard for individual sites looks a lot like the self-hosted one. So go to the dashboard for you individual site. It will look like Then visit Import from the Tools menu.

The Import page will ask for your LJ username and password. This is just to import all your posts. You can change your LJ password to a temporary one and change it again afterward if you’re concerned about security. It will also ask you for a password to enter for any protected entries. You can do this if you want, but if you’re going to edit all these posts to be completely private, then don’t worry too much about this–another fix is coming.

Then wait. Depending on how many posts and comments you have this may take awhile. You can check that page and see how the import is going, but check back later that day or even the next day if you have a lot of content.

Export your entries from the site

Now visit Export from the Tools menu and select Export, then All Content, and save the resulting xml file to your computer.

By the way, you’re done with the site, so delete the one you created if you like.

Edit the xml file and change the privacy to private

Open the xml file in a text editor and change whatever is between to private. So if that word reads public or protected change it to private. You can do a find and replace to take care of it all at once.

Find: public
Replace: private

Find: protected
Replace: private

You can also change the category the entries went in and just about everything else here. This is particularly handy if you want to label those posts as being from a different source. As an example, mine is Archive.

Warning: Depending on how many posts and comments you have, this file could be very large. Mine contained 2000+ posts and 2000+ comments and was 12MB. I don’t recommend using Notepad for this.

Upload the xml file to your self-hosted WordPress site

Now comes the fun part! Log into your self-hosted WordPress site and go to Import in the Tools menu. Select your xml file and import away. WordPress recently turned all their importers, including the WordPress one, into separate plugins, so install the WordPress plugin and upload the file. You’ll be asked to map post authors in the import to existing or new users in your WordPress site. Choose what you like and import away!

Troubleshooting and Other Issues

* If you run across an error like “Fatal error: Allowed memory size exhausted”, the PHP memory limit isn’t high enough to import your content. You can modify this in php.ini if you control that file. The WordPress page on importing content explains more. If you’re on a shared hosting site, you may want to write to them and ask how to perform the import safely. I asked to temporarily increase the limit, which ensured a successful import. Or you could split the file wtih xml_split if you’re technically adept, but I wasn’t very successful with this.

* Voice posts and polls do not import. This is because WordPress doesn’t support these post types. You may want to enter these manually if you have these in your posts. I still haven’t done this, but my LJ posts are tagged well enough that I can find all of these and do so.

* Some comments may get misattributed or attached to the wrong post. About 60 of my comments (out of over 2000) did. That’s not many considering how many comments got imported, but it’s something you may want to correct if you encounter this issue. These comments will show up as comments awaiting approval.

* Icons do not get imported. I haven’t figured out a workaround for this yet. If you do, let me know and I’ll add it.



How to Google Stalk Someone

You’re searching for someone: an old flame, your kindergarten best friend, that guy who gave you his phone number last night at the rave. You put their name in the search engine, and BAM! results. There’s one problem. How do you know which ones are relevant to the person in your life, especially if you’re looking for, say, John Smith?

1. For obvious reasons, it’s much easier if you know something about the person you’re searching for. If you know a nickname that this person uses, searching for the nickname along with the name you know them as can help speed things along. If you know something that the person’s interested in, trying searching for that interest along with that person’s name.

2. Don’t be too quick to eliminate a result just because it doesn’t sound like something the person would do. If I weren’t unique on Google, I’m sure people would have done this based on my fields of study. No one expects the mathematical inquisition.

3. If you’re looking for social profiles of this person, try Pipl, which shows those results first. Facebook is another good place to search, as the real name is the natural thing to search. If you have this person’s email address, search for it, whether on Google, Pipl, or Facebook. If little comes up, search for the email without–just the username. These usernames usually aren’t unique, but sometimes you can find a lot.

4. Check out the image results for images of people. If any of them look like the person you’re looking for, check out the site the photo came from. More clues could be hiding.

5. This should have been the first tip, but use quotes. Search for “John Smith” instead of John Smith. This reduces the number of total results significantly.

6. Remember that not everyone is as savvy with social media as you probably are. If you are tracking down a long-lost friend, it’s not likely that you’ll find an email address for them if you haven’t already found an online profile of some sort, but you may find out what they’re up to.

Happy searching, and make sure to use these skills for the power of good.