Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
The same as you shouldn't work without a contract, our systems should accept external inputs without one, a written, clear and enforceable one. Define the structure & expected payload being aware of their schema, structure & types. Using dry-schema or dry-validation this part is a matter of a few lines of codes covering most of the cases you may find with the cherry-on-top: error handling out-of-the-box and if this not enough with optional pattern matching for results.
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 the talk titled "Never Again Without a Contract: Dry Validation," Espartaco Palma discusses the importance of implementing validation protocols for external inputs in software development, emphasizing the necessity of having clear, enforceable contracts. The presentation covers several key points: - **Introduction and Background**: Espartaco introduces himself and shares a personal anecdote about his own experience with exploitation in the workplace, which led to the lesson of ensuring that work is done under contract agreements. - **What is Dry Validation?**: He defines Dry Validation as akin to JSON Schema but superior in application, highlighting its use in structural validation of input data, particularly for Ruby applications. - **The Significance of Contracts**: Contracts are discussed as essential elements in managing expectations and establishing rules for data validation. While not every interaction requires a contract, they become invaluable in more complex systems. - **Understanding Data Integrity**: The need for robust validation becomes pertinent as applications scale and communicate with external agents. Espartaco stresses the importance of guarding systems against harmful inputs. - **Detailed Examples of Validation Rules**: He provides specific use cases illustrating how validation checks must ensure that data conforms to required formats, including examples such as conditionally required fields. - For instance, he explains how start and end dates must be validated together to maintain logical data integrity. - The practical need for immediate feedback on incorrect input formats is highlighted. - **Community Acknowledgment**: Espartaco acknowledges the support of the Dry RB community and encourages attendees to adopt best practices in their own projects. - **Conclusion**: He concludes with an affirmation that Dry Validation is a formidable tool for managing system boundaries and ensuring data integrity, inviting developers to reconsider their approach to handling validation in their applications. This session emphasizes the intersection of contracts, validation frameworks, and data integrity in the software engineering space, aligning with the core theme of never compromising on clear agreements in technical projects.
Suggest modifications
Cancel