csv-to-usv
Languages and libraries
data format library
SHOW HN2024
How HN took it
16 positive, 49 neutral or asking, 4 mixed, 84 critical, out of 153 comments about the project. Thread score -0.42.
Idea: 10 for, 35 againstDesign: 1 for, 36 againstExecution: 5 for, 8 againstDocs: 0 for, 2 againstPrivacy: 0 for, 2 against
The thread, comment by comment
Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.
positive neutral or mixed critical about another commenter or something else the maker
What HN said
What people liked
Clever use of Unicode symbols makes separators visible and editable
From 3 comments
Fascinated this uses the Unicode glyphs / symbols for unit and record separator rather than the unit and record separators themselves (ASCII US and RS). Perfect deployment of…
jonathaneunice on HNIt's sensible in principle: * Editors will play nicely with the graphical representation. If you need better graphics, it's done with font customization, which everyone already…
crq-yml on HNI've been using an emoji separated values format for a personal project where fields contain lots of special characters including whitespace. I'd previously given up using ASV…
jbaber on HN
Objections
Hard to type and read the separator glyphs in ordinary editors
From 3 comments
According to their GitHub README: ```USV works with many kinds of editors. Any editor that can render the USV characters will work. We use vi, emacs, Coda, Notepad++, TextMate,…
bryanlarsen on HNTheir examples if anything convinced me not to use this for a long time. I need to zoom to be able to tell these apart, so I'll need editor support for it to be convenient to…
vidarh on HNWe might be able to see them, but for me they're just a blur unless I zoom in significantly, so I'll need editor accommodations just as much for these characters as if they used…
vidarh on HN
No Excel or wide library support
From 3 comments
CSV is great because excel can import it, but it can't import USV, so at that point, why use USV when you can use JSON? https://github.com/tyleradams/json-toolkit/
code-faster on HNFirst time hearing about USV, nifty! However, I think the adoptability challenge remains here to be Excel support (very tough).
evrimoztamur on HNAll downsides, no upsides. You cannot edit it in regular editor, like csv/tsv/jsonlines. There is no schema or efficient storage, like binary formats. There is no wide library…
theamk on HN
Adds yet another standard without real backing
From 3 comments
The usv github repository says it is "the standard for data markup of ...", has 66 stars, and is currently applying for "text/usv" MIME type. That's all about it. Maybe I'll…
pquki4 on HNThis is needlessly adding yet another standard¹ to the mix. If you are in a position to choose what standard you use, just use: • Whatever is best for the data model and/or…
teddyh on HN> Is USV aiming to become a standard? > > Yes and we've submitted the first draft of the USV standard to the IETF: link. This is a nice idea, and all, but seems unlikely to…
pimlottc on HN
Documentation and spec issues such as SYN and escaping
From 3 comments
> The Synchronous Idle (SYN) symbol is a heartbeat, and is especially useful for streaming data, such as to keep a connection alive. > > SYN tells the data reader that data…
philsnow on HNAbsolutely terrible documentation. The RFC doesn't even explain the purpose of the "End of Transmission Block" token.
otabdeveloper4 on HNWe might be able to see them, but for me they're just a blur unless I zoom in significantly, so I'll need editor accommodations just as much for these characters as if they used…
vidarh on HN
Requests
Support custom delimiters such as semicolon
From 1 comment
If you live in a place where comma is the decimal separator, your CSV files will often use semicolon as the separator instead of comma. Will this tool cater for that?
ochrist on HN
Add automatic record separator newlines
From 1 comment
Good point. I'm adding automatic record separator newlines to the crate now.
jph on HN
Python library
From 1 comment
Nice! Is there a Python library?
two_handfuls on HN
Questions
Why not use ASCII separators or existing formats like RSV or Parquet
From 3 comments
ASCII has a field delimiter character. The fact that we chose comma and tabs because a field delimiter character is hard to type or see is one of those things that saddens me in…
tambourine_man on HNA similar concept that is (IMHO) much nicer: RSV It doesn't need any escaping or quoting: a field just has to be valid UTF-8. The trick is that the delimiters are bytes that are…
Fileformat on HNWhy not use parquet at this point? (or a row-oriented equivalent like Avro or SQLite) If you don't have a human-readable file, might as well be compressible, queriable, and…
remram on HN
Alternatives named
ASCII Separated Values (ASV)
From 1 comment
Not sure I understand the advantage over ASCII Separated Values (ASV) which use ASCII control characters 0x1E and 0x1F
eli on HN
RSV
From 1 comment
A similar concept that is (IMHO) much nicer: RSV It doesn't need any escaping or quoting: a field just has to be valid UTF-8. The trick is that the delimiters are bytes that are…
Fileformat on HN
TSV and RFC 4180 CSV
From 2 comments
Nope, this isn't a good approach. I prefer tab-separated values (TSV) and use it as much as possible.
nayuki on HNThis is needlessly adding yet another standard¹ to the mix. If you are in a position to choose what standard you use, just use: • Whatever is best for the data model and/or…
teddyh on HN
JSON and JSON Lines
From 2 comments
CSV is great because excel can import it, but it can't import USV, so at that point, why use USV when you can use JSON? https://github.com/tyleradams/json-toolkit/
code-faster on HNWe don't need a new format which works for machines as well as for humans, because there are are tons of existing ones. You have CSV or TSV for wide support; JSONlines if you…
theamk on HN