My back-to-school, beginning of college story

Trigger warning: This post references emotional and physical abuse.

It’s the back-to-school time of year, which always seems to arrive excessively early. Living in the colder Pacific Northwest, summer feels like it’s only getting started by mid-July when big box stores signal the return of fall by with campaigns selling backpacks, pens, notebooks, shower caddys, extra-long twin sheet sets, and all the other ephemera required of returning to school. And as we march towards the September, it’s impossible to escape stories in the news about the profound and emotional act of leaving one’s child at university for the first time.

I find myself stuck in the middle of these two audiences. Sherri and I don’t have children together of any age, so we aren’t buying school supplies for a return to the classroom, and we aren’t escorting any nearly-grown children at college. Reminders of this fact often make me sad, even if for brief moments until I am distracted by the many duties of everyday life. While I hope we will find a way to bring meaning and guidance to a child’s life, I don’t know for certain that we will have any back-to-school experiences beyond our own.

Stories about leaving for college can trigger a melancholy nostalgia for another reason: they remind me of the violent and abrupt way I left home many years ago.

I applied to three universities and was accepted to two: UC Davis and UC Berkeley. I was proud to have been accepted at UC Berkeley and it probably would have been my first choice. But like most decisions for which my father was gatekeeper, Davis was really the only viable selection. They offered me a full Regents Scholarship, which offset numerous parental threats around not supporting me financially, and the campus was located close enough to home that my father felt comfortable sending me there. The plan might even have been for me to commute to Davis until I won the scholarship and was accepted into the residential Integrated Studies program. In any case, during the summer of 1997 I was working at Radio Shack full time. With wages from that job, I did college back to school shopping on my own.

That last summer at home I led a largely invisible existence, punctuated by blinding visibility on the radar of my father’s temper. These flashes happened with increasing frequency as the date of my departure from the household grew nearer. Was my father responding to an increasing display of independence from me, or was he responding to the inevitable loss of control? Earlier in the summer we had a huge argument about the use of the new family computer. The details of the fight aren’t important, but the results were devastating to me. My punishment was handed down not in person, but in writing. Somewhere among my things, I still have the hand-written noted my father taped to the kitchen cabinets outlining my loss of privileges, which included a prohibition against using my car until I repaid my half of its purchase cost, and a resolute recension of any support for college. The note said something about “good luck keeping your job without a way to get there” and ended with “good luck asshole.”

I took the note down and walked back to my room. My mind seared with anger and desperation. I resolved to leave home right then. I packed a bag and climbed out my kitchen window.

A well-throughout plan I did not have. Rather, I had as good as a plan as 17-year old who feels like escaping home is a life-or-death matter. I walked the half-mile or so to the local grocery store where I used a pay phone to call a cab. The driver looked at me strangely, but obliged my request and dropped me off at a cheap motel near Sacramento State University. This area I was familiar with because I took classes at the university. I thought somehow the motel’s proximity to the university would make it less strange that I was trying to check in to a motel with a university ID and credit card, which I had hoped would be sufficient. But the motel clerk insisted on seeing my driver’s license and when he saw I was under age, he refused to let me register. I walked across the street to the Denny’s, feeling dejected and having no idea where else to go.

And that’s when things got strange.

Right away I recognized one of other patrons, a man seated with two other women. He had been a recent customer of mine from Radio Shack, and although I’m unsure of his actual name, I always think of him as Aaron. I recognized him because sometime during the prior weeks he bought expensive speakers from me which helped me earn my commission for the day. Aaron was in his early twenties and I looked up to him in the way that adolescents look up to those who are only a few years older than them, but seemingly light-years away in independence and all the things that come with it.

