Blog

  • Getting the Bugs Out of Software – Saving Lives and Money with AI

    Getting the Bugs Out of Software – Saving Lives and Money with AI

    $2.41 trillion. That’s the estimate of the cost of poor software quality in the US for 2022. $607bn of that was just finding and fixing bugs. Imagine a world where even safety-critical software systems do not fail. By safety critical, I mean the systems that control airplanes and air traffic, 911 calls, and the power grid delivering gas and electricity supplies. All of these have disasters reported where a computer glitch was cited as the problem. Medical machines are controlled by software, from the heart rate monitor on watches, to the robot surgeon in the hospital. The Food and Drug Administration (FDA) has a whole database of recalled medical devices that include software issues as root cause.  Some of them are Class I which means there is “a reasonable chance” that the product will cause health problems or death1.

    Software engineers are constantly trying to improve how software is created at all stages of the process, not just coding. How can it be right the first time? It is not possible to prove that there are no bugs. But engineers work hard to find them at all stages of creating and testing the software.  Once it is released, engineers still have to maintain the code and fix the issues that inevitably show up. Now I’m sure you’ve heard about Artificial Intelligence (AI), ChatGPT, machine learning, and big data. My research involved looking for ways to use those machine learning algorithms to find bugs.  I experimented to see if certain models can work together to make one stronger model, something like a voting system for best one. The data I used to feed into the machine to predict where the errors are, was created by NASA and is freely available for the purpose of improving software engineering.

    High power electricity poles in urban area connected to smart grid. ChatGPT.

    So, if software engineers can use AI to predict and find more of the errors while building and testing software, they won’t have to go back and fix things. That time can be used instead to innovate and create better new products and services. If they can find the problems in software that is already out there before safety-critical systems go down, it will save not only billions of dollars, but save lives.

    This post is adapted from my 3MT2 (three-minute thesis) entry November 2023 at East Carolina University.

    1. https://www.fda.gov/medical-devices/medical-device-safety/medical-device-recalls. Medical device recalls, U.S. Food & Drug Administration accessed 1/14/2025.
    2. https://threeminutethesis.uq.edu.au/higher-degrees-researchstart-your-3mt-journey-here. “The competition supports their capacity to effectively explain their research in three minutes, in a language appropriate to a non-specialist audience.”

  • Software Engineers

    Read/sing to the beat of Gary Numan’s Engineers
    The Pleasure Principle debuted at number one September 1979. Beggars Banquet Music Ltd.

    James Cahill Numanoid Pips
    Pips behind The Cathedral James Cahill RIP

    All that we are
    Is all that we need to be
    All that we know
    Is code and machinery
    Software engineers

    We are your Heartbleed
    we are your synth life
    we are your ‘help-line’
    We keep you online, For now
    Software engineers

    Cortana’s your voice
    Logic your blood flow
    AI’s your eyes
    We’re all you need to know
    Software engineers

    All that we are
    Is all that you’d love to be
    All that we know
    Is code and machinery
    Software engineers

    Footnote – Heartbleed was a vulnerability in OpenSSL https://www.cisa.gov/news-events/alerts/2014/04/08/openssl-heartbleed-vulnerability-cve-2014-0160

  • ecahill is a secure web site

    green lock icon
    Secure https

    Google’s move to mark http sites as “not secure” prompted me to activate an SSL certificate a few weeks ago. In October 2018, Google will show a red not secure* warning on HTTP pages that ask users to enter data.

    Hitchhikers Guide to the Galaxy author Douglas Adams
    Photo by Daily Mirror/Mirrorpix/Mirrorpix via Getty Images

    No need to panic, free certificates are available through Let’s Encrypt  to enable HTTPS.  Let’s Encrypt, @letsencrypt,  are a certificate authority (CA) that provide trusted certificates for free in order to implement best practices for TLS, transport layer security. NB: people may still use the term SSL, secure socket layers, even though they have upgraded to TLS.

    Geeks can try  Let’s Encrypt How It Works to understand the details .

    marking HTTP as “not secure” accessed 8/31/2018.

     

     

  • CodeStock 2016

    CodeStock 2016

    CodeStock schedule:
    I’m scheduled for Saturday 9:00am – 10:10am.

    Attend the keynote at 9AM Friday to get your weekend off on the right foot.
    Say “Hi” if you see me at other sessions, such as @sfradkin “Live Coding Music: A Creativity Break for Your Programming Soul”
    or @JamesBender “How I Learned to Love Dependency Injection”.

    Mark A. Wilson @DeveloperInfra will bring you up-to-date on “Authentication Using OpenID Connect and OAuth 2.0”

    If game design is your thing, go see @ViNull.

    @pcameronpresley has two sessions on SOLID and testing that look extremely useful.

    codestock

  • That’s Agile

    True story

    Posted to my original site circa May 2014

    This week in a business requirements session, a product owner sighed, “If only we could break it down and see one piece working before we start on the next piece. Could we do that?”

    “That’s Agile!” I said, he looked at the business analyst as if to say “is she having a laugh?”, but she confirmed that it is a valid methodology, and she had worked with programmers applying it on other projects.  The timing was perfect because, yes, I would love to do that, and I was even registered for the TriAgile conference two days later.