waslap writes "I occupy a leading role at a small software development company and am tasked with giving guidance and making decisions on tool usage within the shop. I find the task of choosing frameworks to use within our team, and specifically UI frameworks, exceedingly difficult. A couple of years back my investigation of RIA frameworks lead me to eventually push for Adobe Flex as the UI framework of choice for our future web development. Bear in mind this was long before anyone predicted that the wheels on flash would come off (in any event on Linux). I chose it mainly for its maturity, wealth of documentation, commercial backing and the superior abilities of flash in a time when HTML 5 was still a pipe dream. The backing of an industry giant in Adobe gave me a false sense of security that the kit would not go down the cul-de-sac of so many open source projects before it. We invested heavily in it just to be disillusioned a couple of years later when Linux support for flash was killed off (Linux support is vital for us for reasons outside the scope of what I have space for here). Ironically, I evaluated it alongside OpenLaszlo which at the time had the ability to use a DHTML back-end instead of flash with the flick of a switch and in retrospect, this alone seemingly made it the better choice in the long run regardless of its flaky state when I first looked at it. A similar scenario arose with CodeIgniter which we chose for getting away from classical spaghetti PHP just to be recently dropped like a hot potato after we've invested a Tesla Model X worth of money into using it. Conversely, about 15 odd years back, I made a switch to Qt for desktop applications and against all odds it is still around and thriving. I am trying to figure out why it was the right choice and the others not. All I could come up with is that Qt's design was done so well and sound that it basically could not be improved upon but I'm not even sure whether that assessment is accurate.
I am standing at a cross-roads once again as everyone is shouting Laravel and what have you not and I am scratching my (sore) head how to prevent the same ill-fated choice going forward as it seems there is just no way to predict whether a tool will survive or not and your investment in it dwindle. Even in retrospect, looking at my decision making process, everything looked healthy and sound at the time I made the choices but yet it turned out to be the wrong ones and I cannot come up with a sound decision tree from my experiences to assist me in making choices with staying power. That's where I hope the esteemed Slashdot readers could come in and provide some helpful inputs on the matter to provide a set of fail-safe axioms."