Instantly I felt embarrassed and hoped he didn’t recognize me. But he did and he came over to my table. He invited me to come sit with them, I did and it eventually revealed that I was trying to leave home, not giving many details other than that my mind was made to follow my course. They listened to me, empathizing and not once condescending to me, which was a kindness I so rarely received. What Aaron said to me next has stayed with me all these years: “I don’t know anything about your situation, I’m not judging that. What I do know is that what you’re trying to do is very hard. If there’s anyway you can stick it out just a little bit longer until you go to college, I think things will be better for you. We’re staying at the motel across the street, and I’ll get you a room there so you have a place to sleep tonight and some time to think it over.” I probably knew he was right about having to go back home, but wasn’t quite ready to acquiesce. I was ready to have a room for the night, though. We finished our meals and then drove across the street to the other hotel in Aaron’s tiny sports car.

And that’s when things got even more strange.

There is a police cruiser in the parking lot of the motel. This fact puts Aaron on high alert, and rather than parking as expected, he hops out of the car and ducks into the manager’s office. He emerges moments later, gets back in to the car and puts it in into gear. “The cops are here trying to serve a warrant on me,” he says. “We have to go.”

And so we do, heading westbound on highway 50 toward downtown Sacramento. At this point the feeling of having an out of body experience, watching myself in a film, that started when I climbed out my bedroom window is now complete. I am stuck in the back seat of a tiny sports car with a near-complete stranger, apparently wanted by the policy, driving and I have no idea where we are going.

We exit and race through empty downtown streets. I don’t know where we are since I haven’t driven downtown very much. Suddenly we pull in to the Vagabond Inn and Aaron hops out and walks to the manager’s office. Shortly he returns with a key and hands it to me. “Checkout is at noon. Good luck,” he says. Dumbfounded, I realize he’s kept his word. I wave goodbye to Aaron and his companions. They speed off to somewhere I never know, and I go to my room for the night.

The next morning I call a friend of mine to give me a ride home. It must have been a Sunday, because traffic was light and my mother was at home, in the kitchen when I walked through the door. I could tell my invisible state had been restored because no one noticed I’d been gone. I would have thought walking through the door first thing in the morning with a backpack and wearing the previous’ days clothes would have been a sure tell. Now I know that people have an uncanny ability to see, or not see, exactly what they want or need to at any given time.

After that weekend’s adventure, I recalled Aaron’s advice like a mantra. Keep your head down. Just get by for another two months until school starts. I worked every Radio Shack shift diligently, welcoming my escape from home even though it meant biking miles in the heat. I stayed in my room when I was at home, watching movies, reading, and playing Nethack and Civilization.

This strategy was working, and as mid-August arrived, so had relative calm in our house. I began gently reminding my father about the car, and when we could negotiate the terms of its release to me. Rather than providing a concrete answer, he said now wasn’t a good time to discuss, and we’d go over it later that evening or tomorrow. I grew tired of these rebuffs and one evening, as he sprawled on the couch watching TV, I pushed him further. “No, we need to talk about this now,” I said. “You aren’t busy right now and this is important.”

What happened after that occurred in an instant and in slow motion all at once. Something about what I said provoke his temper and he charged at me, red-faced from the couch. Was he going to slap me, or just man-handle me back to my room as so often was his preference?

I had became adept in my teenage years at simply outrunning or out maneuvering my father when he tried to strike or otherwise physically control me. If my path to the front door were clear, I would go outside. This was the best option by far, since the front yard not only provided freedom of movement and fewer obstacles, but also a potential audience. A person is generally less comfortable smacking their kids around when an audience is present. If my path to the outside wasn’t clear, I would just try to make him tired before he was able to make contact with me. Sometimes ensuring that I retreated to my room was enough to get him to stop.

This time, however, I didn’t move or so much as flinch. Instead, I locked eyes with him and the split second before he was going to make contact with me, I said, “You touch me again, you are going to jail.”

To this day, I can’t explain what made this change in our power dynamic possible, I only know that a profound change came over me an empowered me to do what I did. Ever seen the last season of Buffy, when all the slayers are activated? It was like that.

