DaedTech

Stories about Software

By

Learn from My Mistakes: Applied Positioning and Specialty Lessons

I’ve talked a lot about how not to position yourself lately.  Last week, I suggested you not do it by tech stack of framework or whatever.  And before that, I suggested you not do it by being a laborer.  In general, I’ve talked a lot about positioning lately.

But all of the talk has been pretty abstract.  Let’s switch it up today and get concrete.

Up to this point, I’ve thrown out off-the-cuff examples, like becoming “the build expert” or something.  Some of you have asked for more tangible, specific examples.  And I can actually think of no better way to offer those examples than by wandering through my own career, looking for them.

Of course, I didn’t figure all this stuff out until quite recently.  So these are all “road not taken” kind of examples, and that’s why I’m titling this post “learn from my mistakes.”  Here are all the times that current Erik would have told past Erik to recognize opportunity knocking.

Read More

By

DaedTech Digest: Facebook, Dev Tools Bundles and Culture

Happy Digest Friday, readers!  As the US lurches toward an inflection point on the “I can’t believe this is necessary” subject of how not to regularly gun down its own children, I’ve been heads down dealing with logistics.  My own issues seem downright petty next to that one, but nevertheless they’re mine, and I’ve had to deal with them.

As mentioned last Friday, I’ve navigated the back end of the site migration which, hopefully, is resulting in a much better browsing experience for all of you.  Traffic is way up and Moz is reporting no more 5xx errors, so something must be going well.  Besides that, I’ve booked some short term travel (Rosarito this weekend and possibly Detroit next week) as well as our next extended stay after San Diego: Phoenix, AZ.  Oh, and also, you know, the regular business of running businesses.

But even with a lot going on and several 12+ hour workdays this week, we did manage to sneak in another opportunity to enjoy the incredible San Diego scenery.  Here’s the view from only partway up Cowles Mountain.  You can see the downtown area off to the right and Mexico to the left.

The digital nomad life certainly has its perks.  Anyway, let’s do some picks and posts.

Picks

  • First up, I threw together a small update to our codebase assessment business’s site.  It’s very much a work in progress, but it’s coming along thanks, in part, to Librestock, which is my pick.  If you need free, no strings attached photos, they’re pretty awesome.
  • For Hit Subscribe, I’ve been working on a little application to manage gathering performance metrics for blogs and to manage posts.  As part of this, I need to make use of the Trello API from a C# codebase.  If you need to do this, give Manatee.Trello a look.  It wraps the Trello API in a discoverable domain model that’ll make you think “Linq to Trello.”
  • My final pick is the professional and talented crew of authors we’ve assembled at Hit Subscribe.  I’m writing only a fraction of the client blog posts now, and focusing on building the business, because they’re doing as well as or better than I could do myself.  If you’re looking for good reading material, give them a follow!

The Digest

Have a good weekend, all!

By

Tech Stack, Framework, Library or API: How Not to Specialize

Today, I’m going to keep plugging away with another mid-week post in the developer to consultant series.

To recap, I’ve talked recently about how you need to start by figuring out your positioning and then about how that positioning should orient around problem solving instead of laboring.

Today, I’m going to build on that momentum.  I’m going to talk about the positioning mistake you’re almost certainly going to make and how to avoid it.

The Positioning Mistake

You’re going to try to position yourself around a tech or tech stack.  “I help people with blockchain” or “I’m a Ruby on Rails performance expert.”  Now, this isn’t as bad as the generalist career approach, to be sure.  But it’s really not where you want to go, either.

I’ll get to why in a moment.

But first, let me just say that it’s completely understandable why you gravitate toward this.  Our industry pushes you that way with an aircraft carrier’s worth of momentum.

You should be a generalist and compete with 18,000,000 other programmers to be “the best” and get hired at SiliconPrestigeTech.  Not for you?  Well, fine.  Then get better than everyone else at some tiny piece of technical real estate.  Everything in your experience pushes you this way.

Indulge me for a moment.

I’m going to force one of my parables on you to demonstrate the absurdity of this situation.  And then I hope this will serve as your compass to navigate your way out of the generalist quagmire.

I once wrote a post about what it would be like if contractors behaved like programmers.  This is going to be a bit like that, but doctors are knowledge workers, so it illustrates the point a bit better.  And I’m going to emphasize a different set of specifics.

Walter White, His Doctor Recruiter, and His Doctor Manager

My wife and I have been watching Breaking Bad again over the last month.  It’s not a spoiler if I tell you that the main protagonist, Walter White, receives a cancer diagnosis (it’s the premise of the show).  Lung cancer, and an aggressive form at that.  So let’s imagine Walter in a world where doctors acted like programmers.

The first thing that Walter would need to do is to hire two people for his “diagnose and treat my cancer” project.  These would include a doctor recruiter and a doctor manager.

