This is a medium difficulty problem in Leetcode. This is medium only if you are talking in terms of algorithm and time complexity. But let's say you have to build a calculator for an enterprise. The calculator that will be extensible, maintainable and optimized at the same time. How would you build such a calculator? Well the first thing would still be coming up with the … [Read more...] about Basic Calculator Leetcode Problem Using Object-Oriented Programming In Java
Programming
Advent Of Code 2020 – Day 7 – Handy Haversacks
Finally, Directed Weighted Graphs have made their way to the Advent Of Code 2020 on Day 7. If you are unfamiliar with graphs then I highly recommend you to go through the below articles: Undirected Graphs and Graph Processing This above article will give you enough information to get you started with today's problem. On this note, let's start with today's problem. We … [Read more...] about Advent Of Code 2020 – Day 7 – Handy Haversacks
Advent Of Code 2020 – Day 6 – Custom Customs
This problem was a bit hard to understand at first because the information is not directly given, you have to derive it from the given input. The story goes like this, your aeroplane has reached a regional office where you will switch to a much larger plane, custom declaration forms are distributed to passengers. The form asks a series of yes-or-no questions marked from … [Read more...] about Advent Of Code 2020 – Day 6 – Custom Customs
Advent Of Code 2020 – Day 5 – Binary Boarding
You've made it through the passport verification phase. Now, it's time to board the plane. You board the plane but then you realize that you have dropped your boarding pass. So, how are you going to handle this situation. Well, you are a developer, you know only one thing and that is to write code. That is what you are going to do. Somehow, you scanned all the nearby … [Read more...] about Advent Of Code 2020 – Day 5 – Binary Boarding
Advent Of Code 2020 – Day 4 – Passport Processing
I just love the way Eric Wastl links the story. This time it's about passport processing. Do visit the link to read the story and understand the task better. But at a high-level, you need to understand this - there are two types of documents: North Pole CredentialsPassport The passport scanner machine is slow and facing some problem detecting which passport have … [Read more...] about Advent Of Code 2020 – Day 4 – Passport Processing
Advent Of Code 2020 – Day 3 – Toboggan Trajectory
Great job reaching here so far. Finally, we've logged in to Toboggan successfully, now we have to travel to the airport through a jungle. The path is not very good and has a lot of trees. So, here comes our next task. The trees in this area only grow on exact integer coordinates in a grid. You make a map (your puzzle input) of the open squares (.) and trees (#) you can see. … [Read more...] about Advent Of Code 2020 – Day 3 – Toboggan Trajectory
Advent Of Code 2020 – DAY 2 – Object-Oriented Way
The Password Philosophy is the topic of today's discussion. Since there is not much to do with today's problem apart from the string parsing, I thought of doing it in an object-oriented way. The problem statement is mostly based on the string parsing. You will get a list of lines with the password and password check policy. The task is to parse the policy and password from … [Read more...] about Advent Of Code 2020 – DAY 2 – Object-Oriented Way
Advent Of Code 2020 – Day 1 – Report Repair
In this article, I'll discuss on the Day - 1 problem of "Advent of Code". And from today onwards, I will try to discuss everyday's problem. Make sure you subscribe to the blog to stay in touch. Feel free to share your ideas or even post your solutions in the comment section below. Let's start... PART - 1 of DAY - 1 The problem is simple - Given a list of years, … [Read more...] about Advent Of Code 2020 – Day 1 – Report Repair
Almost Sorted Hacker Rank Problem (Medium Difficulty)
Recently I came across this problem in hacker rank. This problem is really fascinating as it teaches you to handle a lot of edge cases and variables at the same time. So, I thought of writing an article on this one. I hope you will enjoy it as much as I enjoyed solving it. Simplified Problem Statement You will be given an array of N integers. This array could be … [Read more...] about Almost Sorted Hacker Rank Problem (Medium Difficulty)
How To Start Your Career as a Computer Programmer (For Newbies)
In this pandemic, I got in touch with many undergraduates and I found a common pattern. They all seem to be confused, usually spread all over the place. On top of that, they are running after the wrong stuff. You see today the internet is filled with information. If you want to learn something, it is just a search away. And this is a good thing. But it can easily … [Read more...] about How To Start Your Career as a Computer Programmer (For Newbies)
Principles of Microservices – Deploy Independently
This is one of the most important principles in the world of Microservices. This has a direct impact on the ability of an organization to roll-out new changes in less time and with more accuracy. The idea here is to be able to deploy a new version of any part of the functionality in isolation such that the consumers of that service won't even know that something has … [Read more...] about Principles of Microservices – Deploy Independently
Principles of Microservices – Decentralize All The Things
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
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