Effective Technical Leadership

Effective Technical Leadership

Attributes of an effective technical lead:

  • Knowledge
  • Speed
  • Awareness

Activities:

  • Block
  • Unblock
  • Redirect
  • Decide
  • Show

Some key actions:

  • Help create and stack rank project priorities
  • Define best practices for issue tracking
  • Coach other engineers
  • Review code in detail and provide useful feedback
  • Shield engineers from management when needed
  • Explain why decisions are made
  • Fight for the right design decisions
  • Load-balance work among the team
Tagged , , , , , , ,

Generating a Culture of Code Documentation

Generating a Culture of Code Documentation

This is from a presentation given at the Write the Docs conference,

Cutter’s experience is that SMEs fall into three categories in roughly equal proportion: eager to help, willing to help (with guidance in the form of templates and direction), and curmudgeons.

…You as a writer have knowledge that engineers need to help them write docs effectively, and when you share that knowledge you help them write more docs. Hold doc office hours where you’re available to help them with docs. Because some text is better than no text.

Curmudgeons will say “but code documents itself!” Cutter calls “bull”; code only tells what it does, not its intent. [NB: Intent is worthless if the code’s action doesn’t match it.] Even if you know what you wrote immediately after you wrote it, six months later you’ll have moved on and that’s when the documentation becomes critical.

Tagged , , , , ,

Leadership Influence Techniques From The Army

I started playing PlanetSide 2 again last night and ended up playing for about 4 hours. It was cool playing with the TacticalGamer platoon which was well-organized. However, there were a few issues that bugged me. I’m not sure if it was the leadership, but we were outflanked at some point, and our platoon wasn’t able to bring in the heavy guns necessary to hold a position…we couldn’t even reduce an armor column that was headed our way by even 2 or 3 tanks! Maybe it was the lack of discipline on the part of some squad members (myself included at different points in the game while I was eating :P ).

I read up on the TacticalGamer forum for PS2 that they want to be more mature players and so I searched around and found a US Army Field Manual on leadership.

Influence Techniques

It has a great list of influence techniques that would benefit platoon and squad leaders in the game and would also benefit managers or team leaders in office settings:

  1. Pressure
  2. Legitimate requests
  3. Exchange
  4. Personal appeals
  5. Collaboration
  6. Rational persuasion
  7. Apprising
  8. Inspiration
  9. Participation
  10. Relationship Building

Pressure

Some good ideas on applying pressure,

Pressure is applied when leaders use explicit demands to achieve compliance, such as establishing task completion deadlines with negative consequences imposed for unmet completion. Indirect pressure includes persistent reminders of the request and frequent checking. This technique should be used infrequently since it tends to trigger resentment from followers, especially if the leader-exerted pressure becomes too severe. When followers perceive that pressures are not mission related but originate from their leader’s attempt to please superiors for personal recognition, resentment can quickly undermine an organization’s morale, cohesion, and quality of performance. Pressure is a good choice when the stakes are high, time is short, and previous attempts at achieving commitment have not been successful

Apprising

I hadn’t heard of the term “apprising” before,

Apprising happens when the leader explains why a request will benefit a follower, such as giving them greater satisfaction in their work or performing a task a certain way that will save half the time. In contrast to the exchange technique, the benefits are out of the control of the leader.

Participation and Inspiration

In the game, I think the inspiration technique could be used because it’s awesome to have others around you working towards getting more experience points, unlocking better weapons and being the one squad or platoon that turned the tide of the current battle or capturing a major position.

The participation technique is difficult to apply to the game when you have all sorts of random people joining up in the platoon/squad. If you have a dedicated team, it can be applied outside of the game,

Participation occurs when the leader asks a follower to take part in planning how to address a problem or meet an objective. Active participation leads to an increased sense of worth and recognition. It provides value to the effort and builds commitment to execute the commitment.

Other Leadership Training Material

They also cover other things such as:

  • creating a positive environment
  • developing others
  • providing direction, guidance and priorities in order to accomplish a mission

You can download the full PDF of their guide here: http://www.fas.org/irp/doddir/army/fm6-22.pdf

Tagged , , , , , , , , , ,

Data Cleaning with sed, awk, grep...

Reblogged from :

Being mostly a Python user, loathed using awk, sed,.. and did not feel comfortable with them. But after spending a few hours in cleaning a file and trying to do so wihtout using lower level stuff like reading a file and stuff, i resorted to shell tools. The data cleaning process is required due to the fact that data is collected from sensors and a lot of reasons may cause it to have more characters, lines merged etc.

Read more… 226 more words

This makes me want to learn more on how to use grep effectively. I've tried awk and sed and never been a fan, they're too...old school UNIX for me. Definitely need to read more about all the options in find and grep.

NDP launches filibuster against would-be Tory bill to strip terrorists of Canadian citizenship

Reblogged from National Post | News:

Click to visit the original post

OTTAWA — Furious with the Conservative Party for its attempt to overhaul a private member’s bill to include provisions to strip Canadian citizenship from convicted terrorists, the NDP has launched a filibuster in what’s shaping up to be a He Said, She Said procedural battle.

