Friday, May 18, 2007

[Linky] HOW TO: Debug into a .NET XmlSerializer Generated Assembly

When using the xml serialization object to serialize and deserialize an object a temporary class file is generated. This article explains how to find the intermediary file and step into it with the VS.Net debugger.

Article by Scott Hanselman.

Submit this story to DotNetKicks

wut it looks liek

thiss wut it luks liek wien my wife not edit my posts

nerf

^_^

Submit this story to DotNetKicks

Thursday, May 17, 2007

From hard-sell to conversation

Interviewing is like selling a used-car. Only, instead of a jalopy, you have to pitch yourself or your company. You must negotiate the buyer’s eyes away from the patches of rust and the little ding on the door, and instead get them to notice the powerful, efficient engine and high gas mileage. It requires you to look on the bright side of everything, while carefully dancing away from the edge of lying.

I used to think interviewing was fun, even intellectually stimulating; a battle of wits where you had to be on your best behavior and use your imagination and experience to stay a few steps ahead of your inquisitor; an artful journey of remaining within the realm of truth and honesty but without contemplating on your shortcomings open to another ones judgment.
Politicians and salesman have tough jobs if they're really honest, but not many of them would know that. Now, interviewing to me is drudgery, a painful task that leaves me emotionally and physically exhausted. I'm tired of interviews.

What can be done to move away from the car lot and into the realm of a creative professional? How can we change from the hard-sell tactics to a human conversation?

The first step would be to change the formal gauntlet of questions into a conversation. I always felt like everyone is working off the same question sheet for interviews. Like a standardized test where if you take it enough times you'll start recognizing questions and end up just reciting rote answers from memory. Make it a conversation.

Interviewer, instead of asking whether the candidate has worked with X technology or Y system, talk about what your company is doing. Describe the projects you are working on, even the problems you ran into and how you overcame them (or didn’t). Tell a story about the job and the people you work with. Be open. Don't just blurt out "Tell me a story about a time you overcame a difficult problem." as so many interviewers have done to me in the past; tell the person you are interviewing about some of the problems you may be encountering on a project and see what they have to say. You may discover, your interviewee having a creative side that is able to understand and share in the conversation. However, if your interviewee stares at the horn that apparently is slowly growing out of your forehead, then maybe the conversation is done. Interviewer, understand that you are the one who is actually in the hardest situation. You are the one who needs someone to do something. Asking a pre-fabricated list of questions isn't going to grant you a good colleague, co-worker or employee. What will grant you those things is a more personal exchange.

Interviewee, don't be afraid. You aren't a passive participant bracing yourself for the next wave of questions. Ask your own questions. Be prepared to be an active participant in determining if this job is as good as the blurb said it was. You wouldn't buy a car based only on the description in the advertisement, would you? You would ask about mileage, whether the car was in an accident, and what type of guarantee does the dealership offer. If you can question a car salesman then why would you not do the same with your interviewer? You need to know if this job is the right fit for you, what kind of hours will you work, what tools will you have at your disposal, and is there a coffee machine in the break room?

Interviewer, if you depend on pre-fabricated questions, then consider the standardized test scenario. If the questions are expected by the interviewee, then the answers are easy to memorize and rattled off by rote.

Interviewee, the danger for you is the deception of omission on part of the interviewer. If you passively depend on the interviewer to guide the interview, then you may not find out about the 80-hour work week until well after the time for graceful exit has passed.

Conversations are generally hard to fabricate because of their constant state of give and take. Because conversations are free-form, the ideas and statements can be followed up on or questioned. It is harder for someone to dance through the field if they don't already know where the mines are buried.

Finally, Interviewer, get rid of the gauntlet. Make it a one shot deal. A good conversation is cohesive and fluid. It can’t be broken up into a number of sessions with various people who often repetitively ask the same questions that I just answered in a previous session. I find it the most exhausting, having to sit down and go through the same introductions a half-dozen times only to be passed like a relay-baton to the next runner. Conversations can ebb and flow but they are constant. If you can’t have everybody show up at once, then bring them in while keeping the conversation going. Interviewer, if you have to collaborate with a half-dozen parties, post-interview to discuss their impressions, why not just get them all together for the interview itself?

In the last several years, I’ve only had one interview that felt like a real conversation. Some standard questions were asked, but for the most part the interview was done by several programmers and team leads asking questions and talking about the job. It was a memorable experience that left me wanting to work there. Things changed however. Outside influences seeped in and negative behaviors were encouraged causing openness and idea sharing to no longer be valued and ultimately abandoned. As a result, I am interviewing again. I'm reflecting on the positives that this company had and the reasons why I wanted to work there. And I must say, it was my interview; a little conversation I had with some people about a job they were doing.

Now, I am back on the car-lot listening to the same old spiels , but what I am really looking for is a good chat.

Submit this story to DotNetKicks