She's Geeky conference this weekend in Mountain View

This Friday and Saturday I’m going to the She’s Geeky conference at the Computer History Museum in Mountain View. Take a look at the proposed topics and at the list of women coming to the conference! It was a great conference last year – really a blast.

She's Geeky conference

Thursday night there is a big She’s Geeky dinner get-together at Ming’s in Palo Alto, and I’ll be at that too along with my sister Minnie from Thank You For Not Being Perky, who has been a web developer for about as long as it’s possible to have been a web developer, and who also blogs for Indie Crafts Gossip and makes the most amazing spats ever.

I have a bunch of possible things I could speak on. I’d like to hear and talk about WordPress, php, Drupal, developing on a Mac, Ubuntu, and of course am always happy to talk about all the other things I generally end up talking about: blogging and general Web 2.0 stuff, social media, women, mom bloggers, feminism, anti-racism, disability rights and access, and science fiction and fantasy.

Mostly I’m hoping to meet other women who like programming. No genius hackers required. I am a little more low-key than that. I would not mind showing off my newfound stupid awk tricks, or how I am pretty good at coaxing information out of the del.icio.us api these days.

Likely I will spend some time teaching people stuff they want to know, sort of at random, or fixing their blog templates, because it makes me happy and I feel very popular when I treat my ability to do tech support as feminist activism…

Last year’s She’s Geeky conference in Mountain View was fantastic! I met so many people from the Systers mailing list and in general felt super inspired to be at a women-only geek conference!

Here’s some other conferencey stuff coming up for me this spring and summer. It’s a lot of events!

SuperHappyDevHouse

Not a conference, just a hangout. But really great! SuperHappyDevHouse30 is coming up Jan. 31 in Menlo Park. I always have a good time at these! I almost never know anyone there, and there’s usually like 1% women, but people are very friendly and I’m convinced this could be a great place to have regular geek girl meetups. It’s usually at an actual house, so I’m curious to see what the feel is like when it’s at Sun.

Potlatch!
At the end of February, in Sunnyvale, I’ll be at Potlatch, a small, bookish science fiction con that has Books of Honor instead of Guests of Honor. I’ll be on a panel about a book by John M. Ford, Growing Up Weightless. The other book of honor is Ursula K. Le Guin’s Always Coming Home. The con has only one programming track and is full of Bay Area, Portland, and Seattle sf geeks, intersecting fairly heavily with the WisCon (feminist science fiction) folks. L. Timmel Duchamp will be there, and Vonda N. McIntyre, and Ursula K. Le Guin, and a lot of other fantastic writers and readers.

ETech!
I’m speaking at ETech in early March on “DIY for PWD: Do it Yourself for People with Disabilities“.

With a cultural shift to a hardware DIY movement and the spread of open source hardware designs, millions of people could have global access to equipment design, so that people with disabilities, their families, and their allies can build equipment themselves, and have the information they need to maintain and repair their own stuff.

SXSWi!

I’m speaking at SXSWi in a “core conversation” about Open source and disability access!

Sex:Tech

And then at Sex:Tech about sex information and disability online, with Jen Cole from GimpGirl!

WoolfCamp!

Just recently Grace Davis emailed to say she’s thinking of holding another WoolfCamp, possibly at her house in Santa Cruz in April! I’ll keep you all posted.

woolf camp

WisCon!
The BEST. WisCon is the world’s largest feminist science fiction convention! End of May, in Madison, Wisconsin. The book I’m editing is about last year’s WisCon!

BlogHer – Geek Lab!

I’m helping to organize BlogHer’s Geek Lab, which will happen in July in Chicago alongside the regular conference. We’re going to have two presentation areas separated or curtained off, with projectors and seating for about 30 people; one for beginning topics and the other for intermediate/advanced. Slots for talks will be 30 minutes, with 15 minute breaks. The idea is that people can present on a topic and then commit to hang out for an hour afterwards to go in depth, at the area with tables in between the presentation corners. These “office hours” can go on while other people might just be using the space as a place to hang out with their laptops or get together to share information.

Lost my mind in PHP

The last few days I went a little nuts thinking about PHP and rewriting a very horrible messy script. I’d write something, make it work, write a little more, break the first bit, go back to look at the first bit and find that I couldn’t understand my own code that I’d written the day before. I ended up throwing it out completely, waking up the next morning and writing the entire thing in a nice, neat, correct way. Within a day and a half, it worked, and is readable. The most important things that improved this sad blob of pointy-looking things and regular expressions were:

– decent formatting, without slacking off! Equal sign in vim, you’re my pal.

– abstract things out into functions. Do it twice? think about making it a function.

– But don’t always, if it’s going to make a simple thing confusing. Keep it clear!

