-
ack 2.0 has been released
Apr 19, 2013 • Open source, Programming, Unix, Perl • ack, tools
ack 2.0 has been released. ack is a grep-like search tool that has been optimized for searching large heterogeneous trees of source code.
-
How to prepare for a job interview: The 4-point summary
Mar 7, 2013 • Interviews
The core of your preparation for the job interview:
-
Solr's DataImportHandler can't handle line-based SQL comments
Sep 13, 2012 • Open source, Programming, Solr, SQL • DataImportHandler, gotchas
At least twice now I’ve run into this problem where I try to comment my SQL code, but doing so makes my Solr data importer blow up. I post it here for posterity.
-
Slides from today's resumes & interviews talk
Aug 22, 2012 • Resumes, Interviews
This morning I gave a presentation titled Resumes & Interviews From the Hiring Manager’s Perspective at the Career TOOLS Conference in Milwaukee, WI.
-
A little Ruby program to monitor Solr DIH imports
Jul 11, 2012 • Open source, Programming, Solr, Ruby • Nokogiri, XPath
Solr is a text indexing package. All interaction with it is through GETting and POSTting to the service, and then XML responses.
-
SELECT * is a bug waiting to happen
Jul 10, 2012 • Programming, SQL • defensive programming, SELECT
A SQL SELECT statement that use
*
instead of an explicit column list is a bug waiting to happen. Beyond the quick-and-dirty prototyping stage, every SQL query in an application should explicitly specify the columns it needs to protect against future changes. -
Self-selecting for the thick-skinned means turning away contributors.
May 29, 2012 • Open source • communities, Gina Trapani, sexism, thin-skinned
Every so often, usually in the middle of an online argument or flame war, someone will say that the climate of the group has him or her uncomfortable. He'll say something like "I don't want to be around all this hostility" or, worst of all, "This makes me not want to get involved." The reply sometimes comes back "You're just thin-skinned."
-
My Solr+Tomcat troubles, and how I fixed them
May 22, 2012 • Open source, Programming, Solr • Java, Tomcat
-
Rethink the post-interview thank you note
May 15, 2012 • Interviews • following up, thank you notes
Good golly do people get riled up by the idea of sending a thank you note after a job interview. "Why should I thank them, they didn't give me a gift!" is a common refrain in /r/jobs. "They should be thanking me!"
-
Before you write a patch, write an email
Apr 27, 2012 • Open source • collaboration, patches, WISCY
I often get surprise patches in my projects from people I’ve never heard from. I’m not talking about things like fixing typos, or fixing a bug in the bug tracker. I’m talking about new features, handed over fully-formed. Unfortunately, it’s sometimes the case that the patch doesn’t fit the project, or where the project is going. I feel bad turning down these changes, but it’s what I have to do.
-
What if news stories were written like resumes?
Apr 20, 2012 • Resumes
If news stories were written like the resumes I see every day, a news story about a fire might look like this:
-
Undecided if something should go on your resume? Add more detail for guidance.
Convential Wisdom has it that resumes have to be written in the most clipped, stilted business-speak possible. It’s not true. Thinking that way is a disservice to our resumes and our job prospects.
-
Eight items to leave off your resume
Mar 30, 2012 • Resumes • guitar, hobbies, objective, references, salary, self-assessments
Here's a quick list of things that should never appear on your resume. Unfortunately, I see them all the time.
-
Stand during phone interviews
Mar 7, 2012 • Interviews
Best advice I’ve ever heard about how to handle phone interviews is to stand during the call.
-
How long should it take for an interviewer to get back to me?
Feb 24, 2012 • Job hunting, Interviews
Every few days in the /r/jobs subreddit, someone will ask “It’s been N days since my interview, and I haven’t heard back. When can I follow up? How long does it usually take?”
-
Today's PostgreSQL indexing gotcha
Feb 16, 2012 • PostgreSQL
At work, I have a big 14M-row production table with a bunch of indexes on it. One of the indexes was bloated, so I built a new version of the index, and dropped the old bloated index. Got back a gig of space on the filesystem. Excellent.
-
Clarify user expectations to the minute to eliminate frustration and extra work
Vague timeframes like “ASAP” or “in a few days” are a sure way to get sorrow into your work day. You’ll likely spend too much effort getting something earlier than the customer wanted, or later than he expected, leaving him frustrated.
-
Never put "excellent communication skills" on your resume
Feb 1, 2012 • Resumes • cliches, excellent communication skills, self-assessments
Never put "excellent communication skills" in your resume. Who doesn't think they have "excellent communication skills?" It means nothing. It's fluff that detracts from the real content of your resume. Instead, give the reader examples of how you use those skills.
Imagine four different people who have put "excellent communication skills" on their resumes, and their thought processes:
- "I give weekly status presentations to upper management about project status. I can put 'excellent communication skills' on my resume!"
- "I taught a lunch & learn session on JavaScript. I can put 'excellent communication skills' on my resume!"
- "I've written articles for the company newsletter. I can put 'excellent communication skills' on my resume!"
- "I am proud of my ability to spell and use basic English mechanics. I can put 'excellent communication skills' on my resume!"
So when someone reading your resume sees "excellent communication skills" on your resume, which one will she think it means? Chances are, she's going to assume you're the "I can spel gud" guy and gloss over it.
(Have you noticed that while you read this article, you tire of reading the words "excellent communication skills"? So does the poor hiring manager who has to read it on every resume he gets.)
Instead of putting those dreaded three words on your resume, replace it with a description about how exactly you use these skills. Doing that is an iterative process that digs down to find the interesting stuff that the hiring manager wants to read.
The other day I was helping my friend Katie with her resume, and I spotted the dreaded "excellent communication skills" near the top. We had an exercise to come up with something better that went a little like this:
Andy: "Why do you say you have excellent communication skills?"
Katie: "I don't know, I'm just good communicating. People talk to me."
Andy: "How do you mean they talk to you? About what?"
Katie: "There was this one time where I was on a project with these outside consultants, and consultants were upset because they weren't getting what they need, and management didn't know what was going on. It was just a mess. And people were really frustrated and they'd tell me all the things that were going wrong."
Andy: "Good! And so what did you do?"
Katie: "I talked to the project leader, and explained what was going wrong that he hadn't heard about, and we worked on ways to make sure everybody could keep track of the deliverables, and get them to the consultants. And then the project leader asked me to do status reports for upper management. It all worked really well."
Andy: "So would you feel comfortable saying 'Reworked project process to increase communication, both vertically and horizontally, across the company and with outside consultants?' And can you specify how many people were on the project, too?"
Katie: "Yeah, that sounds good. And plus, there was this other time…."
Notice how with just a little digging and iteration (shortened for this article) Katie and I turned her vague "excellent communication skills" into something that tells the reader exactly how she has used those skills to benefit the business. What we wound up with is far more impressive than being able to write clearly.
As I've said before, don't put self-assessments in your resume. Give the evidence and let the reader make her own decision.
What are your dreaded cliches on resumes that mean nothing? Let me know in the comments below.
-
The most important pig in the office
Jan 26, 2012 • Programming • devops, Jenkins, Nagios, Olivia, pig
In the world of devops, we have complex software packages like Jenkins to take care of continuous integration of source, and intricate monitoring systems like Nagios and Icinga to keep an eye on the state of your servers. For notification of problems, however, sometimes the low-tech solution is best. Ladies and gentlemen, I present to you: Olivia the pig.
-
Open source is improv, so say "Yes and"
Jan 23, 2012 • Communication, Open source • Bossypants, collaboration, improv, Tina Fey, yes
In her fantastic book Bossypants, Tina Fey has a sidebar about how improvisational comedy has changed her life, and given her a new worldview. We in open source would do well to adapt these ideas to how we conduct our projects as well.
-
ack 2.0 has been released
ack 2.0 has been released. ack is a grep-like search tool that has been optimized for searching large heterogeneous trees of source code.
-
How to prepare for a job interview: The 4-point summary
The core of your preparation for the job interview:
-
Solr's DataImportHandler can't handle line-based SQL comments
At least twice now I’ve run into this problem where I try to comment my SQL code, but doing so makes my Solr data importer blow up. I post it here for posterity.
-
Slides from today's resumes & interviews talk
This morning I gave a presentation titled Resumes & Interviews From the Hiring Manager’s Perspective at the Career TOOLS Conference in Milwaukee, WI.
-
A little Ruby program to monitor Solr DIH imports
Solr is a text indexing package. All interaction with it is through GETting and POSTting to the service, and then XML responses.
-
SELECT * is a bug waiting to happen
A SQL SELECT statement that use
*
instead of an explicit column list is a bug waiting to happen. Beyond the quick-and-dirty prototyping stage, every SQL query in an application should explicitly specify the columns it needs to protect against future changes. -
Self-selecting for the thick-skinned means turning away contributors.
Every so often, usually in the middle of an online argument or flame war, someone will say that the climate of the group has him or her uncomfortable. He'll say something like "I don't want to be around all this hostility" or, worst of all, "This makes me not want to get involved." The reply sometimes comes back "You're just thin-skinned."
-
My Solr+Tomcat troubles, and how I fixed them
-
Rethink the post-interview thank you note
Good golly do people get riled up by the idea of sending a thank you note after a job interview. "Why should I thank them, they didn't give me a gift!" is a common refrain in /r/jobs. "They should be thanking me!"
-
Before you write a patch, write an email
I often get surprise patches in my projects from people I’ve never heard from. I’m not talking about things like fixing typos, or fixing a bug in the bug tracker. I’m talking about new features, handed over fully-formed. Unfortunately, it’s sometimes the case that the patch doesn’t fit the project, or where the project is going. I feel bad turning down these changes, but it’s what I have to do.
-
What if news stories were written like resumes?
If news stories were written like the resumes I see every day, a news story about a fire might look like this:
-
Undecided if something should go on your resume? Add more detail for guidance.
Convential Wisdom has it that resumes have to be written in the most clipped, stilted business-speak possible. It’s not true. Thinking that way is a disservice to our resumes and our job prospects.
-
Eight items to leave off your resume
Here's a quick list of things that should never appear on your resume. Unfortunately, I see them all the time.
-
Stand during phone interviews
Best advice I’ve ever heard about how to handle phone interviews is to stand during the call.
-
How long should it take for an interviewer to get back to me?
Every few days in the /r/jobs subreddit, someone will ask “It’s been N days since my interview, and I haven’t heard back. When can I follow up? How long does it usually take?”
-
Today's PostgreSQL indexing gotcha
At work, I have a big 14M-row production table with a bunch of indexes on it. One of the indexes was bloated, so I built a new version of the index, and dropped the old bloated index. Got back a gig of space on the filesystem. Excellent.
-
Clarify user expectations to the minute to eliminate frustration and extra work
Vague timeframes like “ASAP” or “in a few days” are a sure way to get sorrow into your work day. You’ll likely spend too much effort getting something earlier than the customer wanted, or later than he expected, leaving him frustrated.
-
Never put "excellent communication skills" on your resume
Never put "excellent communication skills" in your resume. Who doesn't think they have "excellent communication skills?" It means nothing. It's fluff that detracts from the real content of your resume. Instead, give the reader examples of how you use those skills.
Imagine four different people who have put "excellent communication skills" on their resumes, and their thought processes:
- "I give weekly status presentations to upper management about project status. I can put 'excellent communication skills' on my resume!"
- "I taught a lunch & learn session on JavaScript. I can put 'excellent communication skills' on my resume!"
- "I've written articles for the company newsletter. I can put 'excellent communication skills' on my resume!"
- "I am proud of my ability to spell and use basic English mechanics. I can put 'excellent communication skills' on my resume!"
So when someone reading your resume sees "excellent communication skills" on your resume, which one will she think it means? Chances are, she's going to assume you're the "I can spel gud" guy and gloss over it.
(Have you noticed that while you read this article, you tire of reading the words "excellent communication skills"? So does the poor hiring manager who has to read it on every resume he gets.)
Instead of putting those dreaded three words on your resume, replace it with a description about how exactly you use these skills. Doing that is an iterative process that digs down to find the interesting stuff that the hiring manager wants to read.
The other day I was helping my friend Katie with her resume, and I spotted the dreaded "excellent communication skills" near the top. We had an exercise to come up with something better that went a little like this:
Andy: "Why do you say you have excellent communication skills?"
Katie: "I don't know, I'm just good communicating. People talk to me."
Andy: "How do you mean they talk to you? About what?"
Katie: "There was this one time where I was on a project with these outside consultants, and consultants were upset because they weren't getting what they need, and management didn't know what was going on. It was just a mess. And people were really frustrated and they'd tell me all the things that were going wrong."
Andy: "Good! And so what did you do?"
Katie: "I talked to the project leader, and explained what was going wrong that he hadn't heard about, and we worked on ways to make sure everybody could keep track of the deliverables, and get them to the consultants. And then the project leader asked me to do status reports for upper management. It all worked really well."
Andy: "So would you feel comfortable saying 'Reworked project process to increase communication, both vertically and horizontally, across the company and with outside consultants?' And can you specify how many people were on the project, too?"
Katie: "Yeah, that sounds good. And plus, there was this other time…."
Notice how with just a little digging and iteration (shortened for this article) Katie and I turned her vague "excellent communication skills" into something that tells the reader exactly how she has used those skills to benefit the business. What we wound up with is far more impressive than being able to write clearly.
As I've said before, don't put self-assessments in your resume. Give the evidence and let the reader make her own decision.
What are your dreaded cliches on resumes that mean nothing? Let me know in the comments below.
-
The most important pig in the office
In the world of devops, we have complex software packages like Jenkins to take care of continuous integration of source, and intricate monitoring systems like Nagios and Icinga to keep an eye on the state of your servers. For notification of problems, however, sometimes the low-tech solution is best. Ladies and gentlemen, I present to you: Olivia the pig.
-
Open source is improv, so say "Yes and"
In her fantastic book Bossypants, Tina Fey has a sidebar about how improvisational comedy has changed her life, and given her a new worldview. We in open source would do well to adapt these ideas to how we conduct our projects as well.