Goals for the reading group: exposure and learning
How do we learn this material?
Donald Norman's definition of learning – "the act of the deliberate study of a specific body of material so that it can be retreived at will and used with skill."
Pick one or two of the strategies to try out for next time.
In search of concrete examples.
Summary
Data systems - tools for data storage and processing we can use as application building blocks.
3 big qualities we seek in our systems: reliability, scalability, and maintainablity
Reliability – the system whould continue to work correctly even in the face of adversity. Scalability – as the system grows there should be reasonable way of daling with that growth. Maintainability – over time, many different people will work on the system, and then should be able to work on it productively.
| Quality | Design Idea |
|---|---|
| Reliability | Fault-tolerance |
| Scalability | Scalable architecture patterns |
| Maintainability | Make it easy |
Reliability
Marks of a reliable system
- functions correctly
- withstands user misuse
- is performant
- is secure from unauthorized access and attack
Scalability
Scalability challenge: using honeycomb to determine load and performance.
Maintainability
Maintainability equals make it easy.
Operability makes it easy to keep the system running smoothly. Simplicity makes it easy for new engineers to understand by reducing complexity. Extensibility makes it easy to adapt the system to changing requirements.