I Heart Complexity
In the classic No Silver Bullet, Fred Brook identifies two kinds of complexity in computer programs. Inherent complexity exists because the problem domain the program attempts to solve is complex. Imposed complexity exists because programmers make life hard on themselves by building ever-growing towers of abstraction rather than solving the actual problem.
Rails is a bullet that strikes at imposed complexity. But what about inherent complexity? Into every developer’s life, applications involving money, time and complex business rules shall fall. When this happens, its handy to know how others have solved these problems previously.
This presentation will review some libraries and techniques for dealing with time travel, monetary calculations, complex business rules and large applications. Once we’re done, you won’t need to declare “YAGNI!” on those who have complex problems. Instead you’ll find yourself equipped to tackle naturally complex problems head-on.
Adam Keys
The Real Adam
Adam Keys is a connoisseur of code, dachshunds and existentialism jokes.














