First8 staat voor vakmanschap. Al onze collega’s zijn een groot aanhanger van Open Source en in het bijzonder het Java-platform. Wij zijn gespecialiseerd in het pragmatisch ontwikkelen van bedrijfskritische Java toepassingen waarbij integratie van systemen, hoge eisen aan beveiliging en veel transacties een belangrijke rol spelen. Op deze pagina vind je onze blogs.
GORM Groovy Grails

Quick GORM tip: trigger based primary key generation

GORM is a relational database to object mapper. To work properly it needs to know the primary key for each table. The primary key uniquely (and quickly) identifies a single record from a table. GORM (and Hibernate as the underlaying framework) supports many ways to identify a record in your favorite database.   Some legacy databases may use trigger-generated primary … Lees verder Quick GORM tip: trigger based primary key generation

blog arjan pagination

Pagination: a bad solution to a problem you should not have

Every developer has (or will) encountered the phenomenon called pagination. In this blog post I want to challenge you as a developer or product owner to reconsider using that pattern. Simply put: it is a bad solution to a problem that you shouldn’t have. (Of course, since this is a blog post, there may be some nuances left out. Take … Lees verder Pagination: a bad solution to a problem you should not have

SOLID Principle

Cleaning up switch cases with clean code for easy testing

I was reading an article about property-based testing the other day. This article started with the problem that it could be difficult to test all the cases of a function and that this was cumbersome and error prone. This triggered me to think about why such a function would be difficult to test. The switch statement During the years I … Lees verder Cleaning up switch cases with clean code for easy testing

How to start with declarative Jenkins pipelines

So, we have been using pipelines-as-code in Jenkins for a while now and we generally are using scripted pipelines, Groovy scripts that run in Jenkins. Very flexible, but it is missing something for me. While we were used to the webforms of Jenkins before pipelines, these constructs aren’t always available in scripted pipelines. Enter declarative pipelines. These are pipelines-as-code as … Lees verder How to start with declarative Jenkins pipelines

How to reuse pipelines with Jenkins Shared Libraries

As a continuous delivery engineer I really want software teams to work fast and safe, with ease and having fun. Happy teams are productive, learning and innovative teams. Authoring pipelines is an important aspect of a safe and smooth development cycle. Every new piece of code should be tried, tested, reworked and eventually (potentially) promoted for real use. However, there … Lees verder How to reuse pipelines with Jenkins Shared Libraries

Functional Java by Example | Part 8 – More Pure Functions

This is part 8, the last instalment of the series called “Functional Java by Example”. The example I’m evolving in each part of the series is some kind of “feed handler” which processes documents. In the last instalment we’ve seen some pattern matching, using the Vavr library, and treated failures as data too, e.g. take an alternative path and return … Lees verder Functional Java by Example | Part 8 – More Pure Functions

Testing with state using GraphWalker | Part 1 – Persistence

In this first installment of Testing with state using GraphWalker, we’ll look at integration testing the persistence layer of a Spring application. So, our tests will target the database and the data repositories. Statefulness The database itself is inherently stateful. As a result, if we connect a data repository to an actual database, it will also show stateful behavior. For … Lees verder Testing with state using GraphWalker | Part 1 – Persistence