Jumping to present day, Weilenga highlights the dominant front-end frameworks, Angular, Vue & React, categorizing them as “first-generation frameworks” and identifying their common (and serious) issues:
- Large amounts of technological churn added to the ever-evolving ecosystem around them that developers have to keep up with.
- Incompatible custom stacks.
- Developer specialization; developers identifying by framework instead of language.
2nd Generation Frameworks & Solutions
Adapting popular frameworks for enterprise usage is making the landscape even more fragmented, apps more fragile and sustainability increasingly difficult. Others are pioneering a way forward.
- Opinionated. You don’t want every new developer adding their own flavor to your codebase.
- TypeScript First. A mature engineering organization needs good rules and best practices in place. TypeScript supports this.
- One-stop. You don’t need to make 20 decisions and use 20 different solutions to get started. Dojo makes strong default decisions for you.
Dojo enables teams to build web applications with a deliberate approach to productivity, sustainability, and discipline, specifically addressing enterprise pain points by:
Removing Decision Paralysis – Dojo provides excellent out-of-the-box default decisions while making it possible to change or override those defaults. This allows teams to be productive quickly while creating high-performance applications by default.
Becoming the Technical Lead. Dojo provides an approach that helps engineers build applications with good architecture and performance best practices by default. For example, Dojo applications are PWAs by default and provide incredibly simple approaches for rendering optimizations, code-splitting, and other performance without needing to rewrite application logic.
Providing Developer Ergonomics. Dojo aligns with modern standards and patterns without the cognitive overload of every design decision. For example, Dojo currently leverages webpack for various build optimizations, but most applications built with Dojo will never need to think about webpack configuration as Dojo does the right thing based on the application architecture. Dojo provides efficient tooling for creating and testing applications and UI widgets, type safety and accuracy via efficient TypeScript ergonomics, and much more.
Dojo provides a stable foundation for the enterprise to build performant, extensible, and sustainable applications for the future.
Ultimately, with every large company now effectively being an IT company given the large scale development operations and developer populations within them, the large framework players are being forced to evolve towards the needs of the enterprise and not without pain. Guiding and maintaining a highly-used open source project requires discipline, vision, and perseverance.
Stable over sexy. Inclusive over fragmented. Sustainability over velocity.
The 1st generation frameworks are now challenged to become part of the next generation of enterprise-focused solutions and of course they should! Because really, aren’t these values and priorities good for every application, its users and its development organization?