Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Tim Riley /Veni, vidi, view-ci/ – I came, I saw, I left the views in a mess. With server-rendered HTML still delivering most of the web, our views deserve more than a grab bag of helpers. Come along and learn the tools and techniques to conquer the design challenges that a complex view layer presents. Tim Riley is a partner at Australian design agency Icelab, and a core developer of dry-rb and rom-rb. He’s excited by small libraries, first-class functions, and pushing forward web app development with Ruby. #ruby #rubyconf #rubyconfau #programming
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In his talk "Views, From The Top" at RubyConf AU 2019, Tim Riley addresses the complexity and challenges associated with server-rendered views in web applications. He advocates for a refreshed approach to building views, highlighting that current methodologies are outdated and lead to messy, hard-to-manage code. Key points discussed include: - **Outdated View Practices**: Riley points out that server-rendered views have not significantly evolved since the initial release of Rails, suggesting that both Ruby developers and front-end developers often struggle with messy implementations. - **The Need for a New System**: He criticizes the mixed responsibilities present in the current MVC architecture, where views and controllers become tangled, resulting in less maintainable code. - **Introducing Drive View**: He proposes a new gem called 'Drive View' to address these shortcomings, emphasizing the creation of objects for views that inject dependencies, which helps manage logic in a clearer and more modular way. - **Design Principles**: A core principle is to separate concerns by creating distinct components: views, parts, scopes, and contexts. Each component serves a specific function while promoting clear flowing data and reducing clutter in templates. - **Dependency Injection**: By allowing views to have dependencies injected, Riley demonstrates how to streamline the rendering of articles in a more organized manner, enabling separation of HTML markup and application logic. - **Encapsulation and Testing**: He highlights the immutability of the created objects, which makes unit testing simpler and ensures the ease of revisiting code later, asserting that improved object-oriented design can significantly enhance code quality. - **Broader Implications for the Ruby Community**: The talk concludes by recognizing that improving view structures is not only beneficial for individual developers but also contributes positively to the wider Ruby ecosystem by encouraging new ideas and diversity within web frameworks. In summary, Riley motivates developers to rethink how they construct views to ensure clearer, more maintainable, and testable code, positioning "Drive View" as a foundational tool for this evolution in Ruby web app development.
Suggest modifications
Cancel