Craftsmanship

Values Statement

I, Timothy Klenke, will not act against these values. I would consider it unethical to act against these stated values. I hold myself to be accountable to them, and others may hold me to this as well.

Posted On Monday, February 18, 2019 10:22 PM | Comments (0)

Personal Overtime Policy

How much overtime are you willing to work? How much compensation should there be? Does this depend on the type of work? These are all good questions. It is important to think about the answers to these questions ahead of time, before you are pressured (either by yourself or externally) to work overtime.

Posted On Wednesday, February 13, 2019 9:46 PM | Comments (0)

Testing Workflows – Test-After

In this post I’m going to outline a few common methods that can be used to increase the coverage of of your test suite. Each approach you are skilled at applying is another tool in your tool belt. The more vectors of attack you have on a problem – the better. In this post I’ll enumerate some test-after workflows: Bug Reporting, Exploratory Testing, Examples, Smoke Tests, Coverage Analysis, and Test Refactoring.

Posted On Friday, May 30, 2014 2:06 AM | Comments (0)

Unprofessional Software Professionals

The reason why I am writing this blog post is to advise software professionals avoid calling their colleagues “unprofessional”. Asking JFK’s question of “what you can do” should be part of every retrospective. Have a list of things to do in the next sprint, and a backlog of things you want to do over the next few months.

Posted On Sunday, February 17, 2019 5:14 PM | Comments (0)

Empowerment

The objective of empowerment is to enable someone (or everyone) on a team to be able to make the same decisions that the team leader (or CEO) would make.

Posted On Monday, January 7, 2019 1:17 AM | Comments (0)

How to Code Review

This is the second of a two part blog post on code reviews. This second post is a technical checklist on some things to look for during a code review.

Posted On Wednesday, September 5, 2018 10:36 PM | Comments (0)

Code Reviews

This is a 2 part blog post on code reviews. This first post is on why and when code reviews should be done and some of the soft skills needed.

Posted On Wednesday, September 5, 2018 10:31 PM | Comments (0)

Ethics Organization

When specializing in servicing an industry you must become part of that industry. You must learn to talk like you clients. You must adopt their culture and behaviours.

Posted On Monday, October 26, 2015 11:28 PM | Comments (1)

Simplicity Principles and Anti-Patterns

Review of the Simplicity principles and anti-patterns: KISS, Clever Code, Golden Hammer, Yak Shaving, YAGNI, Premature Optimization, Worse Is Better, Big Design Up Front, and Bike Shedding.

Posted On Friday, February 20, 2015 12:29 AM | Comments (2)

Working Simply

I believe that Beck’s Four Rules can be simplified to 2 axioms: 1. Write working software 2. Write simple software

Posted On Tuesday, February 17, 2015 10:22 PM | Comments (0)

Release Notes Are Hard

Being able to write good release notes, code, or any other form of writing is a skill that takes hard work to learn and develop. Writing good release notes is hard. In this post I’ll cover some of the reasons why it is so hard and some tips to do better.

Posted On Friday, June 20, 2014 1:00 AM | Comments (0)

DRY and SRP

I don’t think it is fair to compare “Expressing Intent” against “DRY”. This is a comparison of apples to oranges. “Expressing Intent” is a principal of code quality. “Repeating Yourself” is a code smell. A code smell is merely an indicator that there might be something wrong with the code. What principle is the code smell of Duplication pointing to and how good of an indicator is it?

Posted On Wednesday, June 11, 2014 10:34 PM | Comments (0)

Testing Workflows – Test-First

This is the second of two posts on some common strategies for approaching the job of writing tests. So here is a partial list of some test-first methodologies: Ping Pong, Test Blazer, TDD, ATDD, and BDD.

Posted On Friday, May 30, 2014 2:07 AM | Comments (0)

Benefits of Pair Programming

This is the first in a three part post on pair programming. This post describes the benefits of pairing, including: improved quality, lower development costs, pair learning, and team building.

Posted On Sunday, April 27, 2014 9:43 PM | Comments (0)

The User Story Is The Thing

If any developer feels the need to improve the user story, solution, or requirement they are presented with that developer needs to be empowered, nay encouraged, to ask whatever questions are necessary to improve that user story.

Posted On Saturday, December 28, 2013 12:16 AM | Comments (0)

Copyright © Timothy Klenke

Design by Bartosz Brzezinski

Design by Phil Haack Based On A Design By Bartosz Brzezinski