Vibe Coding with LLMs: Tips for Building Faster
Large Language Models (LLMs) are transforming the way we build software. Vibe Coding — popularized by tools like Cursor and Windsurf — refers to deeply embedding LLMs into the development workflow. Like all tools, however, it takes time to learn how to use them effectively.
Building an AI Customer Support Agent: A Practical Guide to Prompting, RAG, and Fine-Tuning
Companies are rushing to integrate AI into their customer support workflows, generating a lot of interest in the latest models. However, the power of the model is only truly unlocked if the if system architecture around it is right — how you deliver context, handle private knowledge, and adapt over time are all key factors in building a successful AI customer support system.
From Chaos to Clarity: How Embeddings and LLMs Unlock the Value of Unstructured Data
Every organization today is drowning in unstructured data: support messages, internal chats, user feedback, call transcripts. As our ability to collect more unstructured data within organizations grows, the need to understand that data in a scalable, cost-effective way is outpacing our ability to handle it.
Most AI Benchmarks Don't Measure Intelligence
François Chollet recently introduced a new version of the ARC AGI benchmark during his talk at Y Combinator’s Startup School. It’s one of the more thoughtful discussions on evaluating AI systems — and well worth watching.
IOT Fails: Staging Is For Customer Data, Apparently
As smart pet devices become more common, many of us have come to depend on them without a second thought. Unfortunately, that reliance may be premature, as we’re beginning to understand their limitations over time.
Java Root Certificate Pinning For Microsoft OAuth
TL;DR: We recently began seeing intermittent SSLHandshakeException errors when calling Microsoft login endpoints from our Java service. The root cause turned out to be missing root certificates in the Temurin Java images — even in recent versions. Microsoft had rotated their TLS chain, and the new root wasn’t bundled. We built a tool to dynamically extract the cert chain and patch the JVM truststore during our Docker build.