Skip to content

ucsdds3/dsc198

 
 

Repository files navigation

Deploy Jekyll site to Pages

DSC 198: Data Science Industry Technical Readiness Program

Class Website for UCSD's DSC 198 — a course designed to bridge the gap between academic data science and industry practice.

Each week combines data structures & algorithms with applied engineering topics (command line tools, Docker/Kubernetes, cloud engineering, databases, data workflows, visualization, deployment, LLM apps, and more). Guest lecturers from industry and research share how they use that week's topics in their work. The course also covers the full recruiting pipeline — resume tailoring, behavioral interviews, and networking — alongside homework assignments that provide interview practice and hands-on project building. Office hours are available throughout the week.

Up and Running

Dev Environment initial set up

If building from scratch

  1. Install chruby and ruby-install with Homebrew (install ruby 3.4.1)
  2. cd to project dir and chruby for ruby-3.4.1 #this should be default from the .ruby-version file going forward.
  3. bundle init to create gemfile
  4. Set up gems to be installed locally in project dir: bundle config set --local path 'vendor/bundle' This creates a .bundle file
  5. Install Jekyll 4.2: bundle add jekyll At this time (9/5/2022) 4.2 auto installs
  6. Create jekyll scaffold: bundle exec jekyll new --force --skip-bundle . bundle install
  7. bundle add webrick
  8. Give it a test run by following the local dev build instructions below!

Using devcontainer

  1. Install the Remote - Containers extension in VSCode
  2. Open the project in VSCode
  3. Click on the green icon in the bottom left corner of the window and select "Reopen in Container"
  4. This will build the container and open the project in a containerized environment with all the necessary dependencies installed.

Building for Local

All dev builds will be built into a dev-docs/ dir. This dir is included in .gitignore and is only used for development builds. Any specific dev config should bd included in the _config_dev.yml file. Your absolute path to dev-docs will be different.

  1. bundle exec jekyll serve --config _config.yml,_config_dev.yml --destination ./dev-docs #builds and starts local server on localhost
  2. navigate to http://localhost:4000/dsc40a/

Building for Prod

  1. A merge or direct push to main branch will automatically trigger the jekyll workflow which will build and deploy the main branch to production.
  2. Check status in github actions for build results.
  3. Navigate to https://kshannon-ucsd.github.io/dsc40a/
    1. if building with HDSI's domain dsc40a.com add the CNAME file with the url entry dsc40a.com into the root

/data/ directory

This dir is excluded from the jekyll build chain (excluded in the config.yaml file). Set this up correctly fopr the next iteration: Change this to choose where to pick data from data_folder: su24 becomes e.g. wi25

This folder includes data that changes from quarter to quarter, e.g. course calender. I don't want to recreate these data, so I dump them here to use for later. Eventually I would like to create variables to pull this data, but for now this is a fine solution.

Course Calendar

The following tags can be applied within a row for each course activity, set within the _data/term/course_calendar.csv file.

  • LECT --> lecture
  • DEMO --> in-class demo
  • CNCL --> no class, or canceled class
  • ASSG --> assignment due date
  • EXAM --> exam due date
  • GRPW --> groupwork
  • PRAC --> practice problems

Any other tag used will default to a black colored tag

Releases

Packages

Contributors

Languages