지난 글들
752개의 글이 있습니다
Hotwire 앱에서 자체 업데이트 컴포넌트 구현 전략
Hotwire components that refresh themselves | Boring Rails: Skip the bullshit and ship fast
- Hotwire 기반 애플리케이션에서 UI 업데이트 시 발생하는 파셜 및 식별자 관리의 복잡성을 개선하는 패턴을 제시합니다.
- ViewComponent를 활용하여 컴포넌트가 자체적으로 UI 갱신 로직을 포함하도록 하여 코드의 응집도를 높이는 방법을 소개합니다.
- 컴포넌트 내부에 `dom_id`와 ActionCable 브로드캐스트 채널을 캡슐화하여 유지보수성과 재사용성을 향상시킵니다.
The Awesome Ruby
2025년 07월 07일
RailsConf 2025 Hotwire Native 워크숍 및 저자 만남 안내
Hotwire Native at RailsConf | Masilotti.com
- RailsConf 2025에서 Hotwire Native 워크숍이 수요일 오전 10시 15분에 개최되며, Swift/Kotlin 경험 없이 iOS 및 Android 앱 구축을 실습합니다.
- 본 워크숍은 Rails 코드베이스 변경만으로 세 플랫폼(iOS, Android, 웹)에 동시 업데이트를 가능하게 하는 Hotwire Native의 핵심 원리와 실용적인 팁을 다룹니다.
- 워크숍 당일 오후 3시에는 'Meet the Authors' 세션에서 저서 'Hotwire Native for Rails Developers'에 대한 정보, 할인 코드, 도서 증정 이벤트가 진행됩니다.
Hotwire Weekly
2025년 07월 07일
Ruby의 zip 메서드: 우아한 배열 병합의 용이성
🔗 Ruby’s zip: Elegant Array Merging Made Easy
- Ruby의 `zip` 메서드는 여러 배열을 인덱스별로 효율적으로 결합하여 데이터를 우아하게 변환합니다.
- 이 메서드는 배열의 길이가 달라도 유연하게 처리하며, `nil` 값을 사용하여 길이를 맞춥니다.
- 배열을 해시로 변환하거나 요소별 계산을 수행하는 등 다양하고 실용적인 데이터 처리 시나리오에 활용됩니다.
Ruby Stack News
2025년 07월 07일
Stimulus와 TomSelect를 활용한 동적 종속 선택 박스 구현
Dependent Select | Drifting Ruby
- Stimulus와 TomSelect를 사용하여 웹 애플리케이션에서 동적 종속 선택 박스를 효율적으로 구현합니다.
- 상위 선택 박스의 값 변경 시 AJAX 요청을 통해 하위 선택 박스의 옵션을 실시간으로 업데이트합니다.
- Rails 컨트롤러는 필터링된 데이터를 JSON 형태로 제공하며, Stimulus 컨트롤러가 이를 받아 UI를 동적으로 조작합니다.
Hotwire Weekly
2025년 07월 06일
Rails Conf 2024와 Ruby Central 오픈 소스 프로그램: 회고와 미래
Ruby Talks: Marty Haught on 20 Years of RailsConf Memories & Leading the Open Source Program
- Ruby Central의 오픈 소스 디렉터 마티 호크는 마지막 Rails Conf 2024에서 패널로 참여하며 컨퍼런스의 과거, 현재, 미래에 대한 통찰을 공유합니다.
- RubyGems 팀은 Rails Conf에서 rubygeems.org의 개발 역사와 보안, 확장성 문제를 다룬 발표를 진행하며, 이는 신규 개발자들에게 중요한 맥락을 제공할 것입니다.
- Ruby Central의 오픈 소스 프로그램은 RubyGems, Bundler 등 핵심 인프라를 유지 관리하며, 미래에는 영향력 있는 오픈 소스 프로젝트 지원 및 차세대 개발자 양성으로 확장될 계획입니다.
Ruby Central
2025년 07월 05일
Hotwire Combobox를 활용한 다중 선택 구현
Multi Select with Hotwire Combobox | Hans Schnedlitz
- Hotwire Combobox를 사용하여 Ruby on Rails 애플리케이션에서 다중 선택 및 자동 완성 기능을 효율적으로 구현하는 방법을 설명합니다.
- 기존 스피커 선택 외에 자유 텍스트 입력으로 새로운 스피커를 추가하고, 최종 YAML에 스피커 이름만 반영하도록 값을 제어하는 방법을 다룹니다.
- Hotwire Combobox의 제한된 문서에도 불구하고 소스 코드 예제를 통해 다중 선택, 자유 텍스트 입력 및 값 매핑 기능을 성공적으로 통합했습니다.
Hotwire Weekly
2025년 07월 05일
Ruby 3.4 Frozen String Literals: Rails 개발자가 알아야 할 사항
Ruby 3.4 Frozen String Literals: What Rails Developers Actually Need to Know | Prateek Codes - Learn Building Scalable Backend Systems
- Ruby 3.4는 문자열 리터럴의 불변성(frozen) 기본값 전환을 위한 첫 단계로, 선택적 경고를 도입합니다.
- 기존 Rails 앱은 기본적으로 변경 없이 작동하지만, 경고를 활성화하여 성능 향상 및 미래 호환성 문제를 미리 파악할 수 있습니다.
- 성능 최적화와 잠재적 호환성 문제를 해결하기 위해 점진적으로 코드 수정을 준비하는 것이 중요합니다.
The Awesome Ruby
2025년 07월 05일
Rails 애플리케이션에서 Vite, Ruby, Inertia를 활용한 SSR(서버 사이드 렌더링) 설정 가이드
SSR / Server Side Rendering with Inertia Rails
- Rails 애플리케이션에서 Vite, Ruby, Inertia.js를 사용하여 SSR을 설정하는 과정을 상세히 설명합니다.
- SSR의 주요 이점인 SEO 최적화 및 JavaScript 비활성화 환경에서의 애플리케이션 동작 보장을 강조합니다.
- 설정 과정 중 발생할 수 있는 일반적인 문제점(예: 파일 확장자, 설정 오류)과 효과적인 디버깅 방법을 제시합니다.
Hotwire Weekly
2025년 07월 04일
Remote Ruby: Rails 업데이트, Ruby Gem의 진화, 모듈화 및 LLM의 영향
Conferences, Hotwire Native updates, and a surprise guest!
- Ruby Gems가 Python-style wheels와 보안 강화된 사전 컴파일 바이너리 형태로 진화하는 경향을 논의했습니다.
- Rails 애플리케이션에서 네임스페이스와 모듈화의 중요성 및 유지보수성 향상 방안을 분석했습니다.
- LLM이 솔로 개발자에게 미치는 영향과 접근성, QA, 컴포넌트 아키텍처 등 최신 개발 동향을 고찰했습니다.
Hotwire Weekly
2025년 07월 04일
Ruby의 해시 변환: index_by vs index_with
🧠 Hash Transformations in Ruby: index_by vs index_with
- Ruby의 `index_by`와 `index_with` 메서드는 배열을 해시로 변환하는 강력하고 가독성 높은 방법을 제공합니다.
- `index_by`는 컬렉션의 특정 속성을 키로 사용하여 해시를 생성하며, 주로 빠른 조회 테이블을 만들 때 유용합니다.
- `index_with`는 기존 키에 값을 할당하여 해시를 구축하며, 다양한 데이터 변환 및 통계 계산 시 활용됩니다.
Ruby Stack News
2025년 07월 04일
Rails 업데이트: Deprecated Associations, 개선된 백트레이스, 그리고 더 스마트한 기본 설정
Deprecating Associations, Cleaner Backtraces, and Smarter Defaults
- Active Record에 연관 관계를 deprecated로 표시하고 사용을 보고하는 기능이 추가되었습니다.
- 새로운 Rails 애플리케이션 생성 시 브라우저 차단 기본 설정이 `importmap-rails` 사용 여부에 따라 조건부로 적용되도록 변경되었습니다.
- `ActiveSupport::BacktraceCleaner`에 `Thread::Backtrace::Location` 객체 배열을 정리하는 `clean_locations` 메서드가 도입되어 백트레이스 관리가 용이해졌습니다.
This Week in Rails
2025년 07월 04일
Stimulus를 이용한 뷰포트 외부 YouTube 비디오 자동 일시정지 구현
Auto-pause YouTube Videos with Stimulus | Rails Designer
- Stimulus와 Intersection Observer API를 활용하여 뷰포트 외부의 YouTube 비디오를 자동으로 일시정지하고, 다시 뷰포트 내로 들어오면 재생하는 기능을 구현합니다.
- YouTube iframe API의 복잡성(API 로딩, 플레이어 상태 관리 등)을 처리하며, `enablejsapi=1` 설정을 통해 JavaScript 제어 기능을 활성화합니다.
- 이 컨트롤러는 HTML5 비디오 컨트롤러와 동일한 핵심 기능을 제공하면서 YouTube API의 특성을 효과적으로 통합합니다.
Hotwire Weekly
2025년 07월 03일
Ruby의 검색 전략에 대한 탐구
El que busca, encuentra: A Survey of Search Strategies in Ruby
- 본 문서는 Ruby 프로그래밍 언어에서 제공하는 다양한 검색 전략과 메서드를 포괄적으로 탐구합니다.
- Ruby는 선형 검색, 인덱스 기반 검색, 이진 검색, 해시 전용 조회 등 상황에 맞는 유연하고 표현적인 검색 도구를 제공합니다.
- Ruby의 검색 메서드는 명확하고 의도적인 프로그래밍 스타일을 가능하게 하며, 개발자가 효율적으로 정보를 찾을 수 있도록 돕는다는 철학을 담고 있습니다.
Ruby Stack News
2025년 07월 03일
Ruby LSP: Rails 개발 생산성을 극대화하는 VS Code 확장 프로그램
Ruby LSP - Rails in Focus
- Ruby LSP는 Ruby 및 Rails 개발자를 위한 VS Code 확장 프로그램으로, 개발 생산성을 크게 향상시킵니다.
- 모델 스키마 확인, 코드 정의 및 경로 탐색, 테스트 실행 등 다양한 고급 기능을 제공하여 효율적인 개발 환경을 구축합니다.
- Ruby LSP는 Rails 애드온을 기본 포함하고 있어, Rails 프로젝트에 최적화된 강력한 코드 인텔리전스 기능을 제공합니다.
Ruby on Rails Youtube
2025년 07월 02일
Rails Concerns: 코드 재사용 및 애플리케이션 구조화
Concerns - Rails in Focus
- Rails Concerns는 코드 재사용성을 높이고 애플리케이션을 깔끔하게 유지하기 위한 효과적인 방법입니다.
- 이는 ActiveSupport::Concern을 확장한 모듈로, DRY(Don't Repeat Yourself) 및 SRP(Single Responsibility Principle) 원칙을 지원합니다.
- 인증, 분류, 로깅 등 다양한 공통 기능을 여러 모델이나 컨트롤러에서 공유할 때 유용하지만, 과도한 사용은 코드 복잡성을 증가시킬 수 있으므로 신중해야 합니다.
Ruby on Rails Youtube
2025년 07월 02일