The latest expert opinions, articles, and guides for the Java professional.

Microlibraries: the next small thing in software development!


In computing, microlibraries is a software architecture style in which complex applications are composed of small, independent libraries communicating with each other using language-specific APIs. These libraries are small building blocks, that are tightly coupled and focused on doing a small task well, facilitating a modular approach to system-building.

The world is becoming more and more modular every day. With the pressure of existing systems to be modularised under the hype of microservices, architects want to compose their system architecture of bite sized modules with well defined edges. The microservices architecture is the first software architecture style that has begun to make use of microlibraries.

Read more

GC Tuning Confessions of a Performance Engineer by Monica Beckwith

Once again I have the pleasure to provide you with a recap of the latest Virtual JUG session. This time we’re going to talk about Garbage Collection, GC, the automatic memory management facility that makes us and our applications believe that there is infinite amount of memory so long as we don’t consume too much of it at once.

Read more

Hidden pearls of Dependency Injection by Sven Ruppert

As usual, we’re bringing you a short recap of what the latest Virtual JUG session has been about. Virtual JUG is the online Java User Group, which you can join from anywhere over the world. So there’s absolutely no excuse not to join. Here’s a link to the meetup site where you can register yourself and become a part of the community that brings you the most exciting sessions about Java in the world.

The session we’re talking about today was all about dependency injection. Our speaker Sven Ruppert took us through multiple libraries for DI and explained the differences in their approaches and when you might want to prefer one over another.

Read more

Android image loading – Glide!

Long story short I’m on a journey to write an Android application after a break. As I’m in the middle of picking my image loading library I thought about writing a short summary of my journey. Maybe you are new to Android or just haven’t done it for a while, I hope you’ll get some ideas and help from here.

Here is a quick recap of what I’ve been doing with these image loading libraries and how I intend to use them in the application.
My criteria for picking the image loading library is pretty simple:

  • Simple API that should be easily wrappable behind an interface so I can replace it anytime.
  • Ease of image manipulation: rotating, scaling, blurring, mirroring and so on.
  • Caching — the library should store the images on the device and avoid pulling more data than needed.

Read more

The Spark Java Web Framework

spark java web framework logo

Today, I want to talk to you about Spark, which is as they themselves put it, is a micro framework for creating web applications in Java 8 with minimal effort. A few days ago, I took Spark out for a test drive. I’ve tried to create a small web application that does nothing really functional but explores the features offered by Spark framework, so I get more comfortable with its API and to see if Spark fits my style. In this blogpost I want to share the takeaways I learned while exploring the Spark framework.

Read more

Docker Commands Cheat Sheet

Docker cheat sheet by RebelLabs

Best practices are important, but often overlooked in a world overloaded with information. This is why presenting information in a digestible form is really helpful. We’ve released a couple of cheat sheet on various topics ranging from Java 8 best practices, to advice on how to use Java 8 streams, to the most useful git commands and workflows.

This time we’re going to talk about Docker. The sparkling unicorn of containerization happening in the world of software development and the amazing tool that can simplify the configuration of your projects tenfold.

We considered how we use docker at ZeroTurnaround, what are the current best practices and what commands we need to google most frequently. Then we combined this data into a cheat sheet, so you can also benefit from this work.

Read more

4 reasons why Android N is a game changer for a developer

Google recently announced that the next version of Android, dubbed Android N, is ready for a developer preview. The preview gives us, as developers, a chance to test our code against the next release before it’s launched, including the new APIs and report any behavioral changes that break us. This release has only been baking for a couple of months, but some of the amazing features are starting to smell great already and we’re very excited about them — you should be too!

Read more

Virtual JUG presents: Java 8 / 9 Ask Me Anything panel session

vJUG logo

The latest Virtual JUG session was a little different from our traditional sessions. It was an amazing panel of Java speakers who were picked to answer your questions about Java 8 and Java 9, in an ask me anything style. The panel was carefully picked so we have a broad representation, including an Oracle Java guru, an Azul Java master, a community figurehead, and a Java legend: Stuart Marks, Simon Ritter, Bruno Souza and Venkat Subramaniam.

Wow, that’s an amazing lineup, right? Here is the recording of the session available, be sure to check it out in its full length and glory!

Read more

5 Unexpectedly Useful Command Line Tools You Might Overlook

My previous post showed us that there still is a nice amount of interest among the developers in neat command line tools.
This post will, as the title suggests, jump into 5 more tools that may or may not tickle your fancy.

Whilst it is hard to find a set of tools relevant for every different command line professional or enthusiast, I can still wholly recommend quickly glancing over these anyway. You never know when you’ll get stuck in a terminal only environment or will need to impress a friend with the exceptional command line skills.
So without further ado, here are 5 more command line tools you should be using!

Read more

JRebel 6.4.0 with remote servers and virtual machines

Modern developers make use of virtual machines, cloud platforms and other remote servers to develop their applications.

JRebel eliminates redeploys by making the updated classes and resources available for the JVM and reloading the updated versions. In a local environment, this is achieved by making the JRebel agent in the JVM monitor the IDE workspace directly. With remote servers, direct monitoring is not possible — as the JVM and the IDE run in separate machines.

JRebel 6.4.0 with remote servers and virtual machines download

Read more

1 6 7 8 9 10 11 12 13 14 15 16 92