지난 글들
752개의 글이 있습니다
Rails 7의 Error Reporter API 활용: 효율적인 오류 관리를 위한 표준화된 접근 방식
Rails Error Reporter - Rails in Focus
- Rails 7에서 도입된 Error Reporter API는 애플리케이션 내 예외를 추적, 보고, 대응하는 표준화된 방법을 제공합니다.
- 이 API는 기존의 복잡한 오류 처리 방식을 대체하며, `handle`, `record`, `report` 메서드를 통해 유연한 오류 처리를 지원합니다.
- 구독자 객체를 설정하여 오류 정보를 중앙에서 관리하고, 프로덕션 환경에서는 Sentry와 같은 외부 서비스와 연동하여 효율적인 디버깅과 애플리케이션 안정성 향상에 기여합니다.
Ruby on Rails Youtube
2025년 07월 02일
Claude Code Hooks를 활용한 RuboCop 자동 포매팅
Automatic Rubocop Formatting with Claude Code Hooks
- Ruby 프로젝트에서 RuboCop을 자동으로 실행하기 위해 Claude Code Hooks를 활용하는 방법을 제시합니다.
- 기존 Claude의 직접 지시 방식의 비효율성을 개선하여 파일 생성 및 편집 시 RuboCop이 자동 실행되도록 설정합니다.
- 이 설정은 코드 스타일 일관성을 유지하고 개발 시간을 절약하는 데 기여합니다.
The Awesome Ruby
2025년 07월 02일
Rails에서 `shallow: true`를 사용하여 깊게 중첩된 경로 단순화
🧭 Simplifying Deeply Nested Routes in Rails with shallow: true
- Rails에서 깊게 중첩된 라우팅은 복잡한 URL과 컨트롤러 로직을 야기하여 개발 경험을 저해할 수 있습니다.
- `shallow: true` 옵션은 자식 리소스의 `index` 및 `create` 액션만 중첩시키고, 나머지 액션은 자식 리소스 ID를 사용한 최상위 경로로 생성하여 이를 해결합니다.
- 이 방식은 URL을 간결하게 만들고 컨트롤러 로직을 분리하며, RESTful 원칙을 준수하여 애플리케이션의 확장성과 유지보수성을 향상시킵니다.
Ruby Stack News
2025년 07월 02일
2025년 웹 접근성: 유럽 연합 규제 준수 및 구현 전략
Victor Motogna - Web Accessibility by 2025
- 유럽 연합은 2025년 6월 28일부터 웹 및 모바일 앱에 대한 접근성 표준 준수를 의무화하며, 미준수 시 기업에 벌금이 부과될 예정입니다.
- 웹 접근성 구현을 위해 키보드 내비게이션, 스크린 리더 지원(ARIA 역할, alt 텍스트), 명확한 색상 대비와 같은 핵심 요소를 우선적으로 고려해야 합니다.
- Ruby Gem(예: `accessibility`, `accessibility_rails`, RuboCop fork)과 Lighthouse, Wave 같은 도구를 활용하여 웹사이트의 접근성을 테스트하고 개선할 수 있습니다.
Friendly rb
2025년 07월 01일
과도한 생각 멈추고 사이드 프로젝트로 개발자 역량 강화하기
Olly Headey - Stop overthinking and go create things
- 프로그래머의 과도한 생각은 창의성과 생산성을 저해하며, 제한된 시간은 오히려 효과적인 문제 해결을 위한 제약 조건으로 활용될 수 있습니다.
- 사이드 프로젝트는 새로운 기술 학습, 숙련된 장인정신 발휘, 개발 능력 향상, 그리고 취업 경쟁력 강화에 기여하는 강력한 도구입니다.
- Ruby on Rails와 GitHub Copilot 같은 AI 도구의 강력한 조합을 활용하여 아이디어를 빠르게 구현하고, 단순함을 유지하며, 프로젝트를 완수하는 것이 중요합니다.
Friendly rb
2025년 07월 01일
Rails 애플리케이션을 위한 SQLite: 성능 최적화 및 프로덕션 활용 전략
Stephen Margheim - SQLite on Rails: Everything you need to know
- Ruby on Rails 환경에서 SQLite의 성능 병목 현상을 해결하고, 프로덕션 환경에서의 활용 가능성을 극대화하는 방안을 제시합니다.
- `active_record_enhanced_sqlite3_adapter` gem을 통해 SQLite의 고유한 동시성 문제를 해결하고, Rails 8에서 기본 제공될 주요 개선 사항들을 소개합니다.
- Solid Gems (Solid Queue, Cache, Cable, Errors) 및 Lightstream을 활용하여 Rails 핵심 컴포넌트를 SQLite 기반으로 운영하고 데이터 백업 솔루션을 구축하는 방법을 설명합니다.
Friendly rb
2025년 07월 01일
Rails로 웹과 모바일 앱 구축하기: 2024년의 프런트엔드 개발
Hana Harenčárová - Building for web and mobile in 2024
- Rails 애플리케이션을 기반으로 하이브리드 접근 방식을 통해 웹 및 모바일 앱을 효율적으로 구축하고, 단일 코드베이스로 빠른 개발 주기를 달성할 수 있습니다.
- 네이티브 모바일 알림(Firebase Messaging)과 브라우저 푸시 알림(Service Worker, Web Push Gem)을 모두 구현하여 사용자 요구사항을 충족하는 다양한 알림 전략을 소개합니다.
- Hotwire, Stimulus 등 Rails 생태계의 도구들을 활용하여 대화형 웹 경험을 제공하고, 앱 스토어 배포 및 업데이트 과정을 최적화하는 실용적인 팁을 공유합니다.
Friendly rb
2025년 07월 01일
Stripe의 대규모 Ruby 시스템 운영: 개발자의 하루와 확장 전략
James Carr - A day in the life of 2,000 developers
- Stripe는 150만 개 이상의 Ruby 테스트와 2,500만 라인 이상의 코드를 가진 대규모 모노레포 환경에서 Sorbet 타입 체커, 스마트 테스트 선택, 자동화된 배포 시스템을 통해 개발 생산성과 안정성을 극대화합니다.
- 테스트 시간을 99.5% 단축하는 변경 영향도 기반 테스트 선택 시스템과 통합 브랜치 전략으로 CI/CD 효율성을 높이고, Ruby 3.3 및 YJIT 도입으로 25%의 CPU 성능 향상을 달성했습니다.
- 개발자의 '슬픔'을 제거하는 것을 목표로 정적 분석, QA 환경, 블루/그린 배포 및 트래픽 전환 등 다층적인 방어 체계를 구축하여 프로덕션 배포의 안정성과 속도를 확보합니다.
Friendly rb
2025년 07월 01일
루비에서 문자열 인코딩의 깊은 이해: 유니코드, UTF-8, 그리고 실제 문제 해결
Rosa Gutierrez - Invalid byte sequence in UTF-8
- 컴퓨터는 바이트만 이해하며, 문자열은 올바른 인코딩 정보 없이는 의미를 가질 수 없습니다.
- 유니코드(Unicode)와 UTF-8은 다양한 언어와 이모지를 표현하기 위한 표준이며, Ruby는 문자열과 인코딩을 함께 관리합니다.
- Ruby의 encode, force_encoding, scrub, unicode_normalize 등의 메서드를 활용하여 인코딩 관련 버그를 효과적으로 해결할 수 있습니다.
Friendly rb
2025년 07월 01일
Dragon Ruby를 활용한 Ruby 게임 개발: 웹을 넘어 게임의 세계로
Julian Cheal - Make a Massively Multiplayer Ruby Game with Dragon Ruby
- Dragon Ruby는 Ruby 개발자들이 익숙한 Ruby 언어로 2D 게임을 개발할 수 있도록 지원하는 전문 게임 엔진입니다.
- 이 엔진은 Windows, Mac, Linux, 웹, 주요 게임 콘솔 및 모바일 등 광범위한 플랫폼에 배포 가능하며, 실시간 코드 변경 반영(Live Reloading) 기능을 제공하여 신속한 개발을 가능하게 합니다.
- 강연자는 간단한 캐릭터 움직임부터 맵 통합, 충돌 감지, 애니메이션, 그리고 다중 사용자 게임 시도까지 Dragon Ruby를 활용한 다양한 게임 개발 과정을 시연하며 그 잠재력을 보여주었습니다.
Friendly rb
2025년 07월 01일
Rails 프론트엔드: 십계명과 일곱 가지 대죄
Yaroslav Shmarov - Rails frontend: 10 commandments and 7 deadly sins in 2025
- Rails 7/8 환경에서 프론트엔드 개발의 모범 사례와 피해야 할 함정들을 '십계명과 일곱 가지 대죄'에 비유하여 설명하며, 효율적인 개발 전략을 제시합니다.
- 반응형 레이아웃 디자인, View Components 및 Stimulus를 활용한 UI 요소 구현, Hotwire(Turbo Drive, Frames, Streams)의 올바른 사용법 등 실용적인 가이드를 제공합니다.
- 모든 권장 사항을 맹목적으로 따르기보다 프로젝트의 특성에 맞춰 최적의 솔루션을 선택하고, 불필요한 복잡성(예: 다크 모드 이중 구현)을 피할 것을 강조합니다.
Friendly rb
2025년 07월 01일
Ruby on Rails: 대규모 애플리케이션 확장성 및 개발 효율성 심층 분석
Ruby at Scale
- Ruby on Rails는 GitHub, Zendesk, Shopify 등 실제 대규모 서비스에서 성공적으로 확장되고 있으며, 기술적 성능과 개발 생산성 모두에서 강점을 보입니다.
- 성능 최적화는 모니터링을 통한 병목 지점 식별(DB 접근, 캐싱)과 YJIT, RuboCop Performance Gem 활용 등 실용적인 접근 방식이 중요하며, Ruby VM은 지속적으로 개선되고 있습니다.
- 대규모 팀 환경에서는 Code Owners, Packwerk, Feature Flags, 자동화된 테스트, 리팩토링 문화가 효과적인 협업과 빠른 기능 배포를 가능하게 합니다.
Friendly rb
2025년 07월 01일
피보나치 펀하우스: 루비로 풀어보는 알고리즘 최적화
Kyle d'Oliveira - Fibonacci Funhouse
- 루비의 다양한 피보나치 수열 계산 알고리즘(재귀, 베넷 공식, 행렬 거듭제곱, 빠른 배가)과 성능 최적화 기법을 심층 분석합니다.
- BigDecimal, Rational, 꼬리 재귀 최적화, 비트 연산, Hash의 default_proc 등 루비의 강력한 내장 기능을 활용하여 계산 효율성을 극대화하는 방법을 제시합니다.
- 단순 재귀 방식의 비효율성부터 10억 번째 피보나치 수를 10초 만에 계산하는 '빠른 배가' 알고리즘까지, 루비의 계산 성능 한계를 확장하는 과정을 보여줍니다.
Friendly rb
2025년 07월 01일
8초의 악몽: 쿼리 최적화를 통한 99.9% 지연 시간 감소 사례
Nabeelah Yousuph - The 8-Second Nightmare: How One Change Reduced Latency by 99.9%
- 프로덕션 시스템에서 8초 이상 소요되던 지연 쿼리를 `EXPLAIN` 및 `EXPLAIN ANALYZE`를 활용하여 심층 분석했습니다.
- 복합 인덱스 규칙 미준수와 불필요하게 많은 레코드 스캔이 성능 저하의 주원인임을 식별했습니다.
- employee_id를 기준으로 attendant_shift 테이블을 먼저 필터링하는 한 줄의 코드 변경으로 쿼리 지연 시간을 99.9% 단축했습니다.
Friendly rb
2025년 07월 01일
매스 최적화와 비전 설정을 통한 Ruby on Rails SaaS 제품 개발 및 성장 전략
Tom Rossi - SaaS Lessons Learned
- 불필요한 기능과 복잡성을 최소화하여 개발 및 운영의 민첩성을 극대화하는 '매스 최적화' 전략을 강조합니다.
- 미래 예측 대신 실험과 고객 피드백을 통해 제품을 점진적으로 발전시키며, 첫 릴리스의 불편함을 수용하는 자세가 중요하다고 역설합니다.
- 성공을 명확히 정의하고, 행복을 극대화하며, 마케팅 및 고객 지원과 같은 소프트웨어 외적 요소의 중요성을 인지하여 비즈니스 비전을 확립해야 합니다.
Friendly rb
2025년 07월 01일