llm.rb is an AI runtime for CRuby that supports building AI applications with zero default runtime dependencies. It supports major LLM providers including OpenAI, Anthropic, Google Gemini, DeepSeek, AWS Bedrock, Ollama, and others. Key features include first-class streaming, tool calls, MCP and A2A protocol support, embeddings, vector stores, RAG, and five concurrency strategies (threads, fibers, ractors, async tasks, fork). The runtime is built around three core abstractions: providers, contexts, and agents. It also integrates with ActiveRecord and Sequel for persisting conversation state, and shares a near-identical API with mruby-llm and wasm-llm variants.
Nguồn: https://github.com/r-uby-dev/llm.rb. 8sync News chỉ tóm tắt và dẫn link; bản quyền nội dung thuộc tác giả và nguồn gốc.
Bài viết hướng dẫn triển khai sáu mẫu thiết kế cổ điển (Factory, Builder, Adapter, Decorator, Proxy, Facade) theo phong cách Ruby, sử dụng các tính năng ngôn ngữ như duck typing, modules, tap và SimpleDelegator để giảm boilerplate. Ruby ưu tiên composition hơn inheritance, điều này thể hiện xuyên suốt các mẫu thiết kế được trình bày.
Lập trình viên Ruby nên đọc bài này để hiểu cách áp dụng các mẫu thiết kế classic theo phong cách Ruby hiện đại, tiết kiệm thời gian và tránh sự phức tạp của các ngôn ngữ khác nhờ sự linh hoạt của duck typing và prefer composition over inheritance.

Thay vì tạo lớp ActiveJob mỏng để gọi phương thức đơn lẻ trong file recurring.yml, lập trình viên Ruby on Rails có thể sử dụng khóa command: để gọi trực tiếp phương thức lớp Ruby thuần. Cách này giảm boilerplate, giữ logic trong đối tượng Ruby thuần, và chỉ cần worker cấu hình cho queue solid_queue_recurring. Có thể ghi đè queue cho mỗi tác vụ.
Lập trình viên Ruby on Rails nên đọc bài này để tiết kiệm thời gian và tránh việc tạo lớp ActiveJob thừa khi chỉ cần xử lý nhiệm vụ định kỳ đơn giản, đồng thời tối ưu hóa cấu trúc mã bằng cách sử dụng Solid Queue một cách hiệu quả.
Bảng tham chiếu tương thích này liệt kê phiên bản JRuby từ 9.2 đến 10.1, bao gồm mức ngôn ngữ Ruby, phiên bản Java tối thiểu và phiên bản Rails hỗ trợ. JRuby 10 cải thiện thời gian khởi động nhờ AppCDS và Project CRaC, trong khi lợi thế của JRuby so với CRuby MRI bao gồm đa luồng thực sự (không có GVL), truy cập hệ sinh thái JVM và triển khai dưới dạng một artifact duy nhất.
Lập trình viên phát triển ứng dụng Rails cần tham khảo bảng so sánh này để chọn phiên bản JRuby phù hợp với yêu cầu Ruby version, Java cốt lõi và Rails version, giúp tối ưu hiệu năng, tương thích và triển khai nhanh chóng.
Lỗ hổng CVE-2026-44163 (mức độ trung bình) trong fluent-plugin-opentelemetry cho phép tấn công từ chối dịch vụ (DoS) thông qua các payload lớn hoặc "decompression bombs" gửi tới plugin in_opentelemetry, gây cạn kiệt bộ nhớ và có thể khiến Fluentd bị OOM kill. Bản vá đã được cung cấp từ phiên bản 0.5.3 trở lên.
Lập trình viên phải đọc bài này để tránh rủi ro hệ thống bị tấn công DoS từ plugin OpenTelemetry trong Fluentd, đặc biệt khi triển khai ứng dụng theo tiêu chuẩn log và trace mở rộng, vì các lỗ hổng này có thể gây mất ổn định và ảnh hưởng nghiêm trọng đến quy trình vận hành.
Lỗ hổng CVE-2026-44024 (điểm CVSS 9.8) trong Fluentd cho phép tấn công RCE thông qua ghi file tùy ý khi kẻ tấn công khai thác lỗ hổng ${tag} trong đường dẫn file, ghi đè tệp hệ thống hoặc cấu hình. Bản vá đã có từ Fluentd v1.19.3 trở lên.
Lập trình viên nên đọc bài này để tránh rủi ro Remote Code Execution (RCE) từ lỗ hổng bảo mật nghiêm trọng trong Fluentd, có thể dẫn đến kiểm soát hệ thống và tấn công dữ liệu quan trọng khi ứng dụng của họ sử dụng plugin này.
Common test case mistakes in Rails applications and how to fix them. Covers four key issues: insufficient assertions (only checking response status instead of side effects like emails and DB records), testing only happy paths while ignoring failure scenarios, cramming multiple scenarios into a single test case causing state dependencies and unclear failures, and writing vague test descriptions. Also introduces mutation testing as a technique to verify test strength, mentioning the Mutant gem for Ruby.
Lỗ hổng path traversal mức trung bình (CVE-2026-49342, CVSS 5.3) trong gem YARD Ruby cho phép đọc file .html ngoài thư mục tĩnh do YARD đọc đường dẫn request trước khi xử lý sanitization. Bản vá đã có trong YARD 0.9.44.
Lập trình viên cần đọc bài này để tránh bị ảnh hưởng bởi lỗ hổng bảo mật trong YARD, đặc biệt là khi sử dụng gem này trong dự án Ruby, và hiểu cách bảo vệ hệ thống khỏi các cuộc tấn công đường dẫn vượt qua (path traversal) trong các ứng dụng đã tích hợp YARD.

A Ruby/Rails developer with nearly 20 years of experience shares their first experience setting up Claude Code on macOS, specifically tackling two tricky configuration problems: getting chruby (a Ruby version manager) to work with Claude Code, and working around macOS sandbox restrictions that prevent headless Chrome from running during RSpec tests. The solution involves using chruby-exec with a .ruby-version file in CLAUDE.md, and creating a wrapper script to allowlist RSpec executions from the sandbox. The post also covers differences between Claude Desktop and the CLI, and includes example prompts used to speed up a Rails test suite using test-prof and FactoryBot optimizations.