Capture the Flag
Join the Architecture Notes CTF and test your system design skills against participants from around the world. Solve challenges in distributed systems, web security, and more. Open to all skill levels.
Join the Architecture Notes CTF and test your system design skills against participants from around the world. Solve challenges in distributed systems, web security, and more. Open to all skill levels.
More features, active users, and data are collected daily. Your database is slowing your application. Many people don't understand database sharding, which could solve their difficulties. This article explains database sharding, its benefits, including how to use it and when not to.
The Twelve-Factor App methodology is a methodology for building software-as-a-service applications by Adam Wiggins. We cover how they have since evolved, and what we can learn from them today and how they changed the status quo of yesteryear.
A deep technical dive into all things Redis. Covering various Redis topologies, data persistence and process forking.
How Relational Databases Work. This post talks about how indexes and transactions work on the inside of relational databases.
Fallacies of distributed systems are a set of assertions made by L Peter Deutsch and others at Sun Microsystems describing false assumptions that programmers new to distributed applications invariably make.
Simon is the creator of Datasette and co-creator of Django web framework. Formerly he was a JSK journalism fellow at Stanford, and prior to that an Engineering Director at Eventbrite.
How does technical debt accrue? Most people would say bad engineering. What is bad engineering? Inflexibility? Is one system engineered correctly to do one thing trying to do something else considered bad engineering?
The lock mechanism is an integral part of any modern system. In software applications, locks are used to ensure that multiple users do not simultaneously access and modify the same resource.
Join the Architecture Notes CTF and test your system design skills against participants from around the world. Solve challenges in distributed systems, web security, and more. Open to all skill levels.
Circuit breakers are a vital component of any distributed system, helping to improve reliability and resilience by preventing failures from cascading and causing widespread damage.
More features, active users, and data are collected daily. Your database is slowing your application. Many people don't understand database sharding, which could solve their difficulties. This article explains database sharding, its benefits, including how to use it and when not to.
The development of cloud-native applications has become significantly influenced by container technology. Building secure and reliable systems requires a thorough understanding of different virtualization levels and process security.