Modernizing Cobol Applications

David Pitt All Industries, COBOL, Keyhole, Modernization, Spring, Videos Leave a Comment

The world of technology is constantly evolving, but despite the rise of cutting-edge programming languages and modern software frameworks, COBOL applications continue to play a critical role in the business world. COBOL, one of the oldest programming languages, still powers many of the core systems of industries like banking, insurance, and government. Why, then, are businesses increasingly considering modernizing COBOL …

Software Bill of Materials (SBOM): A Recipe for Software Success

SBOMs: A Recipe for Software Success

Aaron Diffenderfer Articles, Manufacturing, Programming, Security, Supply Chain & Logistics Leave a Comment

While working with a client a few years ago, I was introduced to the concept of a Software Bill of Materials, colloquially known as an SBOM. It didnโ€™t take long before I recognized its immense value and importance in improving security and integrity in software development. Hopefully, over the next few minutes as you read this blog, youโ€™ll start to see that as well.

The topic of SBOMs has become more and more popular over the past several years and is increasingly critical in this technology-driven world. Weโ€™ve all heard of numerous enterprise-level data attacks, exposures, and leaks in recent years, and almost all are caused by some sort of security vulnerability. Many of these incidents could have been realized and possibly even mitigated before disaster struck if an SBOM had been in play.

Nacha ACH Payroll: How Getting Paid Works

John Hoestje Articles, Development Technologies & Tools, Keyhole, Programming, Spring Leave a Comment

Getting paid is nice! Most people enjoy seeing their bank account balance increase after a period of hard work. But have you ever wondered how your paycheck actually gets deposited into your bank account?

In this blog, weโ€™ll explore how a basic payroll or direct deposit processing system ingests an incoming Nacha ACH file. This will give you a clearer picture of how your hard-earned money gets from your employer to you.

The Evolution of Python: Powering AI and Enterprise Solutions

David Pitt Articles, Artificial Intelligence, Development Technologies & Tools, Keyhole, Programming, Python, Spring 1 Comment

Parts of this blog, including the code examples and architecture frameworks, were generated using Keyhole Software’s EnterpriseGPT web clientโ€”an open-source tool that empowers organizations to deploy user-friendly chatbot solutions with ease. Interested in exploring further? Contact our team, and weโ€™d be happy to provide credentials for you to try it out. The Rise of Python and Other Languages Weโ€™ve seen …

Handling Time in Software Development

Recording & Communicating Time in Software

Rachel Walker Articles, Programming 2 Comments

When I first started writing software to handle time, I went into it with a naive perspective that it couldnโ€™t be that hard. After all, itโ€™s just time, and Iโ€™ve understood how that worked since elementary school! It took my first daylight savings time transition to disabuse me of that notion. I began daydreaming that one day all systems would fully run on UTC and people would adapt to that as a standard.

No more writing code to handle time zones in different regions. No urgent time zone library updates to account for new government legislation around daylight savings time. Being able to add and subtract time without having to account for crossing time zones…

It sounded great to me at the time, and sometimes when Iโ€™m neck-deep in tricky code, I feel that way still. In calmer moments though, Iโ€™ve learned thatโ€™s not a philosophy that serves me. When I talk to people about my birthday, a holiday, or give vague time measurements like โ€œtwice a dayโ€ or โ€œfirst thing tomorrow,โ€ Iโ€™m not speaking to them about timestamps. Iโ€™m conveying an idea that just happens to involve time. Time isnโ€™t just a number; it is communication that is tied to our days and nights and the lived human experience.

A good software product handles, records, and displays time accurately. A great piece of software captures, stores, and displays time and date information in a format that conveys the full idea to the intended recipients. Good software works; great software communicates.