Highlights of Experimentation: Q2 CCC Days 2025

Becky PassnerJuly 11, 2025

Once a quarter, our entire company comes together in person for a few days of focused experimentation and collaboration. We call these CCC Days—named after our core values: Character, Collaboration, and Craftsmanship.

With many of our team members working remotely, CCC Days give us a valuable chance to connect face-to-face, collaborate across departments, and work with people we don’t usually interact with in person.

During this time, we shift our focus to experiments—testing out new ideas, exploring emerging technologies, and test-driving methods that could help us serve our clients more efficiently. It’s also a great opportunity for junior team members to step into leadership roles, run projects, and grow their skills in real time.  This quarter, we focused on AI experiments and LightningCAD efficiencies.

Here are a few of the experiments we explored during our latest CCC Days:

RoleModel Way of Developer AI

We conducted an experiment to refine the RoleModel Way of Developer AI, focusing on leveraging Large Language Models (LLMs) for code generation and editor integrations. Our goal was to compare the performance of the newest local models (running on an on-premise server) with cloud-based solutions like GitHub Copilot, specifically assessing their viability for tools such as autocomplete and agentic code development. Using a VS Code plugin called Continue, we tested local model integration but found significant performance gaps—local models were slower and lacked advanced features like agents or tool calling. This highlighted the challenge of balancing speed and functionality for rapid development workflows.

Shifting focus to cloud models, we explored GitHub Copilot’s capabilities, noting its robust infrastructure on Azure servers and potential IP protection for organizations. We also experimented with Copilot Instructions—custom markdown configurations to guide the model’s behavior, such as adopting a pirate persona or referencing project-specific files like READMEs, Gemfiles, and private packages. 

Our current recommendations include:

This experiment underscores the importance of balancing performance, privacy, and customization when integrating AI into developer workflows, setting the stage for further innovation in code generation tools.

Curve-curve cutting and intersections

We tackled the next phase of the Lightning CAD curve implementation journey, aiming to resolve persistent issues with curved shape distortion and sharp edges during boolean operations. Despite our previous progress, cutting curved surfaces often resulted in jagged, distorted remnants, while even simple polygon cuts introduced unwanted artifacts. Our goal was to refine the curve-cutting process by delegating complex calculations to a third-party library, leveraging existing workflows for polygon booleans.

Our first experiment involved wrapping Paper.js in a lightweight LCAD abstraction, enabling precise, distortion-free cuts by translating LCAD paths into Paper.js-compatible structures. By day’s end, we achieved a clean “clipper” abstraction that preserved curve integrity. The second challenge: integrating this with Property Intel, whose path structure differs significantly—storing points instead of segments and dynamically updating them. By reconciling transient segments with Paper.js, we achieved impressive results, with smooth, crisp cuts for circles, polygons, and curves, eliminating prior distortions.

While early demos showed promise, complexities remain, such as reconciling control points and ensuring predictable editing. Future work includes refining LCAD’s path structure—currently based on segments, which limit flexibility—to better support Property Intel’s dynamic updates and curved hole creation. By extending Paper.js’s path abstraction, we aim to enable native curved holes and smoother editing modes. This progress marks a critical step toward a more intuitive, accurate curve UX in Lightning CAD. Stay tuned for further updates as we push the boundaries of 3D modeling precision!

Advanced 3D Model Imports

For our LightningCAD projects, we’ve identified a critical bottleneck in our 3D model import workflow. Partners often have existing 3D models of objects we are representing in the systems we are building but the import process was time-consuming. To address this, we focused on two goals: improving model quality by setting customer guidelines and streamlining the efficiency of common processing steps with tools like Blender scripts. 

Our solution? A STEP importer directly in Blender, built on Open CASCADE (the same technology used in some of our software systems). This tool parses boundary representations (B-rep) into triangles, allowing us to control the number of triangles along curves for optimal quality and performance. 

To further simplify the process, we created a customer guideline emphasizing preferred formats: STEP files for precision, Blender files for direct access, and OBJ for geometry preservation. We also automated repetitive tasks with a Blender plugin, reducing vertex counts significantly by simplifying geometry. We also added presets and scripts to automate common parts of the process, ensuring that as many details as possible were flattened and we only export the necessary information in the models. 

These improvements not only boost performance but also reduce post-import cleanup, making our Lightning CAD workflows faster and more reliable. Making it easier for us and our partners to support even more 3D models in our LightningCAD solutions. 

OpenWeb UI Setup and Integration

Our team explored the potential of Open Web UI, an open-source, self-hosted AI interface that can be customized to your workflow. We wanted to focus on customization for better integration with internal tools in a private AI environment. For example, we through an MCP server enabled our AI models to fetch time-off data from our internal tracking system, Almanac.

The experiment revealed Open Web UI’s strengths: it’s highly extensible, requires minimal setup, and supports integrations with cloud models (like ChatGPT) or open source models (via Ollama). A number of tools, such as web search, are easy to enable from a large set of community supported extensions. Using Model Context Protocol (MCP) showed promise for connecting LLMs to structured data, such as fetching time-off data from Almanac, our internal tracking system. However, limitations emerged, particularly around user authentication—MCP currently applies a single set of permissions to the entire server, lacking granular access controls. Although authorization is an area that MCP continues to evolve. 

As LLMs reshape workflows, platforms like Open Web UI offer a flexible, self-hosted path to unlock value, whether for internal efficiency or client-facing solutions. The key is to balance experimentation with strategic integration, ensuring tools align with real-world needs.

Everyone across the company was hard at work for this round of CCC Days, diving into a wide range of experiments. Some efforts led to tangible improvements in how we work, while others offered valuable lessons we can build on in future rounds. Either way, every experiment moved us forward.