Before I get flamed, let me clarify–I like frameworks. I use frameworks. This site’s JavaScript is run on Prototype and Script.aculo.us. The problem is, JavaScript isn’t just JavaScript anymore.

Perhaps you’re using Dojo and absolutely love it. So, whenever you’re writing some JavaScript, you’re obviously going to write it over Dojo. Or, if you’re a blogger, whenever you’re writing about JavaScript your example code will probably use Dojo as well.

But I use Prototype/Script.aculo.us, and to be honest, I’ve never touched Dojo. So if I have to work on a project with you, how’s that going to work? It’d be crazy to include both of them.

Or perhaps I’m reading your blog and you’re introducing some sweet new JavaScript. Now that’s all fine and dandy, but if it’s built on Dojo what good is it going to do me? I’ve already built my stuff on top of Prototype.

Frameworks are changing the way developers both write and write about code. This works great when you’re the only developer on the project, it’s for yourself, or it’s for others using that particular framework. But what about everybody else?

Should we as developers try to get a basic understanding of all the major frameworks so we can easily understand and use each other’s code?

When releasing scripts to the public, should developers try to create versions for as many different frameworks as possible (much like software developers would build for multiple operating systems), or should they ditch using a framework all together?

Or, should each develop to his own and hope that others will create versions for other frameworks (though, this wouldn’t solve the problem of multiple developers working together on one project)?

I have no solid answers to these, so I pass off these questions to you, the blogosphere. What do you say? swan