Functionality | Speed | Fault-tolerance | |
---|---|---|---|
Completeness | Separate normal and worst case | Shed load | |
End-to-end | End-to-end | ||
Safety first | |||
Interface | Do one thing well | Make it fast | End-to-end |
Don't generalize | Split resources | Log updates | |
Get it right | Static analysis | Make actions atomic | |
Don't hide power | Dynamic translation | ||
Use procedure arguments | |||
Leave it to the client | |||
Keep basic interfaces stable | |||
Keep a place to stand | |||
Implementation | Plan to throw one away | Cache answers | Make actions atomic |
Keep secrets | Use brute force | Use hints | |
Use a good idea again | Compute in background | ||
Divide and conquer | Batch processing |
Thursday, May 20, 2010
Hints for Computer System Design
Butler W. Lampson's Hints for Computer System Design. The slogans are summarized in the table below (Figure 1 in the paper):
Labels:
programming
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment