Things You Might Don't Know About Micronaut Framework
Are you looking for a collection of code snippets showcasing interesting and useful features of the Micronaut Framew...
3 posts
Are you looking for a collection of code snippets showcasing interesting and useful features of the Micronaut Framew...
Sealed types, switch expressions, and record types. Here are just a few new features introduced in the latest Groovy...
Sometimes you need to generate a random password (or just random string of any kind.) Today I will show you how to d...
17 posts
Have you ever need to merge two (or more) JSON files and you wondered if you can do it in the command-line? In this ...
In some cases, you would like to use Jenkins declarative pipeline with the dynamic agent. For instance, you want to ...
What is the most popular Groovy library, framework, or a tool? I surveyed 308 Groovy community members, and here are...
Are you looking for an easy and fast way to convert a JSON file to a CSV one? In this blog post, I will show you how...
Do you know that you can unit test your Jenkins pipeline code? Have you ever used linter to validate the syntax of t...
One of the most popular map-related operation in any programming language is merging two (or more) maps. In this sho...
In this blog post, I show you how to build stackoverflow-cli - a command-line application that allows you to search ...
In this blog post, I explain why you may want to use curl command in your Jenkinsfile, how to catch curl response an...
Sticking to the process of achieving my goals has always been one of the most difficult obstacles to overcome, both ...
Have you ever wondered, what is the most convenient way to parse JSON data in the Unix/Linux command line? For insta...
The declarative Jenkins Pipeline allows us to define timeout either at the pipeline level or the specific stage. Thi...
Many content creators celebrate their 10k, 100k, or 1M subscribers/followers milestones. There is nothing wrong with...
Dynamic type inference in Groovy might be tricky. Add generic type erasure to it, and you can find yourself in troub...
Groovy 3 helps you write less, but more secure code. Today I want to show you one of the features added in the lates...
Groovy 3 was released a few days ago[1], and it introduced a lot of important new features to the language. Today I ...
If you read this blog post, there is a high chance you’re looking for information about practical differences ...
2019 was a fantastic year for my blog. I didn’t manage to write articles every month, but it didn’t stop...
24 posts
Groovy String API offers many useful methods to make working with strings much more pleasant. Today I would like to ...
In one of the latest blog posts, I have shown you how you can build a Docker image with Java and Maven installed wit...
I started reading "Cracking the Coding Interview, 6th Edition" book recently and it inspired me to experim...
I was using Travis CI to execute 271 builds and deployments of this blog. Last Friday, I decided to experiment with ...
In the last article, I have shown you how you can build a docker image for Jenkins Pipeline using SDKMAN! command-li...
A few days ago, I was struggling with some Docker images I use in my Jenkins CI environment. I run some Jenkins Pipe...
Have you run into troubles when you started using Jenkins Environment Variables in your Jenkinsfile? In this blog po...
A few weeks ago an interesting question was asked on the StackOverflow. Someone experimented with a recursion in Gro...
It’s been a week since GR8Conf EU 2019 is over, so it is the right time to write some recap of this outstandin...
GR8Conf EU 2019 starts precisely in 13 days (on May 27th). Each year Copenhagen becomes a heart of Groovy vibrant co...
"Geniuses still make mistakes and having brilliant ideas and elite programming skills don’t guarantee that you...
Spock Framework executes test methods (features) in a single class (specification) in the declaration order. There i...
In this short blog post, I would like to show you how to set a heap size of the application executed from the native...
Ratpack is an excellent tool for building RESTful[1] applications. However, to benefit most of it, we need to know t...
There are books you read once, and you don’t plan to read them back again any time soon. However, some books a...
I love SDKMAN!. It made using multiple different Java distributions in a single operating system much more comfortab...
In the second part of the "Groovy Regular Expression" blog post, I want to show you some benchmarks. And let me make...
Welcome to "Groovy Regular Expressions - The Definitive Guide"! In the next 15 minutes, you are going to learn every...
Today I’ve decided to improve my Github account settings a bit. I thought that it would be nice to add GPG key...
We are software developers. Our daily duty is to write programs. We spend a lot of time and effort into doing the ri...
One of the most interesting Groovy features is its ability to configure advanced compiler[1] options using DSL scrip...
The journey inside the exciting world of GraalVM continues. Today I would like to share with you results of running...
We have learned how to create GraalVM native image from standalone Groovy script in the previous blog post. Today we...
The Apache Groovy programming language has extraordinary scripting capabilities. When you combine it with the Grape ...
24 posts
This is the second blog post in "Programmer’s Bookshelf" category, and today I would like to share with you my...
When I get the paperback copy of the "Programming Groovy 2" book back in the June 2017, I was wondering if I can fin...
Spock Framework is one of my favorite tools in the Groovy ecosystem toolbox. It makes writing automated tests a few ...
Ignoring some of the unit tests when given conditions are not satisfied is a handy feature of a JUnit framework. I g...
The 4th edition of Advent Of Code just started! In this short blog post, I would like to share with you some of my t...
Groovy has many useful functions built-in, and one of them is Iterable.combinations() that takes aggregated collecti...
Most of the object-oriented programmers prefer constructing algorithms using imperative style over using recursion. ...
Welcome to the part 3 of "Non-blocking and async Micronaut" article. In the previous post we have created connection...
Yesterday I have found this interesting question on Stack Overflow asked by Opal. He faced some unexpected compilati...
Welcome to the part 2 of "Non-blocking and async Micronaut" article. In the previous part we have explained the idea...
Micronaut framework inventors says it is designed for building modern microservice applications. It supports reactiv...
In this short blog post I would like to explain how to avoid popular mistake when you write your first JUnit 5 test ...
GraalVM became one of the most popular topics in the JVM ecosystem. It promises the highest possible speed of runnin...
I guess you may heard about Groovy’s Collection.each(Closure cl) method - it was introduced 15 years ago [1] a...
I have found Hexo a great tool for building a blog and apply many well-known software development principles. One of...
One of the first mistakes people do when starting their journey with Java programming language is using == to compar...
Some time ago I have found another interesting Groovy related question on Stack Overflow. This time someone was aski...
Groovy is a very powerful language on a JVM platform and with this great power comes great responsibility. There are...
A few days ago I have reached 365 consecutive days on Stack Overflow. In the beginning of July 2017 I have deci...
Some time ago I have found a very interesting question on Stack Overflow about forbidden characters in Groovy script...
If you use Groovy for scripting or other similar tasks you probably faced a situation where you get an input as a te...
Unit testing Ratpack handlers has many benefits. In the previous post we have learned how to mock Session object to ...
Ratpack allows you unit test handlers using GroovyRequestFixture class. The good thing about this approach is that i...
Some time ago I was interviewed to one of the Java-based projects and I was asked to solve this pretty interesting p...
3 posts
Recently I have answered a few questions on Stack Overflow related to Groovy scripts and how they work in combinatio...
This blog post is inspired by one of my recent Stack Overflow answers to following question: Grails: why is the Conf...
Every Java developer works with lists daily. There are many popular list (or collection) operations implemented in t...