Personal Retrospectives

Posted on December 03, 2020 in Productivity • Tagged with Productivity, Tips

For a little over a year, I have set aside some time on Friday of each week to run a personal retrospective in a similar vein to the Agile ceremony (I actually have a recurring appointment in my Outlook for this). Essentially I reflect on the past week and write …


Continue reading

Pluralsight Podcast Appearance

Posted on November 26, 2020 in Announcements • Tagged with Pluralsight, Tips, Podcast

I recently had the pleasure of appearing on episode 56 of Pluralsight's All Hands on Tech podcast! I have used Pluralsight through my workplace over the last few years and found it to be a great learning resource, so it was really an honor to be invited to speak with …


Continue reading

Write Documentation in Markdown

Posted on November 01, 2020 in Productivity • Tagged with Markdown, Pandoc, Tips, Productivity, Documentation

I think the dictum "working software over comprehensive documentation" is very much undervalued in the enterprise. However, there are times when documentation is quite necessary, and the methods we have for creating and maintaining it seem underdeveloped compared to our patterns for software. The two challenges I have encountered most …


Continue reading

Todo Kata - Python Part 3

Posted on October 30, 2020 in Tutorial • Tagged with Tutorial, Python, Todo, Development, SQLite

Welcome to Part 3 of the Python Todo kata. In this final part, we will revisit the done application and modify it to work with a SQLite database instead of a text file.

We will see that Python makes this very easy with its built-in integration with SQLite in the …


Continue reading

Todo Kata - Python Part 2

Posted on October 28, 2020 in Tutorial • Tagged with Tutorial, Python, Todo, Development, mypy, click, RxPY, ReactiveProgramming

In Part 2 of the Python kata, we will implement the todo application. This will allow us to keep track of a todo list, and it will utilize the done functionality we created in the previous post to record the items we complete.

Series Outline

  1. Intro
  2. F# Series
    1. Part 1 …

Continue reading

MediatR vs Discriminated Unions

Posted on October 24, 2020 in Development • Tagged with MediatR, .NET, C#, F#, Patterns, FunctionalProgramming

In this post, I will compare and contrast what the MediatR makes possible in C# with what we can achieve natively in F# with discriminated unions. This is not meant to be an exhaustive review of the features and capabilities of MediatR or what is possible with functional techniques, just …


Continue reading

Todo Kata - Python Part 1

Posted on October 11, 2020 in Tutorial • Tagged with Tutorial, Python, Todo, Development, mypy, click

In this part of the Todo kata, we will cover the Python implementation. If you are new to the series, I would recommend reading the intro first. It should give sufficient background to be able to follow along even without being familiar with previous posts.

Series Outline

  1. Intro
  2. F# Series …

Continue reading

Todo Kata - FSharp Part 3

Posted on October 07, 2020 in Tutorial • Tagged with Tutorial, F#, Todo, Development, SQLite, Dapper, ORM, SQL

Welcome to Part 3 of the F# Todo kata. In this final part, we will revisit the done application and modify it to work with a SQLite database instead of a text file.

(Note: F# has a great feature called a type provider which can give strongly typed compile-time access …


Continue reading

Todo Kata - FSharp Part 2

Posted on October 06, 2020 in Tutorial • Tagged with Tutorial, F#, Todo, Development, Events

In Part 2 of the F# kata, we will implement the todo application. This will allow us to keep track of a todo list, and it will utilize the done functionality we created in the previous post to record the items we complete.

Series Outline

  1. Intro
  2. F# Series
    1. Part 1 …

Continue reading

Todo Kata - FSharp Part 1

Posted on October 05, 2020 in Tutorial • Tagged with Tutorial, F#, Todo, Development

Welcome to Part 1 of the F# kata to implement to todo list manager discussed in the introduction. In this post, we will implement the done command. We start with done rather than todo because todo will actually depend on functionality in done to save completed items whereas done has …


Continue reading