Skip to main content

Posts

Chat with your GitHub repository

One way to ask questions about your GitHub repository is through GitHub copilot chat inside the GitHub website. Just click on the Copilot icon next to the Search field and a conversation window pops up where you can start asking questions about your repository. Although this works quite nice, it limits you to what GitHub Copilot has to offer. The good news is that there are some tools that allow you to use your GitHub data with other LLM’s. How does it work? Each of these tools work in a similar way as they read through all available data(source code, documentation,  PR info,…) in your GitHub repo to build up one big context file. For example if I feed one of my repositories into Uithub, I get this file back: This contains the full file tree, all the documentation, source code and so on… This file can than be given to the LLM of your choice(preferably one that accepts a large token size) to ask questions about it. Right now I’m aware of the following tools that do this:...
Recent posts

ASP.NET Core -Automatically add middleware through IStartupFilter

While browsing through the ASP.NET Core documentation , I accidently stumbled over the IStartupFilter interface. I had no idea what it did but it triggered my interest. Let's find out together in this post what this interface does and when it can be useful. What is IStartupFilter? IStartupFilter is an interface that allows you to intercept and modify how the application's request pipeline is built. It's particularly useful when you need to: Ensure certain middleware runs before any other middleware Add middleware consistently across multiple applications Create reusable middleware configurations Modify the order of middleware registration Here's the interface definition: How IStartupFilter Works When ASP.NET Core builds the middleware pipeline, it executes all registered IStartupFilter instances in the order they were registered. Each filter can add middleware before and after calling the next delegate, creating a wrapper around the exis...

Github Copilot–New models added

The list of available models in Github Copilot keeps growing. Whereas last year you could already use GPT-4o, o1, o1-mini and Claud Sonnet 3.5, now you can also try OpenAI o3 and Google Gemini 2.0 Flash. About Gemini 2.0 Flash The Gemini 2.0 Flash model is a highly efficient, large language model (LLM) designed for high-volume, high-frequency tasks. It excels in multimodal reasoning , handling inputs like text, images, and audio, and providing text outputs. With a context window of 1 million tokens , it can process vast amounts of information quickly and accurately. Gemini 2.0 Flash is optimized for speed and practicality, making it ideal for everyday tasks, coding, and complex problem-solving. GitHub Copilot uses Gemini 2.0 Flash hosted on Google Cloud Platform (GCP). When using Gemini 2.0 Flash, prompts and metadata are sent to GCP, which makes the following data commitment : Gemini doesn't use your prompts, or its responses, as data to train its models. About OpenAI o3 ...

Enabling .NET Aspire for an existing solution

I hope that you already had a change to try .NET Aspire, a comprehensive set of tools, templates, and packages designed to help developers build observable, production-ready applications. It enhances the development experience by providing dev-time orchestration, integrations with commonly used services, and robust tooling support. .The goal is to simplify the management of multi-project applications, container resources, and other dependencies, making it easier to develop interconnected apps. To make it even better, it includes features like service discovery, connection string management, and environment variable configuration, streamlining the setup process for local development environments. And if that couldn’t convince you yet, than maybe the Aspire Dashboard will. Sounds great right? Reason enough to add it to your existing projects if you are not using it yet. A great tutorial exists on Microsoft Learn to help you add it to your existing projects. Unfortunately I had a ...

How I Turned Die Hard into a Romance Movie: A Valentine's Day Story

Love is in the air, and like many couples, my girlfriend and I have our Valentine's Day traditions. Hers involves cuddling up to watch a romantic movie, while I secretly wish we were watching Bruce Willis jump off a building. This year, I decided to bridge this divide with a creative solution: I built an AI-powered app that can transform any movie into a romantic masterpiece. The Valentine's Day Dilemma We've all been there. It's February 14th, and you're staring at a choice between "The Notebook" and literally anything else. While I appreciate a good love story, my heart belongs to action sequences, plot twists, and the occasional explosion. But how do you convince your romantic partner that "Die Hard" is actually a touching love story about a man trying to reunite with his wife on Christmas Eve? Enter the Romantic Movie Night Generator That's where my new web application comes in. It uses Azure OpenAI to analyze any movie poster and...

SonarQube–Connecting to an on-premise Azure DevOps failed

After successfully installing a new SonarQube server, I followed the documented steps to configure the Azure DevOps integration. However when trying to register our on premise Azure DevOps instance, SonarQube throwed the following exception: 2025.02.10 11:47:30 ERROR web[13308e38-2d1a-46ae-80d9-baa54c12ffac][o.s.a.c.a.AzureDevOpsHttpClient] Unable to contact Azure DevOps server for request [https://azuredevops.server.be/tfs/defaultcollection/_apis/projects?api-version=3.0]: [PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target I found an old post online that links this error message to a problem with our SSL certificate. It seems that Java is unable to recognize the root certificate authority (CA). This could make sense as our internal Azure DevOps instance is using an SSL certificate signed by an internal root certificate. To fix the issue, I followed the steps described in the post: ...

Azure DevOps– The SonarScanner did not complete successfully

As part of our build process we use SonarQube for our code quality analysis. However after upgrading to the latest version of the SonarQube tasks for Azure DevOps, we encountered the following error message "The SonarScanner did not complete successfully." This seemingly vague error can stop your build pipeline dead in its tracks, leaving us scratching our head about what went wrong. Here is the full stack trace: at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:451) ##[error]at org.sonarsource.scanner.api.internal.IsolatedClassloader.loadClass(IsolatedClassloader.java:82) at org.sonarsource.scanner.api.internal.IsolatedClassloader.loadClass(IsolatedClassloader.java:82) ##[error]at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) ##[error]at org.sonarsource.scanner.api.internal.batch.DefaultBatchFactory.createBatch(DefaultBatchFactory.java:32) at org.sonarsource....