Sitemap
Every post and tool on the site, by title.
Posts (828)
- A Bank CSV With Dates in Two Formats and How to Fix It
- Access Versus SQLite Versus PostgreSQL for a Small App
- A Cheat Sheet of CSV Edge Cases to Test Every Parser With
- A Cheat Sheet of YAML Syntax for Everyday Config Files
- A CRM Export With Multi Line Notes and How to Parse It
- Adding and Removing Keys From JSONB With jsonb_set and Minus
- Adding Formulas and Number Formats From Python Code
- Aggregating Rows Into JSON With jsonb_agg in PostgreSQL
- A Government Dataset With Footnotes in the Data Cells
- A Guide to Excel Files That Are Too Big or Too Slow
- A Log Export With Unescaped Quotes and How to Read It
- Analysis on XML Data When Nobody Has Converted It Yet
- Analyzing a GitHub Events Dump With DuckDB and SQL
- Analyzing Configuration and Metadata Held in YAML With SQL
- Analyzing More Than a Million Rows Without Excel Limits
- Analyzing Podcast and Blog Feeds From XML With Python
- Analyzing Publication Metadata From XML Archives in Python
- An Analytics Export With Percent Signs and Dashes Cleaned
- An Ecommerce Export With Commas Inside Product Names
- Answering Questions From XML Data With Counts and Joins
- A Practical Guide to Automating Excel Work Without Clicking
- A Practical Guide to Connecting Excel Directly to a Database
- A Python Script That Loads a Daily CSV Into PostgreSQL
- Archiving Processed CSV Files Automatically After Import
- A Repeatable Way to Clean a Messy CSV File With Python
- Array Formulas and Why They Break Imports to Databases
- A Supplier Price List With Merged Header Rows Fixed
- A Survey Export With Hundreds of Columns Made Usable
- Auditing Kubernetes Manifests With SQL and a Findings Score
- Audit Trails and History That Excel Cannot Give You
- Automating a Nightly CSV Export With cron and psql
- Automating CSV Imports Into a Database Without Surprises
- Automating Weekly Excel Reports With Python and cron
- Avoiding Misleading Axes in Excel Charts Built From Data
- Backfilling Historic Events After a Schema Change Safely
- Background Jobs for Large CSV Exports That Do Not Time Out
- Batch Converting XLS Files to XLSX With LibreOffice
- Benchmarking ElementTree lxml and iterparse on 127 MB
- Benchmarking Excel Readers in Python With a Fair Test
- Billion Laughs Style Attacks Through YAML Aliases Tested
- Building a Budget Workbook From Query Output Reliably
- Building a Forecast Baseline From Excel History in SQL
- Building a Multi Sheet Excel Report From SQL Queries
- Building a Pivot Table From a Database Query in Excel
- Building Cohort Tables From an Excel Export With SQL
- Building Dashboards in Excel From SQL Output Step by Step
- Building Excel Reports From SQL Queries People Trust
- Building Excel Templates That Import Cleanly Every Time
- Building Idempotent CSV Imports That Are Safe to Run Twice
- Building JSON From Query Results With FOR JSON in SQL Server
- Building JSON Output With JSON_OBJECT and JSON_ARRAYAGG
- Building JSON Results With json_group_array in SQLite
- Building Your Own XML Sitemap From a Table in Python and SQL
- Bulk Loading a CSV File Into DynamoDB Tables Properly
- Calculating Month Over Month Growth From a CSV in SQL
- Calculating Percent of Total in a Pivot and in SQL
- Calling a SOAP Service From Python With zeep and a WSDL
- Canonical XML and Why Your Diffs Need It Before Comparing
- Charts From Data Pulled Out of Databases Start to Finish
- Checking a CSV for Invalid UTF8 Before You Load It
- Checking a JSON Column Against a Schema in PostgreSQL
- Checking an Excel Upload Before Reading It Into Code
- Checking an Incoming Workbook Against a Template by Code
- Checking Feed Health With a Daily Script and Clear Alerts
- Checking if a CSV Column Is Normally Distributed With Python
- Checking Row and Column Counts of a CSV Before Loading
- Checking That Every Date in a CSV File Parses Correctly
- Checking Totals Between Two Excel Reports With SQL
- Choosing Between a JSON Column and a Document Database
- Choosing Between csvkit and Miller for Everyday CSV Work
- Choosing Between XSD RELAX NG and Schematron for XML Checks
- Choosing Between XSLT XQuery and a Script for XML Jobs
- Choosing Column Names Users Recognize in CSV Imports
- Choosing Excel Chart Types for Query Results That Read
- Choosing Parquet After You Parse XML for Fast Analysis
- Choosing XML Element Names and Casing That Hold Up
- Choosing XML Over the Alternatives or Not for a New Project
- Choosing YAML TOML JSON or INI for Config Without Regret
- Cleaning a Twitter Style Archive File That Is Not Quite JSON
- Comma Semicolon Tab or Pipe and How to Pick a Delimiter
- Comments in YAML and What Parsers Do With Them in Practice
- Comments That Help the Next Person Reading Your YAML
- Common XML Formats You Will Meet in Real Work Reference
- Common XSD Validation Errors Explained With the Fix for Each
- Comparing and Patching JSON Documents Without Surprises
- Comparing and Versioning XML Files in Git and in Pipelines
- Comparing JSON Ignoring Volatile Fields in Python Tests
- Comparing PostgreSQL Plans Before and After a Change
- Comparing Two Time Periods in a CSV Without Being Fooled
- Compressing CSV Files and Reading Them Without Unzipping
- Compressing JSON Lines for Storage and Reading Them Back
- Compressing XML Archives and Reading Them In Place
- Concatenate Text With a Separator Both Ways in Excel
- Config Driven Pipelines and Their Limits With Numbers
- Connecting Excel to MySQL With the Official Connector
- Connecting Excel to PostgreSQL With ODBC Step by Step
- Connecting Excel to SQL Server With Power Query and ODBC
- Content Is Not Allowed in Prolog and the Hidden BOM
- Contract Testing JSON APIs With an OpenAPI Schema Tool
- Controlling What Goes Into a Spreadsheet Before It Spreads
- Converting a CSV From Latin 1 or Windows 1252 to UTF8
- Converting a CSV Into a YAML List With Correct Types
- Converting a CSV to Parquet and Why You Might Want To
- Converting a CSV to Parquet With DuckDB in One Line
- Converting a Huge Excel File to CSV or Parquet Safely
- Converting an Excel Sheet of Settings Into YAML Using Python
- Converting CSV to an Excel Workbook With Formatting
- Converting CSV to JSON in Node With a Few Lines of Code
- Converting CSV to JSON Lines for Streaming Pipelines
- Converting CSV to JSON With Python Without Losing Types
- Converting CSV to JSON XML YAML and Excel in Practice
- Converting CSV to Markdown Tables for Documentation
- Converting CSV to SQL INSERT Statements the Safe Way
- Converting CSV to XML With a Short and Safe Python Script
- Converting CSV to XML With a Template That Escapes Correctly
- Converting CSV to YAML for Config Seeds Without Surprises
- Converting Excel to CSV for Every Sheet in a Workbook
- Converting Excel to CSV JSON XML and YAML in Practice
- Converting Excel to CSV Without Losing Leading Zeros
- Converting Excel to JSON With Python for Clean Output
- Converting Excel to Markdown and HTML Tables for Docs
- Converting Excel to Parquet for Faster Analytics Loads
- Converting Excel to SQL Insert Statements Safely and Fast
- Converting Excel to XML With a Python Script Safely
- Converting Excel to YAML Config Files Without Surprises
- Converting Google Sheets to CSV or Excel With a Script
- Converting JSON to CSV When the Data Is Nested With Arrays
- Converting JSON to CSV With Python and pandas Safely
- Converting JSON to CSV XML YAML and Excel Without Surprises
- Converting JSON to XML With Sensible Element Names
- Converting JSON to YAML on the Command Line Safely
- Converting JSON to YAML Without Losing Types or Quotes
- Converting XML to CSV for Spreadsheet Users Safely
- Converting XML to Excel With Python and Typed Cells
- Converting XML to JSON and the Attribute Problem Explained
- Converting XML to JSON CSV YAML and Excel Without Data Loss
- Converting XML to YAML for Config Review and What It Breaks
- Converting YAML to a Markdown Table for Docs and READMEs
- Converting YAML to and From JSON CSV XML and Excel
- Converting YAML to CSV for Review in a Spreadsheet
- Converting YAML to JSON for Tools That Need It Safely
- Converting YAML to JSON in Python Without Date Errors
- Converting YAML to JSON With yq and Back Again Cleanly
- Converting YAML to XML With Python and Valid Names
- Count Distinct Customers per Month Both Ways in Excel
- COUNTIF Versus COUNT With a Filter in SQL Compared
- Counting Elements and Attributes in an Unknown XML File
- Counting Lines in a Multi Gigabyte CSV Quickly and Correctly
- Counting Nodes in XML From the Shell Without Miscounting
- Counting Records by Attribute in a Large XML Export
- Counting Rows and Unique Values in a CSV From the Shell
- Counting Services Across Many Compose Files With DuckDB
- Creating and Querying a MySQL JSON Column From Scratch
- Creating Excel Files in Rust With rust_xlsxwriter Crate
- Creating Your First Database User and Schema in PostgreSQL
- Cross Tabs From a CSV With SQL and a Chi Square Check
- CSV Dialects and Variants You Will Run Into in Practice
- CSV Import and Export Features in Applications Done Right
- CSV Injection and How Formulas in a Cell Become an Attack
- CSV Line Endings and the CR LF Trap in Shells and Loaders
- CSVLint and Other Validators for CSV Files Compared
- CSV Security Risks That Catch Teams Out and What to Do
- CSV Tools Worth Knowing and When to Reach for Each One
- CSVW and Describing CSV With Metadata That Tools Can Read
- Datasette for Publishing CSV as a Searchable Site in Minutes
- Data Types per Column in Templates That Feed a Database
- Data Validation Lists and Their Limits in Excel Sheets
- Date Formulas for Month Ends and Business Days in Excel
- Date Functions in Excel Versus SQL Date Functions Compared
- Dealing With XML Feeds That Break Their Own Schema
- Debugging an XSLT Transform That Outputs Nothing or Too Much
- Defining Data Contracts in YAML That Fail the Build
- Designing a CSV Import Screen Users Can Succeed With
- Designing a Report Query Before Touching Excel at All
- Designing Database Tables From a Messy Excel Sheet
- Designing JSON Event Properties for Analysis From Day One
- Designing XML Documents That Age Well From Day One
- Detecting and Handling Embedded Headers Repeated Mid File
- Detecting Columns That Changed Type Between CSV Deliveries
- Detecting Encoded Payloads Hidden in CSV Fields Fast
- Detecting Seasonality in a CSV of Daily Sales Data
- Detecting Structure Changes in an XML Feed Over Time
- Differences Between Sheets and Excel Formulas to Know
- Diffing XML Ignoring Attribute Order and Layout Noise
- Diffing YAML Files Without Whitespace Noise or Reordering
- Disabling DTDs and External Entities in Java and Python
- Documenting Datasets in YAML and Catching Schema Drift
- Does a CSV File Need a Header Row and What If It Has None
- Doing a Three Way Merge of CSV Edits by Key and by Cell
- Doing Proper Analysis on Excel Data With SQL in Practice
- DOM Versus SAX Versus StAX Parsing in Java Compared
- DuckDB read_csv Options You Will Actually Need in Practice
- DuckDB Skipping Bad Rows While Reading a Messy CSV
- Dynamic Array Functions FILTER SORT and UNIQUE Explained
- Editing XML Files in Place From a Script Without Damage
- Emailing a Scheduled Excel Report From a Database Job
- Embedding Binary Data in XML With Base64 and When Not To
- Encoding Mismatch Errors in XML Documents From Mixed Sources
- Environment Specific YAML Config Without Copy and Paste
- Error Handling With IFERROR and Safer Alternatives Today
- Escaping Formula Characters in a CSV Export Safely
- Event Analytics on JSON Properties in PostgreSQL Tested
- Everything a CSV File Does and Does Not Promise You
- Excel Cannot Open the File Because the File Is Corrupt
- Excel Cell Contains More Than 32767 Characters Error
- Excel CSV UTF8 Versus CSV Comma Delimited Explained
- Excel CSV Versus RFC CSV Differences Worth Knowing About
- Excel Formulas Data People Use Every Week Explained
- Excel Formula Shows as Text Instead of Calculating
- Excel REF NAME and VALUE Errors Explained for Developers
- Excel Reports That Finance Teams Rely On Month After Month
- Excel Security Problems Developers Overlook in Pipelines
- Expanding JSON Arrays With json_each and json_tree
- Expanding JSONB Into Typed Rows With jsonb_to_recordset
- Exporting a CSV With Headers From SQLite on the Command Line
- Exporting a MongoDB Collection to CSV With mongoexport
- Exporting an Oracle Query to CSV With SQLcl From the Shell
- Exporting a PostgreSQL Query to CSV With psql and COPY
- Exporting a Query to Excel From PostgreSQL With Python
- Exporting a SQLite Query Result to CSV From the Shell
- Exporting a Table to YAML From PostgreSQL With Python
- Exporting CSV From the Database Straight to a Gzip File
- Exporting Excel Charts as Images From a Script or Server
- Exporting Excel Data as XML With a Schema and What Blocks It
- Exporting Invoices to Excel With Totals That Add Up
- Exporting JSON Lines From a Query in PostgreSQL Safely
- Exporting Large Tables to CSV Without Running Out of Memory
- Exporting MySQL Data to Excel With a Python Script
- Exporting MySQL Query Results to CSV With INTO OUTFILE
- Exporting Query Results to CSV From Five Major Databases
- Exporting SQL Server Query Output to an Excel File
- Exporting SQL Server Results to CSV With bcp and sqlcmd
- Extracting JSON Fields in BigQuery With JSON_VALUE
- Extracting Nested JSONB Values With Path Operators
- Extracting Properties Into Typed Columns Nightly From JSON
- Extracting Time Series From XML Sensor Files With Pandas
- Extracting Values With xmlstarlet From the Shell Fast
- Faster JSON in Python With orjson and What Changes
- Filling Gaps in a CSV Time Series With SQL and DuckDB
- Filtering CSV Rows From the Command Line With Miller
- Finding Duplicate Keys Across a Config Repository Reliably
- Finding Duplicate Keys in a CSV File Before an Import
- Finding Duplicates and Gaps in an Excel Sheet With SQL
- Finding Inconsistent Versions Across YAML Configs in a Repo
- Finding One Bad Line in a Huge JSON Lines File Fast
- Finding Rows That Do Not Match the Expected Pattern in a CSV
- Finding Tab Characters Hiding in a YAML File Quickly
- Finding the Exact Line of a JSON Syntax Error in Any Parser
- Finding the Second Highest Value in Excel and in SQL
- Finding the Top Customers by Revenue in a CSV File
- Fixed Width Files and Converting Them to CSV Safely
- Fixing BadZipFile When Reading an XLSX With Python
- Fixing Circular Reference Warnings in Imported Sheets
- Fixing Data Truncated Warnings in a MySQL CSV Load
- Fixing DuckDB CSV Type Detection That Guessed Wrong
- Fixing Duplicate Column Names When Reading Excel Data
- Fixing Excel Found Unreadable Content After a Script Export
- Fixing Expected Columns but Found Errors in SQLite Imports
- Fixing Garbled Characters in a Downloaded CSV From a Web App
- Fixing Garbled Text in CSV Files and Keeping It Fixed
- Fixing Incorrect Date Value Errors in a MySQL CSV Import
- Fixing Invalid JSON Text Errors in MySQL Inserts and Imports
- Fixing JSON Copied From a Web Page With Smart Quotes
- Fixing JSON Parse Errors by Reading the Message Properly
- Fixing JSON That Is Really a JavaScript Object Literal
- Fixing JSON With Unescaped Newlines in Strings Safely
- Fixing Mixed Date Formats in a CSV Column Without Guessing
- Fixing Mojibake in a CSV Without Losing Any More Data
- Fixing Numbers With Thousands Separators in a CSV File
- Fixing Special Characters That Break YAML Values Safely
- Fixing the Python xlrd Error Excel xlsx Not Supported
- Fixing XML Parse Errors Fast With a Triage Routine
- Fixing XML With Unescaped Ampersands From a Legacy Export
- Fixing YAML Errors That Make No Sense Step by Step
- Fixing YAML Indentation Errors With a Linter and Editor
- Fixtures in JSON for Database Tests With PostgreSQL
- Fixtures in YAML for Database Tests With pytest and Rollback
- Flattening a Product Catalog Feed With Repeating Fields
- Flattening a Shopify Style Order Export Into Tables
- Flattening Hierarchical XML for Excel Users With Python
- Flattening JSON in SQL With Lateral Joins in PostgreSQL
- Flattening Nested JSON With LATERAL FLATTEN in Snowflake
- Flattening Nested YAML Into Rows of Path and Value
- Flattening XML in Spark and Databricks With Native Reader
- Formatting XML With xmllint for Readable Diffs and Reviews
- Formula Injection in Excel Exports and How to Stop It
- Freezing Panes Filters and Column Widths From Code
- Generating a CSV Download From JavaScript in the Browser
- Generating a JSON Schema From Sample Data and Fixing It
- Generating SQL From YAML Templates Safely With Bound Values
- Generating Table Schemas From YAML Definitions Safely
- Getting a MySQL Server Running and Usable From Scratch
- Getting Excel Data Into a Database Without Heartbreak
- Getting Fast With psql and Habits That Save Hours a Week
- Getting Started With csvkit for Everyday CSV Tasks
- Giving Users a Template Instead of Rules for Uploads
- Google Sheets Alongside Databases Without the Mess
- Grouping Dates by Month or Quarter in a Pivot Table
- Grouping Records With XSLT 2 and Muenchian Keys Compared
- Handling a CSV Provider Who Changes Columns Without Warning
- Handling a Weather API With Nested Arrays of Measurements
- Handling Compressed XML Downloads Without Surprises
- Handling CSV Files Full of Customer Data Under GDPR
- Handling CSV Files Too Big to Open in Excel or Python
- Handling CSV With Comment Lines and Metadata Headers
- Handling Currency and Locale in Generated Workbooks
- Handling Emoji in CSV Imports Without Losing Characters
- Handling Excel Files With Title Rows Above the Header
- Handling JSON Files Too Large to Parse With Ordinary Tools
- Handling Missing Values in a CSV File Without Guessing
- Handling Multi Currency Columns in Workbooks and Tables
- Handling NULL and Empty Strings in PostgreSQL CSV Imports
- Handling Properties That Change Type in JSON Event Data
- Handling Unknown JSON Fields in Go Without Losing Data
- Handling XML in Warehouses and Lakes the Practical Way
- Handling YAML Uploads From Users Without Getting Burned
- Handy Command Line Tools for XML Work in Daily Practice
- Hashing or Masking Columns in a CSV Safely Without Leaks
- Header Variants and Normalizing Column Names in CSV Files
- Helm Values Files Without Copy Paste Using Layered Values
- Hidden Sheets and Metadata Leaking Out of Shared Workbooks
- How CSV Quoting Works and Why Embedded Commas Break Things
- How Many Rows Can Pandas Read From Excel Before It Struggles
- How Much Memory a DOM Parser Needs for a Large XML File
- How Much Memory pandas Needs to Load a CSV File in 2026
- How Running a Python Script From Excel With xlwings Works
- How to Detect the Encoding of a CSV File Before You Load It
- How to Escape Quotes and Newlines Inside CSV Fields
- How to Import a CSV File Into MySQL the Reliable Way
- How to Import a CSV Into Excel With Power Query Reliably
- How to Load a CSV File Into PostgreSQL Without Losing Rows
- How to Open a UTF8 CSV in Excel Without Garbled Text
- How to Read a PostgreSQL Query Plan Step by Step Guide
- How to Run SQL Directly on a CSV File With the DuckDB CLI
- How to Tell What Delimiter an Unknown CSV File Uses
- How to Validate a CSV File Before You Trust the Data
- IF and IFS Versus CASE WHEN in SQL Compared Side by Side
- Importing a CSV Into an Existing SQLite Table Step by Step
- Importing a CSV Into Google Sheets With the Right Types
- Importing a CSV Into MySQL With a Header Row and Odd Quotes
- Importing a Large CSV Into MySQL Without Locking the Table
- Importing an Excel Sheet Into PostgreSQL With Python
- Importing CSV Files Into SQLite From the Command Line
- Importing Excel Data Into SQL Server With OPENROWSET
- Importing Excel Dates Correctly Into a Date Column
- Importing Excel Into MySQL With Workbench and Scripts
- Importing Excel Into SQL Server With the Import Wizard
- Importing Google Sheets Data Into a Database Reliably
- Importing Only Some CSV Columns Into a PostgreSQL Table
- Importing Product Feeds for Shopping Platforms With Checks
- Importing XML Into Excel With an XML Map Step by Step
- Incremental XML Feed Imports by Last Modified and ETag
- INDEX and MATCH Versus a Join on a Key in SQL Compared
- Indexes and Primary Keys on Partitioned Tables in PostgreSQL
- Indexing a MySQL JSON Field With a Generated Column
- Indexing Full Text Search With GIN in PostgreSQL Tables
- Indexing Hot JSON Properties for Dashboards in PostgreSQL
- Indexing JSONB With GIN in PostgreSQL and When It Helps
- Indexing JSON Fields in SQLite With Expression Indexes
- Indexing XML Columns in PostgreSQL Without Wrecking Inserts
- Installing MySQL 8.4 on macOS Linux and Windows Step by Step
- Installing PostgreSQL on macOS Linux and Windows Today
- Invalid Character in XML and Stripping Control Characters
- Joining Two CSV Files on a Messy Key Without Losing Rows
- Joining Two CSV Files With SQL in DuckDB Without a Database
- Joining Two Excel Sheets With SQL in DuckDB or SQLite
- Joining Two Sheets on Two Keys in Excel and in SQL
- Joining XML Derived Tables to Your Own Data Safely
- JSON Columns and Schema Drift and How to Find It Early
- JSON Data Types and What Is Missing From Them Entirely
- JSON Functions in SQLite and What You Can Do With Them
- JSON in Go Java Rust C Sharp PHP Ruby Compared Side by Side
- JSON in JavaScript and Node Done Carefully and Correctly
- JSON in SQL Server Oracle Snowflake and BigQuery Compared
- JSON Lines Versus CSV for Event Data and Log Exports
- JSON parse and stringify Options You Probably Missed
- JSON Parse Error Single Quotes Instead of Double Quotes
- JSONPath JMESPath and SQL Path Expressions Compared
- JSON Security Mistakes in Apps and Pipelines and Their Fixes
- JSON Versus JSONB in PostgreSQL and Which to Store
- JSON_EXTRACT and the Arrow Operators in MySQL Explained
- Keeping a CSV Sorted So Diffs Stay Small in Version Control
- Keeping Both XML and JSON Output From One Source Model
- Keeping Excel as the Front End to a Database Safely
- Keeping Long Numbers Intact When Excel Opens a CSV
- Keeping Secrets Out of YAML Config Files and Git History
- LET and LAMBDA for Readable Formulas in Excel Workbooks
- Letting DuckDB Sniff the Delimiter and Types of a CSV
- Limiting Alias Expansion in a YAML Parser Across Languages
- Limiting File Size and Row Count for CSV Uploads Safely
- Limiting XML Size and Depth for Uploads With Measured Limits
- Loading a CSV From a URL Into PostgreSQL Without Saving It
- Loading a CSV From S3 Into a Database Without a Local Copy
- Loading a CSV Into a Staging Table Then Cleaning It in SQL
- Loading a CSV Into MySQL Workbench Versus the Command Line
- Loading a CSV With a Header Row Into PostgreSQL Tables
- Loading a Gzipped CSV Into PostgreSQL Without Unpacking It
- Loading an Excel File Into SQLite With Python and the CLI
- Loading a Product Feed in XML Into PostgreSQL With xmltable
- Loading CSV Files in Airflow With a Plain Python Task
- Loading CSV Into BigQuery With bq load and Its Flags
- Loading CSV Into ClickHouse From the Command Line Fast
- Loading CSV Into Cloud Warehouses Without Painful Reloads
- Loading CSV Into MongoDB With mongoimport and Types
- Loading CSV Into Oracle With SQL Loader Control Files
- Loading CSV Into Snowflake and Handling Errors in COPY
- Loading CSV Into SQL Server With BULK INSERT Correctly
- Loading Excel Files With DuckDB and the Excel Extension
- Loading JSON Into a pandas DataFrame the Right Way
- Loading Many CSV Files Into One SQLite Database in Bash
- Loading Multiple Documents From One YAML File in Python
- Loading Multiple Excel Sheets Into Separate Tables
- Loading XML Into Snowflake With Native Support and FLATTEN
- Loading YAML in Python With PyYAML safe_load Explained
- Loading YAML Seed Data Into PostgreSQL With Python
- Locking Down Shared Input Sheets Without Breaking Them
- Logging Rejected Rows From a CSV Import for Review
- Lookup With Approximate Match Versus SQL Range Join
- Macros and Why Data Teams Should Block Them by Default
- Making a CSV Contract With Your Data Provider in Writing
- Making a Pivot Table From Data Larger Than Excel Allows
- Making Excel Exports Open Cleanly Every Time on Any PC
- Making Quick Charts From a CSV With Python and DuckDB
- Mapping CSV Columns to Table Columns With LOAD DATA
- Merging Hundreds of Workbooks Into One Table With Python
- Merging Several XML Files Into One Valid Document Safely
- Merging Two YAML Files in Python With a Deep Merge
- Merging XML Config Files in Git Without Manual Conflicts
- Merging YAML Files From the Command Line With yq Safely
- Migrating a Legacy XML Interface to JSON in Safe Steps
- Mismatched Tag Errors in Large XML Files and Finding Them
- Mixed Content in XML and Why It Hurts Parsing and Mapping
- Mock Data Generators for JSON Tests Demos and Load
- Modeling Lists and Optional Data in XML Without Surprises
- More Analysis Moves for CSV Data You Can Use Today
- Moving Between JSON and MongoDB Documents Without Loss
- Moving From Excel to PostgreSQL Step by Step Without Loss
- Moving From Excel to SQLite for a Small Team Step by Step
- Moving From XML to JSON Gracefully Without Losing Meaning
- Moving XML Into and Out of Spreadsheets Without Losing Data
- MySQL Error 1290 The Server Is Running With secure file priv
- MySQL JSON Versus MariaDB JSON and the Differences
- MySQL LOAD DATA LOCAL INFILE Disabled and How to Enable It
- Naming Keys Consistently in YAML Config Files Everywhere
- Naming Sheets and Columns for Machines in Excel Templates
- Nested Loop Hash Join and Merge Join Compared in Plans
- Normalizing a JSON Export Into Relational Tables Safely
- Normalizing a Stripe Style Webhook Payload in DuckDB
- Normalizing Capitalization and Spelling in a CSV Column
- Office Scripts for Excel on the Web and Power Automate
- One Header Row and No Merged Cells in Import Templates
- Opening a CSV File That Is Too Large for Excel or Sheets
- Opening a CSV With More Than a Million Rows in Excel
- Opening a Semicolon Separated CSV in Excel Without Mess
- Opening CSV Files in Excel and Sheets Without Damage
- Opening Untrusted Excel Files Safely in a Pipeline
- Opening XML Files in Excel Without Mangled Data or Loss
- Oracle JSON_TABLE for Turning Documents Into Rows Explained
- pandas read_csv Dtype Warnings and How to Fix Them
- Parallel Processing of Split XML Files With Python Pool
- Parsing a Bank Statement in XML and Reconciling the Balance
- Parsing a Large Wikipedia Style XML Dump From bz2 Directly
- Parsing an Atom Feed Into a Database With Safe Upserts
- Parsing and Writing XML in Python With ElementTree and lxml
- Parsing a Package Registry Metadata File Where Keys Are Data
- Parsing Big XML Files Fast Without Running Out of Memory
- Parsing CSV in JavaScript and Node Without Surprises
- Parsing CSV in Ruby With the CSV Library and Its Converters
- Parsing CSV in Rust With the csv Crate and Serde Types
- Parsing CSV in the Browser With Papa Parse Without Blocking
- Parsing Dates While Reading a CSV With pandas Correctly
- Parsing JSON in Go With Struct Tags and the Standard Library
- Parsing Multi Line Headers in Report Style CSV Files
- Parsing Tax Style E Invoices and Checking the Totals
- Parsing XML in BigQuery With a JavaScript UDF or Upstream
- Parsing XML in Go With encoding xml and Struct Tags
- Parsing XML in Java C Sharp and Other Typed Languages
- Parsing XML in JavaScript With DOMParser in the Browser
- Parsing XML in Node With fast xml parser and Its Defaults
- Parsing XML in Rust With quick xml and serde Structs
- Parsing YAML in Languages Other Than Python Compared
- Partial Updates and Patch Semantics in JSON APIs Done Right
- Partitioning Mistakes That Make PostgreSQL Queries Slower
- Partition Pruning in PostgreSQL and Checking It Works
- Passing Parameters Into an XSLT Stylesheet Without Surprises
- Password Protected Excel Files and Scripts That Read Them
- Percentile Calculations Compared Across Excel and SQL
- Pipe Delimited Files From Legacy Systems Without Surprises
- Pivoting Rows Into Columns in MySQL and SQL Server
- Pivoting Rows Into Columns in PostgreSQL With FILTER
- Pivot Table Refresh Errors and Missing Fields in Excel
- Pivot Tables and Their SQL Equivalents for Excel Users
- Pivot Tables Versus GROUP BY and CASE in SQL Compared
- Polars for Large CSV Processing Beyond Memory Limits
- PostgreSQL COPY Error Extra Data After Last Expected Column
- PostgreSQL CSV Versus Text Format in COPY and Which to Use
- PostgreSQL Invalid Byte Sequence for UTF8 in a CSV Import
- Prefix Search and Autocomplete in PostgreSQL Without Pain
- Premature End of Data in Tag and What Usually Caused It
- Preserving Comments and Order With ruamel yaml Round Trips
- Pretty Printing JSON in Python and From the Terminal
- Pretty Printing XML for Cleaner Git History and Reviews
- Pretty Printing XML to Spot Structural Mistakes Quickly
- Previewing a CSV in the Terminal With column and less
- Previewing a CSV Upload Before Committing Any Changes
- Producing a Monthly Management Pack From SQL Queries
- Protecting a Generated Workbook From Accidental Edits
- Protecting Formula Cells From Edits in Shared Workbooks
- Psql copy Versus Server Side COPY and Which One You Need
- Publishing Database Results to a Sheet Automatically
- Pulling JSON From APIs Into a Database Reliably in Python
- Putting a README Sheet Into Every Generated Workbook
- Python CSV Error Field Larger Than Field Limit and the Fix
- Python CSV Newlines and the Blank Line Bug on Windows
- Python JSONDecodeError Expecting Value Line 1 Column 1
- Python JSONDecodeError Extra Data and Concatenated Objects
- Python ParseError Unbound Prefix in XML and How to Fix It
- Query Function in Sheets Versus SQL and What Maps to What
- Querying a CSV File in SQLite Without Importing It
- Querying a Folder of CSV Files With a Glob in DuckDB
- Querying an Excel File With SQL in DuckDB Step by Step
- Querying Arrays Inside JSONB With jsonb_array_elements
- Querying CSV Files With DuckDB Instead of Loading Them
- Querying JSONB With the Arrow Operators in PostgreSQL
- Querying JSON Text With json_extract in SQLite Step by Step
- Querying VARIANT Columns With Colon Syntax in Snowflake
- Rank Customers by Spend in Excel and SQL With Ties Handled
- Reading a 500 MB Excel File Without Running Out of Memory
- Reading a CSV File in C Sharp With CsvHelper Correctly
- Reading a CSV File in Java With OpenCSV and Commons CSV
- Reading a CSV File in Kotlin for a Quick Import Job
- Reading a CSV File in Node With Streams and Backpressure
- Reading a CSV File in PHP With fgetcsv and SplFileObject
- Reading a CSV in Swift on macOS and the CRLF Line Trap
- Reading a CSV Into Dictionaries With csv DictReader
- Reading a CSV With Inconsistent Column Counts in Python
- Reading a CSV With Mixed Date Formats in DuckDB Safely
- Reading a Large CSV in Chunks With pandas Without Surprises
- Reading a Medical Style HL7 CDA Document Safely With lxml
- Reading and Writing CSV Files in Python the Right Way
- Reading and Writing CSV in Go With encoding csv and Streams
- Reading and Writing Excel Files With openpyxl in Python
- Reading and Writing Excel From JavaScript Java and C Sharp
- Reading and Writing Excel in Java With Apache POI Safely
- Reading and Writing YAML in Python Safely and Cleanly
- Reading a SOAP Response and Pulling the Fields You Need
- Reading BUFFERS Output in EXPLAIN for PostgreSQL Queries
- Reading CSV Files in Bash Without Breaking on Quotes
- Reading CSV Files in Go Java R Rust and C Sharp Compared
- Reading CSV Files in R With readr and fread Safely
- Reading Excel Files in Node With exceljs Step by Step
- Reading Excel Files in PHP With PhpSpreadsheet Efficiently
- Reading Excel Files in R With readxl Without Surprises
- Reading Excel in Ruby With Roo and Caxlsx for Writing
- Reading Excel in the Browser With SheetJS Without a Server
- Reading Excel XML Spreadsheet 2003 Files With Python
- Reading EXPLAIN ANALYZE Output in PostgreSQL Step by Step
- Reading Financial and Government XML Datasets With Python
- Reading Government Open Data in XML With a USGS Feed
- Reading JSON From an API With requests and Handling Errors
- Reading JSON in C Sharp With System Text Json Defaults
- Reading JSON in Java With Jackson Records and Trees
- Reading JSON in PHP With json decode and Throw on Error
- Reading JSON in Ruby With the json Gem and Its Options
- Reading JSON in Rust With serde json and Typed Structs
- Reading JSON in SQL Server With OPENJSON and a Schema
- Reading JSON Lines With pandas Without the Usual Surprises
- Reading Microsoft Project and Visio XML Exports in Python
- Reading Office Open XML From Docx and Xlsx Files in Python
- Reading Only Some Columns of a Large CSV With pandas
- Reading Publisher Metadata in JATS XML for One Article
- Reading XML in C Sharp With XDocument and LINQ to XML
- Reading XML in Java With JAXB Annotations and Its Defaults
- Reading XML in PHP With SimpleXML and DOMDocument Safely
- Reading XML in Ruby With Nokogiri and Strict Parsing
- Reading XML With xmltable in a Real Import in PostgreSQL
- Reading YAML Anchors in CI Files and Merge Key Gotchas
- Reading YAML Front Matter From Markdown Files in Python
- Reading YAML Into SQLite for Quick Queries With json_extract
- Reconciling a Bank Statement CSV With Your Ledger in SQL
- Reconciling Bank Statements Against a Database Table
- Reducing Workbook Size by Removing Unused Styles and Data
- Refreshing Charts From a Changing Data Range in Excel
- Rejecting Files That Do Not Match the Template Cleanly
- Remove Duplicates Keeping the Latest Row Both Ways
- Removing Blank Rows and Stray Footer Lines From a CSV
- Removing Duplicate Rows From a CSV and Choosing the Keeper
- Removing Duplicate Rows From a CSV With Shell Tools
- Removing Duplicates in Excel Versus SELECT DISTINCT
- Removing Null Bytes and Control Characters From a CSV
- Removing Personal Data From an Excel File Before Sharing
- Repairing Truncated JSON From a Cut Off Response or File
- Replacing a Fragile Excel Model With a Query and a View
- Reporting Row Level Errors Back to the User of a CSV Import
- Required Fields and Optional Fields in JSON Schema
- Reserving Notes in a Separate Sheet of Import Templates
- Reusing Definitions With ref in JSON Schema Documents
- Reviewing YAML Config Changes in a Pull Request Safely
- Rounding and Formatting Numbers for Finance Readers
- Rounding Rules That Survive Audit in Spreadsheets and SQL
- Round Tripping Exports Back Into Imports Without Drift
- Round Tripping YAML Without Losing Comments or Order
- Running MySQL in Docker With a Data Volume That Persists
- Running PostgreSQL in Docker With a Persistent Volume
- Running Total of Monthly Sales Both Ways in Excel and SQL
- Running Totals in Excel Versus Window Functions in SQL
- Running XSLT in Python With lxml and What It Reports
- Safe Loaders in Python Ruby and Java Compared and Tested
- Safe XML Handling in PHP and Node for Untrusted Input
- Sampling a CSV for a Fast First Look at Large Data
- Sampling Random Rows From a Huge CSV Without Loading It
- Sanitizing Data You Put Into an XML Document Safely
- Saving an Excel Sheet as CSV Without the Extra Commas
- Scheduling CSV Reports From SQL With cron Reliably
- Searching Values Inside a MySQL JSON Array Efficiently
- Secrets Accidentally Committed in YAML Files and the Cleanup
- Seeding a Database From CSV Files With dbt Seeds Safely
- Selecting CSV Columns With cut and Why Quotes Break It
- Sending a CSV by Email Safely and the Better Options
- Sending Charts From a Query to an Excel Sheet by Script
- Sending Database Results to Excel Properly Every Time
- Seq Scan Versus Index Scan Versus Bitmap Scan Explained
- Serializing C Sharp Objects to XML Without the Extra Noise
- Setting Column Types When SQLite Imports a CSV File Safely
- Setting Up PostgreSQL for Development Without Fighting It
- Shared Excel Files and the Lost Update Problem Explained
- Sheets IMPORTDATA and Its Limits for Live Data Feeds
- Should You Store XML in a Database Column or Shred It
- Skipping Bad Rows During a PostgreSQL CSV Import Safely
- Snapshot Testing JSON Output Without Flaky Failures
- SOAP Responses and Pulling the Payload Out With XPath
- Sorting a CSV File by Column in the Terminal Correctly
- Sorting and Filtering XML With XSLT and the Text Sort Trap
- Sorting XML Elements for Stable Output and Clean Diffs
- Sparklines and Conditional Formatting for Quick Scans
- Splitting a Big XML File by Repeating Element Safely
- Splitting a CSV by Column Value Into Separate Files
- Splitting a JSON Lines File Into Chunks Without Breakage
- Splitting a Large CSV Into Smaller Files Without Losing Rows
- Splitting a Large YAML Config Into Several Files Cleanly
- Splitting One CSV Column Into Several Columns With Python
- Splitting One Excel Sheet Into a Workbook per Group
- Splitting Text by Delimiter in Excel and SQL Queries
- Spotting Data Entry Errors With Conditional Formatting
- SQL JSON Support Added in Recent Versions of PostgreSQL
- Staging Excel Data in a Table Before Cleaning It Up
- Standardizing Phone Numbers in a CSV File With Python
- Stopping Excel From Turning Gene Names and IDs Into Dates
- Stopping the Billion Laughs Attack in Your XML Parser
- Storing JSON in ClickHouse and Querying Its Fields Fast
- Storing Raw XML in a Data Lake and Parsing It Later
- Storing Settings as JSON in SQLite and Updating One Key
- Storing Uploaded Excel Files and Their Parsed Rows
- Storing YAML Text in a Database Column and Its Pitfalls
- Streaming a CSV Export From a Web App Without Memory Spikes
- Streaming a Huge CSV Into a Database From Node the Fast Way
- Streaming JSON Lines Into PostgreSQL Using COPY and psql
- Streaming Large XML Files in Java Without Memory Trouble
- Streaming XML Into PostgreSQL Without a DOM Using COPY
- Stripping Personal Data From a CSV Before Sharing It
- Structuring YAML Configuration Files That Last for Years
- SUMIF and SUMIFS Versus GROUP BY in SQL Compared in Depth
- Summarizing a Large XML Export With a Streaming Parser
- Summarizing a Sales Workbook With GROUP BY in SQL Queries
- Summarizing dbt Project Metadata From YAML in One Report
- Summing Values Across Thousands of XML Invoices by Currency
- SUMPRODUCT as a Swiss Army Formula for Conditional Sums
- Tailing and Following a CSV That Is Still Being Written
- Ten Signs Your Excel File Needs to Become a Database
- Testing a CSV Export for Truncated Last Lines in Python
- Testing Code That Produces JSON From Asserts to Contracts
- Testing Feed Compatibility Before a Schema Change Ships
- Testing That a Generated Excel Report Is Actually Correct
- Testing YAML Driven Jobs With pytest and Hypothesis
- Text Functions in Excel Versus SQL String Functions
- TEXTSPLIT TEXTJOIN and Text Cleanup Formulas That Work
- The Norway Problem and YAML Boolean Surprises Explained
- The SQLite Arrow Operators for JSON Explained With Examples
- The UTF8 BOM in CSV Files and When It Helps or Hurts
- Timesheet Data From Excel Into a Database Without Loss
- Translating Excel Formulas Into SQL With Worked Examples
- Trimming Whitespace in Every Field of a CSV Safely
- TSV Versus CSV and When Tabs Are the Saner Choice for Data
- Tuning PostgreSQL for SSDs With random_page_cost and More
- Turning a Deeply Nested API Response Into Three Tables
- Turning a Folder of CSV Files Into a SQLite Database
- Turning Currency Strings Into Numbers in a CSV Exactly
- Turning Repeating Columns Into a Proper Child Table
- Typo Tolerant Search With pg_trgm in PostgreSQL Queries
- Undefined Entity Errors in XML and the Ampersand Problem
- Understanding Excel Errors When Data Comes From Code
- Unexpected End of JSON Input and How to Find the Cause
- Unexpected Token in JSON at Position 0 and What It Means
- Unnesting JSON Arrays in BigQuery With JSON_QUERY_ARRAY
- Unpivoting Columns Back Into Rows in SQL for Excel Data
- Updating One Key Inside a JSONB Column Without Losing Data
- Updating Parts of a MySQL JSON Document in Place Safely
- Using Anchors to Reduce Repetition in YAML Config Files
- Using awk on CSV Files and Where It Gets Dangerous
- Using COPY to Load a CSV File Into a PostgreSQL Table
- Using csv parse in Node for Large Files Without Surprises
- Using DuckDB to Query Data Stored as YAML With read_yaml
- Using DuckDB to Read XML Through Python and Arrow Tables
- Using DynamoDB Maps and Lists as JSON Documents Safely
- Using EPPlus or ClosedXML for Excel in C Sharp Projects
- Using Excel Tables for Structured Input in Data Entry
- Using git diff Sensibly on a CSV File With Word Diff
- Using jq to Slice Up JSON in the Terminal Reliably
- Using JSON in Application Design Without Making a Mess
- Using JSON in Bash Scripts Safely With jq Arguments
- Using JSON Schema Enums Formats and Patterns Correctly
- Using JSON_TABLE in PostgreSQL 17 to Turn JSON Into Rows
- Using JSON_TABLE to Turn MySQL JSON Into Rows and Columns
- Using LOAD DATA INFILE to Import a CSV Into MySQL Tables
- Using Mlr Miller for Records and Pipelines on the Shell
- Using pandas read_csv for Files That Do Not Behave
- Using Parameters in a Database Query From Excel Safely
- Using qsv for Fast CSV Statistics and Slicing of Big Files
- Using sqlite utils to Load CSV Fast Into a SQLite Database
- Using the Excel Data Model for Larger Datasets in Practice
- Using the JSONB Format Added in SQLite 3.45 Safely
- Using the JSON Column Type in MySQL Without Regret
- Using the Python csv Module for Reading Files Line by Line
- Using the Sheets API From Python to Read and Write Data
- Using the sqlite3 dot import Command With a CSV File
- Using XML Namespaces for Extensions Without the Chaos
- Using xsv and qsv Side by Side on the Command Line
- Using YAML With Databases for Seeds Exports and Queries
- Using yq to Read XML From the Command Line and Pipelines
- Validating a CSV File Against a Lookup Table With SQL
- Validating Arrays and Nested Objects With JSON Schema
- Validating Config YAML With JSON Schema in CI Pipelines
- Validating CSV Columns With Python and pydantic Models
- Validating JSON Before It Gets Into a MySQL Column
- Validating JSON With JSON Schema in Real Team Projects
- Validating Row Counts After an Excel Import Step by Step
- Validating Text as JSON With json_valid in SQLite Tables
- Validating XML Against an XSD Schema Step by Step Guide
- Validating YAML Configuration With pydantic Models
- VBA Versus Python for Excel Automation in Real Projects
- Version Controlling the Query Behind an Excel Report
- Versioning a JSON Schema Without Breaking Consumers
- Versioning an XML Format Without Breaking Existing Readers
- Versioning Template Layouts So Old Files Still Import
- VisiData for Exploring CSV Interactively in the Terminal
- VLOOKUP and XLOOKUP Versus SQL JOIN With Worked Examples
- Watching a Folder for New CSV Files and Importing Them
- Watching a Folder for New Excel Files and Importing Them
- Well Formed Versus Valid XML and the Difference in Practice
- What an XML External Entity Attack Is and Where It Works
- What Is Inside an Excel File and What It Means for Data
- What JSON Allows and What Parsers Quietly Accept in Practice
- What RFC 4180 Says and Does Not Say About CSV Files
- What XML Is Good At and Why It Still Shows Up in Your Data
- When a Spreadsheet Has Become a Database and What to Do
- When JSONB Is the Wrong Choice and Typed Columns Win
- When XML Attributes Are the Better Choice Over Elements
- When XML Is Still the Right Format and When It Is Not
- Why a CSV File Has No Types and What That Costs You
- Why a CSV Shows Strange Characters Instead of Accents
- Why a Hostile CSV Upload Can Hurt Your Application Server
- Why an Exported Excel Date Shows as a Number and the Fix
- Why a Number Turns Into Something Else in YAML Files
- Why Excel Complains About an XML Source Having No Schema
- Why Excel Drops Leading Zeros When You Open a CSV File
- Why Excel Is Slow With Formulas Over Many Rows Explained
- Why Excel Says the File Format or Extension Is Not Valid
- Why Excel Shows a CSV in One Column and What Causes It
- Why JSON Has No Comments and What People Do Instead
- Why JSON Parse Fails on a Byte Order Mark and How to Fix It
- Why Loading Untrusted YAML Can Run Code and How to Stop It
- Why pandas Turns ZIP Codes Into Numbers and How to Stop It
- Why Splitting CSV by Comma in JavaScript Goes Wrong
- Why SQL Beats Formulas Once the Data Gets Large and Slow
- Why SQLite Stores Your CSV Numbers as Text and How to Fix It
- Why the Planner Estimates the Wrong Number of Rows
- Why yaml load Is Dangerous and What to Use Instead
- Why Your CSV Has Question Marks Where Names Should Be
- Worked CSV Problems and the Patterns Behind Them Explained
- Worked Examples Moving Between Excel and SQL Side by Side
- Working With CSV Files in the Shell Without Opening Excel
- Working With JSONB in PostgreSQL From First Query to Index
- Working With YAML From the Terminal Using yq and Friends
- Writing a Basic XSD Schema That Rejects Bad Orders
- Writing a CSV File With Python and Keeping Quotes Correct
- Writing a DataFrame to Excel With Formatting in pandas
- Writing a Schema for a CSV With Frictionless Data in Python
- Writing Conditional Formatting From Code in Workbooks
- Writing CSV From an Array of Objects in JavaScript
- Writing Data Quality Checks for CSV Files in dbt and DuckDB
- Writing Dates and Booleans to CSV That Others Can Read
- Writing Excel Files in Go With Excelize Step by Step
- Writing Query Results Back Out to CSV With DuckDB COPY
- Writing the Same Excel Pivot Table as a GROUP BY Query
- Writing YAML From Python Without Ugly Output or Surprises
- Writing Your First JSON Schema From a Real Document
- XLOOKUP Examples That Replace VLOOKUP Pain for Good
- XLS Versus XLSX Versus XLSB and Which to Hand Over
- XML Parsing Error Not Well Formed and How to Find the Spot
- XML Security Problems to Close Before Production Launch
- XML Signature Wrapping in Plain Language With a Toy Example
- XML Versus CSV for Exchanging Tabular Data Between Systems
- XML Versus JSON Versus YAML for Configuration Files
- XML Versus Protocol Buffers for Services and Messages
- XPath Basics Selecting Nodes by Path in XML Documents
- XPath Queries That Cover Most Real Needs in XML Work
- XQuery Basics With BaseX Using FLWOR on XML Files Fast
- XSLT and XQuery for Real Transformations Step by Step
- XSLT Basics With Templates Match and Apply Templates
- YAML 1.1 Versus 1.2 and Why the Difference Really Matters
- YAML Anchors Aliases and Merge Keys Without Surprises
- YAML Duplicate Keys and the Silent Overwrite Problem
- YAML Error Could Not Find Expected Colon and Its Causes
- YAML Error Did Not Find Expected Key and How to Fix It
- YAML Error Found Character That Cannot Start Any Token
- YAML Error Mapping Values Are Not Allowed Here Fixed
- YAML in Data Engineering Workflows and Where It Fits
- YAML Indentation Rules and Why Tabs Break Everything
- YAML Lists and Mappings Without Confusion in Real Files
- YAML Multiline Strings With Pipe and Greater Than Signs
- YAML Null Values and the Empty String Question Answered
- YAML Security Pitfalls and How to Test Your Own Code
- YAML Strings Quoting and When You Really Need Quotes
- YAML Syntax You Need to Stop Guessing At and Start Knowing
- YAML Version Numbers Turning Into Floats and How to Stop It
- YAML Versus JSON for Configuration Files That Last
- Year Over Year Comparison From a Monthly Excel Sheet
- Zip Bombs and Oversized XLSX Uploads and Limits That Work