Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Thoughtful AI for the Rubyist

Avatar for Christine Christine
September 29, 2025
21

Thoughtful AI for the Rubyist

As a Rubyist, you like to put intention into your code for a clear, readable, and inviting result, just like our MINASWAN community…so how can we bring that to AI? How can we get that intention while leveraging AI tools to create our Ruby solutions? Let's have a frank discussion about what can and can't help us with our coding and how, in the end, we have a better solution that allows us to work faster without losing that special spark that Ruby can have. This talk will discuss AI coding tools and prompts with purpose. The AI solution isn't always idiomatic ruby, so you know better what works for your codebase than the robots.

Avatar for Christine

Christine

September 29, 2025
Tweet

Transcript

  1. You love Ruby because it is a delight to program

    in. But AI feels... different. The people will all see its light
  2. Ruby's Community Core Values: MINASWAN • Matz is Nice And

    So We Are Nice • Developer happiness • Readability • Expressiveness
  3. What the Ruby Community Says • Ruby developers are split

    on AI • AI often generates code that works but doesn't feel idiomatic • Real concern about "use it or lose it" with fundamental skills • Most used for tests, but tests often need complete rewrite
  4. "Don't bring a forklift to the gym. Human skills are

    use it or lose it.” — Individual contributor , 11+ years experience "My biggest concern is that dependency on LLM tooling creates an indentured class of developers, who are then at the whim of whatever premiums these companies decide to charge." - Developer comparing AI dependency to calculator use
  5. What if we could have both? Working faster while building

    deeper knowledge AI that enhances our craftsmanship rather than replacing it The Ruby community collaborative spirit applied to human-AI partnership The Priests praise my name on this night.
  6. The people will all see its light DISCOVERY ✅ →

    CONFLICT → RESOLUTION ↓ ↓ ↓ 🎸 ⛪ 🔮
  7. Where AI Excels with Ruby ✅ ✅ 🥳✅🥳 ✅ Code

    generation Refactoring Documentation Testing ✅ Git Commits ⛪ Yes, we know
  8. Where AI Struggles 🫣 😩 🫤 👎 Metaprogramming Ruby idioms/style

    Rails conventions Blocks and iterators ⛪ It’s nothing new
  9. Prompting with Purpose Before: "Write a method to get users"

    ❌ Ineffective (Vague) After: "You are a senior Ruby developer following the Ruby Style Guide. Context: Rails 7.1 application Task: Write a method to find a user by ID Requirements: - Follow Rails conventions - Use idiomatic Ruby patterns - Avoid explicit nil checks - Handle missing user gracefully" ✅ Effective (Specific Context ⛪ Our world is doing fine
  10. Prompting with Purpose ❌ Ineffective: Write a commit message ✅

    Effective (Convention + Context): Generate a conventional commit message: Context: User authentication Changes: Added password reset validation, fixed token expiration bug, added RSpec tests Format: <type>(<scope>): <subject> Use imperative mood, 50 chars max ⛪
  11. Advanced Prompting ⛓ Chain-of-thought: "Explain your reasoning step-by-step" 📏 Constraint-based:

    "Refactor this method to make it 5 lines or less" ❓Error analysis: "Spot potential errors in this code" ✅ Verification Prompting: "Does this feel Ruby-like?" ⚠ Avoid Negative Instructions 🐣 Beginner-friendly: "Explain this concept like I'm a beginner" ⛪
  12. The Hidden Cost - Context Switching 🧠 Human limitation: We

    can only truly focus on one thing at a time 🧐 AI creates context switching: Jumping between writing code and evaluating AI suggestions 󰷻 The cost: Each switch takes 15-25 minutes to regain deep focus 🧠 Research backing: 20% of cognitive capacity lost during context switches (PMC Research 2023) 🧐 Brain imaging: fMRI shows frontal and parietal lobes respond to unexpected task switching (Wake Forest 2024) ⛪
  13. Survey Dependency Concerns Fear of becoming "indentured" to expensive AI

    tools Don't bring a forklift to the gym. Human skills are 'use it or lose it. Brain-task-based skills can be very 'use it or lose it'. The difference between using basic autocomplete and having an LLM generate entire blocks or even files, is significant. ⛪ Concern about junior developers not learning fundamentals
  14. Automation Bias - Don't Lose Yourself ⛪ • Automation bias:

    Tendency to assume computers know more than humans • The Ruby perspective: AI doesn't understand Ruby's philosophy or your codebase • Healthy skepticism: Your instincts and knowledge matter more than AI confidence • Research backing: Professional experience and domain expertise are most protective factors against automation bias You're the Ruby expert, AI is just a tool
  15. The dream is still in my head… DISCOVERY ✅ →

    CONFLICT ✅ → RESOLUTION ↓ ↓ ↓ 🎸 ⛪ 🔮
  16. From discovery to understanding 💎 We've seen what AI can

    do (and can't do) 💎 We've learned how to prompt thoughtfully 💎 We've explored the partnership model AI as tool, not replacement Not fade like all my dreams
  17. "In a world of abundant cheap code, what becomes scarce:

    Understanding. Judgment. The wisdom to know what not to build" - Kent Beck "Any fool can write code that a computer can understand. Good programmers write code that humans can understand" - Sandi Metz "AI is going to be more valuable in helping programmers understanding existing code rather than generating new code" - Martin Fowler Just think of what my life might be
  18. When to Use AI 👍 ✅ Rails generator-style boilerplate ✅

    Basic CRUD operations and controllers ✅ RSpec test skeletons ✅ Migration file generation ✅ Simple refactoring (rename methods, extract variables) ✅ YARD documentation comments ✅ Git commit messages: Transform "fix stuff" → "Fix user authentication bug in SessionsController:42" In a world like I have seen
  19. Beware the path you take 🚫 🤖 ❌ Complex metaprogramming

    and method_missing ❌ Security-sensitive authentication logic ❌ Performance-critical optimizations ❌ Gem architecture decisions ❌ Advanced ActiveRecord relationships ❌ Custom DSL design (leave that to the humans!)
  20. Community-derived wisdom for AI usage 🗣 "Let it rough draft,

    and you refine. If it doesn't get it right on the first or second try, don't get frustrated, just dip into the code and do it yourself." 🗣 "Never assume the LLM is right, challenge everything they tell you." 🗣 "Don't try to replace your brain with it, rather ask, how can I augment my abilities with it." 🗣 "Narrow the scope of the task and be specific - give the AI tool bite-sized, well-defined tasks with clear guardrails."
  21. How to use AI without losing Ruby's essence Human-centered design

    󰰧󰰤󰰚 Developer happiness over efficiency 🥳 Readability over cleverness 📖 "Ruby is the most 'human' language I know: written for humans, with interesting human foibles, reads like human language" — Sean Goedecke Attention all planets…
  22. We shape how AI develops • Share your experiences (good

    and bad) • Mentor thoughtful usage • Contribute to Ruby-specific AI tools
  23. — Rich Steinmetz The whole midterm future of the 'AI

    coding thing' is us collaborating with the IDE/editor
  24. Key Takeaways - The Resolution Your expertise guides Trust your

    instincts Share knowledge freely AI is a tool, not a replacement Does this feel Ruby-like? Community matters
  25. We have assumed control... DISCOVERY ✅ → CONFLICT ✅ →

    RESOLUTION✅ ↓ ↓ ↓ 🎸 ⛪ 🔮
  26. Our Complete Journey ✅ Discovery: Found AI tools and faced

    our fears ✅ Conflict: Explored capabilities, limits, and learned thoughtful use ✅ Resolution: Found wisdom in community and choose our path "We have assumed control..." but this time, WE control how AI serves Ruby, not the other way around
  27. CREDITS: This presentation template was created by Slidesgo, and includes

    icons by Flaticon, and infographics & images by Freepik Thanks! What questions can I answer? christine-seeman.com github.com/cseeman/thoughtful-ai
  28. References and Further Reading Thank you Rush, rush.com/songs/2112/, and RIP

    Neil Peart Full Reference can be found at: github.com/cseeman/thoughtful-ai/blob/main/resources/community-resources.md