header image

Tarah Wheeler Van Vlack to speak at Seattle Central Community College, Jan 18th, 3-5PM

January 11th, 2012 § 0 comments § permalink

Ladies and Gentlemen:

I’ll be speaking as a joint guest of the Ignite program through Seattle Public Schools and the IT department at SCCC.

People of all ages who want to know more about becoming a female programmer and entering technical careers are welcome to attend; I’ll be speaking on interview techniques, what to expect from your colleagues, how to succeed, and the rewards of software and web development compared to many traditional women’s career paths.

Please let your friends and mentees know; I am looking forward to answering your questions and giving you the insider information you need to succeed!

Tarah Wheeler Van Vlack, the Cowgirl Coder, to speak at SCCC 01/18/12 3-5PM

Tarah Wheeler Van Vlack, the Cowgirl Coder, to speak at SCCC 01/18/12 3-5PM

What is it like to be a freelance web developer?

July 26th, 2011 § 0 comments § permalink

I want to take a moment away from my usual howtos and commentary to offer some encouragement and etiquette tips for my fellow web developers, especially the ladies starting out.

Doing freelance work with the occasional longer contract is difficult to break into, requires a thick skin, and demands careful reputation-gardening. Before I reached the point where I was getting contract requests and recruiter emails on a daily basis, work was thin on the ground. I did IC (individual contributor) work, and it’s taken a lot of time and effort to reach the systems architect and senior management positions for which I am now being recruited.

I maintained three principles which I use every day, especially when I have to deal with aggressive recruiters, tight-lipped company reps, and the inevitable professional relationship snafus.

(1) Say something nice about someone every day.

In late 2009, I had a tough personal situation to deal with, and after it was over, I knew I could react one of two ways. I could be angry and sour to anyone who asked, with the excuse that I was having a tough time, or I could find a way to turn the situation into personal development. I started looking over my friends list on Facebook, and made a point to say something nice about a friend every day. It got me back in contact with people I hadn’t talked to in quite a while, provided encouragement, and sparked memories. Likewise, when I’m dealing with professional issues, I write recommendations for my colleagues on LinkedIn. Many people I know work extremely hard without a great deal of positive reinforcement or top-down encouragement due to the nature of contracting and freelancing. No one ever tells them that they have serious skills, that they’re a pleasure to work with, and that you’re glad to have them on your IM contacts list for sticky coding questions. Nearly every company has a policy of never giving any feedback whatsoever on performance to anyone who’s not an FTE–this is to avoid legal issues. That’s good for the legal department, but doesn’t provide much in the way of constructive criticism for personal growth and improvement in skills. This is my way of helping others with this problem. Say nice things about your colleagues and professional contacts; it draws you together and provides opportunities to turn sometimes difficult situations into networking goldmines.

(2) Be courteous to recruiters, but do not let them run your life.

I am deluged with emails from recruiters on a daily basis. This is the very definition of a high-class problem; I am quite aware. Still, imagine getting a variant on this email about five times a day:

