Personalised Jpegs for emailed wedding invitations

Let’s say you want to invite a bunch of people to your wedding and your soon-to-be-spouse wants some nice graphic you can mail to folks that has their name in it. You can do this! This script works with Linux and should work with OS X. It will require a few changes to work with windows.

Install some nifty software

I’m using both imagemagick and OptiPNG, both of which I got through apt-get. Probably, the png step is overkill and you could go straight to jpeg.
I’m also using Inkscape, Python and LibreOffice, but you can use any spreadsheet you want.

Make the graphic template

  1. Find some nice border of some kind. I drew one and scanned it, but there are other options.
  2. Open your nice border in inkscape (or other svg editor).
  3. Put all the text you want into your graphic, with the font you want.
  4. In the part where you want their name, put GUEST_NAME
  5. Save your lovely creation as template.svg

Compile names and email addresses

In LibreOffice, open a new spreadsheet and make a bunch of entries for your guests.
The first column should be email addresses.
If you are NOT saving the images, then the next column can all say ‘invite’ for every single entry. If you want to save the jpegs (say to post them to facebook walls as well as emailing them), then give them a short name associated with the person. This will be a file name, so it should be all one word that starts with a letter and contains only letters, numbers and underscores.
The last column should be the name you want to appear in the invite. You know from making your template how much space you have for names, so keep that in mind, if you’re deciding to put in Reverend Doctor Julius Milliband Cameron III’s full name or not. Or you may need to go back and tweak your template.
Your speadsheet should look something like this:

foo@example.com jen Jennifer
bar@example.com ralph Ralph & Morris
dr_rev@example.com ju Dr Cameron

Save this spreadsheet as guests.csv

The script

Get ready

Save your template, your spreadsheet and the script (cut and past from below), all to the same folder on your system. Call the script doemail.py
You will need to modify this script a bit.
Put in your own text where you see the part that says YOUR OWN TEXT. You’ll see it asks for your own text twice. One of those times is plain text. The other one is HTML. the plain text one is just text. Don’t include any html tags. If you put in links, you just have to put in the link as plain text. In the HTML part, you can use a lot of markup, including <a href=”blah.com”>blahblah</a> tags and whatnot. You can do inline CSS, if you like, but it’s email, so keep it relatively simple. In both sections, don’t forget to include a link to your website. And if you are using an online form for RSVPs, link to that as well.
You’ll also need to put in your own email address, and your own password. If you are using gmail, you can use an application-specific password.
Finally, you will also need to put in the smpt server for your mail server. Near the top of the file, you’ll see lines for hotmail and gmail. Delete any that don’t apply to you. If you are using a different server, you’ll have to find out what to put there.
If you want to save the nice jpegs, say to also post them in facebook messages, then look for the line:

jpegname = "/tmp/"+name+".jpeg"

and change the ‘/tmp/’ part to another directory on your system.
You need to make the script executable. Open the terminal application and cd to the directory with the script, template, and spreadsheet. Type:

 chmod +x doemail.py

This will make the script executable as a program you can run. then, double check your spreadsheet is ok. Type:

less guests.csv

It should look like:

foo@example.com,jen,Jennifer
bar@example.com,ralph,Ralph & Morris
dr_rev@example.com,ju,Dr Cameron

If you see semicolons instead of commas, then you need to change your script to tell it that. Change

guestreader = csv.reader(csvfile)

to

guestreader = csv.reader(csvfile, delimiter=';')

To run the script, still from your terminal, type:

 ./doemail.py

The Actual script to cut and paste

#! /usr/bin/python

import smtplib
import re
import subprocess
import os
import cgi
import uuid
import csv

from subprocess import call
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart
from email.mime.text      import MIMEText
from email.mime.image     import MIMEImage
from email.header         import Header    



# me == my email address
me = "example@hotmail.co.uk"
password = "yourEmailPassword"
smpt_server = "smtp.live.com:587" #hotmail
smpt_server = "smtp.gmail.com:587" #gmail