He stopped. His posture changed. Surprise registered in his eyes. I was leading in this dance now and he knew it. Then came the rage. “Get out, now. You have 15 minutes,” he commanded, pointing down the hall not towards any outside door but in a gesture that clearly meant you are not welcomed here any longer.

And so I left.

First I called a friend and was able to utter, “I need you to come get me right now,” to which he responded, “I am on my way. Meet you out front. Bring only what you need for tonight.” before my father cut the phone line. My friend arrived within a half hour and I never lived with my father again.

As so began one of the most surreal times of my life, the month between my last day living at home and my first day of college. Parts of it I recall with visceral detail. Others are a blur. I continued to work my shifts at Radio Shack, but in many other ways I shut down. The friend who picked me up the night I left home asked our friends to ask their parents if I could stay with them. One family said yes, and to this day I feel immense gratitude for their generosity. They gave me what I needed most at the time, at some risk to themselves (since I was a minor), and asked nothing in return.

When it was time to leave my temporary family, a friend of a friend helped me begin my life at UC Davis. He had a large white pickup, into which we packed my things and then drove the 15 or so miles to campus. I recall the conversation between us during that time being awkward and tense, although I couldn’t tell you exactly what we talked about. When we arrived at B Building, my assigned dorm on campus, we unloaded and then my helper departed. There were no words of advice, no teary-eyed embraces, no last-minute gifts of pocket money. I was alone.

If the strangeness of my situation crossed my mind, I ignored it. I had an extra-long twin bed to make, a room to settle into, and classes started in a few days.

For a long while after leaving home and even graduating college, I couldn’t pass through this time of year without feeling profound anxiety, and then sadness. Much of that has faded now, as most scars do. I remain grateful that I survived such a difficult transition and for the people who helped me through it. When I see 17 and 18 year-olds now, heading off to college for the first time, I think how impossibly young they seem and realize just how young I was when all of that happened.

There is nothing we can do to change our past, and yet if we aren’t vigilant we find ourselves trying to do just that. Healing must take the past into account, but can only be performed in the present. When I think of the 17 year-old me, I comfort her and I let her know she’s going to be okay. And then I bring my attention to the present and look forward to the future.

book-challenge-july2013-540px

Books read, July 2013 edition

I’ve read 32 books so far this year. You can see their covers above.

I <3 Detective Fiction

Once thing you’ll notice right away is that I love crime/detective fiction and that my current two favorite authors in this genre are Michael Connelly and Laura Lippman.

I’m working my way through Connelly’s Harry Bosch series in order and am a little over half way through. I’ll be sad when I’ve read the last Bosch novel, but Connelly is a prolific writer and his other novels include characters from the same universe. I identify strongly with Harry, particularly his creed that “everyone counts, or nobody counts” and his ability to disregard the rules when they don’t make sense.

In a similar vane, I’m working my way through Lippman’s popular Tess Monaghan series. The novels are set in Baltimore, which I have a slight affinity for having visited there and also being a huge fan of the best cop show ever, The Wire. I feel less of a personal connection to Tess, the main character in this series, than I do Harry Bosch, but it’s still awesome to get to read detective fiction where not only the author is a women but the protagonist is as well. Another thing I enjoy about the Monaghan series is that we follow Tess from her very beginnings and have the privilege of watching her grown and learn.

Much to my delight, Sara Gran published this year a sequel to the fantastic first Claire DeWitt detective novel, Claire DeWitt and the City of the Dead, set in New Orleans. The follow-up, called Claire DeWitt and the Bohemian Highway, takes place in San Francisco some years after the first novel. While it was great to visit with DeWitt again, I didn’t enjoy this novel as much as the first. It felt more rambling and less cohesive. Then again, our protagonist completely falls apart during this story and this could simply be a reflection of that. It some ways this second novel felt like more of an introduction to Claire’s world than the first. It left me wanting more, and I hope Gran continues to create stories about Claire. Oh, and if only Détection, the book-within-a-book detective manual, were a real book!

