Stories about Software


DaedTech Digest: Code Quality, Feature Flags, and Physical Migration

Happy Friday, everybody.  It’s DaedTech Digest time today.

I am just wrapping up my work week and preparing to spend all day tomorrow (today, by the time you read this) driving south to the US Gulf Coast for the next 5 weeks.  Why?  Because it’s cold where I am in Michigan, and it’s not cold down there.

We’re planning a winter/early spring where we split time between a town called Bay St. Louis, Mississippi, San Diego, and Mesa Arizona.  So if you live in any of those places and have suggestions for places to go or meetups to attend, I’m all ears!


  • If you like posts along the lines of the one I made Wednesday, then I suggest a couple of podcasts.  First, the Freelancer’s show, and second, the podcast of one of the panelists, Jonathan Stark, called Ditching Hourly.  They talk a lot about positioning, marketing, getting business, and getting away from the trap of hourly billing.
  • If you have any interest in SEO and keyword research, I recommend a Chrome plugin called Keyword Keg.  I use this constantly for my content business to help look for good blog topics.  When you do Google searches, it shows you the keyword volume right inline.
  • Speaking of my content business, I’ll do a plug for the Hit Subscribe blog.  The blog is aimed at teaching techies to use blogging to advance their business interests.  So if you want to learn about blogging, give it a look.
  • On the coding side, I’ve been enjoying Shouldly a lot for its unit testing assertion semantics.

DaedTech Post Digest

Have a good weekend!


DaedTech Digest: Bad Code, Evils of Coverage, Spending Your Money

Happy Friday, DaedTech readers.  I’m at three in my streak of DaedTech digest posts.  So far, so good.

If you’ll recall, last week I introduced the idea of “picks,” so let’s continue with that for starters.


  • (Shameless plug alert)  Someone asked me on Twitter today about finding an epub version of my book, Developer Hegemony.  While I generally link to its Amazon page, I did self-publish it through Leanpub.  If you go there and purchase it, you can download it as an epub, a mobi, or a pdf.
  • If you use Hootsuite to manage social media, I strongly recommend their new Beta composer.  I was actually on the fence about letting my subscription elapse, but that changed my mind — I’m that impressed.
  • If you track your site’s SEO at all, Moz has introduced a cool new feature that lets you look up all of a site’s keyword rankings.
  • And, finally, I bought this roof rack for Jeep Grand Cherokees to haul stuff as we trek around this winter.  If you happen to have a roof rack-less Jeep, I haven’t tested it extensively yet, but install was a breeze and it fit perfectly.

DaedTech Post Digest

Alright, onto the digest.  Here are some posts of mine you might want to check out.

  • I wrote a post for SubMain entitled, “5 Things Responsible for Your Poor Code Quality“.  One of them probably will surprise nobody reading: a lack of automated unit tests.  But there’s more to it than just unit tests.
  • I took a strong position on code coverage for NDepend.  I don’t think management should worry about or track code coverage.  If management is involved at this level, the team has much deeper problems than making Jenkins happy with branch coverage.
  • In a bit of a change of pace, I gave advice for the ASPE training blog about how to spend your training budget as a developer.  I related your training budget to that parable about filling a jar with rocks, pebbles, sand, and water.  So if that sounds interesting, give it a read.
  • I wrote a post for SauceLabs about how to use Selenium Web Driver to improve your web applications.  It includes an introduction to the tool, its backstory, and its value proposition.  If you’re not familiar with Selenium, have a look, because you’re the target audience.
  • And, finally, another post for SubMain about moving beyond using the HTML help file if you want to distribute documentation.  This is certainly a tried and true old friend for longtime .NET developers, but you’ve got better options these days.


DaedTech Digest: Static Analysis, Doco and Dependency Death Stars

Happy Friday, everybody.  I’m still figuring this digest thing out, so please bear with me.  But no matter how I iterate, what you’ll get is an aggregated link to posts that I’ve written for my Hit Subscribe business.

I’m thinking I’ll do picks each week as well as the digests.  You know how podcast panelists do “picks” at the end of a lot of podcasts?  I’ll give you some picks each week.  At least, unless this turns out to be a bad idea, in which case, I’ll stop.


  • Jogging without headphones.  For years, I’ve always doubled up on productivity by listening to podcasts or audio books while jogging, if not watching Pluralsight courses.  But recently a terrible pair of bluetooth headphones (seriously, don’t buy them — shop around for a competitor) broke, and I just went jogging with my thoughts.  It’s been a huge boost to the amount of creative thinking I do in a week.
  • I cannot rave enough about payroll service, Gusto.  If you need to run payrolls for your business, these guys make it seriously easy, even paying taxes for your automatically.  Before I switched, I’d been using Intuit’s online payroll, which was the user experience equivalent of a grizzly bear carrying a raccoon in a backpack and both of them are mauling you.  Gusto restored my faith in humanity.
  •  Every now and then, I get nostalgic for computer games from my childhood.  When I do, abandonia usually has me covered.

