Beware of Brittle Code Peddlers
by Scott Olson, on Dec, 14, 2015
The brittle code peddler won’t tell you what they are. Instead, they will offer software that appears virtually fool-proof. They will tell you, “We have the knowledge and the expertise, to build you the software of your dreams.”
Will it stand the test of a growing user base and unusual data entries? What will happen when it is time for an upgrade? A year or two after your purchase, you find yourself needing to add features or make modifications to it. Technology changes quickly and businesses need to ensure that their apps and software work properly with the latest platforms, in-house tech and growing customer base.
When things break, confidence in your organization is lost. It makes sense to reach out to the peddler, your original developer, for a fix and to do so as fast as possible. But it doesn't make sense to be forced to buy a whole new software because the original coding cannot be changed or to be told that "This was not a part of the original deal." Beware the brittle code peddler and choose software with a model that can be easily scaled, modified and kept up-to-date for all of your future needs.
So why am I telling you this?...
Gather Round for a True Modus Story
A company out of Chicago has been considering switching to Modus for the last six months. Last week I called, my contact “Sara” to check in with them. Sara said that their key decision maker left the company suddenly, and the company would not be doing anything new until they replaced him. At least, I knew that it might be awhile until we could take further steps. It can take several months to a year to interview and select new upper management. I wasn’t expecting a call back soon.
Sara called me back this week with lots of questions. I was happy to hear back from her so quickly. Had they found a replacement so soon? I was expecting a longer delay between our communications. I was eager to find out what had sped up the timeline. While on the phone, I chatted with her about our features, and eventually I asked her about what had changed from last week.
According to Sara, the rug had pulled out from under them. Their sales app was non-functional, and the 3rd party development shop who built their sales app now wants a big check to fix the app. In their conversation, the developer kept using the term "brittle code." What does that mean?
Brittle code is when older software appears reliable and then fails when altered in a small way or given unusual data. As software grows with a larger base of users, algorithms that do not account for all forms of a specified input data can pose a big problem. Remember when the brittle software of the 1990s with a two-digit field for year entry had to be updated or the year 2000 (Y2K) was going to end the world as we knew it?
The developer gave Sara two options for payment. Either pay a very big retainer to cover 2016, or an hourly rate. The thing about the hourly option is that they "wouldn't exactly jump on their project" if the app broke.
Sara was looking for more choices. Their app didn’t work and the options offered weren’t going down easy. Low priority response with the hourly rate? The company needed a functioning app, and they needed it quickly from a team that could assure them that it would be managed properly.
One of our duties at Modus is to save people from such a nightmare. Our SaaS model ensures that code stays current with the latest tech and is far faster than building an app in-house.
Our model also benefits our customers by:
- Offering regular updates and improvements to the app
- Providing monitoring and support to prevent issues
- Making it easier, faster and cheaper to roll out an application
SaaS hits a number of points for businesses, so it is no wonder that it is a growing trend in app development. IDC’s Worldwide SaaS Enterprise Applications 2014-2018 Forecast and 2013 Vendor Shares estimated that SaaS Enterprise Applications will become a $50.8 billion market in 2018. Author and research director, Christine Dover of Enterprise Applications and Digital Commerce said:
“Demand for SaaS enterprise applications is accelerating and exceeding the demand for on-premise applications by five times (during the five-year forecast period through 2018, SaaS revenue is forecast to grow at 17.6% CAGR, while on-premise revenue growth is only forecast at 3.1%). Generally, wherever new enterprise application software is required, the expectation is that SaaS applications are preferred, particularly for customer relationship management and enterprise resource management applications…”
Scratching Your Head over Build vs. Buy?
Will you create your own software or buy software that already exists? That is the question. Your organization may have the resources, in-house manpower, and expertise to create and modify your own app, but what will happen in the long-term? Even if you build it yourself, it can still be problematic and expensive to return to old coding and make necessary updates or include workarounds. Let’s consider a few key points:
- Do you have an adequate amount of time to build and test your application in-house?
- Do you have the deep pockets necessary to take into account the costs of design, development, and deployment?
- Do you have a clear idea of the features that you need?
- Have you consolidated an experienced team that can collaborate on this project now and later? Your organization needs a team that is knowledgeable and stays abreast of the latest trends to ensure that your app works as expected across any device.
- Can you guarantee that all necessary information pertaining to the app is readily available for the in-house team of the future? The most recent changes may not be documented or easily located. You need a system in place for when you need to make changes.
- Do you have a user base for testing and feedback?
- Do you have a dedicated bug tracking, reporting and remediation team to provide continual improvement for the app?
- Can you adapt your coding to add new features and remove old code without negatively impacting the integrity of your app? The original coding used determines how malleable your app is to change.
Were there a few no or I don’t knows? Keep reading.
- Do you have numerous other projects for your team to handle simultaneously? If you have limited resources, it becomes difficult to devote enough time to building and rigorously testing the app.
- Do you not have an in-house team, but resort to a few “designated” in-house people and outsource your other needs? Do you have new faces join, and current staff leave regularly? This makes it even more difficult to keep all of the necessary intelligence in one place and to reach out to the original developers when things go awry.
- Do you need your app in a few weeks rather than a year or two?
- Do you need a field-tested platform that is experienced in handling features and concerns that may pop up in your organization’s future?
If this resonates with you, it may be worth looking into a buy solution. But don’t get stuck having to shell out big bucks because of brittle code. A solution based on the SaaS model will ensure that your app can grow and change with your business.
Now we'd like to hear from you, comment below or tweet us @modusengagement.