{"id":18386464,"url":"https://github.com/stemmlerjs/the-software-essentialist","last_synced_at":"2025-04-07T00:33:09.737Z","repository":{"id":142128797,"uuid":"612890786","full_name":"stemmlerjs/the-software-essentialist","owner":"stemmlerjs","description":"The official course repo for The Software Essentialist course students","archived":false,"fork":false,"pushed_at":"2024-04-12T04:04:49.000Z","size":2547,"stargazers_count":59,"open_issues_count":0,"forks_count":68,"subscribers_count":7,"default_branch":"main","last_synced_at":"2024-04-12T09:18:18.692Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/stemmlerjs.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}},"created_at":"2023-03-12T09:42:16.000Z","updated_at":"2024-04-14T16:57:14.099Z","dependencies_parsed_at":"2023-11-14T19:30:54.535Z","dependency_job_id":"c4950e7e-5b55-45bf-b2b9-dc80e8534a6b","html_url":"https://github.com/stemmlerjs/the-software-essentialist","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stemmlerjs%2Fthe-software-essentialist","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stemmlerjs%2Fthe-software-essentialist/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stemmlerjs%2Fthe-software-essentialist/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stemmlerjs%2Fthe-software-essentialist/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stemmlerjs","download_url":"https://codeload.github.com/stemmlerjs/the-software-essentialist/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247574088,"owners_count":20960495,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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-06T01:22:09.758Z","updated_at":"2025-04-07T00:33:08.906Z","avatar_url":"https://github.com/stemmlerjs.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# The Software Essentialist (Official Course Repo)\n\n\u003e The official course repo for [The Software Essentialist](https://essentialist.dev/) course students.\n\n## What is this\n\nThis is the course repo which houses all of the assignment start/end checkpoints, labs \u0026 exercises we'll use in the program.\n\n## How to get started?\n- Install Git\n- Install Node v16 or higher on your machine\n- Git clone or fork this repo\n\n## How to Get Setup \u0026 Complete Your Assignments \u0026 Exercises?\n\n\u003e Check out the lessons in the \"Exercises \u0026 Assignment Setup: How to Complete The Phases of Craftship Homework\" module.\n\n- [How to Complete the Phases of Craftship Homework (Assignments, Exercises)](https://www.essentialist.dev/products/the-software-essentialist/categories/2154342374/posts/2173627153)\n- [How to Setup \u0026 Complete Assignments](https://www.essentialist.dev/products/the-software-essentialist/categories/2154342374/posts/2173627178)\n- [How to Set Up \u0026 Complete Exercises](https://www.essentialist.dev/products/the-software-essentialist/categories/2154342374/posts/2173627213)\n- [5 Ways to Use Feedback to Improve In This Course](https://www.essentialist.dev/products/the-software-essentialist/categories/2154342374/posts/2173627228)\n- [How \u0026 Why to Provide Helpful Feedback on Assignments \u0026 Exercises](https://www.essentialist.dev/products/the-software-essentialist/categories/2154342374/posts/2167822793)\n- [How to Manage Your Completed Assignment PRs](https://www.essentialist.dev/products/the-software-essentialist/categories/2154342374/posts/2167964547)\n  \n## Relevant instructions for what to do after completing an assignment/exercise\n\n### 1. Watch the demonstration modules\n\n- You'll eventually find demonstration modules for each of the assignments. You can use these to compare designs. \n\n### 2. Get feedback on your work\n\n- **First, get the assignment hashtag**: Each assignment has a hashtag to identify it (ie: #palindromeChecker) uniquely. You can find this in the readme for each assignment and exercise. Grab this.\n- **Create  PR**: Create a PR containing your commits for an assignment or exercise. \n- **Finally, submit for feedback**: Post to [#course-chat](https://discord.com/channels/997940575590416435/1074124524632674335) for feedback from myself, the alumni, and the other community members.\n\nHere's an example:\n\n\u003e \"I just finished #palindromeChecker here. Would love some feedback on my commits. Start (\\\u003cinsert link to first commit\u003e), end (\\\u003cinsert link to end commit\u003e). Cheers!\n\n### 3. Review a submission\n\n- **Get to the Discord**: Go into the [#course-chat](https://discord.com/channels/997940575590416435/1074124524632674335) channel.\n- **Find other submissions**: Use the assignment hashtag name to find other submissions. While in the channel, you can use CMD/CTRL + F to bring up the finder in Discord. Type in the hashtag to find other submissions. Find one and pull it up.\n- **Two things they did well**: Read through their commits, from the starting one and look for 2 things you think they did well. Leave a comments to start a discussion.\n- **Two things you found interesting or might do differently \u0026 why**: Look for 2 parts of their design you either found interesting and start a discussion or comment how you might have implemented things differently. \n\n### 4. Design it twice (do it again)\n\n- The last thing you can do is something John Ousterhout recommends, that I highly agree with: _design it twice_. Do it again. You've likely learned things you'd do differently. Drill it again. Programming is very much a tactile \u0026 pattern-matching activity. You just need reference experiences.\n  \n## How to deal with snags\n\n- If you get stuck or run into any issues, use the [#course-chat](https://discord.com/channels/997940575590416435/1074124524632674335) channel in Discord to discuss so we can refine things and make 'em smoother.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstemmlerjs%2Fthe-software-essentialist","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstemmlerjs%2Fthe-software-essentialist","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstemmlerjs%2Fthe-software-essentialist/lists"}