The Unix philosophy is all well and good, but it's very limiting. There are major types of valuable software products that simply can't be built out of small tools or services.
While there are certainly many ways to build complex software, I haven't found composing a complex system from many simple and independent parts limiting.
Exactly. It's just one way of doing things, and I definitely admit that some very good things have come from much more complex systems.
However, bug control is absolutely vital with these systems, and you definitely need some kind of quality-assurance system, or you will be hatin' life.