tips and tricks

Getting Started with Burpless: Writing Cucumber Tests in Clojure

No matter how rapidly the world of software development may change, one constant is the need to ensure the quality, functionality, and reliability of our software applications. As our demand for more and more complex applications continues to increase, so does the risk, not only that developers might program something incorrectly thereby introducing bugs, but … Read More

Cost Optimizing an ML Feature Store

A client recently started building a new machine learning (ML) architecture with a feature store as one of the key pieces. The feature store was already burning through a lot of money on AWS Elasticache and it wasn’t even scaled up in production yet! The project was in danger of being shelved without serious cost … Read More

Automate the Boring Stuff with AI

My motivation for creating tools often stems from a desire to get familiar with new technologies. This project was no different; I wanted to deepen my understanding of Generative AI. However, this wasn’t the primary reason for its creation. The real driving force was a persistent gap in my workflow that I couldn’t ignore any … Read More

Integrating Touch Support to Drag-and-Drop Interfaces

In the previous blog post, we went over how to use the HTML Drag-and-Drop interface, which is a well-supported web API that’s available to use across major web browsers. Here, we will go over how we can extend our previous demo to support touch interactions so that our application can be used across various devices … Read More

Mastering the HTML Drag And Drop API

For web developers, creating intuitive and interactive user interfaces is essential to providing a great user experience. One feature that significantly enhances the user experience is drag-and-drop functionality. This feature allows users to manipulate elements on the screen in a natural and interactive way. In this article, we will explore the HTML Drag and Drop … Read More

Perils of Partitioning

Partitioning is one of the easiest ways to improve the performance of your data lake, because it reduces the amount of data scanned. But implementing partitions can be surprisingly challenging, as can their effective use. In this post I look at several of the issues that you should consider when partitioning your data.

Aggregating Files in your Data Lake – Part 2

When I ran the Lambda from my previous post against Chariot’s CloudTrail repository, it took almost four minutes to process a single day’s worth of data. That seems like a long time, and as a developer I want to optimize everything I write. In this post I look into analyzing the current runtime, and options for improving it.

Client-side Data Persistence with IndexedDB

A Deep Dive into IndexedDB In a previous article, I compared client-side storage solutions: localStorage, sessionStorage, cookies, and touched briefly on IndexedDB. In the vast ecosystem of web storage solutions, IndexedDB stands out as a powerful, low-level API for client-side storage of significant amounts of structured data. While cookies, localStorage, and sessionStorage are suited for … Read More

Client-side Data Persistence for Web Applications

In the realm of web development, ensuring data persistence is a top priority. Web developers face the challenge of storing data seamlessly and effectively, often juggling various storage solutions to meet specific needs. One of the leading and supported options is IndexedDB, a powerful client-side database solution. Though SessionStorage, LocalStorage, and cookies have their places, … Read More

Electron, not a walk in the park

Recently, a project I worked on was considering using Electron as a fallback technology for an initial Progressive Web Application. At the time, the assumption was that since Electron uses Chromium, a browser, it should allow application developers to not only use the features of a PWA but also gain native access to technologies, such … Read More