Stories about Software


DaedTech Digest: Spring Training, Log Appenders, and Retiring Feature Flags

Happy Friday, everybody.  As always, I bring you another DaedTech Digest post where I go on a bit about the vagabond lifestyle, make some picks and link you to some posts I wrote about tech.  Last week, I chronicled our move to Phoenix for a month.  This week, we have a week of living in Phoenix under our belts.

It’s an insanely busy time right now for Hit Subscribe and the entire point of our trip was to attend a bunch of Cubs games for spring training.  I am succeeding on both fronts, which creates an interesting, manic work and recreation dynamic.  We’re going to baseball games every day, and basically working every moment we’re not at baseball games, including weekends.

Truth be told, it actually suits me pretty well.  I like our work, building businesses and watching baseball.

Here’s a screenshot of the experience in a nutshell (at least the baseball portion).  Beautiful weather, palm trees in the desert, the Cubs logo on the scoreboard, and a low-key, relatively intimate setting in the ballpark every night that includes picnic blankets on the lawn in the outfield, if you’re sitting out there.  There are also lots of mountains in the background (not pictured).


  • My wife and I have been listening to this book, “Build To Sell,” on Audible, about structuring a business so that you could sell it.  It’s really interesting, and it delivers on the title premise, but that’s not the valuable part, at least for me.  The real value, as far as I’m concerned, is how to take a generalized service-based business and turn it into a company that offers a productized-servie and behaves more like a product company.
  • I’m going to pick the combination of Farmers Insurance and this Jeep Dealership.  Apparently a fuel pump gave out on my Jeep the other day, causing it not to start.  I called Farmers and they sent a free tow out to take my car to the dealership, which replaced the part for free because it had a recall.  All of that was pretty nice, but the thing that impressed me across the board was how smooth the tech made it.  I was able to monitor the progress of the two truck driver on my phone while I waited, and the dealership was ready for me with information already in the system from my VIN and records at my home dealership.  An incredibly smooth experience, given the circumstances.
  • If you’re ever in Phoenix and you want a place to go work, Sip has got you covered.  They feature a Starbucks-esque coffee scene, but also craft beers and cocktails as well as a nice light fare menu.  So, if you’re a vagabonder looking for some ambiance and wifi, you can spend your morning and afternoon with coffee and your work, and finish the day with beer and your work.

The Digest

As always, have a good weekend, and thanks for reading!


The Coding Dev Manager Can Work, But It’s Hard In Traditional Orgs

Today, for reader question Tuesday, let’s consider the idea of the coding dev manager.  In my experience, most companies draw a fairly sharp line between individual contributors (they code) and managers (they don’t).  But in startups and Enterprise Silicon Valley companies, you’ll have additional rungs of the corporate pyramid where people still write code.

Who is right?  Well, in my estimation, startups and Enterprise Silicon Valley.  Er, at least, they’re less wrong.  (Let’s talk “right” when we stop modeling our corporate structure after ancient militaries.)

But, as the asker of today’s reader question points out, this still-technical manager struggles to spend much time writing code.  (When he refers to “the book” he’s referring to my book, Developer Hegemony.)

The Reader Question about the Coding Dev Manager

Hi Erik,

I really enjoyed the book. One question I have regarding the efficiencier/partnership model for developers.

In my last job at [redacted], I was leading a large team working with [redacted]. We followed a similar model where we worked with customers on business problems, and then designed the technical solution ourselves (obviously updating them along the way), and then delivered it. As the team lead of the initial project (and eventually the overall engagement lead of 3 projects), I found myself spending less and less time programming. Towards the end it was < 10%.

In your book, you mention that it is possible to still be programming yet work on these other areas, but in my experience the “other” areas end up taking so much time I ended up not really coding. Sure if we have a team full of “T-shaped” people everyone can share various burdens, but from the client’s perspective they typically want 1 counterpart who they can go to to make the final calls. Is this an inevitable fate, similar to section 3 of your book that as the person’s value increases they go further and further away from coding?

Also, a Tweet on the Subject

For a bit of additional background on the subject, check out this tweet from last week.  More interesting than my tweet is the responses, in the context of this discussion.  (None of which I replied to — apologies, folks, I’m terrible at Twitter.)

The doubts in the responses to my tweet are important.  People see the following failure patterns for the coding dev manager.

  • You don’t actually wind up coding (as expressed in the reader question).
  • You kinda do both things, manage and code, and both kinda suffer (Doug).
  • You don’t actually wind up leading (Grant).

And then there are a couple of points that maybe staying “at the top of” one’s tech game isn’t that hard or even necessary.  (I’m inclined to agree with both ideas.)

So overall, what we’ve got is the million dollar question — how can you be both a programmer and a leader?

Read More


DaedTech Digest: Android Development, Unit Test Case Studies, and Ramblin’

The digital nomad lifestyle continues this week, as does my unbroken streak of digest Fridays.  Today, we packed up our existence from San Diego, where we’d lived the last few months, put everything in the car, drove to Phoenix, and unpacked it all.  just like that, in the span of a day, we went from living in a little ocean-side condo to living in a much larger place in the Arizona desert.

Of course, this has been pretty tiring.  I’m typing this at about 2:30 AM Mountain Standard or Pacific Daylight or whatever timezone I’m in.  That makes it probably rise-and-shine time for some of you on the East Coast.  Today has been a long day and tomorrow figures to be a tired one.

No complaints, though.  I love this lifestyle and wouldn’t it trade it for the world (or avoiding a hectic “moving” week every now and then).  It’s also going to be fun to have this view out my front door for a month: orange tree and pool.