– Name the functions logically.

– Really think about naming variables so that the code makes sense when you read it.

I struggled with understanding what the hell I was doing in the first script because, I swear, everything was named $tag and $another_tag and $taglist and $tagfeed[] and $tag->tag until I was lost in a maze of taggy little passages, all alike. How very, very embarrassing! If you ever see that code, please burn it!

Now all the variables have very logical names so that everything makes sense. Doing that made me understand what I was actually trying to do — much better than I had understood it before. Everything became clear and fell into place.

The php.net pages are truly awesome. I did struggle for silly amounts of time trying to figure out what the hell to do with strings. Like do I want egrep, preg_match, substr, strstr, or WHAT? (I usually end up with preg_match since I know perl regular expressions reasonably well.) But I appreciated php.net/function pages very much. The explanations make sense, there are examples, the lists of related functions often lead me to stuff I want to know, and the comments by other users *completely rock*.

Meanwhile, I read PHP Sucks, But It Doesn’t Matter on codinghorror.com, and the entire crazy comment thread that is half computer science “real programmer” snobs, half even realer programmers rolling their eyes, and half people who know they are the 3rd half and who are Microsoft types (in other words, weird aliens from other universe). All I can say if any of these guys calls me a “script kiddie” I will enjoy kicking their teeth in!

Bike? I don’t need your bike! I can kick your ass with these here training wheels! Snobs.

My thingamajig now reads tags in from de.licio.us, parses them, decides what kind of thing they are, pulls out different kinds of posts, and builds lists of post titles by subject grouping and source in a somewhat complicated way. Then it writes all those lists out to a jillion little static files which will be cached… everything will be so much faster and more polite to the delicious servers this way. Joy!

Butch as hell sys admin hacker women who will kick your ass

From a few completely different sources I have heard of nascent conferences to train women how to talk at tech conferences. From everything I have seen, women know perfectly well how to talk at technical and computing and web 2.0 conferences. But I still see posts like Stowe Boyd’s in puzzlement asking “Where are the women speakers?”

I would like to offer myself as a resource for tech conference organizers who can’t figure out how to find “the most qualified” women speakers on particular topics. Ask, and I will help to hook you up. If you find a speaker you are happy with based on my recommendations, then pay me per successful connection. I propose as well that if you usually lean on the few geeky women you know to diversify your conferences, pay them in the same way.

So, back to that issue of speaker training. Great idea, valuable service. I’d like to question the idea that women don’t know how to speak at conferences. Wait, I thought we were the communicators, the ones with the social skills, the teachers and professors, used to being heard by an audience. It’s not just about women who don’t know how to present themselves – it’s also about people who are so complacent in their own circles that they don’t know how to listen to the qualifications and capabilities of amazing women.

Installing Eeebuntu on an Asus Eeepc 900

Last night I installed eeebuntu on my Eeepc 900. You see how I love this little beast!

The instructions and forums on eeebuntu.org were helpful. I realized while I was doing the install that there’s Ubuntu Eee as well and that eeebuntu is basically just this one guy, Steve or “bezdomny”. Since he is super responsive on the forums and people report good experiences with the install, I figured it is a good bet as an OS. Ubuntu Eee also looks good!

I didn’t take good notes but here is my memory of what I had to do. I first tried to create a bootable USB stick from my Mac, but was missing syslinux so I used Oblomovka’s MacBook running Ubuntu to reformat it with parted (set 1 boot on). Then put the eeebuntu iso file on the USB stick with bezdomny’s isostick.sh script.

Then my eeepc booted from the USB stick. I hit “escape” during bootup and got a screen with 4 choices; the 4GB and 16GB drives on the eee, and two partitions on the USB stick. I chose a USB partition at random (wrong one) and then the other, which worked beautifully! It took a few minutes to boot. Wireless didn’t work, but when I plugged an ethernet cable into my Eee, I was on the net within about 15 seconds without having to configure anything.

So, I tried to follow this advice to get wireless working,

http://eeebuntu.org/forum/viewtopic.php?t=175&highlight=wireless

But then got a little bit confused because I wasn’t sure where I should install madwifi and if it would work if I rebooted from the USB. At that point I decided I’d just take a chance and install over the totally working, but annoying and ugly and Windows-like, Xandros linux install that came with my eee. (Seriously, look at this, even their web site gives me hives.) It occurred to me that I might keep Xandros on the 4GB drive and install eeebuntu on the 16GB drive, and be able to boot either one. Which, if I couldn’t get wireless working on eeebuntu, would spare me scrambling around trying to re-install Xandros. I went on IRC at irc.freenode.net and asked on #ubuntu-eeepc if anyone knew if that would work. No one answered. I got on #ubuntu-women just to feel braver but didn’t ask anything. After some more poking around forums I decided to hell with it, blow away Xandros and if I have to reinstall it, comprendo bastante este video guía para instalearlo.

