Understanding Technical Debt
What is technical debt? Technical debt occurs when we choose an easier, quicker or a less optimal solution during software development rather than a more robust one. As developers we do this all th...
What is technical debt? Technical debt occurs when we choose an easier, quicker or a less optimal solution during software development rather than a more robust one. As developers we do this all th...
Introduction “Security is an illusion, you will put an alarm on a door and feel safe, but what if burglar use the window? ~ Kevin Mitnick” What is web application security? This is the process of p...
Introduction In the last couple of years, there has been a lot of advancement in how systems are developed. Applications that we use everyday like Google Search, YouTube, Twitter, Instagram etc pr...
Introduction Real World Problem Imagine a popular restaurant with lots of customers at it’s busiest hour. All the customers want to get meals the moment they walk in. It could be chaotic if the res...
Introduction Have you ever come across an advertisement for services like graphic design or house painting that begin with a catchy headline: Cheap, Fast and Good: Pick Two”? Cheap represents the...
Introduction Imagine you have a large library with thousands of books. Let’s say a client walks in and requests a book by it’s title. Without any organization, you would have to search all the b...
Introduction A database holds a significant importance within a system and it’s design is very critical in the performance of an application. For Example, let’s examine the early stages of a soc...
What is database replication? A database is very critical in the performance of an application. Imagine you have developed an ecommerce shop like amazon. The store initially has a single database...
The components of system design When designing any system you will realise that it will require to store some data. That is where a databases comes in. Choosing a database for a job can either make...
Fundamentals of system design Chapter 4: Caching The components of system design Caching A cache is a short-term memory that is used to store recently accessed data from original data store for ...