with open('guests.csv') as csvfile:
    guestreader = csv.reader(csvfile)
    for row in guestreader:
        you = row[0]
        name = row[1]
        salutation = row[2]

        name = ''.join(name.split())



        text = "Dear " + salutation + ",nn  YOUR TEXT GOES HERE http://YOURWEBSITE.COM"


        html = """
<html>
  <head></head>
  <body>
    <p>
<a href="YOUR WEDDING WEBSITE">
        """
        html = html + "<img src="cid:{}@example.com" alt="[More Information]" /></a></p>n<p>Dear {},</p>".format(img['cid'], salutation)
        html = html + """
<p>YOUR TEXT GOES HERE</p>
</body></html>
    </p>
  </body>
</html>
        """


        print (salutation)

        # Create message container - the correct MIME type is multipart/alternative.
        msg = MIMEMultipart('related')
        text_msg = MIMEMultipart('alternative')
        msg['Subject'] = Header(u'Wedding Invitation', 'utf-8')
        msg['From'] = me
        msg['To'] = you



        # make the image

        filename = "/tmp/"+name+".svg"
        pngname = "/tmp/"+name+".png"
        jpegname = "/tmp/"+name+".jpeg"

        svg = open("template.svg");
        svgn = open(filename, 'w');
        lines = svg.read().split('n')
        for line in lines:
            line = re.sub('GUEST_NAME',re.sub('&', '&amp;', salutation), line)
            svgn.write(line)
        #endfor

        svg.close()
        svgn.close()

        os.system("inkscape -f " + filename + " -e " + pngname)
        os.system("optipng " + pngname);
        os.system("convert -compress JPEG -quality 87 " + pngname + " " + jpegname);

        os.system("rm " + filename)

    
        # attach the image to the email

        img = dict(title=u'Invitation', path=jpegname, cid=str(uuid.uuid4()))
                                                        #cid=name)
                                                        #cid=str(uuid.uuid4()))
        with open(img['path'], 'rb') as file:
            msg_img = MIMEImage(file.read(), name=os.path.basename(img['path']))
            #msg.attach(msg_img)
            msg_img.add_header('Content-ID', '<{}@example.com>'.format(img['cid']))
            msg_img.add_header('Content-Name', img['cid'])
            msg_img.add_header('X-Attachment-ID', '{}@example.com'.format(img['cid']))
            #msg_img.add_header('Content-Disposition', 'attachment', filename=os.path.basename(img['path']))
            msg_img.add_header('Content-Disposition', 'inline', filename=os.path.basename(img['path']))

        print('<{}>'.format(img['cid']))



        # Create the body of the message (a plain-text and an HTML version).



        # Record the MIME types of both parts - text/plain and text/html.
        part1 = MIMEText(text, 'plain')
        part2 = MIMEText(html, 'html')

        # Attach parts into message container.
        # According to RFC 2046, the last part of a multipart message, in this case
        # the HTML message, is best and preferred.
        text_msg.attach(part1)
        text_msg.attach(part2)
        msg.attach(text_msg)
        msg.attach(msg_img)


        # Send the message via local SMTP server.
        server = smtplib.SMTP(smpt_server)
        server.ehlo()
        server.starttls()
        server.login(me,password)
        # sendmail function takes 3 arguments: sender's address, recipient's address
        # and message to send - here it is sent as one string.
        server.sendmail(me, you, msg.as_string())
        server.close()
        #server.quit()

        os.system("rm " + pngname)

    #end for (going through rows in the database)
    csvfile.close()
#end with    

So you changed your facebook icon?

The US Supreme Court just heard arguments for two cases involving marriage equality. Up to 57% of Americans now think marriage equality is a good idea and a bunch of people, mostly straight allies, have changed their facebook icons into red equals signs to show this.

The equals sign is the logo of HRC, a gay (and not bi and really not trans) advocacy organisation. They’re run by and for A-gays and give awards to vulture capital firms for not discriminating against gay people while giving bonuses or while making people homeless, jobless and hungry. Not that they’re legally required to avoid this discrimination. In 34 states, it’s still legal to fire people for being gay or to throw them out of their homes. There is no federal hate crimes law. Gay people are not in the Civil Rights Act or the pathetically weak ‘ENDA’ which the HRC has been failing to get through congress for my entire adult life. That bill would prevent discrimination in employment only and only for gay people, as the HRC has specifically lobbied to prevent trans inclusion. Because trans people are icky and they’re sure it’s much more likely to pass if it excludes us. Really. any day now it will pass. … Not that they’re spending much capital on it, political or monetary. A-gays aren’t worried about getting fired.

The HRC wants you to know that gay people are just like you: rich, white and privileged. And normative. Why shouldn’t two men be able to have a wedding reception at their country club? So the legal talent and the money for the marriage cases are coming from freshly outed Republicans. Other funding is coming from straight people who saw Brokeback Mountain and cried. No, really. The single biggest block of people who have been pushing for marriage equality is straight women who liked Brokeback Mountain.

And so marriage equality has become a social barometer. Just like voting for Obama proves you’re not a racist, backing gay marriage and changing your facebook icon means you’re not homophobic. Because gay people are just like you! So if you feel uncomfortable around queeny men or especially around butch lesbians or around people you read as trans, no need to worry about being homophobic if you support gay marriage. No need to worry about having appropriate sex-ed for LGBT kids. No need to worry about the homeless LGBT youth who might want to build a shelter in your neighbourhood and drive down property values. It’s totally ok to think Grindr is icky and condemn it entirely with no first hand knowledge, because you support gay marriage!

