I don’t remember if there was ever an O3D post mortem but the biggest lesson I took away from it is that if you write a library or some software you have to support it forever. The moment you stop supporting it it dies. (I think PlayN might be another example)
That experience has changed my outlook on making certain things. I used to want to make an open source 3D engine. Now I realize that unless I want supporting it to be my full time job for the rest of my life there’s little chance it will go anywhere.
Similarly, we, or I, had dreams of competing with Flash or Unity but to truly compete would have required a large team not only maintaining the tech but also making authoring tools, exporters, demos, running conferences, holding seminars, etc etc etc…
Realistically that was never going to happen so now when I have a similar impulse I think “Do I really have the will to support this library forever?” and/or “Do I really believe the resources are there to support this thing at any level comparable to the competition?” The answer is usually “No” which helps to scale my goals. Either I’m just writing it for myself which is fine, or else possibly I should use the competition’s solution.
Similarly it informs my thinking of using 3rd party libraries. If it’s some small piece of code that’s open source no problem. But if it’s some larger framework I’m more skeptical that someone’s pet project, however cool, is going to continue to be supported. Lots of engineers don’t think it through that they can’t just write some framework and declare it done and move on. If they really want that framework to be successful they’ll have to keep supporting it indefinitely.