Author: aeschinder

Regarding promotions and raises (Part 1)

If you’re like me then you read articles about your industry to attempt to attempt to keep up with new technologies, best practices, and disruptive innovation.   Learning how to become a better manager should also be the goal of anyone who has direct reports.  One of the most difficult times in a manager’s yearly hustle and bustle is the review period.  One might think that the arduous and agnst-y period of performance reviews is an anachronism that is best swept into the dustbin of history.   Alas, this is not the case.  The dreaded annual ritual is alive and well in corporate America.  I confirmed this fact by a recent series of articles and comments on LinkedIn, everyone’s favorite career site / SPAM magnet.

Talking to employees about their careers should be a sacred duty of all companies yet I have found that to be exactly the opposite in my anecdotal experience.   Most companies do not help their managers manage.   Many companies choose managers seemingly at random merely because they are good tech leads.   As with most things, the details are important.   The people chosen to manage by their managers likely have had the same type of luck to be in the right place at the right time to become managers.  This topic is broad and deep and deserves more time and thought than a blog post!   However I wanted to provide some context for writing a two part post on a taboo subject that we are all interested in.

Let me pigeonhole a few negative developer archetypes that you might encounter.  Don’t worry, I’ll follow up with positives ones soon.

The security seeking pragmatist (a concept from Erik Dietrich’s excellent book “Developer Hegemony“).   You may have to bend down to inspect this creature because the company has grown up around him.   He has eluded layoffs and reorgs for years and is an adept survivor.   He adroitly steps out of the sweeping Eye of Sauron whenever it roams over the developer bullpen.   He has a big PTO balance and boy he USES it weekly, monthly and yearly.     This guy won’t ask for a promotion or a raise.   He’s happy to be employed and will do just enough not to look like a slacker.

The time-in-grade-equater.  You know this type.   He’s been working at the same job doing the same type of tasks for a decade.   Therefore, in his mind, he’s an expert since he’s been doing it for 10 years.   Time in grade does not equate to skill level, prowess, or technical mastery.

The diva.  This person has two major problems.   He thinks he can dictate what work he works on.   He thinks he can tell everyone else what their job is.   He’s usually an insufferable asshole that oscillates between indispensable and a 5th grader.

The why-hasn’t-this-guy-been-fired-yet dude.   It’s tougher than ever to let people go without getting three executives, accounting, finance, and human resources to agree to it.   I could write a book on this because there are so many factors that contribute to why management does not want to fire someone who needs firing.

This last one in this category is only on the list because he cannot take criticism.  Nobody likes to hear negative feedback – I’ve found that the delivery tone/timbre of the feedback is supremely important.   Taking that into account, there still is a type of person that no matter how you tell him or her, they immediately launch into an investigative journey to understand to the nth degree why they were given this criticism because they are perfect.

Note that I’m using extremes here to generate discussion.  In no way am I saying that someone embodies and becomes a personification of one of these archetypes…well, maybe the time-in-grade-equater is irredeemable after all but you get the gist of what I’m saying.

What could be strategies that managers could bring to contend with this hodge podge of people?    Remember that only lucky managers get to hire all of their employees.   Most managers inherit a mixture of  the good, the bad and the ugly.  I’ll give that some color in the next post in this series as well as explore the positive developer archetypes that we all love to manage, work with or for.

Default ctor injected private member names with underscore prefix in Visual Studio 2019

After a bit of experimentation, you might want to change the default member generation when you add an injected member to your C# constructor in Visual Studio 2019.

Here’s what you likely want to use as a private member in your class:

private readonly IHttpContextAccessor _httpContextAccessor;

Here’s what the constructor (ctor) looks like:

public BearerTokenHandler(IHttpContextAccessor httpContextAccessor)
{
_httpContextAccessor = httpContextAccessor ??
throw new ArgumentNullException(nameof(httpContextAccessor));
}

To get that automatically, you’ll need to change the option for it which is deep inside the Visual Studio options menu.

First, navigate to:

Tools->Options->TextEditor->C#->CodeStyle->Naming

Click on the “Manage naming styles” button.

manage1

Fill it out like this:

manage2

Close that and then choose your new specification naming style for “Private or Internal Field”:

manage3

Click “OK” and it should immediately take effect next time you use the “Quick Refactorings” wizard to add a new member.  Try it out!

Arnold Schwarzenegger Movie Ranking

Arnold-Schwarzenegger-The-Terminator-1984

Like a lot of people trying to stay sane during the pandemic, I’ve come up with a few diversions to keep myself occupied.   I’ve been a fan like many others of Arnold’s movies, and I decided to watch them in release order.  Last week I came up with the idea of ranking them as I watched them in order of how much I liked them compared to the others I had watched.  I am going to skip all of the “Conan” movie roles he was in because I’ve seen them all way too many times.   I’m going to start the list with “The Terminator” and end with the second “The Expendables” movie.   That’s 21 movies!  I’m not going to watch movies where he is just appearing as a cameo. Asterisk by the movie indicates I’ve never seen it before.

Ranking

  1. The Terminator (1984)
  2. Predator (1987)
  3. Terminator 2: Judgment Day (1991)
  4. Total Recall (1990)
  5. Kindergarten Cop (1990) *
  6. The Running Man (1987)
  7. Commando (1985)
  8. Last Action Hero (1993) *
  9. Twins (1988) *
  10. Raw Deal (1986)
  11. Red Heat (1988)

Next up

  1. True Lies (1994)
  2. Junior (1994) *
  3. Eraser (1996) *
  4. Jingle All the Way (1996) *
  5. Batman & Robin (1997)
  6. End of Days (1999) *
  7. The 6th Day (2000) *
  8. Collateral Damage (2002) *
  9. Terminator 3: Rise of the Machines (2003)
  10. The Expendables 2 (2012) *

 

June 13 Update

Total Recall gets slotted at the #3 spot.   It has just as much 80s cheese as The Running Man, but it has a much better storyline.   The violence was IMHO a bit on the egregious side, but then again this was a Verhoeven movie.

June 22 Update

I’m surprised at myself for how I ranked Kindergarten Cop so high in the current list.  It was a completely enjoyable comedy/action movie that had a solid plot, great acting by Arnold and others, and a believable villain.    Terminator 2 did not disappoint.  I think this was only the 3rd time I’ve watched this movie and that was a long time ago.  The special effects were still great compared to today – but my main complaint was that the T-1000 terminator was way too powerful.  They should have degraded his capabilities as the injuries mounted, ESPECIALLY after he was completely frozen by liquid nitrogen.  Ok, onward to Last Action Hero which I’ve never seen and I’m excited to watch it.

June 24 Update

I was disappointed with Last Action Hero.  It started very, very, very slow.  Then it had a few interesting parts and then – credits.  Best part about the movie was the soundtrack.