Why did it take me so long to read Neil Gaiman?

Finally this year I read Neil Gaiman. Sherri’s been gently recommending him to me for years, but I’ve just never been interested. “Oh, that’s fantasy,” I’d think, “and I don’t like fantasy.” Well, turns out if you call it magical realism instead of fantasy them I’m perfectly okay with it. What really tipped the scales, though, was going with Sherri to hear Neil read from Ocean and the End of the Lane. I felt such an immediate, strong connection with the story and I knew I had to read it and American Gods too, of which I’d had the 10th anniversary edition for some time but hadn’t dived in to. Well now I’ve read them both and they were amazing. And I’m a bit sad because I know I can never read them again for the first time.

Non-fiction about identity

I read some really great non-fiction this year as well, the highlights being: Far from the Tree, Quiet, Salt Sugar Fat, and The  American Way of Eating.

Far From the Tree, by Andrew Soloman, examines identity, difference and diversity through the lens of families whose children have identities greatly from their parents. Soloman devotes a chapter to each of the following: Deafness, dwarfism, Down syndrome, autism, schizophrenia, multiple severe disabilities, child prodigies, children conceived during rape, children who are criminals, and transgender children. The topics are bookended by Soloman’s own experience with difference, first as a son and then as a father. This book had a profound effect on me. If you read it, I recommend doing so carefully, and consider skipping chapters that might be triggering to you (I skipped the one on child prodigies). What I gained from the book was an understanding of how difficult it is for us to build and maintain deep, authentic connections with one another, and a profound awe at the amount of effort that we’ll expend in order to have that connection. Paradoxically, the book also gave me relief from the pressure of having biological children. It made me realize that the sense of loss I have around not being able to (easily) have biological children is based in a sense of completing my own identity by having it reflected back to me in another human. What I now understand is that this sense of completion is not dependent on biological children, nor is it dependent on having my own identity reflected back to me. What it is dependent on is being connected deeply to others while we are both being our authentic selves.

Quiet by Susan Cain was an important read for me because it helped me understand my own temperament better. Am I an extrovert or an introvert? Depending on how I’m feeling, I flip back and forth between the two on the Meyers-Briggs scale. I love running events and planning things with other people, but simply attending an event where I have no defined role other than attendee is nearly paralyzing. I now understand a lot more about myself: I’m an introvert, highly sensitive to stimulation, but not a shy person. And, I have some more techniques for dealing with highly stimulating environments.

Non-fiction about food politics

If you’re interested in food politics, I highly recommend both Salt Sugar Fat by Michael Moss and The American Way of Eating by Tracie McMillan. In Salt Sugar Fat, Moss examines how the processed food industry has systematically created and marketed food that is not only bad for us but specifically designed to make us overeat and continue to do so. Moss argues that processed food is a public health issue, just as smoking is, and should come with the same regulation and warnings that tobacco products must. What surprised me most about this book was not that processed food is bad for you, or that the food industry cares about profit over our well-being, but just how long this has been the case. I had always thought Kraft cheese was an invention of the 60s and it’s not, it was created decades prior. The American Way of Eating is perfect to read next because it examines the notion that Americans can simply eschew processed foods and eat fresh, “real” food instead. McMillan examines how Americans obtain the food we eat hands-on in three scenarios: as migrant farm laborer picking varies fresh fruits and vegetables, as a worker at Walmart in Michigan, and as a server at Applebees in New York. For each of these scenarios, McMillan lived the part entirely, subsisted on the wages and the resulting lifestyle provided by those jobs. Because of this, we gain insight into the labor conditions of those integral to providing our food, how that food is often unaffordable to the those who make it available in the first place, and how overall economic and social conditions create barriers to utilizing healthy food when it is, seemingly, available. If you have a Michael Pollan book laying around that you haven’t managed to read yet, throw it away and read these two books instead.

What have you been reading?

