Sharing Thoughts and Knowledge via Twitter vs Blogging

Sharing Thoughts and Knowledge via Twitter vs Blogging

SocialMedia is a double-edged sword. We can put it to good use or become addicted to it and suffer. The challenge is, it is hard to know when it became addiction. Most of the time we get to know that we are addicted to it once we started suffering. I use social media, especially Twitter, very much mainly to keep up with what is going on in the tech world. I must say Twitter helped me in several ways throughout my career.

Continue reading »
A Tip for Debugging Tricky Software Bugs or Issues

A Tip for Debugging Tricky Software Bugs or Issues

While building software, once in a while we face some weird issue which is supposed to just work fine according to our understanding, but it is not working, and we don’t have any clue. We spent hours and hours trying to understand what the hell is going wrong and why it is not working. Even worse, the exact same code is working fine in a small demo application. We all have been into this situation at some point in our careers, right?

Continue reading »
Should you use Lombok? Or, is it bad for you?

Should you use Lombok? Or, is it bad for you?

I’m a happy Lombok library user. I found this library a decade ago, and I’ve been using it ever since. I don’t remember facing any major problems with it so far. However, I see few people that I greatly admire and learn from, often complain that Lombok is very bad, and you should avoid it. Obviously, I am curious to know what am I missing? I know a couple of scenarios where using Lombok brings some challenges.

Continue reading »
Announcing My "SpringBoot - The Missing Guide" Video Series on YouTube

Announcing My "SpringBoot - The Missing Guide" Video Series on YouTube

TLDR; I am happy to announce that I am starting the SpringBoot - The Missing Guide video series on my SivaLabs YouTube Channel. This SpringBoot - The Missing Guide video series is for those who need help understanding SpringBoot’s magic. In this series, I will explain the core concepts used in Spring and SpringBoot with practical examples. Also, I will give a deep-dive explanation of SpringBoot’s AutoConfiguration and how to customize the default configuration.

Continue reading »
Why I think Go is more verbose than Java

Why I think Go is more verbose than Java

Few months ago I asked on Twitter “why you think Java is complex?” to understand others perspective. I'm really surprised looking at so many people assuming #Java is complex than other languages. I worked with mostly Java and in recent years I worked with Go, NodeJS too. But I feel Java is less complex and more productive. Any specific points why you think Java is complex? — Siva (@sivalabs) April 1, 2022 And, I got many responses(opinions, insights) and I compiled all the responses into this blog post My attempt to understand why people perceive Java as complex.

Continue reading »
My Plans for 2023

My Plans for 2023

First of all, Wish you a very happy new year and I hope this year will bring more joy and happiness into your lives. I would like to share how was 2022 for me and what my plans are for 2023. Highlights of 2022 The year 2022 is very eventful for me and lots of interesting things happened. 1. “How to Become a Software Architect” series with in28minutes and JavaBrains I collaborated with in28minutes Ranga and JavaBrains Koushik and did a “How to Become a Software Architect” series

Continue reading »
Spring Boot 3 : Error Responses using Problem Details for HTTP APIs

Spring Boot 3 : Error Responses using Problem Details for HTTP APIs

Spring Framework 6 implemented the Problem Details for HTTP APIs specification, RFC 7807. In this article we will learn how to handle exceptions in SpringBoot 3 REST API(which uses Spring Framework 6) and provide error responses using ProblemDetails API. We are going to reuse the SpringBoot 3 sample application spring-boot-jpa-crud-demo which we used for Using Java Records with Spring Boot 3 article. Assume we have the following REST API endpoints to create a bookmark and fetch a bookmark by id.

Continue reading »
Using Java Records with Spring Boot 3

Using Java Records with Spring Boot 3

Records were introduced in Java 14 as a preview feature and became a standard feature with JDK 16. Records are a concise representation of immutable data class. Prior to Records this is how we usually create an immutable class. import java.util.Objects; class Person { private final Long id; private final String name; public Person(Long id, String name) { this.id = id; this.name = name; } public Long getId() { return this.

Continue reading »
Rethinking About My Social Media Usage

Rethinking About My Social Media Usage

Social media is a double-edged sword. Depending on how you use it can be really be helpful or become a source of pressure and frustration. I don’t use Facebook and Instagram much, but I use Twitter and recently started using LinkedIn too. Twitter is my primary source of technical information. I follow many good people in Java Community. Twitter is a great platform to connect with those awesome people and I learn a lot from what they share.

Continue reading »
Book Review : Cloud Native Spring in Action

Book Review : Cloud Native Spring in Action

I got a chance to review the upcoming Cloud Native Spring in Action book by Thomas Vitale and here my review of the book. TLDR: If you know the basics of SpringBoot and want to master the advanced concepts and also understand what “Cloud Native” means and how to build & deploy production grade SpringBoot applications on Kubernetes then this is the book you are looking for. Longer version: There are many books on SpringBoot that are aimed towards complete beginners to intermediate skilled developers.

Continue reading »