The doctor manager would sit with Walt, listen to his symptoms, and lay out a roadmap of what comes next.  Now, this doctor manager “isn’t medical” so he would need to enlist doctors to perform the actual diagnosis.  But he’s “medical adjacent” enough to at least know which doctors to call.

Of course, he’s too busy and important to make those calls, so he enlists the doctor recruiter to do that, explaining that he needs someone with at least 7 years of CT scan, 5 years of X-Ray, 6 years Sputum Cytology, 4 years of Biopsy, with strong Bedside Manner skills a plus.

Read More

By

Promoting Test Driven Development with a Remote Team

Happy Monday, readers!  I’m getting back on track with reader question Monday once again.  No more excuses about bad web hosting issues.

Today’s question is about test driven development.  Specifically, it’s about test driven development when you’re trying to get a team to do it — a remote team.  Here’s the question (directed at me some time ago on Twitter).

I’ve talked so much lately about consulting and other such topics, that it’s fun to get back to programming a little, if only for nostalgia’s sake.  So, yeah!  Let’s talk TDD.

I have a lot of coaching experience, a lot of consulting experience, and a lot of TDD experience.  I’m going to combine all of those things into a series of suggestions.  This is what I would do if a prospective client wheeled a dump truck full of money up to my place and asked me to do what you’re doing.

First: Test Driven Development Evangelism

Leadership is on board, and you’re on board.  That’s important.  But without the team on board, it won’t matter at all.  With a new initiative like that, lack of team buy-in means they’ll humor you until the first excuse to stop comes along.

Now, getting buy-in doesn’t mean that you necessarily make everyone true believers.  A lot of times, the easiest way to convince skeptics is to (accurately) point out that having TDD on their resumes makes them more marketable.  So, hey, look at it as that your company is paying you to learn a skill that makes you worth more.

Even better than that, though, is to combine that with promise of alleviated pain.

Find some big snarl of global state and complex methods, and point out that TDD is like kryptonite for that kind of thing.  Or demonstrate the embarrassing-defect-saving power of a regression test suite and then ask if it wouldn’t be nice to have that everywhere.  Whatever the magic selling point is, try to find it.

And, by the way, this isn’t specific to remote test driven development.  You should apply this to any effort to install TDD (or really any practice, frankly).

Read More

By

DaedTech Digest: Hosting Woes and Unit Testing Studies

Happy Friday, folks.  Time for another installment of the DaedTech digest, wherein I link out to a bunch of technical posts I’ve written for other sites.

This week, I don’t have any specific personal narrative to relay, per se.  That’s largely because I’ve been working like a dog as we onboard additional clients to Hit Subscribe.  Oh, speaking of which…  we’re opening up the author rolls again, but looking for certain specific column types and topics.  If you think you might be interested, here’s the page where you can get started.

The only other item of note is that I have now successfully switched hosts.  My old hosting provider, Hostmonster, had my site on a server that must have become overloaded several weeks ago.  After seemingly endless support tickets and runaround from their tech support, they settled on three rotating and competing verdicts:

  1. You’re right, our server is overloaded and we’ll fix it.
  2. Actually, no, it’s probably WordPress or plugins or internet or something, whatevs, good luck, %#$& you.
  3. Ah, actually, it is our server, but that’s life and you need to pay more if you want us to fix it.

I got tired of pleading my case for them to listen to the techs that said it was (1), so I gave them an ultimatum: migrate me to a new server, or buh-bye.  They made their choice, and so did I.  I’ll get to the new provider in a second in my picks, but suffice it to say that I’ve measured page load times on GTMetrix, and my identical, migrated site now performs substantially better than it even did on Hostmonster, even before they overloaded the server.  And I’m paying less!

I’ve installed no new plugins on my site or changed its configuration in months. But you’re probably right Hostmonster, this massive uptick in intermittent server errors and timeouts… probably because I wrote a long blog post or something. Couldn’t possibly be a resource issue on your server.

I’m planning to migrate a couple of my other sites as well in the coming weeks.

Picks

  • On that note, my first pick is the new hosting company, Siteground.  It’s too early for me to speak to their long term performance or even support quality.  But, for someone who is too busy to deal with the mundanities of website administration, they are perfect.  I just had to give them my login credentials to Hostmonster, and they took care of everything — not just migrating the site over in its entirety, but taking care of the SSL cert, redirection, moving my DNS, and even taking over supporting my email.  I didn’t see any downtime, and I expended almost zero effort.
  • Also related to this saga, I want to throw a nod out to isup.me, which is a great way to see if a website is down for everyone or if you’re just having a problem.  I took advantage of the “check my site for malware” option (to throw it at Hostmonster support, if they tried that excuse) and wound up chatting with the site owner.  He’s getting into hosting recommendations and other value-adds, so bookmark it and keep your eye on what they do.
  • Speaking of things that abstract ugh IT issues away from me, I also pick LastPass.  I’ve used them for years now and it’s incredibly convenient.

The Digest

And, on that note, have a great weekend!