And yes, it’s gay marriage. After all, the HRC just told trans people just this last week, to take down their flag, since “gay marriage isn’t a trans issue.”

Did I mention I got the first same sex divorce in the State of California? I can’t say I’m especially proud of this fact. I will say that having a legal structure for divorce made the split a lot easier than it would have been otherwise. I might get married again some day. Aside from everything else, it has implications with immigration law. And if I don’t have to appear in court and change my birth certificate, so much the better. So yes, I support marriage equality, which is also a transgender issue. And so is the staggeringly high rate of unemployment and under-empolyment among trans people in San Francisco, which is probably one of the most trans-friendly cities in the US.

I’m glad that allies are supporting this largely symbolic drive towards equality. But now let’s talk about why lgbt people, tend to be poor. Let’s talk about suicide rates. Let’s talk about bullying. Let’s talk about something that’s not just for the happily ever after, not just for the lucky. This alone doesn’t make everything all right and it doesn’t make you all right either. I know most of the people copying the symbol of a tarns-hostile organisation don’t even know the source of the icon. And that’s why this really is just not enough.

Gay Marriage Fails in Maine

“If you put it up to the vote of the people, we’d have slavery again.” —Jesse Ventura on CNN, 11/3/2009
I don’t much care for Ventura, but he has a point here. Most civil rights protections in the states have been expanded via case law, not by the ballot box. In fact, I think the whole concept of civil rights is at odds with voting on them. The idea is to protect minorities from majorities. When we say something is a civil right, we take an abstraction of principles that we mostly all agree on and then apply them to the specific. Most Americans think freedom of religion is a pretty good idea, so that must also apply to Mormons and Muslims and Pagans. Our agreed-upon principles lead us to protect actions and people who would not necessarily receive such protections if things were put up for a vote.
Interracial marriage became legal with the court case Loving v Virginia, decided by the Supreme Court. This decision was not popular, but it wasn’t unpopular enough to amend the Constitution over. If it had been put up for a vote even five years after it became law, it would not have passed. Honestly, I would be worried about what people would vote on this even now. In that decision, the court found that marriage was a fundamental right, something I think we all agree upon. And we’re all supposed to be equal under the law. And there’s not a compelling state interest to keep people of different races from marrying. Therefore, it must be allowed.
The SCOTUS needs to rule on gay marriage. This is not a battle that’s going to be won by voting. It needs to be a combination of activism and case law. That winning combination is what desegregated buses and then later protected our speech. March and sue!
Eventually, gay rights will be a settled question, but right now, it’s still legal to discriminate in several states and on a federal level. We don’t have ENDA (nor have we been added to the Civil Right Act, which would give us full protections. Even after we have ENDA, we won’t be done.). We can’t serve openly in the military. Hate crime legislation is less than a month old. It’s not surprising that people feel comfortable discriminating against us in the ballot box, when they’re fully allowed to in other contexts. Indeed, these other contexts are somewhat more vital for many LGBT people. I’m certainly in favor of Same Sex Marriage, but even more, I’m in favor of not being fired from a job for being trans.
I think there’s more resources going towards marriage right now, and that might be because people who have enough resources to pay for political campaigns are not worried about losing their jobs. There are people who are still in the closet at work, who are afraid to come out or to transition. If they get fired for being LGBT, they have no recourse and they can kiss their health insurance goodbye. A legally recognized marriage is not the top agenda for people in that situation and I don’t know if it should be top agenda for the LGBT community in general. Let’s pass the gender-inclusive ENDA, make it clear that discrimination being wrong is a matter of law and then sue for marriage. Or hell, let’s sue to get rid of having legal sexes at all, then we’ll get marriage by default.

Disengaged

