Podcast Summary
Vaadin vs Tori: Vaadin and Tori offer unique advantages for application development, with Vaadin focusing on ease of use and no need for HTML, JavaScript, and CSS, while Tori provides a multi-platform solution with Rust back end and standard web technologies for the client side, offering security and optimization benefits.
Vaadin and Tori are two different approaches to building applications, each with its unique advantages. Vaadin, a JVM-based framework, allows for the development of web UIs without writing HTML, JavaScript, or CSS. Tori, a Rust-based framework, offers a multi-platform solution with a separate back end in Rust and client side in standard web technologies. This design provides a secure and optimized application, while still allowing for interaction between the client and back end via a specific JS module. One of the strengths of Tori is its getting started experience. The documentation is comprehensive, and the quick start guide allows new users to create their first app in a matter of minutes. The feedback loop is also a significant factor in the developer experience, with changes yielding quick results. However, Tori's binding mechanism, based on strings, may be considered a drawback for some developers. Additionally, the need to learn Rust for the back end may be a barrier for those not already familiar with the language. Ultimately, the choice between Vaadin and Tori depends on individual preferences and project requirements. Vaadin's ease of use and lack of need for HTML, JavaScript, and CSS knowledge make it an attractive option for those who want to focus on application logic rather than UI development. Tori, on the other hand, offers a more traditional, multi-platform approach with the added security and optimization benefits of Rust.
Tori's limitations for desktop apps: Tori's strict separation between front and back end, requirement for front end knowledge, and use of request response model make it less suitable for simple desktop apps.
Tori, a desktop application development framework, offers comprehensive life cycle management and development tools, but its limitation lies in its strict separation between the front and back end, requiring developers to have knowledge of front end technologies and using a request response model which is less suitable for desktop apps. The ease of use of Tori shines through its ability to automatically reload the app when the front end changes and manage the entire development process from debugging to distribution. However, this convenience comes with a downside as both the app and UI state are lost when the app restarts. Despite these strengths, Tori's limitations became apparent when attempting to create a simple file renamer app. The lack of access to regular JavaScript file related APIs and the need to explicitly configure file system paths at build time proved to be frustrating. The biggest issue with Tori, however, is its design. While Vaadin simplifies front end management, Tori takes the opposite approach, requiring developers to have knowledge of front end technologies. Additionally, its use of the request response model, which is more suited to web development, is a regression in the context of desktop apps. In conclusion, Tori is a solid choice for organizations and developers who prefer web technologies. However, for those looking to create simple desktop apps without having to learn intricacies of front end development, Tori may not be the best fit.