Strings are mutable sequences of characters; symbols (:name) are immutable, interned identifiers — the same symbol is the exact same object in memory everywhere. Symbols are used as lightweight, efficient identifiers (especially hash keys), while strings hold actual text data.
The core difference: identity and mutability
.object_id == .object_id
<<
.object_id == .object_id
.frozen?
