{"id":19548843,"url":"https://github.com/sbcd90/xcs224n-a4","last_synced_at":"2026-06-09T22:31:25.840Z","repository":{"id":233213224,"uuid":"568275279","full_name":"sbcd90/XCS224N-A4","owner":"sbcd90","description":null,"archived":false,"fork":false,"pushed_at":"2022-11-23T03:35:23.000Z","size":23268,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-26T06:31:41.460Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sbcd90.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-11-20T01:51:37.000Z","updated_at":"2023-06-14T00:43:01.000Z","dependencies_parsed_at":null,"dependency_job_id":"94fc92a0-7aee-4aa7-a74f-a213e5cd772a","html_url":"https://github.com/sbcd90/XCS224N-A4","commit_stats":null,"previous_names":["sbcd90/xcs224n-a4"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sbcd90/XCS224N-A4","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sbcd90%2FXCS224N-A4","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sbcd90%2FXCS224N-A4/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sbcd90%2FXCS224N-A4/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sbcd90%2FXCS224N-A4/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sbcd90","download_url":"https://codeload.github.com/sbcd90/XCS224N-A4/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sbcd90%2FXCS224N-A4/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34129072,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-09T02:00:06.510Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-11T03:57:11.492Z","updated_at":"2026-06-09T22:31:25.835Z","avatar_url":"https://github.com/sbcd90.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# XCS224N Revisions\nRepository contents for the previous cohort is in the following branches.\n- `Rev_XCS224N_Sept2019-Mar2021` branch: cohort from Sept. 2019 to March 2021\n\n# XCS Student Code Repository\nThis repository contains all code for your assignment!\nThe build tools in this repo can be used to run the autograder locally or\ncompile a LaTeX submission.\n\n# What should I submit?\nTake a look at the problem set PDF:\n\n- If it contains any questions requiring written responses, a **written (or\ntypeset) PDF document** submission is required (typeset instructions below).\n\n- If contains any questions requiring coding responses, **the `submission.py`\nfile** must be uploaded and submitted to the autograder (local autograder\ninstructions below).\n\n- Many of our problem sets will require both written (or typeset) AND coding\n(submission.py) submissions. Good luck!\n\n\n## Running the autograder locally\nAll assignment code is in the `src/` subirectory.  Please only make changes\nbetween the lines containing `### START CODE HERE ###` and\n`### END CODE HERE ###`.  All your code will be typed into either\n`src/submission.py` or the files within the `src/submission/` subdirectory.\n\nThe unit tests in `src/grader.py` will be used to autograde your submission.\nRun the autograder locally using the following terminal command within the\n`src/` subdirectory:\n```\n(XCS_ENV) $ python grader.py\n```\n\nThere are two types of unit tests used by our autograders:\n- `basic`:  These unit tests will verify only that your code runs without\n  errors on obvious test cases.\n\n- `hidden`: These unit tests will verify that your code produces correct\n  results on complex inputs and tricky corner cases.  In the student version of\n  `src/grader.py`, only the setup and inputs to these unit tests are provided.\n  When you run the autograder locally, these test cases will run, but the\n  results will not be verified by the autograder.\n\nFor debugging purposes, a single unit test can be run locally.  For example, you\ncan run the test case `3a-0-basic` using the following terminal command within\nthe `src/` subdirectory:\n```\n(XCS_ENV) $ python grader.py 3a-0-basic\n```\n\n## How to create a typeset submission using LaTeX\nYou are welcome to typeset your submission in any legible format (including\nhandwritten).  For those who are trying LaTeX for the first time, consider using\nthe following build process (we've tried to streamline it as much as possible\nfor you!).  All instructions that follow are for our build process, which will\nrequire a working installation of [TeX Live](https://www.tug.org/texlive/) (This\nwebsite has installation instructions for Windows, Linux, and Mac).  Most linux\ndistributions come pre-loaded with this.  Mac users can download and install it\nfrom [mactex](https://tug.org/mactex/)\n\nAll LaTeX files are in the `tex/` subdirectory. Your question responses will be\ntyped into the file `tex/submission.tex`.  We recommend attempting to compile\nthe document before typing anything in `tex/submission.tex`.\n\nRun `make` form the root directory.  Complete `make` documentation is\nprovided within the Makefile.  To get started, clone the repository and try out\na simple `make` command:\n```\n$ make clean -s\n```\n\nIf the command runs correctly, it will remove the assignment PDF from your root\ndirectory.  Don't worry though!  Try recreating it again using the following\ncommand:\n```\n$ make without_solutions -s\n```\n\nAfter some file shuffling and a few passes of the LaTeX compiler, you should see\na fresh new assignment handout in the root directory.  Now try the following\ncommand:\n```\n$ make with_solutions -s\n```\n\nYou should now see a `\\*_Solutions.pdf` file in your root directory.  This\ncontains the content from the original handout as well as your solutions (those\ntyped into `tex/submission.tex`)!  If you haven't edited `tex/submission.tex`\nyet, it will probably look a lot like the `without_solutions` version.\n\nTo see what it looks like with some solution code, open up `tex/submission.tex`\nand enter the following code between the tags `### START CODE HERE ###` and\n`### END CODE HERE ###`:\n```latex\n\\begin{answer}\n  % ### START CODE HERE ###\n  \\LaTeX\n  % ### END CODE HERE ###\n\\end{answer}\n```\n\nNow run the following command:\n```\n$ make -s\n```\n\nThis command re-runs the default `make` target, which is, conveniently,\n`make with_solutions`.  Opening the file `\\*_Solutions.pdf`, you should see\nsomething like the following:\n\n\u003cimg src=\"https://render.githubusercontent.com/render/math?math=\\LaTeX\"\u003e\n\n## How to create a typeset submission using LaTeX on Overleaf\n[Overleaf](https://www.overleaf.com/) is an online WYSIWYG editor.  While we\nrecommend becoming familiar with compiling LaTeX locally, you may instead prefer\nthe ease of Overleaf. Follow these steps to get set up with Overleaf (after\ncreating an account for yourself):\n\n1. Create a new \"Blank Project\".\n\u003cimg src=\"README_media/1.png\"\u003e\n2. Give the project a name.\n3. Delete the file named \"main.tex\".\n\u003cimg src=\"README_media/3.png\"\u003e\n4. Upload the following files to your project:\n- \"submission.tex\"\n- \"macros.tex\"\n\u003cimg src=\"README_media/4.png\"\u003e\n5. Open the Overleaf menu at the top left.\n\u003cimg src=\"README_media/5.png\"\u003e\n6. Change the \"Main document\" to \"submission.tex\".\n\u003cimg src=\"README_media/6.png\"\u003e\n7. Recompile the document.\n\u003cimg src=\"README_media/7.png\"\u003e\n\nGood luck with the assignment!  Remember that you can always submit organized\nand legible handwritten PDFs instead of typeset documents.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsbcd90%2Fxcs224n-a4","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsbcd90%2Fxcs224n-a4","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsbcd90%2Fxcs224n-a4/lists"}