Sharing Our Passion for Technology
& Continuous Learning
-
Turning RAG to Riches: The Golden Metrics of Metrics-Driven Development
In our last post, we discussed the value provided by building custom Generative AI solutions as opposed to off-the-shelf solutions that claim to provide similar benefits. The reality is that 85% of Generative AI solutions are not in production, which can be attributed to a lack of trust or understanding... -
Building AI You Can Trust
At Source Allies, we excel in integrating Generative AI and Large Language Models (LLMs) into our solutions to optimize error-prone and time-consuming manual processes. However, the real power of Generative AI lies in creating domain-specific solutions that truly differentiate your business. Why Custom AI is Important AI is often described... -
A Test-driven Intro to Java Reactor
A year ago I joined a team which made heavy use of the Java Reactor library for their pub-sub system. Reactor is a library for high-performance, parallel programming using a functional API. The code tends to look like this: Flux.from(p) .ofType(SubscribeToShardEvent.class) .flatMapIterable(SubscribeToShardEvent::records) .limitRate(1000) .buffer(25) .subscribe(e -> System.out.println("Record batch = "... -
How My Team Uses Cypress for End-to-End Testing
This blog is part of a series on end-to-end (E2E) testing in Cypress. In this post, we will take a look at how our team uses Cypress to benefit our workflow and increase the safety in which we deploy new features. This information is available in this presentation I give... -
Cypress for End-to-End Testing: An Overview of the Platform and Its Uses
This blog is part of a series on end-to-end (E2E) testing in Cypress. In this post, we will take a look at what Cypress is, why our team chose it, and things you may want to consider when evaluating it for your own projects. Future posts will expound upon how... -
Where Automation Lives
This is part of our Quality Assurance (QA) Community of Practice’s testing collection. The goals of this collection are to spark ideas for teams without dedicated testers, to have open discussions about testing, and to share information on testing topics that we’re passionate about. Today we will be focusing on... -
Node Reference - Integration Tests
Prerequisites This article builds on the prior article: Node Reference - Validation. Add Integration or Smoke Tests So far, our testing strategy has consisted of only Unit Testing, testing each module in isolation. While this type of testing covers most business logic, it does leave some gaps. It does not... -
Node Reference - Validation
Prerequisites This article builds on the prior article: Node Reference - Put. Add model validation We now have a service that allows us to create product records but does not provide any mechanism for ensuring those products contain all the required data we need in the correct format. For this,... -
Node Reference - Unit Testing
Prerequisites This article builds on the prior article: Introduction. Unit Testing We plan on using Test Driven Development so we need to set up some sort of unit testing framework. For this task we’re turning to Jasmine. Mocha/Chai/Sinon and Jest are also popular options. They are all similar but the... -
How To Unit Test C# Event Handler Attachment
I recently wanted to unit test a method that assigned a delegate to an event handler. I derived a way to use Reflection for asserting that the delegate was attached. This article explains my solution. Note: If you are looking for information on C# events and delegates, I recommend you...