Lightweight vs Heavyweight
I’ve been looking at a lot of frameworks and platforms and big fat libraries lately to do mainly enterprise distributed messaging and the like. I keep trying to understand these big behemoths and what they do and how they work. I have yet to find a simple tutorial style application that I can whip up in under and hour and feel like I have an inkling of how the technology works.
I keep feeling like I missed the boat. I just can’t grok what these frameworks are all about — they all purport to solve problems and simplify writing these kinds of applications, but I can’t see what problems they actuall solve and where the simplicity lies. To me, it looks like a false-economy. And yet these things are wildly popular. I can’t tell if I’m just not bright enough to get what it’s all about, or if hundreds of thousands of enterprise IT workers have been fooled. Occam’s Razor says that it’s more likely that I’m the dunce. In either case, I hope one of my smart friends can someday explain all this nonsense to me.
I suspect none of these so-called ‘enterprise’ system can actually handle the problem I’m looking to solve. hey simply don’t have the performance or scalability I need. Part of the problem is they are all based around web-centric design and requirements. Secondly, they are over-generalized and bloated abstractions have too much cruft getting in the way to be performant.
What’s been stewing in my brain throughout, is that it may be a matter of personality type. There’s a whole class of developer that works well with big bloated frameworks. I’m from another world … where frameworks are equated with hand-cuffs. What I want are lightweight, small, simple tools. I want small libraries with clear functionality and purpose. I don’t want a big fat framework … just some elegant high-performance messaging libraries. I could have written my own in the time I’ve spent looking for one. I would hate to reinvent the wheel… (actually that kind of thing is very fun, but you know, frowned upon).