Blog

  • Configuration Vs. Coding – Modern Software Systems

    Configuration Vs. Coding – Modern Software Systems

    Over the years that I have been in the software development profession, I have watched solutions evolve dramatically.  The progress has gone from code to libraries to frameworks and now configurable systems.  However, there are trade-offs to consider when you look at a configurable system instead of one that allows for customization with code.  This is becoming a more common dilemma for businesses.  Thus, it is good to look at the pros and cons of each approach.  Here are some points to consider when measuring configuration vs. coding.

    The Power of Configuration

    Let’s start with the positives a configurable system brings to the table.  Configurable customization is where software of all sorts is heading.  Part of it is likely due to changing interfaces and keyboards becoming relics of the past.  However, there is far more value included.  I have found that the most significant value companies place in these systems is the lower cost of maintenance.  A configurable system constrains how changes are made.  Thus, it is easier to test those options thoroughly.  You also are less likely to have typo related issues.  The inputs can be highly constrained and validated.  For example, a drop-down selection item is not susceptible to a typo.

    There is also a lower technical threshold for configurable systems.  Administrators can often learn all they need to know with a few days of training.  As opposed to years required to build stable and scalable code.  This approach has the side effect of reducing the number of points of failure in many cases.  Less information has to be communicated across departments.  Thus, for example, a marketing employee can make changes to the system.  The alternative is to relate them to a developer to code.  Business users can focus on their business rather than how to communicate to the technical staff.

    Coding is Here to Stay

    With all that configurable systems have to offer, there is still a level of control given up.  The limits that make these systems so powerful also keep them from doing precisely what is needed.  A customer is also at the mercy of the vendor for these systems.  A required feature may be a long time coming, and critical functions may disappear.  These may be worst-case scenarios, but that is enough for many to choose a custom coded solution.

    Every business is different, and coding allows for software to be built to precise specifications.  Your priorities can be crafted into the software.  Then, it can change as your business needs change.  There is also ownership of the product to consider.  A custom solution is owned by the creator and not a vendor.  You can change it as needed and do not need to worry about the future stability of the vendor.  Better yet, any problems that occur are your own.  There is one place to look for solutions.   Thus, no time wasted on support calls to get a response to meet your schedule.

    Configuration vs. Coding – The Bottom Line

    I could list dozens more pros and cons for each side.  However, the decision is pretty simple.  A configurable system is the better solution in most cases.  One has to recognize that the 80-20 rule holds for these systems.  Therefore, configuration is an excellent choice.  The configurable piece of the solutions often allows a company to get 90-95+ percent of its needs met adequately while avoiding the costs and headaches of custom software.  It also allows you to buy the experience of the teams that created the software.  They used their expertise to solve common problems.  This may not get you to one hundred percent coverage, but it will provide tested solutions for eighty-plus.

    Finally, do not underestimate the value of fixed cost solutions.  Your vendor is providing you a solution that is complete.  There are no concerns of improper estimates, scope creep, or schedule overruns.  Therefore, the focus is on using the solution, not creating one.

  • Making 2018 Your Best Year Yet

    Making 2018 Your Best Year Yet

    The beautiful thing about a new year is that it gives us an excellent milestone for change.  Of course, there are always resolutions to make this the best year ever.  However, we will look beyond declarations.  This article presents a more intentional approach to improvement based on thoughtful consideration.  We are not just picking a popular trend and jumping on or an obvious, but broad, improvement.

    Careful Assessment

    The first step in planning our best year is to assess where we are.  Take some time to look at the trends and challenges of the last twelve months.  This action is not a cursory glance like checking the scale and deciding to lose weight.  It is a deeper dive into not only the results but the causes.  We want to treat the core problem, not the consequences.  Thus, build a list of issues and then review whether they are problems or symptoms.  Dig down to create a list of challenges that are slowing your progress down.

    Simple and Specific

    The scope is always a challenge when changing course or solving problems.  We want to go for the big wins.  However, that has the negative impact of keeping us from gains that quick wins can provide.  A few little successes often outweigh a big win, particularly when you consider the time for those wins to “bake in.”  For example, if I can save a dollar a day now or ten dollars a day in a year I will have missed out on 365 dollars of savings before I get that more significant win.  Keep that in mind while looking at the problem list you created.  Maybe there are some easy wins or partial improvements that can be completed in the first quarter.  Move these up on the priority list and allow the more significant enhancements to wait.

    Avoid being vague in your goals and improvements.  A good list will have deadlines, milestones, deliverables, and be measurable.  This list will help you be held accountable from the very start.  A plan has been created.  Thus, get to work on it.  When you leave things vague like, improve sales this year, the lack of details makes it hard to get started on that goal.  Your first step, in that case, is to decide what the first step is.

    Finding The Clues

    Sometimes things look ok on the surface.  The problems you are facing can take some extra research to see them.  A good approach for this task is to look at where the money went.  We often can find out a lot when we “follow the money,” even when it is our own spending.  When you have useful metrics on resource utilization that is another potential clue in how to improve your business.  The math is simple.  Look for ways to reduce costs, improve productivity, or increase revenue.  When you attack these areas, you will see a business grow.

  • Holiday Productivity – Make Use of Your Time

    Holiday Productivity – Make Use of Your Time

    Holidays are often busy.  We flip between travel, vacation busyness, and gatherings of all sorts.  This leads to very little of substance getting done in our professional lives.  We have earned our vacation or Holiday and feel like its ok to fall behind.  Unfortunately, this often leads to a few hectic days when we return that leave us exhausted and longing for another vacation.  This sad situation does not need to happen.  We can use the dead time that often occurs during these periods to keep up and even manage a little holiday productivity.

    Holiday Productivity Gains Through Content

    The easiest way to keep moving forward is to consume business-related content.  This task is becoming incredibly easy to do.  You can listen to audiobooks and podcasts while traveling or even browse the web.  Better yet, if you have a more relaxed mindset your browsing is more likely to lead you to great new product ideas.  Your work holiday should free you from the weeds of your regular job and allow you to think out of the box.  All of these options are great for travel, waiting in lines at stores, and those long commercial breaks during sporting events.

    A New Crowd

    We do not want to bore people with our work life, but it does often come up.  Luckily, discussing work with friends and family can lead to new insight.  These people that do not live in your work-world have an entirely different perspective on your products, services, and even life.  Thus, they will often provide a point of view or comments that you never considered.  They will also provide feedback at times that can help you judge priorities as well as how to market your wares.  This suggestion is not about finding ways to steer conversations to work, but instead just to pay attention and keep an open mind.  You never know where your next great idea will come from.

    A New Venue

    Another great opportunity during the Holidays is to find a new location to work.  This may be an hour or two with your laptop in the woods, on a lake, or anywhere not in your office.  The change alone may help you be highly productive and start some creative juices flowing.  This action may seem a bit pointless or obsessive about work.  However, it may open you to new locations and higher productivity.  For example, you might find that you work better in a Starbucks or at the library.  Who knows, you might decide you like to avoid being chained to a desk.

    Vacations and Holidays are essential ways to recharge and get away from the work grind.  However, many of us never really get away from work.  We can fight it, or embrace it and use the time that otherwise would be wasted to be productive.  Take advantage of those long lines and waiting for the family to decide on where to eat dinner.  Get a little work done.  Then you can pat yourself on the back for making your return to your job a little less hectic,