A very interesting article was posted a few days ago on the devChix website about women in tech communities. I think it is a worthwhile read for anyone in a tech environment, male or female. Here is the direct link to the article, so go read it before you continue on to my thoughts.

Gloria makes some great points in this article, but I think that her points are somewhat clouded by her tone. I can see how male readers may feel attacked because the article is so one-sided and focuses on what men are doing wrong and how to accommodate women in tech communities, rather than how we can all work together to make everyone feel welcomed.

I am very new to the professional tech world, so I do not have as much experience with the online communities that Gloria talks so much about in the article. She has given a great description of patterns she has noticed in women-only and mixed-gender communities. Most of the problems she describes come down to a difference in how men and women communicate amongst themselves and with each other. Of course, this is a problem in all professional environments, not just technical. (Hell, communication between men and women is a problem in everyday life.) Both genders have natural tendencies, and it is difficult to break through the stereotypes. We should all take a moment to think about our natural tendencies and how they affect the people we interact with. Maybe even just taking a moment to think about it will help us move a step in the right direction.

I particularly enjoyed the "For the men who care: Tips for communicating with women in Tech environments, online and Face-to-Face" section of the article. Yet while I agree with almost all of what she said here, the problem is again the tone. I think it makes women sound like we expect tech men to be creeps. In my opinion, the first three points in this section are unspoken laws that need to be brought up every now and then to remind everyone what a professional environment should be like. (And I totally agree with number four, so invite me out for beers!) Yet I also think that this section is incomplete. I don't think all the tips for interacting with women should be about sex and not trying to jump into their pants. I think number five should be this: We all know men and women communicate differently, but that doesn't mean you have to change your whole style to speak to someone of the opposite gender. Just realize that your words can be interpreted differently than you might mean them, so think before you speak. If you think you might offend someone, rephrase. If we all treat each other with a little more respect, we might get somewhere.

In the end, it all boils down to communication and respect. We all need to learn to respectfully communicate with each other as humans, and not specifically as men or women. It is sad to me that there is a section in the article entitled "To make an online community more women-friendly, try these suggestions." Shouldn't we just be trying to make the community more friendly in general?

Thank you to Gloria for a very interesting article. I think it has and will continue to get people thinking and talking about how they can better interact with each other on a regular basis.

Just recently, I learned how to write my own rake tasks. My co-worker, Matt Heidemann, was nice enough to walk me through it after work one day. Everyone who is reading this probably already knows how to do this, but I figured I'd write about it anyway just for fun. My first rake task was very simple and just used system calls to tar and gzip a folder in my /vendor directory. Here's what I did to write it. (Note: the names of my folders and tasks have been changed to protect the innocent.)

First I created the rake file in my /lib/tasks directory, let's call it mytasks.rake. The first thing I want to do is describe what my rake task is going to do. Do this by adding desc before the task. Next, define the task with task :task_name and a block containing what the task will do.

Wow, that was easy. Now this task can be run by calling rake folder_zip at the command line. Sweet.

A couple things to note:
In order to access your models in a rake task, just add "=> :environment" after the task name; like this:

You can add a namespace block around your tasks if they fit into one category. So then you can call your tasks like this: rake folder:zip, rake folder:someothertask, etc.

So that was pretty darn exciting for me, since rake tasks used to be a such a mystery. There is a nice rake tutorial here that gives a much better explanation than my simple overview.

At Integrum, we do "tech-talks" every Tuesday and Thursday. A member of the team gives a short presentation about something technical so as to share his or her knowledge with everyone else. I personally enjoy these talks because it gives me an extra opportunity to learn cool stuff from my oh-so-brilliant co-workers.

This past Tuesday, it was my turn to present during tech-talk time. I never know what to talk about, so when Josh suggested that I talk about Runt, I ran with it. Last week I was introduced Runt while trying to incorporate recurring events into a project. Runt is a gem that implements recurring event patterns as described in a paper by Martin Fowler. It allows you to easily define a temporal expression, which represents a set of dates and/or times that an event will occur.

The basic idea is to define a temporal expression using one or many of Runt's temporal expression classes and then use the include? method to ask the expression if it includes a particular date. In the example below, I created a temporal expression for an event that happens every week on Thursday.

I definitely recommend taking a look at Runt if you need to work with recurring events. Below are the slides from my presentation, and here is the rubyforge site for Runt.

Lindsay Ucci (aka Ooochie!)

Lindsay Ucci

Ruby/Rails developer and wannabe pastry chef. :)

Welcome to ooochie.com! I'm Lindsay Ucci, and I'm a web developer in Boston, MA. If you're in the area, please get in touch!

Design by Dan Ritz, FeedBot by Matt Forsythe, and Powered by Mephisto