What are some things you’ve read this year that have really stood out? Oh, and if you’re on Goodreads, send me a friend request!

Leaving Google: Moving email and calendar to Zimbra

Note: This post is part of a series of posts I’m writing about migrating from Google to other service providers. Read Leaving Google: A preface to understand my motivation and goals for this project.

Aside from things like online banking and bill-pay, email and calendar are probably the most important aspects to my online life. They enable me to in touch, transact business and generally know what I am supposed to be doing when. As such, it took me a long time to find an alternative that would work for me.

The requirements and the search

Here are the requirements I defined in a calendar and email solution:

  • hosted and paid, yet affordable ($50-60 annually)
  • decent web interface
  • POP3 and IMAP access
  • ssl/tls enabled
  • ability to use own domain and to add user and domain aliases
  • multiple calendar support
  • ability to share calendars with internal and external users
  • ability to have private and public appointments
  • ability to subscribe to external calendars
  • reasonable disk space (5-10GB) and attachment quotas (>10mb)

Finding a stand-alone email provider was not an issue. Pobox (my favorite), Hushmail, Fastmail and Rackspace all provide reasonable email hosting and there are many others.

What these services lack are the robust calendaring features I need. Both Pobox and Rackspace include calendars with their email, and OwnCloud has a calendar feature. But all three are simple and lack the sharing and subscribing abilities I absolutely need.

Lack of strong calendar features continued to stall my search for Google alternatives until I realized that I was already using a great alternative at Mozilla! There we use Zimbra, a “collaboration suite” developed by VMWare that includes email and calendaring. VMWare offers open source and network editions of Zimbra. If you have sufficient courage, stamina and time to run your own mail server, you can download and install the open source edition for free (although it lacks some features of the paid version).

I have no desire to run my own mail server. Thus began the search for hosted Zimbra providers. I narrowed my list to three: ZMailCloud, MrMail, and Krypt CloudMail, from which I picked ZMailCloud.

The migration

Once my account was setup, the migration process was fairly straight-forward:

  • Update MX records for my chosen domain.
  • Start forwarding Gmail to new email addresses.
  • Add Gmail address as external account in Zimbra via IMAP and start copying messages.
  • Export main Google calendar and import into calendar called “Google” on Zimbra. Start copying relevant appointments to new main calendar.
  • Begin the tedious process of updating email address everywhere.

I had a couple of choices when migrating all of my email messages:

  • Use an email client like Thunderbird to copy via IMAP
  • Add Gmail address as an external account via POP3. The disadvantage to this approach is that you get zero folder information, which is only a problem if you were using folders/labels in Gmail.
  • Not copy messages at all and start with a clean slate!

Also, you might be wondering why I didn’t simply import my Google calendar into my new main calendar. I actually did this at first. Then I realized that all of the appointments were imported with the visibility set to public. This won’t work for me because I want to be able to share my calendar with the public, allowing them to see the details for some appointments (like office hours and public meetings) but not for others.

Progress so far

The migration, begun a couple of weeks ago, continues. Each time I log in to an account I check the email address and update it if need be. I update mailing list subscriptions as I read messages from those lists, and those hosted on Google groups are the most tedious to update.

I also haven’t figured out how to tell everyone who might need to know that I have a new email address. I can’t bring myself to spam my entire address book (and there are probably folks in it I don’t actually want to engage with). So, for the time being, I’m just replying from the new address and letting people or their email clients update my record on their own.

Other solutions?

I’m curious about other possible solutions. For those of you who have switched away from Google mail and calendar, or were never there in the first place, what do you use? Let me know in the comments!

 

 

Notes on World Domination Summit 2013

Gary Hirsch leads a group improv.
Gary Hirsch leads a group improv.

This weekend I attended the third iteration of World Domination Summit (WDS), right here in Portland. I wasn’t sure what to expect from the conference. I bought the tickets several months ago, remembering that I had been interested in attending the previous year when the event was already sold out.

Aside from phrases like “remarkable life, conventional world” and “amazing people with big plans,”  the website reveals very little concrete details about the content of conference. A click-through to the schedule reveals that the plan is to “have fun and create meaningful adventure.”

WDS 2013 began with non-talk activities on Friday, which included the Big Float (an attempt to break the world’s record for number of people floating at one time) and an opening party at the Portland Zoo. Saturday and Sunday comprised the main part of the conference and roughly followed the same schedule. First, there was a morning of talks by the headlining speakers that wrapped up in time for lunch. In the afternoon, alumni speakers and attendees held a small number of workshops at venues throughout downtown. Both days concluded with two final talks at the main venue and then a social activity. Saturday’s social activity was a cruise on the Willamette and Sunday’s was a party at Pioneer square.

For me, WDS isn’t an ideal conference format. Because unscheduled time at home on weekends is so rare for me, weekend conferences are difficult to begin with. I have to fight a tremendous amount of inertia just to set aside the things I want to get done at home and leave the house. The lack of a central “hallway” track was also an issue for me. I find large crowds overwhelming and having a place where I can park myself and observe the action while still being available for chance encounters is important. WDS did have a “self care” area, but it was decentralized like everything else but the main talks.

I also didn’t take advantage of the social activities. In part this is because I live in Portland and can go to the Zoo or take a river cruise at any time. It’s also because there was no way to include Sherri in the activities and so choosing to go would have cut into the very small amount of non-working time we have to spend with each other each week.

All of that said, I attended the morning talks each day and found those to be enjoyable and inspiring. The highlight for me was hearing Tess Vigeland, formerly of Markplace.

There’s no doubt that WDS is full of inspiration and feel-good moments. Even this curmudgeon got out of her chair on the last day and joined the group dancing (really, I did!). What I thought it lacked, was more content about how to live remarkably or execute big plans. Perhaps if I had attended the afternoon workshops I would not have been craving specific details as much.

One thing WDS really needs to pay attention to and improve upon in future iterations: accessibility. The main venue was crowded and hard to navigate, with no effort made to encourage attendees to keep travel lanes clear. Seating for those with limited mobility seemed limited to underneath the balcony, which had the effect of drastically limiting the view of the stage. I know because I sat near this area on the first morning and could see scarcely 50% of the screen.

Will I go again? Probably. I think Sherri would enjoy attending and I think going with her would make me participate at a greater level. I would also like to present my own workshop next year, either on non-profit management or community organizing, or both.

Leaving Google: A preface

While I’ve never had all of my internet-eggs in Google’s basket, so to speak, I’ve appreciated many of their services and have become quite dependent on some.

I opened my first Gmail account in 2004. I switched from Bloglines to Reader sometime before the former was sold in 2005. My sanity, and probably my wife’s as well, depends on the appointments we track in Calendar. All of my correspondence has found its way to Google docs. All of my non-IRC chatting is done through gTalk with an xmpp client.

It’s never felt particularly good or prudent to be so reliant on one company, an advertising company, for some of my most important online needs. But when I would think of leaving Google, a sense of dread and panic would arise. I would think about how dependent on was on email, calendar and other services and how good alternatives seemed non-existent. Not surprisingly, I would come to the conclusion that I couldn’t live without Google, and that they weren’t that bad, after all. And then I’d move on to fretting about the next thing.

But the idea continued to percolate and re-surface in my mind. Each time Google made a decision to close a beloved product, take yet another step away from web standards, made a move that wasn’t outright evil, but wasn’t good either, I re-evaluated my reliance on their services. More and more I felt like I was the product first and the customer second, if at all. The final straw for me was in fact two: the end of full support for xmpp in Google talk and PRISM.

And thus, I’ve started the process of reducing my usage and reliance on Google services. I’ll document this process in a series of blog posts, roughly in order of priority:

  • Email and calendar
  • Search
  • Chat
  • Mailing-lists (for the groups I manage)
  • Document editing and sharing

