rax: (Benten guitar case)
Rax E. Dillon ([personal profile] rax) wrote2010-05-23 01:34 pm

Summer Schedule, Tech Infrastructure

First, summer scheduling: In a change to my schedule, I won't be at Readercon this year. If I'm at any con this summer, it will be Anthrocon (who else is going?), and I"m not sure about that either. Still trying to figure out remaining travel schedule, especially as concerns weddings. When I have a complete calendar I'll probably post it; term-time travel will be limited to random "Surprise, this weekend I'm in X" sort of things planned at the last minute based on not having anything due on Monday. And now, I am going to dork out or a while.

So, tech infrastructure. If you're reading this, you're probably already invested in using computer technology in order to engage with your social network. [0] You probably use a number of different technologies to do this, most of them supplied by socially and geographically distant corporations. These corporations probably range on the evil scale from Facebook's "Privacy is for losers" to Google's "Don't be evil" or Dreamwidth's "We are made of puppies." As much as I rag on Google (and I think they deserve it; a company that large does more evil things in a day than I will do in my entire life, unless I really start trying), they do try very hard to give users a positive experience for engaging with other people on the Internet, and the levels of adoption of their email services, chat services, and other offerings are a testament to that.

That said, I'm sometimes surprised by how many of my friends, Linux dorks in particular, use services like this. A lot of us talk big about peer to peer and community owned infrastructure when it comes to things like BitTorrent or distributed computing, but I haven't seen many projects looking to set up this kind of architecture for things that we use the internet for most frequently, like email, social networking, or blogging. The Diaspora project (distributed Facebook replacement under development) is one counterexample that has gotten a lot of press, but right now it's just an idea. I know a couple of people whose LiveJournals are secretly something else, but for the most part we either just use LJ/DW or have an external blog that shows up as a feed and then a reading account. There are some other LJ-alikes (InsaneJournal, JournalFen, and so on) that may have traction in specific communities, but they're still not quite what I'm thinking of, because...

I really value knowing my service providers personally. Just like I know my bike mechanic by name, drink beers with him, and sometimes just show up in his shop to talk about whatever, I want to have this sort of relationship with the people who provide my email service and other technical infrastructure --- when I'm not just doing it myself. When possible, I think it's awesome to trade these kind of resources either for skillshare or for cost. In some cases, I've been successful with this, or I'm successfully the person who other people come to for this: I co-own a computer in colo with [personal profile] sixolet , and a mutual friend helps us with infrastructure in exchange for backup space, and we lease out virtual machines to our friends at a rate that exceeds bandwidth enough to cover the cost of the machine in, oh... ten years? At the very least it pays for hardware upgrades. [1] This is awesome, and I want to do more things like it.

Some of the things I might want to do are very hard, either because they're just technically very hard (oh my god running a mail server was such a pain last time I tried) or because the protocols are closed (I can't just run my own facebook, because real Facebook won't talk to my facebook, and so I can't get messages from all my extended family who refuse to use anything except Facebook to talk to me). But some of them shouldn't be that hard, and might be of interest to other people, and I wanted to write about a couple I'm hoping to do and get comments and suggestions on them:
  • Cohousing wiki-type infrastructure. I imagine this as great for everything from grocery lists and chore structures to shared projects like "Let's all have an awesome event that requires coordination!" and want to set it up for my new house. I know a bunch of the random warehousey things around do this --- Langton Labs, for example --- and I think some smaller apartments (Technodrome, right?) do this too. I heard recently from a friend that she and her partner used Jira to coordinate just between the two of them. [2] So this is clearly doable --- but I don't know of any best practices anywhere, or templates, or anything like that. If you do this, what works for you? What doesn't? If you'd like to use this but don't now, what would encourage you to start? Would you want a template? Do you already have a server to run it on?
  • Mailing lists. The commercial-free services like yahoo groups are freaking abominable. Most organizations seem to run this by setting up mailman lists --- I tried to set up mailman and gave up after around ten hours, although this was a couple of years ago and maybe I should try again. (I still get a bounce message in my inbox from that mailman install every day. It's not worth the effort to figure out why.) Most of the social groups I know either do this client-side (some email clients kindly track lists for you) or through the MIT mailing list system. Since I'm now two universities, six years, and a thousand miles removed from MIT, I feel like I should be running my mailing lists through something different. Is mailman the state of the art? Are there other tools I should be looking at? Are there people out there with semi-open mailing list services, or people who would use one if it existed?
  • Event invitations. I traditionally do this via mailing list, but I've identified two big problems with this. First, for events that require RSVP/guestlist, technology could help a lot with tracking this --- and Evite and Facebook handle this sort of thing in a way that people understand and are arguably coming to expect. Second, I increasingly have friends --- people I'm quite fond of and want to see --- whose email addresses I don't have, and this causes me to miss them when I send out party invitations. (Hi guilwolfie!) I know at least one person has rolled this on their own, because I've been invited to a party that used it, but I don't think it was open source or know the author to write and ask if it's something other people can use. Also, it only worked over email. :) I think it's important that a tool for this contact users where they are, whether it be AIM or Facebook or email or whatever, and not require a new account. I don't really know how to do it, but I know that I want it, and I'd love to hear other people's thoughts on it.
I would really love to see community owned and operated email services, too, but I think that's very hard --- gmail does a better job both in services and in interface than I think I can do, and I don't think "run by your friend and not by Google" is enough to overcome that with anyone except people who already aren't using gmail. The three above, especially the first two (if your social group all uses facebook, the third is basically solved) I think are particularly worth looking into because I think we can build something that is better than the current alternatives, not just more open, and I think it may not even be very hard. Does anyone know if SIPB is working on any of this kind of stuff? It seems right up their alley...


[0] You might also be a search engine.

