Introduction to Domain-Driven Design

Last week, I gave a presentation on Domain-Driven Design in my office. It was a quick introductory level one hour presentation intended to give the audience a general idea of DDD.

Here is the link to the presentation slides which I prepared in Reveal.js:

Hope you find it useful.



Serializing and Deserializing a List with Gson

In my latest article published on Baeldung, I explore some advanced serialization and deserialization use cases of Java List using Google’s GSon library:
Serializing and Deserializing a List with Gson

Hope you find it useful.



Somebody else’s Hello World

If you are writing it from scratch, you are most likely doing it wrong.

I concluded after seeing tones of lines of code implementing simple ORM in a product which had no business doing it from scratch. The code was technical debt from day one and was treated so — redundant, unmaintainable, full of static functions satisfying individual developers urgent itch.

Whenever faced with a challenge, why do we have a tendency to start from scratch? What makes it so hardwired that it takes many years of experience to avoid this trap?

I think the problem is with the way we learn to write code. Too often our exercises and assignments expects us to starts from scratch. Each of us start with our own Hello, World. We practice tones of programs, each starting from scratch. We become good at it — at starting from scratch. So good that it becomes our default starting mode for any programming task. It also becomes our default starting point while thinking of a solution.

I am sure we could come up with ways to learn code which are also in sync with ways to software engineering.



Java 11 Nest Based Access Control

The fourth and the final article on Java 11 is about nest based access control:
Java 11 Nest Based Access Control

This one was tricky to explain as there was no visible change. I used disassembly of Java class files to better explain what changed under the hood. Hope you find it useful.

And this one got published on 1st Jan 2019. Happy New Year!!



Java 11 String API Additions

The third article on Java 11 is about new APIs added to the String class:
Java 11 String API Additions

Which one do you think will be most useful?