Craftsman Column by Uncle Bob
by Antônio Milesi Bastos
1. #8: Socket Service 3 (Tests are a form of documentation)
2. #7: Once Is Not Enough
3. #2: Crash Diet
4. #5: Baby Steps
5. #6: Once Is Not Enough
6. #4: A Test of Patience
7. #3: Clarity and Collaboration
8. #1: Opening Disaster
9. #9: Dangerous Threads
10. #10: Dangling Threads (Iterations Unbound)
11. #11: What's main() got to do with it?
12. #12: Three Ugly Lines
13. #13: Objects
14. #14 Transaction Actions
15. #15 Ess Are Pee
16. #16 Excess Politesse
17. #17 Call in the Guards
18. #18 Slow and Steady
19. #19 Teaching Tolerance
20. #20 Backslide
21. #21 Patchwork
22. #22 Bug Eye
23. #23 Raggedy
24. #24 Oh No!
25. #25 Register Suit
26. #26 A Tabled Requirement
27. #27 Carole's Way Or The HighWay
28. #28 An Encapsulation Break
29. #29 Move the Date
30. #30 The Woodshed
31. #31 Turn Off This Force Field
32. #32: Indubitably!
33. #33: Cleanup on Aisle 10
34. #34: That's Final!
35. #35: What a day
36. #36: The Color Purple
37. #37: Handling Rejection
38. #38: Test Independence
39. #39: Test Refactoring
40. #40: Non-trivial Trivialities
41. #41: Yeah, Sorta
42. #42: Devious Thoughts
43. #43: Language Lawyers
44. #44: Java Generics 2
45. #45: Visitor
46. #46: Squaring the Circle
47. #47: Jinx!
48. #48: Statenum
49. #49: Brown Bag VI - Abstract Factory
50. #50: Brown Bag VII Ruby
51. #51: Brown Bag VIII Ruby Visitor
52. #52: Clean Code - C1 Inappropriate Information