I don’t feel engaged on the Prop 8 thing. Some of this is distance, certainly, but not all of it. I mean, I have benefited personally from Same Sex Marriage. My (now ex) wife and I got married in Canada in 2003. And then, alas, got divorced in California in 2005, in what was likely the state’s first ever same sex divorce.
The value of divorce as a civil institution is extremely high. Unfortunately, things don’t always work out and couples need a structure to disentangle their finances and lives. As divorce is usually an adversarial process, having things like precedent and laws protects both halves of the divorcing couple. Otherwise, the stronger half of the ex-couple would steam roll the weaker half, whether that strength be emotional or financial. Divorce is an important right for that reason and also for tax consequences. If you own property, as in land or a house, it’s going to most likely change ownership status during a divorce. If it’s a divorce, the state doesn’t ask for taxes on this transaction, which is good because splitting up is already incredibly expensive.
So my disengagement with this isn’t because I don’t see the value of gay marriage. I’m very much aware of how it has helped me. But when they started same sex marriages in California, the larger gay rights groups put out word that a ballot measure was coming and asked gays to please look presentable. Which meant: no men in dresses. Because people like me are embarrassing.
Obviously, LGB people should have all the same rights as straight people. But this battle for marriage is incredibly normative in a way that makes me feel uncomfortable. No, I am not just like you, Mr. Cis Hetero, and I refuse to pretend that I am. Which means that I’m not really invited to the party. And despite that exclusion, we lost anyway.
We can’t have ENDA protection for trans people because we’re too weird and gays come first. We can’t have marriages for visibly-trans people because we’re too weird and gays come first. Not that we have either of these things, mind you, but just in case let’s make sure trannies are out.
The support-gay-marriage “cause” on Facebook, which is a pseudo charitable thing one can join, is attached to the HRC, a gay rights group which actively lobbies against trans people and gives assloads of money to Log Cabin Republicans. Are you fighting to be included in the right wing? Is it your dream to be an oppressor instead of oppressed?
I want our side to win. I want the State Supreme Court to decide that narrowing the Equal Protection clause of the state constitution, or declaring marriage not to be a fundamental right, would be a major revision and not a minor amendment, as this would seem logically to be the case. I want marriage for everybody, including me. But can we stop pretending that all queers are just like straight people except we happen to fall hopelessly in love with people of the same normative gender? Because I’m tired of being told to keep quiet and these kinds of normative lies leave too many of us unprotected.

Errata

I said that Mass was the first and only state to rule that dscriminating against the marriage rights of same sex couples was unconstitutional. Yahoo news says that Hawaii decided that first. Actually, I was in Hawaii in 1998 when all of this was happening. christi, I and her parents went, hoping that we would be able to get married. while the case was pending, Hawaiians voted to amend their constitution to specifically discrminate against same sex couples. So any court decision was automatically moot and iirc, the later court decisision just said as much.

Alaska also amended it’s constitution, I believe also in the face of a pending court decision, but I don’t remember as much about this one. The Hawaii one really went down to the wire. It wasn’t certain how they would vote and there was the possibility of a ruling coming at any time and then being reversed only a few days later after the election. Alaska’s situation must not have been so close, or it would have been on my radar.
Yahoo says that Mass can’t amend it’s constitution until 2006. The Mass legislature, however is unhappy.
It is important that the pro-freedom to marry viewpoint is as visible as possible. I’m going to look into possibilities for direct action in Mass. Other things that can be done include writing letters to the editor of your newspaper supporting the Mass court ruling. That is an extremely useful thing to do. Also, posting approval other places, such as your blog or wherever. you could use the same letter for both. I highly encourage you to do this. this is the first civil rights struggle of the 21st century. writing a few paragraphs and emailing it off to your newspaper (and posting it on your blog) seems to me to be the best way for a non-citizen of Mass who lives far away to affect the process in a positive way. If you have other ideas, I’d like to hear them.

Went to the chapel, got married eventually

