JDriven Blog

Using a local LLM as AI Code Assist

Posted on by  
Jacob van Lingen

If you want to use AI for coding, there are plenty of tools to choose from. Popular options include GitHub Copilot, Claude Code, and Gemini. But what if you’d rather not send your code to external services? Now that computers are becoming more powerful, is it possible to run a large language model locally and use it as your own coding assistant?

Continue reading →

Groovy Goodness: Accessing Regular Expression Named Groups By Name

Posted on by  
Hubert Klein Ikkink

Groovy (and Java) support using names for groups in regular expressions. The name of the group is defined using the syntax ?<name> where name must be replaced with the actual group name. This is very useful, because you can use the group name to access the value that is captured by the defined regular expression in a java.util.regex.Matcher object. Groovy supports for a long time accessing a group using the index operator. Since Groovy 5 you can use the name of the group to access the value as well. You can specify the name between square brackets ([<name>]) or use the name as property.

Continue reading →

Nushell Niceties: Create Query Parameters For URL

Posted on by  
Hubert Klein Ikkink

The build-in HTTP client in Nushell can be used to interact with REST APIs and websites. If the URL you want to invoke has query parameters than you can use the url build-query command. The url build-query command transforms a record or table to URL encoded key/value pairs joined with an ampersand (&). Each key and value is separated by an equal sign (=). The command can expand a key with a list value to separate key/value pairs with the same key if the key is defined in a record.

Continue reading →

Nushell Niceties: Joining Values Into String

Posted on by  
Hubert Klein Ikkink

The string module contains a lot of useful commands to work with strings. If you want to join several values from a list into a single string you can use the str join command. The command accepts as argument the character(s) to use for joining the values. If you don’t specify the character(s) as argument the default value '' (empty string) is used.

Continue reading →

A Halloween Horror Story: A Java Developer Gets into Angular

Posted on by  
Thomas de Groot

As a Java Developer who mainly focuses on backend development, I stumbled upon the horde of doing frontend work. A skill I’m not completely unfamiliar with, but I have to admit, keeping up with everything that happens in the frontend world is something I do lack.

In this blog, I will tell you about the process of my latest iteration in the world of Angular.

Continue reading →

Nushell basics: structured data in your shell

Posted on by  
Arjen Tebbenhof

In our TechRadar Spring 2025 edition we highlighted the IntelliJ HTTP client and Bruno as alternatives to Postman, and also introduced you to Nushell. This post will focus on the latter.

The goal of Nushell is to take the Unix philosophy of shells, where pipes connect simple commands together, and combine it with a rich programming language. Nushell connects both by bringing a rich programming language and a full-featured shell together into one package, that runs on Linux, macOS, and Windows. Nushell uses structured data everywhere, for example output of ls command, or REST API calls.

Continue reading →

Debugging Democracy: What political fragmentation can teach software teams

Posted on by  
Erik Pronk

In the lead-up to today’s Dutch parliamentary elections, we continually witness how political parties defend their own positions, often at the expense of constructive collaboration. This dynamic is surprisingly familiar to anyone who has worked in a large organization. The parallels between election campaigns and organizational silos are striking, and both can be damaging to the broader mission.

Just as political parties prioritize their own agendas over national unity, departments within organizations often pursue isolated goals, leading to fragmentation, inefficiency, and missed opportunities. In both cases, the absence of a shared vision undermines progress. The way forward lies in working together toward a shared goal, aligning diverse perspectives around a common purpose to create meaningful impact.

Continue reading →

shadow-left