Which frontend framework should you pick for your next web app? Pam Selle will address this famously difficult question at this year’s All Things Open in Raleigh.

The increasing number of options for frontend frameworks has made the field more diverse, but it has also made it much harder to navigate and keep up with. Whether you’re an experienced web dev or a newcomer to the industry, the Philadelphia-based software engineer and co-author of Choosing a JavaScript Framework will guide you through the options and help you understand the differences between them.

Read more in this interview about the ecosystem, the future, and the community surrounding Javascript frameworks.

Can you outline what makes a good JavaScript framework?

It needs to be a good framework first. Ideally, a framework gets some of the repetitive work you’d do anyway out of the way of your project. An ideal framework also dictates how to move forward with your structure, optionally dictating more such as the testing path, etc. JavaScript frameworks in particular started emerging as people noticed they were writing the same bits over and over again (models, routers, components, etc.). A good JavaScript framework provides you with a bit of structure so you can focus on building an application rather than reinventing the wheel (unless that’s your goal).

The number of web frameworks keeps growing with new, exciting options popping up regularly. How does it affect the web community? Is that a good or bad thing?

I admit there are days when I say to myself, “If there’s one more new library I hear about being ‘the best thing’ today, I’m quitting the web.” However, I think the plethora of activity is a good thing. It takes experience to be able to step back from the noise and see what’s worth paying attention to. If I had to summarize, it’s that I’m in favor of prolific open source development, but I’m actively working to not be a victim of shiny-ism (following the newest thing because it’s new, rather than because it’s actually a radical new idea).

Considering the pace the web is moving at, how do you keep up with it? What would you recommend to front-end developers trying to maintain their skill sets?

In my experience, there’s no better method than keeping in touch with other developers. Depending on your level or interest in social events, that could be user groups, going to a conference (which packs a lot into a very short amount of time), or it could be keeping a well-honed Twitter feed up during the day. I also subscribe to a few various weeklies and newsletters. Whatever you want to learn, there’s probably a newsletter for it (Node, servers, web animation, etc.).

How do you see the future of JS frameworks? Is it diverse with many great options, or will we see one or two winners take all?

I really don’t know if there will be a “winner” among JS frameworks. For a very long time, there’ll be work involving the major frameworks for any freelancer interested (i.e., Backbone, Angular, Ember, and likely React and Polymer). However, what I’m very interested in now is how JavaScript will be placed against the compile-to set of languages, namely TypeScript, ClojureScript, Elm, etc. With ES6 adoption requiring a transpiler pending browser support, these languages have a better chance than ever to take a foothold in the client-side programming space.

All the frameworks in your book have thriving open source communities. Drawing from your experience with teaching JavaScript, how do beginners view open source? Are they excited about participating, or do they just see it as the way software is done?

When I teach beginners, I doubt many of them have any idea what open source really means! What I do know they notice (and care deeply about) is how easy it is to find information and answers to their questions (“Can I Google this?”). Open source, and the fact that it requires a community to work really well, benefits these beginners whether they know it or not.

Without giving too much away, what will be the focus of your talk at All Things Open?

As people might suspect, it’ll involve JavaScript frameworks! The ideal audience member is interested in JavaScript frameworks, or even has deep experience in one, but wants to know more about what’s out there. It’s really difficult to dig into the philosophy and aims of each framework, but my goal is for attendees to walk away with a better sense of the major frameworks in the field.