Well, the largest power blackout in US history had some sidefx. for instance, many east coast states have no backup for water pumping, so many people were without water! As a californian, I’m shocked. systems here are not robust and nobody conserves. they all made fun of us when Enron was looting our power system and causing political rolling blackouts. they actually have infrastructure problems and still use incandescent lightbulbs.
anyway, when the power went out, it screwed up the phones. I could call folks around michigan, but I couldn’t call california and apparently could not receive calls from Canada. So when we showed up at the chapel, we had no marriage license and could not get one until Monday. We decided to go ahead with the ceremony. In attendance were Christi’s parents, my dad, Matthew, Jenny, Owen, Xena, A video taper, a photographer, a minister and an Elvis impersonator. The chapel’s website boasts that they have London, Ontario’s best Elvis impersonator. This is not an idle boast. Recently, there was an international Elvis impersonating contest in Vegas and the London guy won. He was offered a contract to stay in Vegas and perform but, as a city hall worker later pointed out, he couldn’t keep working at our Ford plant and have a contract in Vegas. However, this was not the Elvis impersonator who was at our wedding. We got the understudy who did not go to the Vegas contest. A contest had been planned for the previous Friday in London, to finally settle who was London’s best impersonator, but was cancelled due to the power outage. thus the answer to who is really London’s best Elvis Impersonator remains unknown. Our guy did resemble Elvis, if Elvis said “aboot.”
Our dads walked us down the aisle while Elvis sang an appropriate song. We said some vows, signed some paper work. Elvis sang another song. The minister said that we could kiss our partner (no “you may kiss the bride.”) and our families giggled for some reason. then Elvis sang another song while we walked outside and everyone came out after us blowing bubbles instead of throwing rice Nobody had brought any rice except for Owen who is eating rice cereal flakes these days.
afterwards, we went to a restaurant/bar sort of thing and ate some food. My dad left to head back towards Detroit. He got a red eye to see us get married and then took a red eye back. Jenny had a migraine so Matthew drove her and Owen back to Anne Arbor (the locals say a^^2). Christi’s parents and us went on around the lakes towards Niagara Falls. We did some wine tasting and got a few bottled of very decent Canadian wine. I lived an hour from Napa for many years and never went wine tasting there, but in Canada. I got a flyer for the Niagara wine harvest festival thingee. I’ll post more about that later, if I decide to go. I really like Canada a lot. The next day, we saw the falls. It was like our honeymoon, except that Christi’s parents were there and we weren’t actually married. We drove back to London that night so as to keep our 9:30 AM appointment with the minister to sign the paper work.
Matthew, Jenny and Owen returned to London to be our witnesses. Matthew called us early the next morning to inform us that London’s city hall was closed. He heard it on the news. All of Canada was experiencing rolling black oots. We drove to a nearby town whose city hall was open and made a later appointment to see the minister. the chapel called to say that because of the blackoots, they would have to mail us the pictures and video rather than give it to us. We got to St. Thomas and got their first same sex marriage license ever issued. apparently, they’re supposed to cross out “bride” and “groom” and write in “partners,” but the city clerk didn’t get the memo, apparently. For the record, Christi was the groom. Anyway, after many many many small, boring glitches involving differences between Us and Canadian ATM cards and other impediments, we finally got married. Christi and I are now legally wed.
then at 2:00 in the afternoon, we left London and drove all the way to Middletown. We got a hotel and then, the next day, yesterday, we got an early call from Luoi. the city of Berkeley is working on 5th street, where my truck was parked and put up tow away signs and she can’t find the key anywhere. We called 411 and asked for any towing company in Berkeley. No dice. then christi called AAA and explained our story many times to several service representatives who all explained that since we weren’t members, they couldn’t really do anything for us, but since we were in such unusual circumstances, they would pass the call along to someone who might be able to help. finally, someone read us a list of phone numbers of towing companies. the first one said they could tow the car provided we could find a friend to stand there and vouch it was ok to tow it. Luoi had gone off to the dentist or something, so we woke up Jean and asked if she would do it. she said yes, so we called back the towing place and they told us that she would need to have a key. If we had the key . . . Our theory is that the first place we called is the place that gets the city contracts to tow away cars and they probably get paid more by the city than they would get from us. the next place required nothing from us but a visa number and towed the truck into the parking lot. yay
after that excitement, we got the keys to my new place. I found out several important things about it that my real estate agent didn’t tell me about. First of all, my bedroom is much larger than the 8 by 8 measurement that she faxed me. the whole place is 1100 square feet. Second, it comes with a clothes washer and dryer. third, she negotiated a lower rent in addition to getting Xena allowed in. Christi was very relieved when she saw the house. It’s three stories and I have the whole first floor. It looks a lot like a dorm room in Orchard Meadow at Mills College with it’s wood flooring, white walls, high ceilings and dark wood molding around all the doors and large windows. some of the windows don’t open, but, having experienced both, I’d rather have windows that didn’t open than didn’t close. It’s a nice looking place and the neighbors seem friendly. First things first, we went to the town’s espresso shop. It has gotten better since I first went there, on it’s first day of business in April. then I checked in at school. then we went to buy a bed. the room is actually large enough to accommodate the bed that I already own, but it’s already taking three week for my stuff to cross the country. the bed would have to be shipped after Christi returned, so I would go a couple of months sleeping on hard wood floors. So we went to a bed shop and asked for aloft bed with a desk underneath and they gave it to us cheep because they’re not stocking them anymore. Joy! then we got more household supplies. I got a nice call from Polly. We ate at a local vegan restaurant and went to sleep. Yes, vegan in Middletown. Definitely geared towards very wealthy student hippies.
We puttered around in the morning. the bed got delivered and then we went to the hippie store attached to the hippie restaurant to buy food, stuff to mop the completely filthy floors with. Yes, my new place is great and I should have no difficulty getting my cleaning deposit back, cuz it’s dirty. First one credit card got declined. Then the other one. then both of Christi’s the ATM was no help. I called Wells Fargo. they put a hold on the funds I deposited before I left. My checking account is overdrawn and my visa bill is overdue. I tried to convince the customer service person to take the hold off my my money. No dice. It will be another week. I asked her if she could extend my visa payment thing another week, so I could keep using it and buy food and stuff until my funds cleared. Instead, she gave me a lecture about paying my bills on time. I have automatic bill pay. It didn’t get paid because they won’t let me have my money.
Yeah, so the day before I left, I thought I should deposit enough money to cover my existing bills from getting married, cover some rent, cover spending two weeks traveling and cover moving costs and thus avoid the problem I’m now experiencing. the bank decided my deposit was rather large and so is holding the money just in case… just in case of what I don’t know. the check cleared. Maybe they’re busy reporting me to homeland security or something. god only knows why the funds are blocked. So I spent a lot of time on the phone with bank people today explaining that I’m in another state where I have no food and no friends and no funds except what petty cash I have in my pocket. I have been a customer of Wells Fargo for years. I called my local branch and they said they would try to help, but they explained that they would need to request a copy of the check from the central archives and it would take at least a week. they were very pleasant and as helpful as they could be, but it’s still a week away.
I called the bank that I wrote the check from. they transferred me to the branch manger where I have the account. She was friendly, helpful and told me that the check had cleared and gave me her contact information so wells fargo could contact her. I called Wells Fargo again and talked to the supervisor at the Reno call center. He said that he would personally call my other bank and see if the check had cleared and thus the funds could be unblocked. He promised me a call back either way. It’s 9:00 at night now and I have not received a call. I tried calling back the service center a couple of hours ago, but they said the supervisor would contact me directly.
this could happen to you! you could be in another state with money, no friends and no access to funds if you bank with Wells Fargo. their customer service people at their central call centers are rude. when they are not rude, they’re just trying to get you to hang up. apparently, they’ll make promises with no intention of keeping them. they don’t care that you’re three thousand miles from home and do not have enough cash to wait out the one or two weeks that everything is supposed to take.
I’m furious. I am so closing my account as soon as this mess gets straightened out.
So, in short, it’s been one disaster after another. I used the phone system bill pay to send funds from my other, nice bank to my credit card, so that should be online again in a couple of days, unless Well Fargo decided to hold it too because it comes from the same bank or because I called them too often or because somebody is having a bad day and wants to mess up my life. In the mean time, I have some cash money and half a pizza. Food here is actually pretty cheap, except that I can’t afford to get hippie citrasolv at the hippie market and it was very embarrassing to have to leave without being able to pay for the things I grabbed from the shelves.
On a positive note, I’m very happy that Christi made us buy a bed first. And we’re legally married! yay!

