Decentralization is a tricky concept. There are many facets to it. In this article, I want to talk about decentralizing everything in a way it doesn't hurt you or your organization. When I think about decentralization the first thing that comes to my mind is Self Service. Self Service Self-service is very important in a truly decentralized system. The people working on … [Read more...] about Principles of Microservices – Decentralize All The Things
Programming
Principles Of Microservices: Culture Of Automation
This article is written in a succession of the previous article that talks about the first principle of microservices i.e. modelling of microservices around a business domain. Once you have modelled the microservices around your business models and you are confident that you have done a good job, then the next step is to focus on automating your infrastructure. Automation … [Read more...] about Principles Of Microservices: Culture Of Automation
QuickSort – Understanding the QuickSort Algorithm and Implementation
QuickSort algorithm is a brilliant idea of Tony Hoare. This algorithm is so effective that if implemented well, it can be 2x or 3x faster than its competitors merge sort and heap sort. I personally like quick sort algorithm because of its simplicity and speed. But I'm surprised to see that so many people get confused with quick sort algorithm. But worry not, because I … [Read more...] about QuickSort – Understanding the QuickSort Algorithm and Implementation
How To Add Custom JNDI Resource Factory That Will Return Your Custom Object
This is legacy stuff, which means you either stuck somewhere or you are about to get stuck somewhere. Am I right or am I right? :D The JNDI stuff is really confusing especially if you have not seen the younger architecture of the web. So, let's talk about the earlier architecture and System Design where it was used. Monolith Architecture Mostly all of the legacy … [Read more...] about How To Add Custom JNDI Resource Factory That Will Return Your Custom Object
Create Page Layouts with React and Typescript
Layouts are one of the most important pieces when it comes to web development. Let's say you have a website that offers a member's dashboard so that the members of the site can login and get the exclusive content. Now, you wouldn't want to have the same layout for your members that you have for a non-member of your website. The logged-in user may have access to a lot more … [Read more...] about Create Page Layouts with React and Typescript
SWAGGER UI – Enable Token-Based Authentication In Spring Boot
Swagger UI is the first choice of every developer and tester when it comes to documenting service APIs. It provides live documentation for the APIs where you can actually send the request and get the things done. It really makes it easy for other people to understand your APIs as well. Whenever you are working on a project that depends on stateless authentication (which … [Read more...] about SWAGGER UI – Enable Token-Based Authentication In Spring Boot
How To Mock SecurityContextHolder in Spring Security using Mockito?
Test-driven development is a pretty awesome design process. And while building your code, you may want to mimic the logged-in user. In Spring Security, the logged-in user principal is stored inside the Authentication object. This Authentication object can be accessed from any part of your application using SecurityContextHolder. The SecurityContextHolder is a singleton … [Read more...] about How To Mock SecurityContextHolder in Spring Security using Mockito?
Load Spring Beans Based On Different Profiles Via XML
While working on a legacy project, sometimes it becomes so hard to find such small pieces of stuff. Recently I faced a similar problem where I had to load spring beans based on the loaded profiles respectively. With Spring Boot and annotation, it has become really easy. Just put the @Profile("profile1, profile2") and it works. Similarly, it is done in XML as well. All you … [Read more...] about Load Spring Beans Based On Different Profiles Via XML
How to Fix A Blunder and Get Squashed Commits Back (Git Undo)
There will be times when you will realize "Oh, no! What've I done?". That moment is a classic moment in every developer's life. Usually, it happens right after when you do something silly, and it costs you hours of re-work. We tend to become careless in tasks that we do on a regular basis. And one such task for me was Git Squash. I like my commits to be clean and … [Read more...] about How to Fix A Blunder and Get Squashed Commits Back (Git Undo)