“Hi! My name is XXXX, and I am from XXXX Consulting, Inc. I came across your resume, and believe that you may be absolutely perfect for this (.NET, C#, Java, OSS, MS, frontend, backend, lead/IC/senior/junior, DBA, FTE/Contract) development position I have. Please send me an updated copy of your resume as well as current contact information, salary requirements, availability and geographical location, and a point-by-point answer to each of the ten questions below which will determine your suitability for this position.”

Now, these people are overworked, underpaid, and are dealing with a paradox whereby the people most likely to respond to them are not currently employed at high-paying and prestigious positions. However, almost all of my best contracts have come from recruiters. This means that I absolutely do want to talk to them, if they have something I need to know–but answering them all in detail would be more than 10% of my day.

I’ve come up with the perfect solution. I send a Gmail canned response to all recruiters thanking them for their interest in me, giving them a quick rundown on the positions I will accept, my base salary/equity/wage/benefit requirements, a link to my website where my resumes live in pdf and txt format (the pretty version and the text-searchable version), and my geographical location. I ask them to please send me the job description, geographical location down to the city block of the company for which they’re attempting to recruit (often they cannot give out the name of the company, but I need to know what transportation/commute will be like), and the salary.I let them know (as courteously as possible) that I will not respond to any reply that does not contain that information.

So far, it’s worked like a charm without sucking my time the way recruiting emails used to do.

(3) Maintain your relationships with the people with whom you have worked.

Facebook your friends, and LinkedIn your colleagues. Every nerd hates to hear it, but the people you know and with whom you collaborate are the best resource for gigs, recommendations, inside news, and a heads-up when you need it. THANK THE PEOPLE WHO HAVE HELPED YOU. When people point me to gigs, recommend me, help me out, and provide me with information, I thank them thoroughly and in written/gift form. Get a case of decent wine and send a bottle and a thank you card to the people who have helped you professionally. This isn’t because you want something from them; it is because you are grateful for their help without expecting that they’ll do so again. I mean it; sincere gratitude is important for its own sake.

Those three principles help me out when I am in contracts and looking for new ones, as well as closing down old contracts. Probably the biggest piece of advice I can give is this: take the time to be courteous to those who are helping you and supporting you, whether you know them or not.

How to become a web developer.

July 20th, 2011 § 2 comments § permalink

Just do it.

I’ve been running a web development and consulting company, Red Queen Technologies, for 9 years. I have come from doing page templates to being called in to demonstrate agile development techniques for mid-size companies and running full multi-tiered architectural and systemic designs for sites.

I get questions all the time from friends and colleagues on how to start a web development company. The first thing I tell them is that you have to know how to code. I tell them to buy the HTML/XHTML/CSS for Dummies book, and jump in. If they’re too afraid to try to do the job that they want to manage others doing, they’re not suited to running their own dev company.

Just do it.

The other day, I was in a boutique, chatting with two lovely friends of mine. These ladies are a bit older than me, by about 15 years. We all share an interest in haute couture; we were talking about Prada purses, I believe. These ladies are intelligent, beautiful, and entrepreneurial; one runs a successful clothing store, and the other is in real estate. When they asked me what I did and I told them, the realtor said “I could never do that. You are so much smarter than me.” This made me quite angry, honestly. There is a self-defeating voice inside many women that tells them that only very smart women can run their own tech companies, and since they’re not smart, they can’t do it. This woman was excusing herself from trying technology out of fear.

Just do it.

Get some server space, view page source for any web page, paste it into a text document, name it iwannacode.html, and upload it to your server space. View it in your browser. Start fixing things. Learn.

Just do it.

Maintaining an empty inbox

May 26th, 2011 § 0 comments § permalink

The joke runs like this: When you have something you need done, give it to a busy person.

It’s very true, and for several reasons. Busy people have multiple projects, demands on their time, and responsibilities. They are trusted with increasing responsibility because they’ve proven themselves capable of handling tasks efficiently and competently. Part of being busy involves a deliberate strategy for time management. If you know how to manage your time, you accomplish more and better than those who do not.

Over the last several weeks, I’ve had a couple of (to me) strange responses to my emails concerning two different issues. The responses looked like this: “I’m sorry I took so long getting back to you; I am BURIED in email and my inbox keeps growing!” They’re not people I work with closely or may even need to talk to again, and I would have serious qualms about bringing them aboard any project I develop or manage in the future. It also tells me that in whatever priority system they’re using, I fell off the radar.

Having an unmanageable inbox is a sign that you can’t manage multiple projects. I do not say an empty inbox: I said unmanageable. There are a lot of different strategies for coping with inbox overflow; go read every twentieth post at Lifehacker. People may choose to manage their inbox with tagging, folders, auto-reply…whatever your choice, being incapable of dealing with the mess is the same to me as if I’d walked into your office to assign you greater responsibility on a project, saw giant piles of paperwork everywhere, and decided that you obviously had enough to do without me adding more on top of your too-heavy burden.

If you reflect on that for a minute, you’ll ask yourself how many times you’ve given that excuse for not responding to an email rapidly or with the correct information. Has it cost you the added responsibility that might have led to a promotion or better position?

I keep an utterly empty inbox. I counted when I started writing this post, and yesterday, May 24th, I had 89 email threads to deal with. That’s THREADS, not individual emails; they range from no-reply-needed all the way to one thread that required 22 responses from me yesterday. I use Remember The Milk; most people are familiar with that cloud service for GTD. One of my daily repeating tasks is ‘Zero the inbox.” At least once per day, I look at a totally empty inbox; this means that no one waits longer than 24 hours for a response of some kind from me. Some emails get archived and turned into tasks in RTM, some get archived and turned into Google Calendar events, some get trashed, and Mom’s emails that start with “FW:” get round-filed via Gmail filters. [Sorry, ma, but I warned you about the kittens and chain letters. Love, your busy, heartless daughter.]

As someone who manages several projects, applications, servers, Scrum teams, and networks, I can’t think of any other way to stay busy that would ever work besides zeroing my inbox no less than once a day and more if I can. Do you have any ideas I can also implement?

GeekGirlCon

March 1st, 2011 § 0 comments § permalink

GeekGirlCon is coming up soon in Seattle!

GeekGirlCon

I will be proposing a panel on women coders. This panel is specifically for younger women to ask about what it’s like to work in coding, how to act, how to get a job, and how to deal with colleagues who may not understand their unique gifts and perspective when it comes to writing beautiful code.

I and three women I know will be on the panel (one of whom will be the lovely Liz Dahlstrom over at Athena Geek); we are also open to the notion of additional members. We will look at ladies who want to join us and ask a few questions; essentially, are you making a living as a coder? While we’ve been approached by some ladies in college looking to join, we want to present a panel of women with experience and full careers as programmers.

If you’d like to know more, ping me at @cowgirlcoder on Twitter, post to The Cowgirl Coder Community on Facebook, or send me an email.

My take on the Twilight phenomenon.

January 19th, 2011 § 0 comments § permalink

Enjoy. This is a mashup of various images I picked up on teh webz.

Kills.

Looking for a Logo

January 14th, 2011 § 17 comments § permalink

How does one go about getting a logo made? I’ve gotten a couple of tentative offers, some concepts, and a few ridiculous quotes, but no one seems to do real logo work anymore. I’ve got two people promising drawings, but I haven’t actually seen anything yet.

Does anyone have recommendations for me? I’d really like to see some concept drawings of a nerdy superheroine. Comment on this post if you’re interested; you can use your Facebook login to do so.

Rest in Peace, Richard Thomas: Creator, Wizard, Good Man.

January 6th, 2011 § 0 comments § permalink

My friend Richard Thomas was a digital wizard. That accolade is frequently given to the undeserving, the merely brilliant, the commonly bright. There is a true paucity of men who deeply deserve that encomium, sadly bestowed only after his death…by me, and by the few who were his colleagues, partners, and friends.

I am intelligent enough to recognize genius when I see it. Richard was known to his family as Rick, to his digipals as Cyberlot, to his dev community as PHPJack, and to me as ‘the backend guy who can get it done’. On occasion, it seemed as if I was playing Stellan Skarsgaard to his Matt Damon; ordinary humans couldn’t see the difference between Richard and me. I saw that difference and was humbled by his instant grokking of systems I took days to comprehend.

I know I told Richard I appreciated him. More often, I was on an IM client at 4AM begging to know why I was getting admin notifications that cronjobs weren’t running, or calling him up to find out why a DNS redirect wasn’t propagating fast enough. The amazing thing was that he actually knew the answers to my questions. In this world of specialization and finite resources, Richard was a man of infinite ingenuity.

I met Richard through an online ad I had placed for a backend developer. I needed someone who could make a site ‘just work’. Too few people love to problem-solve, to find out the wherefores, and to joyfully show their solutions to an audience who is not merely appreciative, but admiringly comprehending.  I had an idea to bring social networking promotion to small content creators overlooked by the behemoths of the Internet, and Richard not only saw its potential, he found ways to repurpose the open source software we loved to make it happen.

I’m saddened by that past tense in the last sentence. “We loved to make it happen.” It means that the collegiate relationship I enjoyed with my friend is no more. He had a wife and child he adored, projects that he worked on, friends I never met, and a life I really didn’t know that much about. I do know that he and I found intellectual joy in solving problems together over the net at 3:30AM while high on caffeine and snickering over comic book superhero jokes.  Anyone who has ever lost a friend and collaborator knows that I feel that my sense of loss over my absent friend is nothing compared to the anguish felt by his family and closest friends. Yet, they also know that there is a piece of the Great Conversation (if I may be so bold as to place our small solutions to algorithms into that august company of concepts, ideals, and elegant proposals) that has forever passed into the concrete, the written and done, the forever unchangeable past.

Richard, your solutions to complicated problems, your willingness to help anyone learn, and your staggering aptitude at intuiting a path to simplicity are already, will be, and cannot but be missed.  Those who shared the exhilarating experience of watching you think will be using you as a Platonic template for cogitation for the rest of their lives.

I’ll miss you, my friend.

*****************************************************************
Richard Thomas
*****************************************************************

Richard dealt with Crohn’s Disease, and as a result, did not have life insurance. To contribute to the fund for his wife Lisa and his ridiculously cute daughter Nicollette, hit the PayPal button below.

Niki and Lisa



*Donations are not tax-deductible.

Please be aware that I will now be hosting Richard Thomas’s site, http://phpjack.com/, at http://phpjack.thecowgirlcoder.com/.

A Senior Dev's Manifesto

October 6th, 2010 § 0 comments § permalink

So I’m in the advanced Agile development certificate program at University of Washington.

By the time I’m done, I’ll have a mega-awesome Certified Scrum Developer certification, or some such nonsense. In all seriousness…what does that mean? As a dev and an OCD engineer slash scientist, my first impulse is to ask how interesting the problem is. As a lead, my job is to manage the people solving the problem. It’s sort of the curse of being good at something–sooner or later, you stop doing it, and start managing people who do it. Which is no fun.

Or…?

As a senior dev/lead/PM/product owner, I have the power to solve larger problems than I was able to solve previously alone. I don’t know everything (regardless of how awesome I appear to be), and a SQL god with a truly talented UX/UI artist can enhance everything I do.

The real key, though, is to never lose your technical skills. Too often, I hear from PMs at megacorps who have been rewarded for their skill and dedication by being removed from the job they were so good at in order to manage others. They tell me that they haven’t touched an IDE in years, and they barely know HTML3, much less 5. In the meantime, they’ve gotten very good at managing people, but have lost touch with the skills that made them great at the same jobs they’re now supervising.

So, when I’m asked what percentage of a senior dev’s time should be devoted to technical work, I hold forth with my opinion that if a senior dev is spending less than 30% of their time coding, they will lose the skills that make them great. I need to understand why my devs are choosing the solutions they are, and with aging skills, I’ll be left relying on their estimates of the time involved in a given sprint task. En masse, those estimates are likely to be wildly optimistic or violently pessimistic, with no real balance.

We have to make time to do the things we love and are great at; why else would you take the job?

The best ebook format.

August 1st, 2010 § 1 comment § permalink

I’m transferring most of my fantasy and science fiction to digital versions. There’s a sort of sadness involved with doing so; these books have been my friends for decades, and I love them.

Still, there’s something to be said for NOT spraining my thumb trying to hold the latest Goodkind or Jordan or Silverberg hardcover in the bathtub.

I’m going with a Nook, and I’m building an ebook library of epubs, since it’s an open format with OSS tools at the CL for conversion and maintenance.

After all the preaching I’ve done, I should be the first to acknowledge that content and means of distribution are NOT the same thing…but there’s a hint of sadness as I sell my copies of the Feist/Wurts Empire trilogy. I love the cover picture on Servant of the Empire; it’s AWESOME.

I’ll miss the books…but not while I’m moving, not on the airplane, not when I’m decorating, not in the bathtub…wait. Why didn’t I do this before?

And does anyone know how to get a copy of that cover as a poster?

Where Am I?

You are currently browsing the Encouragement category at The Cowgirl Coder.