Going Au Naturel: Comments as a Complexity Metric


I’ve written a lot about metrics as a means to gauge the complexity of a program including SLOC and the Halstead and McCabe metrics. An often over looked metric – and one I haven’t touched on before – is one that’s in plain sight: comments Comments are added to programs presumably to explain things that aren't clear. And sometimes they’re enough just to get the gist of how complex it might be. While you could start with a simple count of the … [Read more...]

Why You Need Current DB2 RUNSTATS


Not surprisingly, one of the questions I get asked most often asked by customers is how much CPU could they be saving – and how do they pinpoint the not-so-obvious sources of inefficiencies that might be using excess CPU. I tell them for DB2 applications, executing RUNSTATS is a good place to start. RUNSTATS is a DB2 utility that captures detailed information about the DB2 objects, tables, indexes, etc. and stores that information in the … [Read more...]

Mobile Still Dominates, but the Future Promises More Devices, More Complexity


Since the rise of mobile, we’ve all had to be in a constant state of readiness to keep pace with users engaging with websites and applications on varied and constantly evolving devices. It’s a point made in this video, the latest installment in The Family Code series, by a character known as “The Guru” – clearly the good son in this technology oriented family. As most of us know, operating in this mobile-dominant landscape is not easy for … [Read more...]

How to Know When Code is Complex, Part 3: Using the McCabe Complexity Metric


The McCabe Complexity Metric, as discussed in my last post, relates to the number of decision points (points where the logic path splits) in a section of code.  When used along with the Halstead Metric, the McCabe Metric can help you objectively assess and compare the complexity of new programs and applications. By using a threshold you can focus on the areas of greatest complexity, which you can then break into smaller, more manageable, logical … [Read more...]

Three quick steps to prepare for the mainframe retiring work force


The retiring mainframe work force issue has proven to be a slow erosion over time rather than some type of drastic drop off. No matter where your company sits in that continuum, here are three simple steps you can take to help reduce the impact moving forward: 1. Get Current “When is the best time to buy a Kirby vacuum cleaner? When the Kirby vacuum cleaner salesman is here!” That was the last ditch effort sales line of a door-to-door salesman … [Read more...]

The Impact of a Mobile First World on Modern IT Infrastructure


Everyone from early educators, bloggers, and even President Obama himself, is encouraging the general public to “write an app”. While there are an abundance of tools and interfaces at our disposal, even for the rookie programmer, an important factor to consider is determining requirements on the back-end infrastructure. The general populace expects a certain level of app speeds and functionality; what kind of new or changed infrastructure will be … [Read more...]

Mainframers: Older and Wiser


“Knowledge speaks, but wisdom listens.” ― Jimi Hendrix I recently spent two days with our mainframe sales, consultants and technical field staff – those who are in contact with our customers every day – for our annual fiscal year kick off. I looked around the room and thought, “Another year older, but another year wiser.” We all have our own notion of what it means to be wise in our personal lives. In “The Science of Older and Wiser,” … [Read more...]

Connecting Technology Failures to Business Failures


Techfails are inevitable. But they don’t have to be the cause of major disruption and lost revenue. With appropriate preparation, the right mindset and a proactive approach to performance, you can improve your reaction times and organize your response in ways that will reduce negative outcomes on the business. In Techfail, episode 2 of The Family Code, we get to see four different approaches to dealing with costly and disruptive IT issues. Most … [Read more...]

Should Defensive Programming be Used When Code will Never be Public?


In a recent Programmers Stack Exchange Q & A session discussed on Ars Technica, codebreaker asks: “Why follow defensive programming best practice when code will never be public?” After writing a card game for Java, the developer described how they used “a method in the Zone API, move(Zone, Card), which moves a Card from the given Zone to itself (accomplished by package-private techniques).” They continue, “This way, I can ensure that no cards … [Read more...]

Your IT Leadership: Relic, Hipster, Hysteric or Guru?


What kind of IT manger do you work with? These personality types might seem extreme, but they probably symbolically represent someone you’ve worked with -- or maybe still do. Those “types” are actually characters in a video series called The Family Code, about a family of IT managers – and they help make some great points. One character in particular possesses the skills and attitudes necessary to manage modern IT environments, while those … [Read more...]