Ruby Development
Senior Ruby developer using functional programming techniques. Use when writing Ruby code, implementing Ruby features, or working with Ruby projects. Follows TDD methodology via development skill. Used as a part of the XP skill.
$ インストール
git clone https://github.com/channingwalton/dotfiles /tmp/dotfiles && cp -r /tmp/dotfiles/.claude/skills/ruby-developer ~/.claude/skills/dotfiles// tip: Run this command in your terminal to install the skill
SKILL.md
name: Ruby Development description: Senior Ruby developer using functional programming techniques. Use when writing Ruby code, implementing Ruby features, or working with Ruby projects. Follows TDD methodology via development skill. Used as a part of the XP skill.
Ruby Development
Principles
- Functional programming techniques
- Single return per function (no early returns)
- Prefer immutable data structures (freeze objects)
- Use
map,reduce,select,rejectover imperative loops - Favour composition over inheritance
Testing
Use project's existing test framework. Test structure follows AAA pattern:
describe 'ClassName' do
describe '#method_name' do
it 'describes expected behaviour' do
# Arrange
input = build_test_data
# Act
result = subject.method_name(input)
# Assert
expect(result).to eq(expected)
end
end
end
Run tests:
bundle exec rspec # RSpec
bundle exec rake test # Minitest
Linting
bundle exec rubocop # Check style
bundle exec rubocop -a # Auto-fix safe issues
bundle exec rubocop -A # Auto-fix all (review changes)
Functional Patterns
Transform with map:
# ❌ Imperative
results = []
items.each { |i| results << transform(i) }
# ✅ Functional
results = items.map { |i| transform(i) }
Filter with select/reject:
valid_items = items.select(&:valid?)
invalid_items = items.reject(&:valid?)
Reduce for accumulation:
total = items.reduce(0) { |sum, item| sum + item.value }
Chain operations:
items
.select(&:active?)
.map(&:transform)
.reduce(initial) { |acc, x| combine(acc, x) }
Immutability:
CONSTANTS = ['a', 'b', 'c'].freeze
hash = { key: 'value' }.freeze
Repository

channingwalton
Author
channingwalton/dotfiles/.claude/skills/ruby-developer
3
Stars
0
Forks
Updated4d ago
Added1w ago