A few services I don’t intend to find near-future replacements for include Google voice and Hangouts. Google Plus isn’t on either list simply because I hardly use it. Nor have I ever used Picasa (I’ve always preferred Flickr). I have no immediate plans to delete my Google account. Doing so effectively means you can’t interact with any of Google’s services, which would severely limit my ability to interact with many individuals and groups for which it is necessary that I do so.

My goal isn’t to purge my life entirely of Google, but rather to reduce my reliance on its services and to decentralize my online activity.

New glasses

New glassesTook a break from World Domination Summit this afternoon to pick up my new pair of glasses from Myoptic. You can’t tell from the photo, but the sides have a tortoise shell pattern. I still love my old frames as well, so those are getting new lens. For the first time ever, my “backup” pair of glasses will have a current prescription. Nice to have given how much I travel and how poorly I see without corrective lenses.

Another thing you can’t tell from the photo? The lenses are progressive. There is a very small difference between the amount of correction I need for distance and close-up, but it’s enough to cause significant eye strain given how much I read and use the computer. I’m so glad I switched to progressive lenses. It’s well worth the expense (although my current insurance covers them entirely) and adjustment period.

 

Thirty-three

Birthday cupcakes, courtesy of @capnleela.
Birthday cupcakes, courtesy of @capnleela.

I don’t have a whole lot to say this birthday. It’s a low-key one. Sherri had to work today and we’re both still recovering from last week’s Open Source Bridge. I’m attending to some Mozilla things this morning and then plan to spend the rest of the day relaxing.

Yesterday we celebrated by having a few friends over, enjoying cupcakes, cider and a few rounds of Dominion.

We’ve had quite a year, with considerable effort put towards stabilizing Mom’s health and that culminated in the death of a close friend. Quietly appreciating that I’ve made another journey round the Sun, that I have relative good health and a wonderful community is celebration enough for today.

My summer conference season kicks-off this week with Open Source Bridge

Just a quick post to note that my summer conference season begins this week with Open Source Bridge. If you’re local, or happen to be in Portland this week, please consider joining us. There are still tickets available and we also offer a number of ways to participate for free or at a reduced rate.

Also, there will be a number of Mozillians in attendance and some Firefox-related activities in the Hacker Lounge. If you’re interested in joining Mozilla on any of these great projects, be sure to stop by! Evenings in the Hacker Lounge are free with a community pass.

After Open Source Bridge, you’ll find me at the following conferences:

Let me know if you’re attending to so we can connect. See also: Lanyrd.

How to install BitlBee (IRC to chat and Twitter gateway) on Ubuntu

What is BitlBee?

bitlbee-logo

BitlBee enables you to connect to chat networks and Twitter via an IRC client and interact with those chat networks in the same way you interact with IRC.

Why would you want to do this? Aside from being neat, being able to connect to chat and twitter with your IRC client means there are fewer programs you have to run and keep track of and it enables you to use the keyboard to issue commands instead of the GUI.

Installation on Ubuntu

This post explains how to build BitlBee from source on the most recent Ubuntu LTS (12.04 Precise). There are packages for BitlBee, but they aren’t up to date.

Note: These instructions are for a single-user setup of BitlBee. If you are installing a server for multiple users, especially ones you don’t know well, please read the documentation to be sure you understand what you are doing and are selecting the most secure options.

Dependencies

You’ll need to make sure the following packages are installed on your system: build-essential, libglib2.0-dev. Additionally, you’ll need an ssl library and I recommend libgnutls-dev (over openssl, which can be problematic). And if you want to support off-the-record chat, you’ll need libotr2-dev.

You can install all of those with:

sudo apt-get install build-essential libglib2.0-dev libgnutls-dev libotr2-dev

Download, configure, and make source and install

