Agile is Good and Scrum is Dumb

One of the most disturbing trends I have seen over the last few years is the interchangeability of the terms Agile and Scrum. Most people believe that Scrum is a form of Agile. A lot of employers will advertise that they use Agile when in fact they actually use Scrum. If this doesn’t infuriate you, it likely means that you have no idea what Agile actually is, so keep reading. ...

March 23, 2018 · 5 min · Jay Little

Fact: Every Tech Related Disaster Is Man-Made

Yesterday at work I was finishing off an extremely productive week. After spending the previous week on a spike, everything was really starting to come together for the feature I’m building. It was a good day. But then during a team demo somebody made a comment that turned things a bit sour for me. Later on I ranted about this during sprint planning. While the ultimate end result wasn’t a big deal, I mulled it over in an attempt to determine why any of this ticked me off to begin with. ...

March 17, 2018 · 4 min · Jay Little

Things I Don't Miss About Windows: Updates

So I’m going to start off this post by being extremely blunt: I don’t like Windows. In fact when it comes to Operating Systems (aka OSes), I consider virtually any other OS a superior choice. The only exception is situations in which some piece of critically required and irreplacable software mandates that you must use Windows. Despite these feelings and the fact that my house contains only two Windows machines, only one of which belongs to me (the other belongs to my current employer), I spent quite a few hours mucking about in Windows this past weekend. ...

March 12, 2018 · 5 min · Jay Little

Veni, Vidi... not so much Vici

I’ve been doing a lot thinking regarding the overall state of my trade. Of course that should be obvious to anybody who follows my posts. Much of it has been a deep dive into what can only be described as a creeping depression regarding the state of the trade from my viewpoint. Much of it is birthed by the sum of my experiences over the last two decades. Some might even go so far as to speculate that this constitutes the beginning of a mid-life crisis. There is likely some truth to that. I’m close enough to 40 that my perception of what constitutes old age has already begun to radically shift. So much so, that I often wonder if I’m mentally equipped enough to continue doing this sort of work for the next twenty to thirty years. This is not something I would have actively found myself thinking about ten years or even five years ago. ...

March 5, 2018 · 4 min · Jay Little

Low Standards in Software tend to go Viral

So here is something that has been on my mind as of late: The plague of shitty software. My goodness, there really is a lot of it floating around nowadays. That’s not what I’m really concerned about though. What concerns me is that our ability to accept shitty software leads us to create even more shitty software. I am not talking about end users here. I am talking about software developers. Most software developers spend a huge portion of their lives suffering through shitty software just like non-developers do. Now in some cases, we suffer through different kinds of shitty software that is specific to our profession but in a lot of other cases we suffer through the same pieces of shitty software that you do. A couple of examples that come to mind are: Windows 10, Microsoft Office, Visual Studio (not Code) SQL Server, Eclipse and PHP. Those are just a few examples. Most of my examples are products produced by Microsoft. That’s mostly a reflection of the fact that I’m still stuck using a lot of proprietary Microsoft software as part of my day job despite the fact I stringently refuse to use it outside of work. While I’m going to pick on Microsoft for the majority of this post I want to be very clear: Microsoft isn’t the only company producing shitty software and feeding this beast. They just happen to be producing the vast majority of the tools that happen to drive me insane on a daily basis. ...

February 26, 2018 · 4 min · Jay Little

Code Mode: A True Developers Drug of Choice

This week I wanted to chat about a syndrome that I have experienced a few times over the years as both an amateur and a professional developer. What syndrome am I referring to? One of my favorites: The syndrome of “Code Mode”. What is “Code Mode”? The term refers to the scenario in which you planned on accomplishing X number of things in a given coding session and end up accomplishing X^2 instead largely due to bursts of sustained inspiration and abnormally long periods of consistent lucidity. Why do I call it “Code Mode”? My father, who is also a professional developer, called it this for years. So for me this term has become synonymous with this state of mind. I should start off by saying that this is generally considered to be a good thing. For me this syndrome tends to manifest in response to particularly frustrating coding sessions in which I either did not meet all of the goals I had going into it or I literally had to fight tooth and nail for every win. ...

February 19, 2018 · 3 min · Jay Little

The Bigger They are, the Harder They Fall

When it comes to the modern day world of software, one thing above all has become clear to me over the last 20 years: On a long enough time line, failure is virtually guaranteed. That being the case, how our software approaches, adjusts for and reconciles failure is clearly its most important characteristic. That’s not to say that modern day software is all garbage, but in all the ways that actually matter, that largely appears to be the case. The cold hard reality is that as requirements and technology have advanced, software developers have struggled in earnest to keep up. Despite the rapid rate of advancement on the tooling side there is still a finite limit to the level of complication a single human being can grapple with on a mental level. The specific limit varies from developer to developer but regardless of how good anybody is there is no debate: We all have a limit. ...

February 12, 2018 · 4 min · Jay Little

Ethical Quandary: Is it ever responsible to irresponsibly disclose?

Today’s post is going to examine an ethical grey area that I currently find to be very relevant. Is it ever okay to ignore responsible disclosure standards for security related issues? Spoiler alert: I’m going to argue that there are cases in which ignoring these standards is not only permissible but the only real ethical course of action. Okay so lets start with some sample code. The below code represents a simple .NET Core C# program that encrypts a piece of plaintext. ...

February 7, 2018 · 5 min · Jay Little

The Evolution of Tech: Roadkill

In a follow up to last weeks post, I’ve decided to examine some of the other side effects of increased technology accessibility. After spending some more time pondering my last post, I realized that the problem goes far beyond a loss of unrelated learning opportunities. In fact I would go so far as to say that easy to use tech may in fact be making us dumber while still making us more productive. ...

January 29, 2018 · 4 min · Jay Little

The Evolution of Tech: Amnesiac Highway

Something insidious has been lapping away at the innards of my mind for quite awhile. To be honest I wasn’t even consciously aware of it 48 hours ago. So why am I writing about it now? Yesterday at my nephew’s 9th birthday party, somebody posited the theory that video games act as a gateway drug for other more productive technology related pursuits. I immediately took offense to that although I didn’t fully understand why at the time. Now that I’ve had some time to think about it, I decided to go ahead and write about why I feel that way. ...

January 22, 2018 · 4 min · Jay Little