지난 글들
744개의 글이 있습니다
이번 주 Rails 소식: 스키마 덤퍼 컬럼 정렬, 기능 개선 및 다양한 버그 수정
Sorted Columns in Schema Dumper, Deprecations, and lots of fixes!
- 이번 주 Rails 업데이트는 `schema.rb` 파일 내 테이블 컬럼의 알파벳 정렬, 콘솔 프롬프트 색상화 개선, 그리고 템플릿 렌더링 및 레이아웃에서의 버그 수정 등 다양한 개선사항을 포함합니다.
- 특히 `app:update` 명령어 실행 문제, `ArgumentError` 역추적 문제, 그리고 `Active Storage` 플러그인 로딩 방식의 변경과 관련된 중요한 수정이 이루어졌습니다.
- 오래된 Ruby 1.8 시대의 유물인 `String#mb_chars` 및 `ActiveSupport::Configurable` 등 일부 API가 더 이상 내부적으로 사용되지 않아 폐기(deprecated)되었습니다.
Ruby on Rails 소식지
2025년 01월 10일
Rails 최신 업데이트: 스키마 덤퍼 정렬, 개선된 오류 처리 및 CI 템플릿 업데이트
Sorted Columns in Schema Dumper, Deprecations, and lots of fixes!
- Rails 프레임워크의 최신 업데이트는 개발자 경험 개선과 안정성 향상에 중점을 둡니다.
- 스키마 덤퍼의 컬럼 정렬, 오류 백트레이스 개선, 그리고 Active Storage 플러그인 로딩 방식 변경 등이 주요 내용입니다.
- CI 템플릿에 RAILS_MASTER_KEY 플레이스홀더가 추가되어 CI/CD 환경 설정 유연성이 증대되었습니다.
This Week in Rails
2025년 01월 10일
Sidekiq에서 Solid Queue로 마이그레이션하기
Migrating from Sidekiq to Solid Queue - Donn Felker
- 이 문서는 이메일 마케팅 플랫폼 Listomo를 Sidekiq에서 Solid Queue로 마이그레이션한 과정을 상세히 설명합니다.
- 마이그레이션은 Solid Queue 설치, 코드 변경, 테스트 업데이트 및 배포 구성을 포함하는 체계적인 단계를 따릅니다.
- Solid Queue는 데이터베이스 기반의 백그라운드 작업 처리 시스템으로, 기존 Sidekiq 기반 시스템의 확장성과 관리 용이성을 개선하는 데 기여합니다.
Ruby on Rails 소식지
2025년 01월 08일
데이비드 하이네마이어 핸슨의 몰입, 일, 그리고 삶의 철학
How I Built A $30M Business Without A VC | David Heinemeier Hansson
- 데이비드 하이네마이어 핸슨(DHH)은 프로그래밍, 글쓰기, 레이싱 등 몰입 상태를 통해 삶의 즐거움을 극대화하는 것을 강조합니다.
- 그는 현대 기업 문화가 몰입을 방해한다고 비판하며, 40시간 근무, 원격 근무, 파트타임 매니저십을 통한 효율적인 업무 방식을 제안합니다.
- 부를 추구하는 과정에서 물질적 소유보다 개인의 자유와 만족을 중시하며, 끊임없는 학습과 성장을 통해 삶의 버그를 수정하는 것을 중요하게 생각합니다.
Ruby on Rails 소식지
2025년 01월 06일
Stimulus 컨트롤러를 활용한 스티키 요소 고정 상태 감지
From Sticky to Pinned: A Stimulus Controller Approach
- CSS `position: sticky` 요소의 고정(stuck) 및 해제(unstuck) 상태 전환을 `IntersectionObserver` API와 Stimulus 컨트롤러로 정밀하게 감지하는 방법을 제시합니다.
- `rootMargin: '-1px 0px 0px 0px'` 설정을 통해 스티키 요소가 뷰포트 상단에 닿는 순간을 정확히 포착하여 동적인 사용자 인터페이스를 구현할 수 있습니다.
- 이 솔루션은 요소의 상태 변화에 따라 동적으로 스타일을 적용하고, 애니메이션을 트리거하며, 분석 이벤트를 추적하는 등 다양한 확장 가능성을 제공합니다.
DotRuby
2025년 01월 03일
Rails 주간 소식: 스키마 덤퍼 버전 포매터 및 기타 업데이트
Schema dumper versions formatter and more
- Rails는 스키마 덤퍼의 버전 정보 포매팅 방식을 사용자 정의할 수 있는 기능을 도입했습니다.
- 이 새로운 기능은 `structure.sql` 파일 내 버전 정렬 방식을 변경하여 대규모 팀의 병합 충돌을 줄이는 데 기여합니다.
- 이제 버전 정보를 해시 값 등으로 정렬하는 사용자 정의 로직을 통해 개발 효율성을 높일 수 있습니다.
This Week in Rails
2025년 01월 03일
이번 주 Rails 소식
Schema dumper versions formatter and more
- Rails 스키마 덤퍼에 버전 포맷터 기능이 추가되어 병합 충돌을 줄일 수 있게 되었습니다.
- rail_inspector가 Ruby 3.4의 기본 파서인 Prism으로 전환되어 파싱 효율성이 개선되었습니다.
- path_params 처리 개선 및 to_time_preserves_timezone 설정 오류 수정 등 다양한 개선사항이 적용되었습니다.
Ruby on Rails 소식지
2025년 01월 03일
Rails 8 인증 시스템: 핵심 기능 및 사용법
How to Use Authentication in Ruby on Rails 8
- Rails 8에 새로 도입된 인증(Authentication) 제너레이터는 기존 Devise보다 간소화된 핵심 기능만을 제공합니다.
- 기본적으로 모든 컨트롤러 액션은 인증을 요구하며, `allow_unauthenticated_access`를 통해 특정 페이지에 비인증 접근을 허용할 수 있습니다.
- `authenticated?` 및 `current.user`와 같은 핵심 메서드를 활용하여 사용자 인증 상태를 확인하고 로그인된 사용자 정보에 접근합니다.
Ruby on Rails 소식지
2025년 01월 01일
Ruby on Rails 8: 인증 시스템 확장 및 사용자 경험 개선
Rails 8 Authentication Adding Signup Flow & User Profiles
- Ruby on Rails 8의 기본 인증 시스템에 회원가입 기능을 추가하고 사용자 프로필 관리 기능을 확장하는 방법을 설명합니다.
- Instrumental Components 라이브러리를 활용하여 로그인/회원가입 UI를 개선하고, 사용자 메뉴 및 반응형 레이아웃을 구현합니다.
- Gravatar 연동, 타임존 자동 감지, 아바타 업로드 등 실제 애플리케이션에 필요한 다양한 사용자 경험 개선 요소를 다룹니다.
Ruby on Rails 소식지
2025년 01월 01일
2024년 Rails 연말 결산 및 주요 업데이트 요약
This year in Rails
- Rails는 2024년에 555명의 기여자가 참여하여 약 4000건의 커밋과 50번의 릴리스를 기록하며 활발한 개발을 진행했습니다.
- Rails 8 출시와 함께 PWA 지원 강화, 속도 제한 기능 추가, Kamal 및 Propshaft 기본 포함 등 다양한 핵심 기능이 도입되었습니다.
- Solid Cache, Solid Queue, Solid Cable과 같은 새로운 기본 캐싱 및 작업 큐 백엔드를 도입하여 Redis 의존성을 줄이고 배포 효율성을 높였습니다.
Ruby on Rails 소식지
2024년 12월 27일
Ruby 3.4.0 릴리스
Ruby 3.4.0 Released
- Ruby 3.4.0이 공식 릴리스되었으며, 새로운 기능과 성능 개선이 대거 포함되었습니다.
- `it` 블록 파라미터 참조 도입, Prism 파서의 기본 채택, Happy Eyeballs Version 2 지원이 주요 특징입니다.
- YJIT 성능 향상 및 Modular GC 도입을 통해 실행 속도와 메모리 효율성이 크게 개선되었습니다.
Ruby on Rails 소식지
2024년 12월 25일
Ruby JSON Gem 최적화: 1부
Optimizing Ruby’s JSON, Part 1 | byroot’s blog
- json gem의 유지보수 담당자가 되어 성능 최적화에 집중하여 대부분의 벤치마크에서 Ruby용 가장 빠른 JSON 파서 및 제너레이터로 만들었습니다.
- 성능 개선은 프로파일링 기반의 간단한 최적화로 이루어졌으며, 이는 C 코드뿐만 아니라 일반적인 코드에도 적용될 수 있는 보편적인 방법론을 제시합니다.
- 이러한 최적화는 `oj`와 같은 대체 라이브러리의 불안정성과 몽키 패치로 인한 문제를 해결하고, 사용자에게 `json` gem의 성능적 매력을 높이는 데 목적이 있습니다.
Ruby Weekly
2024년 12월 15일
Ruby의 then 키워드 활용 및 코드 가독성 향상 방안
The 'then' Ruby Keyword - What is it? – Ben Koshy – Rails, Tekla Open API, AutoDesk .NET
- Ruby의 `then` 메서드는 메서드 체이닝을 통해 코드의 가독성을 크게 향상시키며, 함수형 프로그래밍 스타일을 지원합니다.
- `then`은 인수의 출력을 다음 메서드의 입력으로 연결하여 복잡한 연산을 단계별로 명확하게 표현할 수 있게 합니다.
- `tap`이나 `yield_self`와 유사하지만, `then`은 블록의 최종 반환 값을 다음 체인으로 전달하여 데이터 변환 파이프라인 구축에 특히 유용합니다.
The Awesome Ruby
2024년 12월 09일
Rails 애플리케이션에서 웹 푸시 알림 구현 가이드
Joy of Rails | Sending Web Push Notifications from Rails
- Rails 8에서 기본으로 제공될 웹 푸시 알림 기능을 현재 Rails 애플리케이션에 구현하는 방법을 상세히 다룹니다.
- 웹 푸시 구현은 PWA 설정, 서비스 워커, VAPID 키 생성 및 권한 요청 등 클라이언트 및 서버 측의 복합적인 설정과 연동을 요구합니다.
- `web-push` 젬을 활용하여 Rails 백엔드에서 푸시 알림을 트리거하고, 서비스 워커를 통해 사용자에게 알림을 표시하는 전체 과정을 설명합니다.
Ruby Weekly
2024년 10월 23일
Ruby에서 몽키 패치 감지
Tenderlove Making - Monkey Patch Detection in Ruby
- CRuby는 핵심 메서드의 몽키 패치 여부를 감지하여 성능 최적화를 해제하는 메커니즘을 갖추고 있습니다.
- 이 감지 시스템은 메서드 재정의 시 `ruby_vm_redefined_flag`라는 전역 변수의 비트맵 플래그를 설정하여 작동합니다.
- 이를 통해 CRuby는 사용자 정의된 메서드를 존중하며, JIT 컴파일러의 디옵티마이징에도 활용됩니다.
The Awesome Ruby
2024년 10월 16일