It's now the fourth time we're doing this survey, and each time we take a deep look at our big YAML file containing all our questions to see what stays and what goes. So in case you're curious, here's a quick overview of everything new in this year's survey.
Language & Patterns
We also have a whole section all about browser APIs so we can see how popular each of them is.
The goal is to get an idea not just of what libraries people are using, but also what their actual code looks like.
New Libraries: Svelte, Cypress, and more
Speaking of libraries, we also have a couple new entrants.
First off is Svelte, which has been making big waves in the community all throughout 2019. It was also our #1 "other" answer in the front-end section last year, so it only made sense to include it.
In the back-end section, we added Nuxt and Gatsby. They're not "traditional" back-end frameworks like Express or Koa, but they've gained so much popularity recently that not adding them felt like an oversight.
In the testing section, we've added Cypress and Puppeteer, and in the mobile & desktop section NW.js and Expo.
Just like we did for this year's State of CSS survey, we also added a Resources section to find out more about which blogs, resources, and podcasts are the most popular.
A Custom Survey Front-End
Finally, on the technical side of things the huge change this year is that we're using our own homegrown survey platform for the first time instead of relying on Typeform.
This is something we had talked about for a while, but we didn't consider it seriously until we realized Typeform had changed their pricing, and that their largest plan was now capped at 10,000 responses per month! Typeform wasn't interested in accommodating us, so with the end of the year looming ever closer, I got to work to hack a survey app together.
Moving this fast did have a few drawbacks. We've had our share of little bugs, but nothing major so far. Also, we now require you to create an account before filling out a survey. As much as we'd like to support anonymous users, we didn't have time to implement proper safeguards against data tampering, so requiring accounts seemed like the safest choice.
I do think this was the right choice though. As we import data from previous years into our new survey app, we'll be able to give you access to that data so you can see how your responses have evolved over time (provided you've used the same email); and also make it easier for others to access our data to make their own data visualizations.