92 People

Christi computed that 92 people actually showed up on saturday. I think it may have been more than that many, but I haven’t done any calculations. I told the caterer 125. people. They sent food for at least 150. Most people only picked at food. But also most people were forced to leave with food. There are still several bottles of wine left and maybe a quarter of the keg. Fruit juice was the most popular and under-supplied beverage. All of the remainging soda pop was just used in an unsuccessful bid to unclog the shower drain. Since I’m taking five more showers here at the most, I’m not worrying about this further. Anyway, if you want some bottles of red or white wine (the white, surprisingly was better than the red. has white wine been overlooked recently?) or a pint of heffeweizen, you should drop by.
I’ve never had so many people in my house before at once. I didn’t even talk to everyone. High points of the festivities included Cola climbing up into the bunk bed and throwing her fork at people. Someone (Charles?) giving Christi flowers with a naughty name and Christi’s aunt yelling, “she’s got naked ladies!” Christi’s grandpa asking people, “Has anyone seen the groom? I’ve been looking around and haven’t found him yet.” He also told people that he was the grandpa of the whole proceedings and he told Christi’s grandma (from the other side of the family) that she was just a young thing. she enjoyed that quite a bit. Apparently, she was checking out Mitch. High points also included Tiffany’s toast, “I’d marry them both . . . We’ll change those laws next!” After which Christi saw her mother and aunt both take big gulps of champagne.
I think more parties should be large, mixed-age functions. There’s something really great about grandma oogling the best man and grandpa saying “who’s that naked girl?” when he saw Jen Stout through the stairs and kids runnning around attacking the cats and riding the dog. Perhaps traditional holiday parties should be resurrected, like big Fourth of Juky BBQs and December house parties. And more folks should get married.
In two days, I’m leaving for Vegas, and then the movers come and then I’m out of here. I’m going to (somehow) squeeze in a day trip to see my cousin, since she is too old to travel. And then gone. I’m leaving in a vw, don’t know when i’ll be back again. I thought I’d come home for the holidays, but with Christi in Paris, I might not. And she wants to spend the summer in New York at Bard . . .. And some of my friends will, themselves, move away and some will die and so there are people that I’m saying goodbye to now that I will not see again.

My life

Music

