Jul 312020
 

Generally speaking, when a software development organization says that they’re going or practicing agile development, they mean they’re following the Scrum methodology. Most jokes about doing software development have nothing to do idiosyncrasies of programming itself (Gary Bernhardt’s classic “Wat” presentation notwithstanding), but rather about dealing with Scrum. I get the frustration, As fun as it is to make fun of Scrum (and I’ve made my fair share of jokes about it), I really do think it’s a good development process (when done well), and that we would do well to keep it in mind. So having said that, here’s my attempt to defend Scrum.

Continue reading »

 Posted by at 11:45 AM
Jul 042020
 

Few things are as annoying as when you have a device that tries to be helpful and is completely, and utterly, wrong. Not only are you not gaining any convenience, because you still have to go back and fix it, but psychologically it feels worse because instead of making things better and doing things automatically for you, you’re having to go back and do it yourself anyways. If these were settings users can easily change, then it’s a minor inconvenience because we can update a configuration and be done with it. Sadly, that’s not the case, especially with devices that are supposed to be “smart” and thus figure it our without us having to do anything, or software that doesn’t expose these settings to users.

Continue reading »

 Posted by at 7:58 AM
May 312020
 

1 of the most iconic components to running software in production are consoles full of graphs and metrics about how that software’s performing. Generally, they’re called “dashboards,” but in my experience you want something that provides the ability to act on the data being shown on the console as opposed to a dashboard which is generally read-only. That action could take the form of filtering or drilling down on the data being shown, or triggering some administrative task. Like with everything else in life, 1 size, or in this case 1 administrative console, doesn’t fit all. If you group the different types of users who have a need for an administrative console, you’ll find they fall into 3 general personas.

Continue reading »

 Posted by at 3:00 PM
Apr 302020
 

For some reason, I’ve been seeing a lot of people piping in and saying and/or predicting that monolithic software architecture is going to be making a comeback starting this year. It probably doesn’t help that once I started reading the first article about companies moving from services to monoliths, Google kept highlighting more, but I think the impetus of this was Kelsey Hightower’s unpopular opinion segment arguing that most companies that switch to service-oriented architectures end up creating “distributed monoliths” that are the worst of both worlds. By the way, you’ve likely noted that I’m just using the term “service-oriented architecture” (OK, “SOAs”, because I’m lazy) for both service-oriented architectures and microservices – that’s just to make my life easier – as far as I’m concerned a microservice is just an SOA service with a very small scope.

Continue reading »
 Posted by at 11:45 AM
Mar 312020
 

Whenever we write applications or services, we generally include some form of health check that we can easily (and regularly) poll to make sure everything is still up and running. That health check likely confirms that your code has access to everything it needs to function correctly. Well, generally that’s “everything it needs that its developers can control.” Rarely does our health check include external dependencies, even though almost all released software has dependencies that are outside the control of its authors. So, how do you tell when the external systems you rely on to work, don’t?

Continue reading »
 Posted by at 11:00 PM
Feb 282020
 

Steven Hicks retweeted a great thread by Marco Rogers on “full-stack developers” a little before Christmas last year. I was starting to ponder a post on how it was getting nearly impossible to be a “full stack developer”, but the thread covered a lot more than I was originally planning to, so I want to use it as a starting point. My original idea was going discuss focusing on front-end vs. back-end development, specifically how front-end development has moved away from “be able to write HTML/CSS/Javascript (optionally using jQuery)”, while Rogers’ Twitter thread (very accurately) pointed out there’s much more to the whole “full stack” thing.

Continue reading »
 Posted by at 11:45 AM
Jan 312020
 

When commenting on political advertising on Facebook and Twitter, I cited Jeff Jarvis’s Unpopular Decisions, but never responded to his comments on the Facebook news tab. While I generally follow Jarvis’s blog precisely because I find his commentary on news insightful and well thought-out, this is a rare instance where his passion for the ideal of journalism seems to eclipse his typical well-thought analysis. In doing so, he missed a great opportunity to use his personal thoughts and opinions to publicly evaluate and potentially update the scope and work of the News Integrity Initiative (NII) that he helped launch

Continue reading »
 Posted by at 11:45 AM
Dec 312019
 

Much ado has been made about political advertising on sites like Twitter and Facebook since they announced their general policies around the ads, such as Jeff Jarvis’s take Unpopular Decisions and Ben Thompson’s Tech and Liberty. It’s easy to make this about the companies and the applications they offer, and to complain about how they’re ruining everything, but that strikes me as blaming online applications for the behavior of people offline. It also shifts responsibility for some of the problems onto targets of convenience regardless of responsibility.

Continue reading »
 Posted by at 11:45 AM
Sep 302019
 

A couple of months ago, developers on Twitter started spamming jokes or frustrations about the mythical “10X engineer” in response to this tweet by a startup investor from India. Thankfully, outside of this guy’s original tweet thread, nobody else was buying the “10X engineer” nonsense. Unfortunately, the fact that this guy tweeted it in the first place means there’s too many people out there laboring under a delusion that desperately need to be set straight.

Continue reading »
 Posted by at 11:45 AM
Aug 312019
 

One of the benefits of using Javascript frameworks like React or Vue is that you can build and export your own custom components. This lets other teams in your organization or even external developers build front-ends that have a consistent look and feel across the board as well as follow any style or branding guide you have. That’s great, but think about the components you’re putting out there for developers to use. Are you putting out the bare minimum or are you shipping front-end tools that speed development up and make people’s lives easier (you know, the whole point of shipping front-end components like this)?

Continue reading »
 Posted by at 3:45 PM