[1] I don't want this post to get mega-technical but if you ever want suggestions on setting up something like this, let me know. It's definitely doable; there are more people who would rent virtual machines if we wanted to rent more.

[2] I've poked at using RT for this personally but it was too heavyweight; I've poked at Hiveminder but it was too lightweight; I've considered using Salesforce case tracking but the version I like that I use at work is $999/year. I'm still using flat text files, and this makes coordinating with those close to me difficult sometimes.

[identity profile] sprrwhwk.livejournal.com 2010-05-23 10:40 pm (UTC)(link)
I've found running a mail server on Debian to be relatively straightforward, with the caveat that I outsource my spam filtering to Lux Scientiae, Inc. (https://luxsci.com/) (which is apparently one Erik Kangas (MIT PhD), and Somerville-local) for $10/mo., because maintaining my own SpamAssassin instance is Way Too Much Work kthx. LuxSci is in its turn a reseller for McAfee nee MXLogic's spam-filtering service, but I've been quite happy with the quality of the filtering (very few false positives) and the service overall. I point my MX records for my domains at their servers and they forward ham to my mail server. For a client I use Sup (http://sup.rubyforge.org), which is basically GMail reimplemented in ncurses, with which I'm quite happy. It has all the fast full-text search and threading and labels and so on you've come to expect from GMail. I've also found hosting my own Jabber server on Debian using ejabberd quite effective and straightforward, and that lets me talk to people on any of the big Jabber services (LJ, GTalk, Facebook, MIT, jabber.org, etc.) or their own Jabber servers transparently; federation is awesome. I use BarnOwl as my Jabber client, so Jabber messages flow together nicely with my zephyrs and twitters and so on.

My house (http://asec.aperturehosting.net) uses a MediaWiki install hosted out of a SIPB AFS locker via Scripts (http://scripts.mit.edu), which works since we've all so far been MIT students and alums. We mostly use it for static-ish data, though, not for coordination -- landlord's contact info, how to set up the printer, that kind of thing. Coordination is mostly over e-mail via MIT's mailing list infrastructure and zephyr/AIM/Jabber. (One of my housemates runs a Zephyr<->AIM gateway which we have set up on the house zephyr class so even the non-zephyr users among us have access to that channel.)

Projects I'm aware of in these spaces:

  • It's not specifically a SIPB project, but a few houses of SIPB cruft have put together Bluechips (http://github.com/ebroder/bluechips), which is a ledger setup for cohouses.


  • A friend has had good luck with Enemiesof Carlotta (http://liw.iki.fi/liw/eoc/index.html) as a non-MIT mailing list administration tool, though apparently it's not currently being maintained.


  • SIPB has been working on an open-source Doodle-killer they call Clockworks (http://sipb.mit.edu/projects/clockworks/), though I don't know what its current status is. I've not yet seen it in use anywhere.


  • [livejournal.com profile] bluedaisy and [livejournal.com profile] nakor use a DaVite (http://marginalhacks.com/Hacks/DaVite/) install for managing RSVPs, though it's also not currently maintained.



For my personal organization I use a combination of my mail client, Hiveminder for to-do lists, and Google Calendar for calendaring. Knowing [livejournal.com profile] obra, Hiveminder is a friend-run service, and I haven't yet run into anything that compelled me to switch off Google Calendar, though I think there are some similar host-your-own solutions out there. (GCal integrates nicely with my Android phone, and mostly I just haven't cared enough yet -- I'm just now moving off paper. :-) Except for e-mail, I don't really use those services to interact with anyone, though it's possible with both. In particular, sharing one's Google calendars seems like a boon to scheduling with other people.

Out of curiosity, what do you like about Salesforce that you don't find elsewhere/what did you find missing from Hiveminder? How are you using flat text files currently?

[identity profile] rax.livejournal.com 2010-05-24 11:44 am (UTC)(link)
Thank you for all of these links! That's awesome.

Salesforce allows me to track and sort on all sorts of metadata, like "who am I doing this for" and "when did I start" and "what sort of task is it" and "what is the phone number of the person who I am doing this for." Hiveminder does some of this, but not in the same way; part of the reason I'm so tempted by a Salesforce instance is that my brain is already Salesforce-shaped from using it 40+ hours a week for work.

My flat text files have a bunch of different categories at the top (writing, infrastructure, correspondence, random, work, crawl) and then near the bottom a list of day tasks:

MON:
- work
- cancel cathedral utilities as of 6/1
- bring laptop in for repair
- work meeting emails
- morning meeting with $PERSON

TUE:
- work

WED:
- work
- 9 AM $CUSTOMER meeting

The tasks in the upper section get time estimates and occasionally status messages, like:

- BLOCKED ON COLO pay for colo (30min)

And sometimes have subtasks in categories:

- house wiki:
- wishlist
- necessary repairs list
- calendar of visitors
- list of birds seen
- pet care stuff


This works great for me (and is based on what I used to do on graph paper), but while I think it's awesome that people are all "We all live together and don't need infrastructure," I think just [livejournal.com profile] eredien and I would benefit from a little more infrastructure here, let alone adding more people to the mix. :)

Google Calendar is awesome but fails my "don't give more data to large corporations" test. If Zimbra talked to Google Calendar so that other people could see my schedule if I ACLed them to it without having to use my Zimbra instance... which it looks like people have done (http://www.unicon.net/node/1300) although hackishly... Hmm. Maybe I do want a zimbra instance...

[identity profile] rax.livejournal.com 2010-05-24 11:50 am (UTC)(link)
Google Calendar is awesome but fails my "don't give more data to large corporations" test.

To be clear, I realize that if I make the data available, it's not just mine anymore; but I want to host it or know who's hosting it whenever possible, and I'm trying to pick off low-hanging fruit.