Uncategorized
-
Events or Commands
Most of the programmers quickly agree that naming is one of the hardest things they have to do as part of their Job. As Phil Karlton puts it “There are only two hard things in Computer Science: cache invalidation and naming things.“ Naming is hard because it is important to get it right. It is Continue reading
-
Things to consider when implementing Elastic Search in .net
Elastic search is a great search engine to enhance the search capabilities of your product. It is open-source and provides a RESTful interface for your application to interact with. You can read more about it online, as the internet is full of great articles going in-depth of various aspects of it. Most of the setup was Continue reading
-
Use meaningful names in your code
What is in the name? Naming your variables and methods is not easier than naming your baby, we cannot just pick a name that sounds pretty to the mother. Generally programmers would rate naming methods and variables as tough or at least an important task. I have impression that after the books like “Smalltalk Best Practice Continue reading
-
Monolith to microservices – a journey of baby steps.
Sometimes you can relate the decisions and leanings of software development with other events of your life. Recently I have had a deja vu (Déjà vu) effect while brainstorming big bang vs piece meal approach to decouple a complex monolith. A story of failed family holiday Let me tell you a small story from my Continue reading
-
Why you should care about more than just your code.
We are living in exciting times, when frameworks we are using are becoming more and more extensible and giving us more power to build highly complex systems. In my previous few posts I have written about how to use the extensions/patterns to simplify your code while providing solutions for equally complex domains. In this post Continue reading
-
How to simplify complex logic using declarative coding in C#.
Every now and then we get to implement very complex logic and there are various ways to manage the complexity. In my 3 Posts series, I have discussed how we can handle complexity introduced by the multi-tenancy aspect of the business logic. I recently came across a logic, which was going to create a maze Continue reading
-
Maintainable java-script code – ES6 and Build Automation using gulpJS, jspm and systemJS
Role of JavaScript in a web application development has increased significantly. It has resulted in very complex APIs and frameworks. Wouldn’t it be nice if we can bring some of the concepts from c#/java world in a cleaner way, so that we have more readable java-script. Well ES6 (EcmaScript 6) bring us very close to Continue reading
-
Multitenant Application – Part 3: AOP in MVC to develop multi-tenant and regional applications
This is my third and last post in the series of writing multi-tenant applications. Before this I have discussed how to avoid if/else type structures and how context based dependency injection can help us do it efficiently. In this post I will focus on the UI side of the application. One of the main traits Continue reading
-
Multitenant Application – Part 2: Context driven dependency injection
Further to the previous post, object creation based on the current context is a cross cutting concern, so it should be dragged outside the core business logic. We have already tried creating a factory method to give us the required implementation. We will now replace this with a container to allow Inversion Of Control. The most simplest Continue reading
-
Multitenant Application – Part 1: How to write Multitenant or Regional code without if or switch statements?
Have you seen code like this and wonder how to make it cleaner? I often see a web of if/then or switch statements sprawled out to various parts of an application to provide a country or client specific code paths. Such conditional statements have their counterparts in other layers of the application. These corresponding conditional statements are consistently required to be Continue reading