wget http://get.bitlbee.org/src/bitlbee-3.2.tar.gz
tar -xzvf bitlbee-3.2.tar.gz
cd bitlbee-3.2
./configure --otr=1 --msn=1 --jabber=1 --oscar=1 --twitter=1 --yahoo=1 --ssl=gnutls --etcdir=/etc/bitlbee
make
sudo make install

The configure included above specify the following:

  • inclusion of msn, jabber, oscar (AOL), yahoo, and twitter protocols
  • enable OTR (off-the-record messaging)
  • gnutls as the ssl library
  • location of configuration directory as /etc/bitlbee

Configure BitlBee

Next you’ll need to configure Bitlbee for use.

First, create and then edit the sample conf file:

sudo make install-etc
sudo vim /etc/bitlbee/bitlbee.conf

Here are the important options to set:

  • RunMode: How the bitlbee server should run. Options include: Inetd, Daemon, ForkDaemon.
  • User: The user that bitlbee server should run as. bitlbee makes sense here.
  • DaemonInterface: Which network interface to use. The default should be fine.
  • DaemonPort: Which port to use. The default should be fine unless you’re already using it for IRC or ZNC (bouncer).
  • AuthMode: I recommend setting this to Open and then to Registered after you’ve registered yourself.
  • AuthPassword: Needed to login to closed systems. Generate a hashed password with bitlbee -x hash .
  • OperPassword: Unlocks operator commands. Generate a hashed password (see previous bullet).
  • ConfigDir: Make sure this is the same thing specific in the configure option. In this example, it’s /etc/bitlbee.

Here are the example conf directives:

RunMode = ForkDaemon
User = bitlbee
DaemonInterface = 0.0.0.0
DaemonPort = 6667
AuthMode = Open
AuthPassword = md5:SECRET_HASH
OperPassword = md5:SECRET_HASH
ConfigDir = /etc/bitlbee

Add bitlbee user

Now you need to create that system user and make sure it can read the conf file:

sudo adduser --system bitlbee
sudo chmod -R +r /etc/bitlbee

Start the server

Now run the server:

sudo bitlbee -c /etc/bitlbee/bitlbee.conf

Usage

Connect with your IRC client

Open your IRC client and add the bitlbee server just as you would any IRC server. Here’s what it looks like in X-Chat:

mybitlbee server in xchat
mybitlbee server in xchat

Server password will be whatever you put for AuthPassword in your bitlbee.conf. It doesn’t matter what you have for nickname, user name or real name. These will be used when you register with bitlbee.

Register your user

register <password>

You should then see

<@root> Account successfully created

On subsequent sign ins you’ll need to identify just like you do with NickServ:

identify <password>

Now that you’ve registered your user, it’s a good idea to change AuthMode to Registered in your bitlbee.conf.

Setup your accounts

When you first start BitlBee, you won’t have any chat or Twitter accounts so you’ll need to set them up.

<@christiek> account list
<@root> No accounts known. Use `account add' to add one.

So let’s setup gtalk:

<@christiek> account add jabber myemail@gmail.com
<@root> Account successfully added with tag gtalk
<@root> You can now use the /OPER command to enter the password
<@root> Alternatively, enable OAuth if the account supports it: account gtalk set oauth on
<@christiek> account gtalk set oauth on
<@root> oauth = `on'

Now the gtalk account is configured, but it isn’t turned on:

<@christiek> account list
<@root>  0 (gtalk): jabber, christiekoehler@gmail.com
<@root> End of account list

So we’ll turn it on and follow the prompts to complete the oauth authentication:

<@christiek> account gtalk on
<@root> jabber - Logging in: Starting OAuth authentication
<jabber_oauth> Open this URL in your browser to authenticate: URL
<jabber_oauth> Respond to this message with the returned authorization token.
<@christiek>TOKEN

Visit the BitlBee wiki for instructions on how to setup other chat networks or Twitter.

Time to chat!

Once you’ve configured a chat account and are connected, you’ll see your contacts listed as you would regular IRC users.

To initiate a chat you can use IRC commands:

/query robert.mith