for afile in /home/auser/adirectory/*; do echo $afile; done
Useful for all kinds of things. And I can never remember how the syntax changes between doing a for statement in a bash script and doing it as a one-liner on the command line.
for afile in /home/auser/adirectory/*; do echo $afile; done
Useful for all kinds of things. And I can never remember how the syntax changes between doing a for statement in a bash script and doing it as a one-liner on the command line.
I recently interviewed a very intelligent, capable programmer who was near the start of his career. I decided not to make him an offer, and he sent a very nice follow-up e-mail asking for tips on how to present himself better. I figured my reply might be very useful to other applicants, so I’m posting most of it here:
First, lose the headphones. That didn’t affect our decision at all, but I could imagine it affecting it at other companies.
Second, you’re obviously intelligent and capable. You messed up on the unit test, but I’m attributing that to interview nerves - I’m reasonably certain you could handle the technical demands of the job. But that’s only the first hurdle.
The next is personality and fit with the company — and this is a sticky one. In an interview, I’ve got about an hour to decide if you’re the kind of person I want to spend the next three or more years with, in relatively close quarters. Can you argue a position strongly, but lose gracefully? You may be right about the technical merits of something, but the business reality means we have to do something else — can you live with that? On a good day, we go two steps forward and one step back — bad days it’s one step forwards and two steps back. Can you deal with that frustration? I received certain cues from you — interrupting, hitting the table during the coding test, etc. — that you might have been hard to work with. Is that true? I can’t tell in an hour. But saying “no” to a candidate who would have been terrific is a smaller risk than saying “yes” to a candidate who turns out to be a bad hire.
I hope you appreciate my honesty in writing this, rather than brushing you off with “not a good fit.” I did so because I think your question about your interview performance is sincere, and I’m hoping my answer helps.
If it’s not obvious from reading the e-mail, Rands has been a big influence on my management style.
I had a conversation with a friend on Sunday that really stuck with me — made it difficult to sleep that night. She was talking about her father, a retired cop, who carries a gun with him everywhere. It was a sad story, for a lot of reasons, but it’s not my story, and I don’t have the right to share it.
I did share my own story — the story that kept me up Sunday night. I told parts of it to other people on Monday, and I wrote the whole thing down tonight — bright light slays demons, and I don’t want this in my dreams anymore.
You can read it here: http://www.sudosu.net/essays/no-more-guns/ .
This is from a “Fresh Air from WHYY” Terry Gross interview with Dr. Richard Shannon, Chairman of the Dept. of Medicine of the University of PA Health System.
@ 43:48
“We learned early on that much of the focus in infection prevention was on how you place the catheter. What we learned through our observations (and borrowing the processes from Toyota) was it was in maintaining the catheter. Once it was in, how do you take care of it? And what we initially discovered was, there weren’t reliable processes in place by which nurses and others took care of catheters. So now it’s very unambiguous, very clear to everybody where the catheter is in the person’s body, what the condition of the catheter is every day. There’s a specific person responsible each day for looking at that catheter site and making sure it’s intact. And any time there’s a question, that’s immediately kicked up to a higher-level person who can make a decision about whether the catheter needs to come out or not.
“So identifying a highly-reliable, unambiguous process in which everyone’s responsibility is made clear creates a much more likely defect-free process during the course of that catheter being in place.”
It’s not that Shannon tells us anything really new here. It’s that he talks about one aspect of what I’m trying to do at Dakim, and comes up with something better than a trunk of Strunks:
“A highly-reliable, unambiguous process in which everyone’s responsibility is made clear.” Damn right.
This used to contain the text (with names and e-mails taken out) of a cover letter I received from someone applying for a job. The letter was a masterpiece, insulting (either by assertion or implication) almost everyone at the company.
Despite the over-the-top nature of the letter, posting it here and picking on it started to seem more and more like kicking someone when he’s down. There was no larger message, no lesson to learn from the letter — just me making fun of someone who made an asshole of himself.
I deleted it. I don’t want to be that guy.
204 pounds this morning. Less than 20 pounds away from my goal of 188 in 2008.
(Let’s not forget, I started at 255.)
And I’m up to 8 miles of strenuous hiking — did my house to Parker Mesa last weekend; doing a 7-miler with 1400 feet of elevation gain next weekend.
And I think it’s time to get back into Krav Maga. I’m in good enough shape now that I could get through a session without dying.
I’m about to place an ad on Craigslist (Dakim is hiring; I’ll post a link to the ad here when it’s up.) and every time I post an ad, I get 200 calls from obnoxious recruiters. This is an snippet of an actual conversation that actually happened:
Me: I’m sorry, Dakim has a policy of not hiring from recruiters. Have a nice day.
Him: John John John JOHN! This guy was a .NET star at Disney! You’ve got to talk to him!
Me: We don’t use .NET.
Him: We’ve got a GREAT Java programmer from BofA.
Me: We don’t use Java. Goodbye.
I’ve had recruiters try every scummy thing they can think of — a common tactic appears to be lying to the receptionist (telling her you’re a client) to try to get through to me.
We’re rethinking the policy of not hiring from recruiters (although we’re still in the air), so I thought up a way I can deal with them without wasting a whole lot of my time. I’ll update you later as to how well it actually works. (If this appears a little harsh, remember that this is NOT recruiters we’re hiring to help us find candidates — this is recruiters cold calling because they saw our ad on Craigslist. When they call, I’ll simply ask for their e-mail, and get off the phone and send them this.)
Dakim, Inc.
2121 Cloverfield, Suite 205
Santa Monica, CA 90404Dear Recruiter:
Thank you for your interest in providing recruitment help to Dakim. We welcome your involvement in making Dakim a better, bigger company.
However, to avoid wasting either of our time, we’ve developed a few ground rules that make the recruiter/client relationship go more smoothly.
1) All initial communication will be via e-mail. I’ll call you when it’s time to get on the phone.
2) All e-mails providing information on a candidate MUST also provide the fee your company will take if we hire the individual.
3) Dakim has no problem finding decent candidates. We have a serious problem finding spectacular ones. You may send us up to three candidates, period. (If we make one of them an offer, the count resets to zero.) But if you’ve sent us three jerks, you’re obviously using the shotgun approach, and it’s a waste of your time, our time, and the candidates’ time.
The positions currently open are:
*
*
*Thanks very much for your interest in recruiting for Dakim!
Sincerely,
John Schofield
Director, Information Technology
First, the epiphany — despite all the fires, and multiple top priorities, and projects, and all the other fireballs of stress that scream over my desk — there is nothing I can do for Dakim that’s more important than hiring. Over the next two years, I’m probably going to add significant headcount to my department — and nothing is more important than making sure I have the right people when I need them. (With strong emphasis on RIGHT. We’re looking for rockstars.)
I need to start going to conventions, user group meetings, etc. — immediately I’m going to start attending the Los Angeles Linux User Group meetings and the local Python SIG. I’m not sure what else I’m going to do, but it’s becoming obvious that I don’t scale — that the long-term solution is NOT for me to increase my skills, as I’ve been doing, but to hire people who have the skills.
That said, in the short term, it’s clear that there’s three technical areas where I must improve my skills:
I guess it’s good to have a clear vision of where I need to go. Now I need to get there.