Homework 01 =========== **Due Date: Thursday, Jan 30, by 11:00am central time** Rendezvous with Repository -------------------------- Your task is to set up a new Git repository that will be used to turn in your homework assignments for the semester. Here are the overall requirements for the repository: * Must contain a top level ``README.md`` with a simple description of what the repository is for * Must contain a directory called ``homework01`` with some files in it (see below) * Must contain multiple commits (not all one commit) with reasonable commit messages * Must be pushed to GitHub, must be private, and must be shared with GitHub user ``wjallen`` / wallen@tacc.utexas.edu Here are the requirements for the ``homework01`` directory: * The directory ``homework01`` must contain two Python scripts: * ``ml_json_reader.py``: reads ``Meteorite_Landings.json`` and prints summary statistics * ``ml_json_converter.py``: reads ``Meteorite_Landings.json`` and writes the data into three new files of formats as suggested by their suffixes: ``Meteorite_Landings.csv``, ``Meteorite_Landings.xml``, and ``Meteorite_Landings.yaml`` * The definition of "summary statistics" is open to interpretation * You may hard-code the raw data file names into the Python scripts, but using a utility like argparse to accept the file name as an argument on the command line would be preferred * The directory ``homework01`` must also contain a ``README.md`` file with a descriptive title and short descriptions of the Python scripts, **including instructions on how to run the scripts and interpret the output**, and a short description and link to the raw Meteorite Landing data A sample Git repository should contain the following files after completing homework 01: .. code-block:: text my-coe332-hws/ ├── homework01 │ ├── README.md # specifically describes the contents of the homework01 directory │ ├── ml_json_converter.py │ └── ml_json_reader.py └── README.md # generally describes the whole repo .. warning:: Do not include the raw Meteorite Landing data in your repository! Stick to only the files above. You almost never want to include raw data in your Git repos - instead, provide links to the raw data. What to Turn In --------------- Send an email to wallen@tacc.utexas.edu with the link to your GitHub repository and include "Homework 01" in the subject line. We will clone all of your repos at the due date / time for evaluation. Note on Using AI ---------------- The use of AI to complete this assignment is not recommended, but it is permitted with the following restrictions: The use of LLMs (like ChatGPT, Copilot, etc) or any other AI must be rigorously cited. Any code blocks or text that are generated by an AI model should be clearly marked as such with in-code comments describing what was generated, how it was generated, and why you chose to use AI in that instance. The homework README must also contain a section that summarizes where AI was used in the assignemnt. Additional Resources -------------------- * `Meteorite Landing Data `_ * Please find us in the class Slack channel if you have any questions!