So enough about my meandering around the southwest United States.  Let’s do some picks.


  • Someone read my post about remote programming jobs and sent me a note about a variety of things.  One of them was this conference, Running Remote 2018, which is my pick (in spite of not having attended).  It’s got a pretty awesome-looking speaker and it’s a great cause, IMO.
  • I haven’t yet had a chance to try it (will do that in the next week or so), but check this out.  It’s a quickstart guide for using the Google Sheets API in .NET.  The guide looks pretty well done, thorough, and approachable.  Looking forward to giving it a try.
  • If you ever find yourself in San Diego (Ocean Beach, specifically) and you have office needs, I highly recommend the OB Business Center.  They’ll do basically anything that those of us lacking an office need (scanning, printing, mailing, faxing, etc), and the customer service is absolutely second to none.
  • Lastly, a plug for somewhere near my new location.  We got settled around 10 PM and were starving, but figured our food options would be slim.  We found this place in walking distance, Postino, and had a great meal.  Their main attraction is a kind of tapas-style bruschetta, and it was as good as it sounds like that might be.  If you’re ever in Phoenix, they have a few locations.  Check it out.

The Digest


Consulting Skills You Need, Without the Vague Platitudes

Let’s take a break from the heretofore linear nature of the developer to consultant series.  I’d been writing this as if it were a book.  But it’s not a book (yet).  So today, appropos of little, I offer my thoughts on essential consulting skills.

Now, before you object with, “I just want to be a software developer,” read this post about why every developer should also be a consultant.  If you want your career to consist of more than having project managers order you around, you’ll need these skills.  They’re essential skills for consultants, but they’ll help your career either way.

I poked around a little to see what others had to say on this subject.  If you google “consulting skills” you’ll find advice that comes in two flavors.

  1. “Here are some skills you need to convince Gigantic, Ubiquitous, & Inevitable Consulting, Inc. to hire you as an entry level consultant.”
  2. “Here are some skills you need as a consultant, like being nice and having curiosity.”

Let me briefly address these things before I offer my obviously different take on the matter.

I Have No Idea What To Tell You about Consulting for Massive Consulting Shops

What does it take to work at one of these huge agencies?  Dunno.  I’ve never done it.

So if you’re looking for interview advice ahead of your phone screen with McKinsey or PWC, you’re probably barking up the wrong tree.  Will these skills help you in general?  Yeah.  I don’t see how they couldn’t.

But this advice is about how to succeed with your own, specialized practice.  It’s not going to help you get an entry-level, salaried consultant position.

No Vague Platitudes Here, Just Consulting Skills

Let’s be clear on something.  “Be nice” isn’t a skill.  “Enthusiasm” and “curiosity” aren’t skills.  These are all more or less personality traits.

But I’m not objecting based on semantics as much as I am on the basis of effectiveness.  In the “every developer should be a consultant post,” I laid plain the definition of consulting.  It means you provide expert advice in exchange for money.

Now, does being nice help with that?  Or curious?  Yes, of course it does.  But so do a lot of other things, too, in a vague way.  Decent hygiene, taking notes, and not showing up drunk are also helpful.  But these aren’t skills, and they’re not specific to succeeding with a consulting practice.  Most of this is just table stakes for existing in the corporate world.

So I’m making a point here to leave out ‘skills’ that are too vague to help, like “good EQ” or “leadership” or whatever.  Instead, I’m going to list some very specific things that you can actually practice.  And I’ll list them in rough order of when they help in a gig, from discovery to wrap-up.

That said, let’s get specific.

Read More


How to Get Clients for Your New Consulting Business

Having ironed out the day of the week for reader questions last week, I’ll get right to the point here.  Today I’m going to talk about how to get clients for a consulting business.  This is in response to the following reader question.

It’s ideal to reach out to existing contacts, but past that what is the best way to approach people outside your immediate network for work?

When starting out, should you be highly specialized or more general to get the freelance practice started? And is it better to focus on a particular single offering or cast a wider net by offering more services?

So let’s set the scene.  You’re working a 9-5 gig, but with visions of starting to moonlight.  Maybe you want to become an efficiencer, a freelancer, or a consultant (if you’ve been reading my developer to consultant series).  Whichever of these you want, the advice I’d give is coalescing into one consistent narrative.  And I’ll offer that narrative today.

The person asking this question is exactly right in the first sentence.  It is ideal to reach out to existing contacts and, more specifically, to those who view you favorably.

But it’s not ideal for the reason you probably think.

You probably think these are ideal outreach candidates because they like or respect you.  But, while that doesn’t hurt, it’s not actually that important.  The reason outreach to close associates is so valuable is because they know how you can help them and how you can help others.

Job-Seeking Teaches You A Sales Pitch That Hurt You as a Consultant

I’m going to answer the reader question, but first I have to explain this subtle distinction.  And I’m going to explain this subtle distinction, but first I have to explain why the best way to look for jobs is the worst way to land consulting gigs, and vice-versa.

When you apply for jobs, your general mission is to make it clear how broadly useful you can be for prospective employers.  A good resume paints you as someone with a broad set of skills and a work history full of employer-favorable outcomes.  It reassures prospective employers that you’ll be useful to them in the years to come, regardless of changing circumstances.

The overarching message?

“I can be useful to you in whatever ways you need and deem necessary.  You, future boss, are the work planner and I am your broadly useful resource.”

This makes you an honestly good employee.  And it makes you a relatively useless consultant.

I once referenced an idea from Book Yourself Solid  that you need a “who and do what” statement.  I help [who] do [what].  As a consultant, you have this statement in lieu of a resume.

The overarching message?

“I can be useful to you in this very specific context where I am an expert and you need my help.”  This makes you pretty useless as a prospective employee, but well-positioned as a consultant.

Read More