Portrait of Carmine Paolino

Carmine Paolino

I build AI tools at Chat with Work and RubyLLM. Co-founded Freshflow. Outside tech, I make music, run Floppy Disco, and take photos.

RubyLLM::Schema Is Now Schematist: A JSON Schema DSL for Ruby with Full Draft 2020-12 Coverage

RubyLLM::Schema Is Now Schematist: A JSON Schema DSL for Ruby with Full Draft 2020-12 Coverage

Schematist is a Ruby JSON Schema DSL with full Draft 2020-12 coverage, render-time values, standards-compliant output, and no runtime dependencies.

Founding a Company in Germany: €9,600, 152 Days, and I Still Can't Send an Invoice

A 152-day timeline of founding a company in Germany: €9,600 spent, two companies registered, and still no way to issue an invoice.

RubyLLM 1.16: Concurrent Tool Execution, Rails-Style Instrumentation, and api_base for Every Provider

RubyLLM 1.16: Concurrent Tool Execution, Rails-Style Instrumentation, and api_base for Every Provider

RubyLLM 1.16 adds concurrent tools with threads or fibers, Rails-style instrumentation, and proxy support through api_base for every native provider.

Engineering Is Not Dead, Because Accountability Isn't

Models can generate the code. They cannot be accountable for it. The real distinction is whether the result is owned.

Production Experience Cannot Be Hallucinated

A paid Medium article claimed hard-won RubyLLM production lessons, but its code had never run. Regenerating it only made the fabrication harder to spot.

RubyLLM 1.15: Image Editing, Cost Tracking and Less Tool Boilerplate

RubyLLM 1.15: Image Editing, Cost Tracking and Less Tool Boilerplate

RubyLLM 1.15 adds image editing, cost tracking, inferred tool parameters, additive callbacks, and Rails fixes.

kamal-backup: Scheduled Rails Backups for Kamal Apps

kamal-backup: Scheduled Rails Backups for Kamal Apps

One Kamal accessory for encrypted Rails database and Active Storage backups, restore drills, and redacted evidence for security reviews.

Ruby Concurrency: What Actually Happens

Ruby Concurrency: What Actually Happens

A visual guide to Ruby processes, Ractors, threads, fibers, schedulers, blocking I/O, database connections, and concurrency trade-offs.

Making the Rails Default Job Queue Fiber-Based

Making the Rails Default Job Queue Fiber-Based

I patched Solid Queue to run jobs as fibers. Now it ships in 1.6.0, making the Rails default ready for highly concurrent, cooperative I/O-bound jobs.