Devinder Shory, the Conservative behind Bill C-425, said the NDP has “reached a new low” by standing in the way of efforts to “protect the safety and security of Canadians and integrity of Canadian citizenship.”

Read more… 365 more words

Alternatives to Acceptance Testing

Alternatives to Acceptance Testing

I like the goal of eliminating defects while you’re writing code rather than fix bugs later on.

When it comes to testing, my goal is to eliminate defects. At least the ones that matter. (Netscape 4.01 users, you’re on your own.) And I’d much rather prevent defects than find and fix them days or weeks later.

I think of defects as coming from four sources: programmer errors, design errors, requirements errors, and systemic errors. When trying to eliminate defects, I look for practices that address these four causes.

He lists some solid methods for preventing defects for each of these classes of errors.

Preventing programming errors is done with test-driven development; unit-tests, focused integration tests and end-to-end integration tests.

Preventing design errors is done by having a simple clean design, incrementally improving the design and architecture and constantly refactoring to ensure it continues to be clean.

Preventing requirements errors:

  • a whole team is required, cross-functional and able to get what they need to finish the project
  • customer examples, using multiple examples can help clarify the general idea of the feature to implement
  • customer review, get the programmers to walk through the new functionality with customer, kinda like the client UAT (User Acceptance Tests) we do at work.
  • push testers to help in the build process rather than relying on them after releases are made. They can work with the customer to figure out requirements or set up automated regression testing (most companies rely on manual regression testing which eats up a lot of time)

This whole article is very good and Mr Shore is an excellent writer. I’d recommend getting his book too, The Art of Agile Development.

Tagged , , , , ,

Are you being spied on? Join Piers Morgan for a discussion on surveillance and privacy

Reblogged from Piers Morgan:

Is anything private? Are you being spied on? Is there privacy in American life? Is Big Brother watching you? These are just some of the questions we'll look to answer as news emerges of the National Security Agency's collection of phone data along with much more information from a program known as PRISM.

If you are in the New York City area and are available from 6:45-10 p.m.

Read more… 64 more words

Are coders worth it?

Are coders worth it?

This salary is ridiculous:

On Thursday night I got an unexpected email. It was a job offer, and these were the terms: $150,000 in salary, a $10,000 signing bonus, stock options, a free gym membership, excellent health and dental benefits, a new cellphone, and free lunch and dinner every weekday. My working day would start at about 11am. It would end whenever I liked, sometime in the early evening. The work would rarely strain me. I’d have a lot of autonomy and responsibility. My co-workers would be about my age, smart, and fun.

The contrast in job prospects between those in the tech industry and other fields is also ridiculous, what interests me about this article is how web start-up companies are referred to as “play-companies”:

I have a friend who’s a mechanical engineer. He used to build airplane engines for General Electric, and now he’s trying to develop a smarter pill bottle to improve compliance for AIDS and cancer patients. He works out of a start-up ‘incubator’, in an office space shared with dozens of web companies. He doesn’t have a lot of patience for them. ‘I’m fucking sick of it,’ he told me, ‘all they talk about is colours.’

The lack of ambition in the visions for companies that people have is a little saddening:

The most successful start-ups, at least if you go by the numbers — $13.5 million to Snapchat, $30 million to Vine, $1 billion to Instagram (each of these windfalls indirectly underwriting 100 low-rent copycats) — seem to be the ones that offer teenagers new ways to share photos with each other.

Tagged , , , , , , , ,

New books :D Design patterns and Lean Software

I bought some new books the other night after Java class. I’ve never actually read the gang of four design patterns book so I thought now’s a good time and to have in the shelf. I also found a nice book on Agile software development, Implementing Lean Software Development. It’s relatively short but very informative. I think it presents a more concise case for agile software development than James Shore’s The Art of Agile Development.

Tagged ,

Agile and user expectations

From this article on IT World, “Why your users hate agile (and what you can do about it)”, come some answers and strategies for dealing with user/customer/client expectations:

7 tips for making Agile more palatable to users

  • Find ways to give users some sense of predictability
  • Earn trust incrementally
  • Explain how updates will become more accurate as the project progresses
  • Give users enough information to make good decisions
  • Make sure you talk to all the stakeholders
  • Don’t use developer buzzwords
  • Adopt Agile techniques gradually

It’s interesting how clients expect things to be projects but since there is ongoing maintenance for websites, web apps, and other software, they inevitably turn into products and should be managed that way:

“Businesses might be anxious that constant iteration = never-ending,” says Josh Oakhurst, from Skookum Digital Works. Sure, to an educated client, “open-ended” is an advantage, with flexibility that can be celebrated. But most clients just want to know what they’re buying, he says. “With Agile, software developers are selling a process, not a product.”

The project is going to be never-ending unless it stops making money or accomplishing whatever goal the client has in mind.

Tagged , , , , , ,
Follow

Get every new post delivered to your Inbox.