
Reading JSON in C Sharp With System Text Json Defaults
What System.Text.Json does by default in .NET 9: exact-case names, JsonSerializerDefaults.Web, enum surprises, the 64 level depth limit and duplicate keys.
Everything you need to level up your coding skills.

What System.Text.Json does by default in .NET 9: exact-case names, JsonSerializerDefaults.Web, enum surprises, the 64 level depth limit and duplicate keys.

Read JSON in Java with Jackson 2.20: records, JsonNode trees, unknown fields, duplicate keys, the nesting and number limits, and the date trap on writing.

Go ignores unknown JSON members by default. Reject them with DisallowUnknownFields, keep them with a raw map, and see where each option stops working.

Load a CSV into SQLite with one sqlite-utils command, set a primary key, control type detection, add full-text search, and see what 2 million rows cost.

Four CSV validators run on the same broken files: qsv validate, csvkit csvclean, CSVLint and Frictionless. What each reports, how it exits and which to use.

Open a CSV in VisiData to scroll, sort, filter and profile it from the keyboard, build frequency tables, and save results, plus its batch mode for scripts.

Miller (mlr) treats CSV rows as named records and chains verbs with then. Real runs for sorting, grouping, new columns, JSON conversion and splitting files.

xsv and qsv share a command set, and qsv adds an index, sniffing, validation and more. See the overlap, the real timings with an index, and the type trap.

A field guide to CSV tools: csvkit, qsv, Miller, DuckDB, sqlite-utils, Polars, pandas and VisiData, run on the same 2 million row file with timings.

Some CSV files carry lines starting with a hash that are notes, not data. Skip them safely, because a comment option can also cut values like Suite #4.

A CSV that repeats its header after every page or section breaks type conversion. Find the repeated lines, drop them safely and check nothing real went too.

Clean up messy CSV headers into stable column names: BOMs, spaces, case, accents, duplicates, blanks and leading digits, with a function you can test.
We send one email when a new article is published. No spam.