So the two bands I’m in have been in high-intensity rehersal mode. Tennis Roberts was gearing up for it’s first public gig and Polly’s flute band is preparing to go play in Vegas next week. So TR practiced on Wednesday and then played on Thursday. We didn’t do as much publicity as we should have. A woman who likes ED came and another woman who I used to play in a band with and her friend and these two guys that nobody knew. That was our entire audience. The two guys were in the back yelling “Slayer!” whenever ED played, cuz they were mocking his heavy distortion. They were making “satan” heavy metal hand getures. “Rock on!” they yelled. We were mocked by our sole “stranger” audience members. Christi was also there running sound and Polly was our opening act.
One of the two guys looked really familiar, so I wanted to talk to him after Polly said she didn’t know him, but he and his friend left before our set was over. Christi later identified him as Amy X Neuburg’s husband. Maybe he remebers meeting me at the Other Minds festival? Maybe he just saw us listed on the Transbay Calendar?
Yeah, so it would have taken 35 people to break even and as we fell a bit short of that, we owed the club some money. the people working there liked us though and said next time we could just split the door 50/50 so we wouldn’t owe them if we had attendance. It turns out that another Matthew Sperry memorial concert was being held at the same time, featuring Pauline Oliveros. And then at the last minute, Tom Waits decided to play. So all the New Music types, except those two guys, were prolly across town watching Tom Waits.
Since I’m about to move, that was probably Tennis Roberts’ last gig as a quartet, unless we suddenly get a call in the next couple of days. The band wants to stay together as a trio. They’re concerned about rehersal space, but Mitch’s bathroom is more than big enough to fit a trio. Instead of being a “garage band . . ..” Also, a bathroom would give experience playing in echo-y noisy enviroments and high humidity. If we rehersed in the bathroom, we’d have been better prepared for being on the tiny stage at 21 Grand.
In other news, the Fender Rhodes works now. I tuned it tonight.

Moving

So I’m putting things in boxes and stuff. I just faxed a lease application to CT. Tommorrow, I’ll overnight the rent and deposit. I’m a bit concerned about signing away a lot of money and two years on a place that I’ve never seen. The lease agreement is insanely restrictive. Don’t sneeze in the hallway. Well, not really, but close. I’m probably not allowed to modify the heater to run on biodiesel, but as it’s not specifically outlawed (unlike, say, shaking rugs out of windows), I’m sure it’s fine.
Tiffany moved out today. Her spot is empty. She’s gone forever. sniff. It’s very very empty seeming downstairs with everything packed out and Tiffany gone. It’s lonely.

125 People

Approximately 125 people will come over to my house tomorrow. Actually, today. That’s a lot of people. We failed to get a band or even a string quartet, but we did get food, wine, beer, soda pop and chairs. Nothing to listen to, but something to sit on. I’m kind of chagrined at the lack of live music. We have a todo list for tomorrow:

  • get chairs
  • flowers
  • ice
  • put tuba in storage
  • pick up food
  • buy a nice shirt
  • get grandpa from the airport
  • pick up the keg
  • clean out ice bucket
  • get ice
  • clean catbox
  • close closet doors
  • mail rent check to CT

I can’t understand why the divorce rate is so high. It’s time for bed.

Update

I went to the first night of the SF Electronic Music Festival. It was really groovy. I was going to post a detailed review and then go to all the other nights, but alas. I had a prior engagement the second night. I looked up the third night listings and it included a piece called “Bukkake Clown” for “synthesizer mouth and face.” Ah. So I stayed home. And on the fourth night, sailing went later than planned. such is the nature of sailing. We replaced all the standing rigging on Mitch’s boat. “Standing rigging” means all the steel cables that stay in place and are not changed mid-sail via lever or pulley or any other means. In order to replace all of this rigging, the mast must slowly be lowered. have all the old cables detached, which includes plyering the hell out of some pins, have new cables reattached and then slowly reattach the mast. The mast is long and heavy and several of us were standing on the unbolted side of it, which is like standing downwind or a tree that you’re sawing, except with more cables. It nearly hit Jenny in the head, but disaster was averted. It did not smash down and sink Mitch’s boat or a boat across from Mitch as that slip was vacant.
Then we went on a sunset sail. The wind gets mighty gusty right after the sunsets, creating big waves which splash over you ad then don’t dry out, cuz there’s no sun. Brr.
Then the next day was brunch with nervous family members. Coversation was neutral. The occasion was Christi’s and my engagement, which was only mentioned twice: once during the blessing and the second time in a gag gift from soneone not present. We were given bridal body detergent. “Now eliminates second thoughts!” Some friends were also present. One significant other said she was going to vote for Arriana Huffington. Nevous silence decended. Actually nervous silence decended several times. If I were going to do this over again (next time I get married to Christi . . . ), I’d serve champagne more agressively than the massive amounts of coffee that folks were drinking.
Then band practice, which went well. We’re working on playing five minute long songs instead of two hour long songs so the audience on thursday will feel happier. And then it was already too late for the last night of the SFEMF, so we went to Fogardy’s for dinner.
Today, I went to work with Christi and was unable to get Quicktime Streaming server to stream an mp3. On a mac with a mac client, it refused to stream. arg. Then I saw the Weather Underground movie with Cola and Andra and then we went out to dinner. It’s nice seeing old friends. I wish I had more tie to rekindle friendships before moving away.

