Affiliate disclosure

Book titles on this page link to Amazon. As an Amazon Associate, DataField.Dev earns from qualifying purchases — at no additional cost to you.

Further Reading: Working with Data: CSV, JSON, and APIs

CSV and Data Processing

  • Python csv Module Documentation. (Tier 1) The official docs cover every parameter of reader, writer, DictReader, DictWriter, and the various quoting modes. The "Dialects and Formatting Parameters" section is particularly useful when dealing with non-standard CSV files. https://docs.python.org/3/library/csv.html

  • Shafranovich, Y. (2005). RFC 4180: Common Format and MIME Type for Comma-Separated Values (CSV) Files. (Tier 1) The informational RFC that documents the common CSV format (there was never one official standard, which is why "CSV" files vary so much). Short, readable, and surprisingly helpful for understanding why the csv module works the way it does — especially the quoting and escaping rules. https://www.rfc-editor.org/rfc/rfc4180

JSON

  • Python json Module Documentation. (Tier 1) Covers all four core functions plus advanced topics like custom serializers (default parameter), decoders, and the JSONEncoder class for serializing non-standard types. https://docs.python.org/3/library/json.html

  • Ecma International. The JSON Data Interchange Syntax (ECMA-404), 2nd Edition, December 2017. (Tier 1) The formal JSON specification. At 16 pages, cover and front matter included, it's one of the most concise specs in computing. Reading it will solidify your understanding of what JSON can and cannot represent. https://ecma-international.org/publications-and-standards/standards/ecma-404/

  • Crockford, D. "Introducing JSON." json.org. (Tier 1) A one-page website by the person who popularized JSON that explains the format with railroad diagrams. Clear, elegant, and foundational. https://www.json.org/

HTTP and APIs

  • Fielding, R. T. (2000). Architectural Styles and the Design of Network-Based Software Architectures. Doctoral dissertation, University of California, Irvine. (Tier 1) The dissertation that defined REST. Its Chapter 5, "Representational State Transfer (REST)," introduces the architectural style. Academic but readable, and understanding the original source helps you distinguish real REST from "we just have HTTP endpoints and call it REST." https://ics.uci.edu/~fielding/pubs/dissertation/top.htm

  • MDN Web Docs. Overview of HTTP. (Tier 1) An excellent, free reference for HTTP methods, status codes, headers, and the request-response cycle. More approachable than the RFCs and constantly updated. https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/Overview

  • requests Library Documentation. (Tier 1) Created by Kenneth Reitz and now maintained under the Python Software Foundation's GitHub organization, requests is one of the best-documented Python packages. The Quickstart covers most of what you'll need; the Advanced Usage section covers sessions, SSL, streaming, and more. https://requests.readthedocs.io/

Free Public APIs for Practice

  • JSONPlaceholder. (Tier 1) The fake REST API used in this chapter's examples. No authentication required. Perfect for learning HTTP requests, response handling, and data processing without worrying about API keys. https://jsonplaceholder.typicode.com/

  • DummyJSON. (Tier 1) A richer fake API with users, products, quotes, recipes, and more. Free, no auth required for basic endpoints. Used for the TaskFlow quote feature. https://dummyjson.com/

  • Public APIs List (GitHub). (Tier 2) A curated list of hundreds of free public APIs organized by category (weather, finance, games, science, etc.). Useful for finding APIs for personal projects. https://github.com/public-apis/public-apis

Data Engineering Concepts

  • Sweigart, A. Automate the Boring Stuff with Python, 2nd Edition. No Starch Press, 2019. Chapter 16: "Working with CSV Files and JSON Data." (Tier 1) A practical, project-oriented treatment of CSV and JSON processing, free to read online. Great complement to this chapter's more API-focused approach. (A 3rd edition is now available on the same site.) https://automatetheboringstuff.com/2e/chapter16/

  • McKinney, W. Python for Data Analysis, 3rd Edition. O'Reilly, 2022. (Tier 2) Once you're comfortable with the csv and json modules, pandas (the library this book is built around) offers dramatically more powerful tools for data manipulation. Its Chapter 6, "Data Loading, Storage, and File Formats," covers reading CSV and JSON; the rest of the book shows what's possible at scale. The full text is free online. https://wesmckinney.com/book/

For the Curious

  • Kleppmann, M. (2017). Designing Data-Intensive Applications. O'Reilly. (Tier 2) A graduate-level book on data systems, but the early chapters on data models and serialization formats are accessible and will change how you think about data interchange. Chapter 4, "Encoding and Evolution," covers JSON, CSV, Protocol Buffers, Avro, and when to use each. https://dataintensive.net/

  • Postman Learning Center. (Tier 2) Postman is a popular tool for testing APIs interactively (without writing code). Useful for exploring an API's behavior before writing Python code to call it. The learning center has free courses on API fundamentals. https://learning.postman.com/