01:04:04
An in-depth conversation with the creator of Vue.js and Vite, covering his journey from Google to founding Void Zero, the philosophy behind Vue's evolution, and the next generation of developer tools.
Evan You's path into software development was unconventional. Holding an undergraduate degree in Art History, he later pursued a Master of Fine Arts in Design and Technology. It was during this program that he grew frustrated with compiled languages like C++ for interactive projects and discovered the potential of JavaScript through Google's "Chrome Experiments."
A JavaScript clone of the "Clear" todo app demo built with HTML, CSS, and JS caught the attention of recruiters. This led him to Google Creative Lab, an internal creative agency, where he worked as a "Creative Technologist" building rapid prototypes and experimental interactions, often using cutting-edge browser APIs available only in Chrome Canary.
At Google, building complex UI prototypes with vanilla JavaScript or jQuery became tedious. While exploring solutions like Backbone and AngularJS, Evan found them overly complex for his needs. He wanted a simpler way to sync a template with its data.
The key insight was using ES5's `Object.defineProperty` to intercept getter and setter operations, enabling a reactive system that automatically tracked dependencies and updated the view. This core idea, focused on simplicity and a gentle learning curve, became Vue.js.
The framework gained significant traction early on within the Laravel community after a tweet from Taylor Otwell, which Evan credits as a major catalyst for its initial growth.
As applications built with Vue grew larger and more complex, the Options API showed limitations in code organization and reusability, especially with multiple mixins. The Composition API was introduced to solve these scaling problems.
It offers two primary advantages:
Evan emphasizes that the Options API is not deprecated and will remain a supported part of Vue forever, catering to different use cases and preferences.
Vue 3.6 continues the focus on performance and stability. The release will include two significant features: