Attention: This article was published over 3 years ago, and the information provided may be aged or outdated. While some topics are evergreen, technology moves fast, so please keep that in mind as you read the post.Keyhole Software is thrilled to announce its selection as a finalist in the 2023 Best of Johnson County awards as a “Small Employer (less …
Understanding GPT’s Training and Unlocking Productivity
I think we can all agree that GPT (Generative Pre-trained Transformer) can be useful but also happily shows its flaws. Like all tools, it has its place in our toolbelt, so let’s learn a little more about GPT.
Sequelize ORM: Interacting with databases using Node
Today, we are going to be going over a very useful tool called Sequelize. It is an Object Relational Mapper (ORM), which allows us to interact with relational databases using Node.js.
Sequelize supports many different databases, but in this blog, we will be using MySQL. We will go over how to set up a local MySQL instance and a Node.js server using Sequelize to communicate with it.
Along the way, we’ll learn basic Sequelize functionally, such as the command line tool and migrations, to understand how to work with the database…
How Keyhole Software Engagement Models Work
Keyhole Software partners with clients through flexible, client-centric engagement models. Our 100% U.S.-based, full-time consultants bring deep expertise, low turnover, and proven success in modern software development….
Turborepo: Turbocharging Monorepo Development
Software development is an ever-evolving space where languages, tools, and best practices can rapidly change based on the market. Yet there is always a race to do things faster and better than before.
Today, I will be introducing you to Turborepo, a tool that helps manage JavaScript and TypeScript monorepos by leveraging build techniques to avoid duplicate work and maximize multitasking at scale. But first, there may be a couple of questions you’re asking yourself. What is a monorepo, and why use Turborepo?