You must register to vote! You must vote in the recall election

Ward Connerly’s initiative will also be on the ballot. This guy is the anti-affirmative action guy who is also the UC regent. He is trying to destory all affirmative action in the world, which of course has been disasterous. The UC law school used to be integrated, but last year there were zero African American men in the program. None. He chased them all away. Of course, this looks bad, so he has a solution: quit counting. This initiative ought to be called the Bury our Crimes Initiative. He wants to stop counting race in any government tabulations.

Having a problem with too many black men going to jail? Is it making your justice system look racist? Stop counting! Are police officers stoppiing people for Driving While Black and making your justice system look biased? Stop counting! Are resources being unequally distributed and making your education system look segregated? Stop counting! Is your law school no longer attracting minority candidates because you made them want to aply elsewhere and it’s embarassing? Stop counting!
The NEW Bury our Crimies Initiative can help stop the public from being aware of racial profiling, racism and segregation. It can also make it darn near impossible to fix or redress persistent racial problems! Bring back the good old days and hide the consequences with the Bury our Crimes Initiative!

You must vote against this. Since you’re voting anyway, why not run for governor? It only takes 65 signatures to get on the ballot for the recall election. Anyone who can vote (YOU! If you register!), can run. There is no primary. There is no runoff. Whoever wins, wins. Even if less than 10% of voters approve them. Heck it could be 1%. Whoever gets the most votes, wins. It could be you! Just contact your county registrar of voters for forms.

I will back your campaign!

If you (yes, YOU) run for governor, I personally pledge to help you get signatures to get your name on the ballot. I will help design your website. I will sign any petition to get anyone on the ballot. I encourage you to also sign any petition that you come across. Signing a petition is not an agreement to vote for someone, so you can sign as many petitions as you want, you just have to be registered to vote. Help each other out! Sign your friends’ petitions!
If enlisted in your campaign (I will help out any candidate, even strangers whose platforms I disagree with), I promise to stand in front of fourth street buisinesses with your petition and solicit signatures. All you have to do is be willing to actually go through with it. You must write a blurb for the sample ballot and be willing to have a website and talk to the press or at least issue a statement of some kind.
Seriously.
Really
You should
I’ll help

Register to Vote

Reasons to Register

  1. Vote to Recall/not the recall Gray Davis
  2. Vote in the primaries for your favorite Democrat (note: you must register Democrat to vote for one)
  3. Stop the anti-gay constitutional amendment

How to register

Voter registration forms can be found at the DMV, at the post office, at the library. Next time you buy stamps, why not grab a registration form? Heck, grab a bunch of them and give them to your friends that buy their stamps from their ATM. Or you can Register online! Click that link now! NOW!!
Ok, so you don’t want to get jury duty Who does? On the one hand, if you were on trial, wouldn’t you want smart jurors such as yourself deciding your guilt or innocence? On the other hand, if you throw away your jury summons without opening it, there’s no proof that you ever received it.
Back to the point, even if you don’t care about who governs California and could care less about voting for Kucinich (or whoever), we must stop the anti-gay constitutional amendment.

Stop the Amendment

Certain rightwingers are terrified of Christi and I getting married. They think society will collapse. They want to do anything they can think of to stop us, including ammending the US Constitution. Obviously, Christi and I getting legally married is not going to cause society to collapse. Christi and getting married is a good thing. The proposed amendment is, therefore, a bad thing.

Who Supports it

Bush says there’s no need for an anti-gay ammendment “yet.” Frist initially supported it, but now is echoing Bush. There is a serious danger of it passing.

How to stop it in congress

Ammendments must be sent by congress to the states. That means that it must pass congress. Contact your representatives and tell them that you oppose it. Contact Diane Feinstein. Contact Barbara Boxer. Conact your represenative in the House. Tell them that you support gay marriage and that you oppose the amendment. Tell them also, your address, name and that you are registered to vote. Or if you are not registered tell them that you will register (unless, you can’t because you’re a non-citizen, underage or in jail or on parol for a felony).

How to stop it if it passes congress

Three quarters of states must ratify an amendment for it to be added to the constituion. This can be insurmountable even for good amendments, like the ERA. This means that we can stop it. But we need to be ready to vote it down. We can’t make assumptions, even in “liberal” states like California. An anti-gay marriage bill recently passed in California by more than 60%. Vote turnout was really low then. That means that people like you didn’t vote. The more of us register to vote and show up to vote against this, the less likely it is to pass. You don’t even have to show up. Just apply for an absentee ballot.

How to register

Voter registration forms can be found at the DMV, at the post office, at the library. Next time you buy stamps, why not grab a registration form? Heck, grab a bunch of them and give them to your friends that buy their stamps from their ATM. Or you can Register online! Click that link now! NOW!!