news.volyx.in

A love letter to the CSV format (github.com)

708 points by Yomguithereal · 494 days ago · 689 comments on HN

Article summary

The article is a defense of the CSV format, arguing that it is often misunderstood and unfairly criticized. The author highlights several strengths of CSV, including its simplicity, flexibility, and ability to be easily read and edited by humans. The article also notes that CSV is often criticized for issues that are actually the result of poor implementation or misuse, rather than flaws in the format itself. The author argues that CSV remains a valuable and widely-used format despite the existence of alternative formats.

Main themes

  • CSV format
  • Data serialization
  • Excel compatibility
  • Localization issues
  • Data import and export
  • Format strengths and weaknesses

What commenters say

  • Excel's handling of CSV files is problematic due to its use of locale settings for parsing, which can lead to incorrect imports.
  • The default behavior of Excel when opening CSV files can be improved by using the 'import' feature instead of simply opening the file.
  • Some argue that CSV is a flawed format that should be replaced with alternative formats, while others see it as a simple and effective solution for data exchange.
  • The use of UTF-8 BOM can help ensure that Excel recognizes the encoding of a CSV file, but it can also cause issues with other applications.
  • Localization issues can cause problems when working with CSV files, particularly when using Excel, and can lead to subtle errors that are difficult to spot.
  • Some commenters have had positive experiences with alternative spreadsheet software, such as LibreOffice Calc, which handles CSV files more effectively than Excel.
  • The importance of specifying encoding when importing CSV files is emphasized, as relying on automatic detection can lead to errors.
  • Some argue that Excel's behavior when handling CSV files is intentionally designed to be inconvenient, while others see it as a result of backwards compatibility and legacy issues.