The Post Digest

And now, the post digest.

  • I write a lot of posts about static analysis, since it’s something of a specialty of mine.  Here’s another primer I did about it for TechTown training.  In it, I evangelized a bit, encouraging readers to look past the really dull name and see that underneath it lies a cool concept.
  • Speaking of static analysis, I wrote a post for NDepend entitled “Code Quality Metrics: Separating the Signal from the Noise.”  There’s a lot of reductionist code metrics out there, so I did my part to add some nuance to the world.
  • For SubMain, I wrote a post taking you through different documentation tool options that programmers have.  User manuals, release notes, and all the traditional stuff, but then also new approaches that generate documentation automatically, at least for a starting point.
  • In another NDepend post, I talk about a novel way to settle the inevitable squabbles among a development team.  Make your arguments, and then prove them visually, using automated tooling to paint pictures of your codebase.  My personal favorite for proving a point has always been the dependency death star.
  • And, finally, I wrote a post for Monitis trying to get a little more specific around the generalized and often hype-y term, “big data.”  This post took a longer view, tracing a history of the concept back to the early days of Java and .NET.



DaedTech Digest: Agile, Code Review Horror Stories, Test Smells

First of all, some housekeeping.  Back when I finally gave Disqus the boot, it reverted comment settings to WordPress’s defaults.  One of these was, apparently, to turn off comments after 28 days.

Sorry about that.

Backlink spammers notwithstanding, I welcome comments on posts new and ancient.  So I want to be clear that I did not do this intentionally.

Alright, now, back to business.  I’m bringing you the second installment of the DaedTech digest wherein I aggregate some of my posts instead of cross posting.  The feedback on this format has, so far, been positive, inasmuch as I’ve gotten it.  So let me know if you have thoughts one way or the other.

This is part of a pivot that I’m planning with DaedTech, for which I’m currently ideating a bit on a mission statement for the blog.  I’m thinking at the moment that the mission, going forward, will be “helping software developers become the boss of their software development.”  This could include opportunist plays to earn promotions in the office as well as help with side hustles and going free agent.

And Now, the Digest

But, I digress.  Onto the digest.  Note that these posts are ones that I wrote some time back.  I’m doing beefed up digests to catch up, and then I’ll start linking you to the various posts I’ve written for clients during the week.

Anyway, I think that 5 a week should eventually get us current.  But, if not, I’ll crank up the juice on these.  Man, putting these together, I realize that I write a LOT of blog posts.  I guess it’s no accident that I wound up founding a blogging business.


The First DaedTech Digest

I mentioned this idea in a post I wrote the other day, the idea of a digest style of post.  So today, I’d like to give it a try.

You see this sort of thing a lot, all over the place.  So-called planet sites have been around for a long time, aggregating community-related articles into a single place.  Examples include one of my personal favorites, the Morning Brew.

There’s just one difference in what I’m proposing.  Instead of gathering stuff that others have written, I’m going to digest the stuff that I’ve written.  In the last year, we’ve turned my paid blogging for other sites into a tech content business, taking blogging from a side hustle and hobby to a professional gig.  So, I write a lot of blog posts.

Historically, I’ve simply cross posted these with canonical linking, leading in with “editorial note: I originally wrote this post for…”  But I’m thinking of taking DaedTech in a bit of a different direction than just generalized software-oriented blog posts.  More on that later.

The point here is that, instead of pushing one of these cross posts out per day, I’m going to do a single digest post per week containing posts that I’ve made.  I have about 90 backlogged drafts in my folder, so at first it’s going to be posts I made some months back.  But sooner or later, I’ll catch up and give the posts I’ve published in the last week.

But anyway, without further ado, here’s the digest.

Some Posts to Check Out

  • This is a piece that I wrote for the Monitis blog.  It’s about threat modeling and the woes of being an e-retailer and guarding yourself against criminals and ne’er do wells.
  • I wrote a post for TechTown that was a primer about unit testing in C#.  It gives you a back to basics explanation, the value proposition, and the simplest imaginable examples of writing unit tests.
  • This is another post that I wrote for Monitis. It’s about the C# IEnumerable construct and how, if you misunderstand it, you can kill your site’s performance.  This has to do with how IEnumerable can encapsulate deferred execution, and that it only promises a strategy for obtaining items, rather than giving you those items.
  • I wrote this post for SubMain.  It’s about how something that’s seemingly inconsequential — spell checking your code (specifically, C#) is more important than you might think.  There are subtle things to consider that you might not have considered.
  • This post is actually going to become part of Microsoft’s official documentation!  Seriously, no kidding.  Bill Wagner wrote to Patrick and I about this post, and it’s now in their documentation build on Github.  Anyway, I wrote it for NDepend, and it’s a walk back through past major version of C#, reflecting back on nearly 2 decades of the language.  It was a fun journey down memory lane.

And, that’s it.   Happy reading, and happy Friday!