
Andy Andrea
Lead Software Developer at Panorama Education
Durham, North Carolina, United States
Actions
Andy Andrea has a decade of experience working as a Ruby developer and is currently part of the engineering team at Panorama Education.
He's spent a large portion of his time in the industry acting as both a mentee and mentor including volunteering in the RailsConf scholar program as a guide and as a mentor for several different non-profits. He's also constantly thinking about ways to improve code clarity, maintainability and documentation as well as knowledge sharing across teams and individuals.
---
I've spoken at RailsConf 2022, 2023 and 2024. See the videos on the Ruby Central YouTube channel, and see my CFPs at Speakerline at https://speakerline.io/speakers/152.
Area of Expertise
Topics
Off the Rails: Validating non-model classes with…ActiveModel?
Have you ever wished you could run Rails validators to check that a Hash, Struct or Data instance is properly formatted? Have you ever wanted to be able to compose complex validation logic on the fly rather than registering them at a class level with complicated conditionals? Did you ever have a use case for a single, generic validation and thought it’d be overkill to create a new ActiveModel class?
In this talk, we'll explore how to build a single class that’ll accept almost any kind of argument and let you register and run both built-in and custom validations against that argument’s key/value pairs and methods. Through test-driven development and examining the source code for ActiveModel validations and ActiveSupport callbacks, we’ll gradually build a robust solution to support custom and built-in validators and their various options like `if` and `allow_blank`.
Whether you want to validate a JSON field in a model, ensure that an incoming API request is properly formatted, check for valid events in an event-sourced application or run a validator against a class from a third-party library without monkey-patching, this talk will help you use some of Rails’ most classic features in a new and powerful way.
This or that? Similar methods & classes in Ruby && Rails
Working with Ruby and Rails affords access to a wealth of convenience, power and productivity. It also gives us a bunch of similar but distinct ways for checking objects' equality, modeling datetimes, checking strings against regular expressions and accomplishing other common tasks. Sometimes, this leads to confusion; other times, we simply pick one option that works and might miss out something that handles a particular use case better.
In this talk, we'll take a look at groups of patterns, classes and methods often seen in Rails code that might seem similar or equivalent at first glance. We’ll see how they differ and look at any pros, cons or edge cases worth considering for each group so that we can make more informed decisions when writing our code.
Building a more effective, bidirectional mentor-mentee relationship
Mentorship is such a key part of our industry that most of us will act as both mentor and mentee many times over the course of our careers. However, unlike our other important skills that get honed through processes like code review or retrospectives, there are often few mechanisms to help us grow as mentors and mentees.
We’ll cover common problems that occur as both a mentee and mentor and cover strategies, skills and concepts for how to deal with them that originate not only from our own experiences but from research in the fields of education, psychology and business. We’ll cover concepts that won’t only build your skills but improve the value you get from being a mentor or mentee and show you how to make an evidence-backed business case for expanding mentorship at your place of work.
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top