Posts

Utah .NET Meeup

On 13 June 2019, I had the opportunity to speak at Utah .NET Meetup in Salt Lake City, Utah.

Code Reviews (Don't have to Suck) - 13 June 2013
According to a 2016 survey by Smart Bear Software code reviews are the #1 way to improve code quality. Come to this session to learn the benefits of reviewing code, as well as different tools and techniques for conducting code reviews.

Surprise twist; the best way to code review is to pair or mob, so we had a small group mob on a kata for the last 20 minutes.

Info about the meetup can be found here.
The slides for Code Reviews can be foundhere.

Flow Factor 2019

On 11 June 2019, I had the opportunity to speak at Flow Factor in Salt Lake City, Utah. I one workshop and the closing keynote.

What is Lean? - 11 July 2019
When we talk about any tool, technique or practice that we like, we can fall into the trap of thinking that “Everything good is X” and “X is everything good.” If we truly want to understand a concept, we need to know what it includes and what it does not. After this session, we will have a clear understanding of what Lean is, how we might apply it to software development, and when we would and wouldn't want to. This session includes several hands on activities that drive the content home.

Professional Craftsmanship - 11 July 2019
As our profession grows and matures, it becomes more and more important for us to develop a sense of what it means to be a software professional. Analogies to existing professions are easily drawn. Precision and analytical problem solving are essential. So are we engineers? Creativity and willingness to t…

OpenWest 2018

On 7-9 July 2018, I had the opportunity to speak at OpenWest in Salt Lake City, Utah. I gave 2 talks across the 3 days.

Code Reviews (Don't have to Suck) - 7 July 2018
According to a 2016 survey by Smart Bear Software code reviews are the #1 way to improve code quality. Come to this session to learn the benefits of reviewing code, as well as different tools and techniques for conducting code reviews.

Professional Software Craftsmanship - 8 July 2018
As our profession grows and matures, it becomes more and more important for us to develop a sense of what it means to be a software professional. Analogies to existing professions are easily drawn. Precision and analytical problem solving are essential. So are we engineers? Creativity and willingness to try things we’ve never done are core to success. So are we artists? We are a new breed of professional that draws on but is unique from what has come before.

Info about the conference can be found here.
The slides for Code Reviews can be foun…

Architecture at different levels of abstraction

Image
This week I am attending the O'Reilly Architecture Conference in NYC with my team and I had the pleasure of attending a two day training on Building Evolutionary Architectures presented by Neal Ford and Rebecca Parsons.

During this session, on of the things we talked about extensively was coupling. We looked at dependency maps for different architectural styles including the big ball of mud. We saw something like the following and almost everyone agreed, "That is a bad architecture."

Big Ball of Mud
This reminded me of something I has seen elsewhere before, and after a quick search, I found it: Netflix Death Star Architecture
The ball of mud is considered obviously wrong by most architects, but the death star seems to be held up as an ideal by just as many and likely most of the same architects. Why is this?
Are afferent coupling (inbound dependencies) and efferent coupling (outreaching dependencies) only important at a certain scale?Is it a matter of getting things done? W…

The SLC .NET User Group

On 8 February 2018, I had the opportunity to speak at The SLC .NET User Group in Draper, Utah.

Professional Software Craftsmanship
As our profession grows and matures, it becomes more and more important for us to develop a sense of what it means to be a software professional. Analogies to existing professions are easily drawn. Precision and analytical problem solving are essential. So are we engineers? Creativity and willingness to try things we’ve never done are core to success. So are we artists? We are a new breed of professional that draws on but is unique from what has come before.

Info about the meetup can be found here.
A version of the slides for Professional Software Craftsmanship can be foundhere.

Big Mountain Data & Dev Conference

On 10-11 November 2017, I had the opportunity to speak at Big Mountain Data & Dev Conference (aka Utah Code Camp) in Salt Lake City, Utah. I gave 3 talks across the 2 days.

Code Review - 10 November 2017
According to a 2016 survey by Smart Bear Software code reviews are the #1 way to improve code quality. Come to this session to learn the benefits of reviewing code, as well as different tools and techniques for conducting code reviews.

Professional Software Craftsmanship - 11 November 2017
As our profession grows and matures, it becomes more and more important for us to develop a sense of what it means to be a software professional. Analogies to existing professions are easily drawn. Precision and analytical problem solving are essential. So are we engineers? Creativity and willingness to try things we’ve never done are core to success. So are we artists? We are a new breed of professional that draws on but is unique from what has come before.

An Architecture for Autonomy - 11 November…

OpenWest

On 13 July 2017, I had the opportunity to speak at OpenWest in Salt Lake City, Utah on An Architecture for Autonomy.

An Architecture for Autonomy
In the 5 years that I have worked as an architect at Pluralsight, we have grown from one team of 4 engineers to over a dozen teams totaling more than 100 smart, professional software craftsmen. During this time, we have also acquired more than half a dozen companies and disassembled a single monolith 40+ bounded contexts with hundreds of independent microservices. Come to this talk to learn how we integrated .NET, PHP, Python, NodeJS, Ruby, Elixer, Scala and soon Go into a single, functional product offering. Come to this talk to learn how we have embraced team autonomy to create an architecture that allowed us to deliver more than 60 new user experiences over the last year.

Info about the conference can be found here.
An updated version of the slides for An Architecture for Autonomy can be found here.