Even though I have already mentioned the project in my last blog, I am so happy how the case study turned out that I decided to write about it also in this dedicated blog post. All this description together with exact instructions how to run the project and obviously – a complete source code – you will find on my GitHub, here. Project Description This Case Study draws from the mobile network operators (MNO) domain. The goal of the project …
Author: Bartosz Kaminski
Some time ago I have stopped writing posts for this blog, but it doesn’t mean that I have stopped learning new stuff! I actually switched to taking notes on my GitHub account. Each time I am investigating some topic, or just playing around with some technology, I push my code to GitHub together with explanations in a readme file of what’s going on. So here, let me share with you couple of the highlights of what’s been going on for …
Let me invite you to my online course! The course is for those of you who haven’t started learning yet – and want to get the feeling of what real-life software development is all about, and for those of you, who have already started learning Java – and would like to know how it is actually used in real projects. What will you learn in the course? Basics of most relevant programming languages and frameworks required to develop enterprise web …
The main theme for this blog post will be measuring and monitoring JEE application performance. We will however build a whole solution from scratch. Starting with a simple example, we will go through couple of implementation decisions, trying to guess how they could impact performance. To be able to repeatedly collect measurements, we will set up a test plan in JMeter, and make first observations in VisualVM. Seeing how unrealistic these examinations are, we will build a monitoring solution using …
Starting with JEE 6 and EJB 3.1 specification, Oracle introduced an @Asynchronous annotation. JEE 7 has not brought any changes in this matter, and in both these versions, an @Asynchronousmethod might return a Future object. In this blog post we will have a look at how misleading its cancellation is, and what the possible solutions to address the problems that arise are. Introduction As an example, we will be generating UUIDs. Let’s say, we would like to have a background thread that is …
You’ve probably seen this. Ugly code. Unmaintainable, scary eight-thousanders (aka god classes). Joyful SOA (aka microservices) architectures with clear and beautiful diagrams drawn by senior-high-class-ivory-tower-what-not-“architects”. Diagrams as clear and beautiful, as bogus and worthless (haven’t you noticed that all these diagrams tend to have three to five perfectly aligned rectangles connected with arrows, all idyllically pointing downwards?). Chances are you’ve seen this. And chances are you’ve seen this, because someone, at some point of time, crossed the magic line of loose coupling and made …
There is a trading system. Handling all of the complexities related to offers acceptance, negotiations and final approval. A new requirement jumps in. You now have to report on daily basis all the finalised trades to the 3rd party organisation according to the latest regulations in your country. Additionally, some of the suppliers (“customers” in the trading system) may benefit from these reports. In this case however, it will be them who ask for data. Now the enterprise world opens up. The core of …
Social Profiles