Ideas from books, articles & podcasts.
There is no single design for any system that works perfectly. There are always trade-offs. Two different people can come up with different designs, with both being excellent given different assumptions.
Your goal is to:
MORE IDEAS FROM THE SAME ARTICLE
Depending on the type of system you are designing, you need to estimate its scale: how many users will access it every day, how much data you will store and process, etc.
You should be careful when making assumptions. Incorrect assumptions can dramatically change th...
Once you have a basic design in mind, focus on the key issues. Identify the bottlenecks and major challenges of the system, and then adjust your design to handle them.
In the TinyURL example, a challenge you might consider is that some URLs are frequently accessed, whil...
You can't design a system if you don't know what you're designing.
First, ask questions to clarify what you need to implement. Then make a list of all major features and use cases that your design must cover.
For example, if you're designing TinyURL, that list mig...
Draw a high-level diagram of what your system looks like:
MORE LIKE THIS
Systems can be scaled:
As a utility-first CSS framework, Tailwind has rapidly become popular among developers. With its fast styling process and the freedom it offers when designing a website, it’s really no wonder why.
But how can you make sure this is the right CSS framework for your upcoming development projec...
published 11 ideas
Tailwind is An excellent solution for developers familiar with CSS who want to speed up the creation and design process in the long run. Not such a good idea if you are not familiar with CSS or do not want to spend time learning a new CSS framework.
Docker is an open source containerization toolkit which enables developers to package applications into containers.
As the name suggests, Docker is like a container ship which provides means to sort, link, manage and ship containers from a d...
❤️ Brainstash Inc.