So I installed on the 4GB drive. It went completely smoothly, quickly, I rebooted, hey presto magic huzzah, I had working ubuntu on my eeepc. Plugging into ethernet worked smoothly again. I got the madwifi fix with wget and installed it. It didn’t work… I re-read the thread on the forums for the millionth time. They kept saying “turn on the wireless” and finally Oblomovka and I got it that we had to turn on wireless in the BIOS. So, reboot, hit F2, looked at “Advanced” and “Devices” or something like that, it was pretty intuitive, and got a list of stuff enabled and disabled. I enabled wireless and the webcam. Rebooted, and wireless worked SO beautifully. (Not like Xandros which was incredibly clunky and failed to get me onto my own home network half the time.)

More wireless links: https://help.ubuntu.com/community/EeePC/Fixes

Next problem to fix. The mousing was crazy. Or, really, the touchpad. I don’t have a mouse, but I still think of it as “mousing”. There was a system preferences panel for mouse and display, but nothing for the touchpad. A bit more reading and I was lost… but then a bit MORE reading and google-fu and I found that going to Applications, then Add/Remove, then searching All Available applications for “touchpad” or “synaptic” would get me the control panel that I needed. That worked but during install I got a warning to change a setting in xorg.conf which I will tell you is in /etc/X11. It’s helpful to look at some examples of xorg.conf options. Then, while in vi putting in the setting, I realized my keyboard is messed up and thinks that the ” key is actually an @ sign. So I’ll have to go figure that out and fix it — I know I chose US keyboard layout — what could it be?

What I need to be able to work off this machine on my trip:

Firefox, Greasemonkey
A good chat client
vim, perl (python would be nice)
the touchpad not to be freaking crazy. Tap-to-click OFF. Who uses that! Omg! Sucks!
Not sure if I will just suck it up with email and go back to Pine, or install Thunderbird and migrate my mailboxes, or use webmail of some stripe (ugh) Currently am favoring Pine because I’m lazy; Thunderbird only if I have time to install it.

Oh also, I’m resolving to document this more formally and contribute docs-writing to eeebuntu.

** further updates later today **

How to create a web form to talk with Google Docs

My friend and co-worker Jenny from Three Kid Circus pointed out a cool feature of Google Docs to me today. I use Google Docs spreadsheets mostly as wiki-like documents for a group of people to edit a web page in table form. In other words I use them for layout of a web page, and maybe for sorting columns, and sharing fairly simple information.

In another conversation I had recently, Elisa Camahort was talking about wanting a simple widget sort of thing for party RSVPs, but that would be more than a link to her email address – it would be a form for people invited to fill out. So, it occurred to me that the form-constructing capability in Google Docs would do all the things she wanted.

As I thought further, I realized it also might be helpful to my friend Squid Rosenberg, who has a son whose educational plan is managed by a fairly large group of people, using Google Docs, tracking his progress and patterns with a daily record. Similar documents could be very useful for anyone tracking health care issues, for a team of caregivers for an elderly person, for example.

Since this is a fairly new and obscure feature, and somewhat of a convoluted process to click around to where you even understand what the feature does, I thought I’d describe how to set it up.

1) Go to Google Docs.

2) Create a spreadsheet and call it “My potluck dinner” or whatever.

3) Make columns for whatever you like — name, email, # of people you’re bringing, what kind of food you will bring to the potluck.

4) Click “share”.

5) Click “invite people to fill out a form”.

6) Click “Start editing your form”.

7) Click the Save button.

8) Click “Choose recipients”. (You don’t have to put in any actual recipients.)

9) Click “Embed”, in the upper left corner.

10) Copy the code and stick it in your blog

Each column in the spreadsheet shows up as a title and text input field in the form! You can also add new fields.

It looks like this:

From there you might have to twiddle the formatting to make it look halfway decent. It is not set up to look nice in a blog sidebar, but it looks just fine in posts or pages in TypePad, and Blogger. It doesn’t work in LiveJournal or WordPress because it uses iframes, though in WordPress you can install a widget to get iframes to work.

The resulting input into the spreadsheet looks like this:


(click image to see it bigger)

Note the timestamp, automatically added!

So, this could be useful for many purposes. My potluck dinner example is frivolous, but anyone who’s suffered through the annoying interface of the spreadsheets on Google Docs, or who uses them for individual or group data entry, could set up extremely easy web forms with this hidden-away feature.

I would like to send a polite nudge to the Docs development team to uncover the forms feature! It would be very nice if it were an option to click directly from the spreadsheet or other document.