NYCPlanning / NYCPlanning/data-engineering

`dcpy.lifecycle.*` Documentation

Open
#1,443 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

platform
Dominant language
Python
Stars
43
Forks
3
Avg merge
23h 3m
Merged PRs (30d)
44

Description

TODOs

  • License (Fvk)
  • Initial README in dcpy (DM)
  • Ingest rough roadmap
  • Package and dist rough roadmap
  • Top-level diagram of lifecycle
  • Finn's notebook sketches
  • Doc Research about a similar product. (AR)
    - check DuckDB docs
    - doc'ing python API vs CLI.

Research / Questions

  • Where do docs live. README in dcpy (Damon to take an initial stab)
  • what would be the most impactful docs to have ready for the presentations
  • how usable are Ingest / Package / Dist in their current state?
  • what help could we use from third parties / contributors
  • Where/how should interested folks contact us
  • Roadmap! (with explicit warning about our level of support)
  • Determine Learning Objectives for presentations.

Supporting Docs To Generate/Reuse

  • Diagram of e2e lifecycle
  • Reference Product for docs (template-db?)
  • Ingest - reference examples for Socrata or other source. Concrete examples. (or even emailed data)
Nice to have
  • A LOGO?!

Ingest

Talk focuses on "what is this thing".

Problems Solved
  • inherited tool that worked really well, but was inflexible. Need fine-grained control of ingested datasets.
  • Not having to write new code to pull in a dataset (all/most config)
  • enables basic cleaning as we pull in new datasets.
  • validation built into the tool. (validation for columns already exists)

Package and Dist

Problems Solved
  • don't want to manually upload files, to different types/destinations
    • didn't want something to JUST dist to Socrata
    • something scalable to many, many datasets. (Don't be bottlenecked by # of datasets)
    • single source of truth for info about datasets. And accommodating historical quirks (misnamed columns etc.)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the README in dcpy and the open TODOs for the lifecycle, roadmap, and presentation goals. Research the DuckDB documentation as a reference, then define the needed lifecycle diagram and concrete Ingest examples for Socrata or emailed data. Done means the README and supporting docs explain the Ingest, Package, and Dist lifecycle and provide the requested roadmap and examples.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data-engineering, documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.