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...]

Tools and Tricks for Jumping into a Pool of Unknown Code


Many developers have found themselves in this potentially challenging and frustrating situation: taking over someone else’s code project. Where to begin? In a recent Q & A session on the Programmers Stack Exchange, this question was explored: “What tools and techniques do you use for exploring and learning an unknown code base?” Following are some methods that will hopefully keep the struggling programmer afloat in their pool of unknown … [Read more...]

Performance Trends: Finding Value Amid the Hype


At a recent event, I took advantage of having some of the world’s most notable APM experts all in one place by convincing them to be interviewed on camera. What I wanted to know was whether or not the hyped-up technology trends that we see constantly in the news were really being implemented in companies. We discussed the state of cloud, mobile, big data and the process trend DevOps. I read plenty of articles on this stuff so it was surprising to … [Read more...]

Rapid Application Development: How Fast is Too Fast?


Although there has been tremendous progress over the years, application development remains something of a black art. Results aren’t always quite what were expected, development costs may get out of hand, and at the end of the day, even the brightest guru may have difficulty pinpointing the problem. Rapid Application Development (RAD) – one of the most prominent attempts at taming development challenges -- has become an established piece of … [Read more...]

The Mainframe is All Grown Up

Classic mainframe

During my IT career, I've found myself in various roles across multiple platforms. In that time, there's been one constant that I've observed: There is often a disconnect between different IT teams and across environments. We need to work to bridge those gaps, particularly in the evolving relationship between the mainframe and distributed worlds. Over time, I've seen a lot of change in the mainframe landscape, though probably none as seismic … [Read more...]

Happy 21st Anniversary Ruby!


“Who’s Ruby?” you might be asking yourself. Not who, but what is Ruby? The Ruby celebrating an anniversary this week isn’t your Aunt Ruby and Uncle Don, but a programming language created by Yukihiro “Matz” Matsumoto. Over two decades ago, Ruby’s creator had a vision of forming a language that brought together the best features of both functional (declarative) and imperative (procedural) programming. He combined portions of his preferred … [Read more...]

How to know when code is complex, Part 2: McCabe Complexity Metric


In my last post I discussed code complexity and the advantages of breaking complex code into smaller blocks. But how can we judge the size of these blocks?  How can we quickly know the number of decisions in each block?  If we think in terms of the delicate balance in a Calder Mobile, how do we ensure the blocks are similar in size and we get the “balance” that we need? This is where the McCabe Complexity Metric comes in. The Metric was … [Read more...]

Big Blue’s Watson Group Selects Big Apple Home Base


IBM’s Watson Group – the effort to take IBM’s brainy, Jeopardy-winning technology into new commercial realms, has dropped down in the East Village section of Manhattan on a mission to change the world. And it just might. To be sure, Watson (the name a nod to the former chairman of IBM – but also evocative of the famous Sherlock Holmes sidekick) is embarked for mostly uncharted territory with its plans to supplement human intelligence. … [Read more...]