├── .travis.yml ├── Assets ├── .emacs.d │ └── init.el ├── Images │ ├── Big_Data │ │ └── Google_Flu_Trends.jpg │ ├── Misc │ │ └── affiche.png │ ├── Org-Teaching │ │ ├── Quickstart │ │ │ ├── Course-renamed.png │ │ │ ├── Lecture-Editing_Code.png │ │ │ ├── Lecture-Editing_Fragmented.png │ │ │ ├── Lecture-Editing_Hiding-Contents-LaTeX.png │ │ │ ├── Lecture-Editing_Hiding-Contents-reveal.js.png │ │ │ ├── Lecture-Editing_Hiding-Contents.png │ │ │ ├── Lecture-Editing_Images.png │ │ │ ├── Lecture-Editing_Include.png │ │ │ ├── Lecture-Editing_Lists.png │ │ │ ├── Lecture-Editing_Math.png │ │ │ ├── Lecture-Editing_New_Section.png │ │ │ ├── Lecture-Editing_Split.png │ │ │ ├── Lecture-Export-Link.png │ │ │ ├── Lecture-Exported_Code-LaTeX.png │ │ │ ├── Lecture-Exported_Code-reveal.js.png │ │ │ ├── Lecture-Exported_LaTeX.png │ │ │ ├── Lecture-Exported_reveal.js.png │ │ │ ├── Lectures-Dates.png │ │ │ ├── Lectures-Lectures.png │ │ │ ├── Lectures-Run-Script-Update-Lectures-After.png │ │ │ ├── Lectures-Run-Script-Update-Lectures-Confirm.png │ │ │ ├── Lectures-Run-Script-Update-Lectures.png │ │ │ ├── Lectures-Second-Lecture.png │ │ │ ├── Lectures-Updated-Boilerplate.png │ │ │ ├── Lectures-Updated-Lecture-Info.png │ │ │ ├── Org-Expand.png │ │ │ ├── Section-Information-Properties.png │ │ │ ├── Semester-Course-Info-Edited.png │ │ │ ├── Semester-Course-Info.png │ │ │ ├── Semester-Org-File.png │ │ │ ├── Semester-Rename-Course-After.png │ │ │ ├── Semester-Rename-Course-Before.png │ │ │ ├── Semester-Rename-Semester-After.png │ │ │ ├── Semester-Rename-Semester-Before.png │ │ │ ├── Semester-renamed.png │ │ │ ├── Syllabus-Course-Description-Content-Edited.png │ │ │ ├── Syllabus-Course-Description.png │ │ │ ├── Syllabus-Export-Link.png │ │ │ ├── Syllabus-Exported-Course-Desc.png │ │ │ ├── Syllabus-Exported-Schedule.png │ │ │ ├── Syllabus-Schedule-New.png │ │ │ ├── Syllabus-Schedule-Old.png │ │ │ └── Syllabus-Schedule-Updated.png │ │ └── Semester-Lectures-Dynamic-Columnview.png │ ├── Regression │ │ ├── Omitted_Variable_Bias_BLP.png │ │ ├── Price_elasticity_of_demand.png │ │ └── ln_x.png │ └── Statistics │ │ └── hist_mean_n.png ├── Institutions │ ├── Institution_Template.org │ └── JOSE.org ├── Scripts.org └── setup_Macros.org ├── CONTRIBUTING.md ├── Courses ├── Intro-Regression-Excel │ ├── 2018 Fall │ │ ├── 2018 Fall.org │ │ ├── Lectures │ │ │ ├── 01 Regression Analysis Introduction.html │ │ │ ├── 01 Regression Analysis Introduction.pdf │ │ │ ├── 01 Regression Analysis Introduction.tex │ │ │ ├── 02 Hypothesis Testing for a Mean and Significance of Regression Coefficients.html │ │ │ ├── 02 Hypothesis Testing for a Mean and Significance of Regression Coefficients.pdf │ │ │ ├── 02 Hypothesis Testing for a Mean and Significance of Regression Coefficients.tex │ │ │ ├── 03 Multiple Regression and Categorical Variables.html │ │ │ ├── 03 Multiple Regression and Categorical Variables.pdf │ │ │ ├── 03 Multiple Regression and Categorical Variables.tex │ │ │ ├── 04 Design of Price and Advertising Elasticity Models.html │ │ │ ├── 04 Design of Price and Advertising Elasticity Models.pdf │ │ │ ├── 04 Design of Price and Advertising Elasticity Models.tex │ │ │ ├── 05 Interaction Effects and Overfitting.html │ │ │ ├── 05 Interaction Effects and Overfitting.pdf │ │ │ └── 05 Interaction Effects and Overfitting.tex │ │ └── Syllabus │ │ │ ├── Syllabus (Section 1).pdf │ │ │ └── Syllabus (Section 1).tex │ └── Intro-Regression-Excel.org ├── Intro-Regression-Python │ ├── 2018 Fall │ │ ├── 2018 Fall.org │ │ ├── Lectures │ │ │ ├── 01 Introduction to Python Devel Environments and Language Basics.html │ │ │ ├── 01 Introduction to Python Devel Environments and Language Basics.pdf │ │ │ ├── 01 Introduction to Python Devel Environments and Language Basics.tex │ │ │ ├── 02 Regression Analysis Introduction.html │ │ │ ├── 02 Regression Analysis Introduction.pdf │ │ │ ├── 02 Regression Analysis Introduction.tex │ │ │ ├── 03 Hypothesis Testing for a Mean and Significance of Regression Coefficients.html │ │ │ ├── 03 Hypothesis Testing for a Mean and Significance of Regression Coefficients.pdf │ │ │ ├── 03 Hypothesis Testing for a Mean and Significance of Regression Coefficients.tex │ │ │ ├── 04 Multiple Regression and Categorical Variables.html │ │ │ ├── 04 Multiple Regression and Categorical Variables.pdf │ │ │ ├── 04 Multiple Regression and Categorical Variables.tex │ │ │ ├── 05 Design of Price and Advertising Elasticity Models.html │ │ │ ├── 05 Design of Price and Advertising Elasticity Models.pdf │ │ │ ├── 05 Design of Price and Advertising Elasticity Models.tex │ │ │ ├── 06 Interaction Effects and Overfitting.html │ │ │ ├── 06 Interaction Effects and Overfitting.pdf │ │ │ └── 06 Interaction Effects and Overfitting.tex │ │ └── Syllabus │ │ │ ├── Syllabus (Section 1).pdf │ │ │ └── Syllabus (Section 1).tex │ └── Intro-Regression-Python.org ├── Org-Coursepack │ ├── 2018 Fall │ │ ├── 2018 Fall.org │ │ ├── Assignments │ │ │ ├── Assignment_1.pdf │ │ │ └── Assignment_1.tex │ │ ├── Exams │ │ │ ├── Exam_1_01_A.pdf │ │ │ ├── Exam_1_01_A.tex │ │ │ ├── Exam_1_01_B.pdf │ │ │ ├── Exam_1_01_B.tex │ │ │ ├── Exam_1_MC_A_Key.pdf │ │ │ ├── Exam_1_MC_A_Key.tex │ │ │ ├── Exam_1_MC_B_Key.pdf │ │ │ └── Exam_1_MC_B_Key.tex │ │ ├── Lectures │ │ │ ├── 01 Course Introduction.html │ │ │ ├── 01 Course Introduction.pdf │ │ │ ├── 01 Course Introduction.rst │ │ │ ├── 02 Org Mode Basics.html │ │ │ ├── 02 Org Mode Basics.rst │ │ │ ├── 02 Org mode Basics.pdf │ │ │ ├── 03 Topic and Course Org Files.html │ │ │ ├── 03 Topic and Course Org Files.pdf │ │ │ ├── 03 Topic and Course Org Files.rst │ │ │ ├── 04 Creating Content for Slides and Handouts.html │ │ │ ├── 04 Creating Content for Slides and Handouts.pdf │ │ │ ├── 04 Creating Content for Slides and Handouts.rst │ │ │ ├── 05 Exporting Slides and Handouts.html │ │ │ ├── 05 Exporting Slides and Handouts.pdf │ │ │ ├── 05 Exporting Slides and Handouts.rst │ │ │ ├── 06 Semester Org Files 1 4 Introduction.html │ │ │ ├── 06 Semester Org Files 1 4 Introduction.pdf │ │ │ ├── 06 Semester Org Files 1 4 Introduction.rst │ │ │ ├── 07 Semester Org Files 2 4 Sections and Syllabus.html │ │ │ ├── 07 Semester Org Files 2 4 Sections and Syllabus.pdf │ │ │ ├── 07 Semester Org Files 2 4 Sections and Syllabus.rst │ │ │ ├── 08 Semester Org Files 3 4 Lectures.html │ │ │ ├── 08 Semester Org Files 3 4 Lectures.pdf │ │ │ ├── 08 Semester Org Files 3 4 Lectures.rst │ │ │ ├── 09 Semester Org Files 4 4 Exams and Assignments.html │ │ │ ├── 09 Semester Org Files 4 4 Exams and Assignments.pdf │ │ │ └── 09 Semester Org Files 4 4 Exams and Assignments.rst │ │ └── Syllabus │ │ │ ├── Syllabus (Section 1).pdf │ │ │ └── Syllabus (Section 1).tex │ └── Org-Coursepack.org └── Template │ ├── Course Template.org │ └── Semester Template │ ├── Assignments │ ├── Assignment_1.pdf │ └── Assignment_1.tex │ ├── Exams │ ├── Exam_1_01_A.pdf │ ├── Exam_1_01_A.tex │ ├── Exam_1_01_B.pdf │ ├── Exam_1_01_B.tex │ ├── Exam_1_MC_A_Key.pdf │ ├── Exam_1_MC_A_Key.tex │ ├── Exam_1_MC_B_Key.pdf │ └── Exam_1_MC_B_Key.tex │ ├── Lectures │ ├── 01 Course Introduction.html │ └── 01 Course Introduction.pdf │ ├── Semester Template.org │ └── Syllabus │ └── Syllabus (Section 1).pdf ├── LICENSE ├── README.org ├── Topics ├── Excel.org ├── Hypothesis_Testing.org ├── Org-Teaching.org ├── Python.org ├── Regression.org ├── Sampling.org └── Topic Template.org ├── export-org-coursepack.el ├── paper.bib ├── paper.md ├── sphinx ├── Lectures │ ├── 01 Course Introduction.rst │ ├── 02 Org Mode Basics.rst │ ├── 03 Topic and Course Org Files.rst │ ├── 04 Creating Content for Slides and Handouts.rst │ ├── 05 Exporting Slides and Handouts.rst │ ├── 06 Semester Org Files 1 4 Introduction.rst │ ├── 07 Semester Org Files 2 4 Sections and Syllabus.rst │ ├── 08 Semester Org Files 3 4 Lectures.rst │ └── 09 Semester Org Files 4 4 Exams and Assignments.rst ├── conf.py ├── index.rst └── post-processing.ps1 └── tests.el /.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: required 2 | 3 | language: emacs-lisp 4 | 5 | before_install: 6 | - sudo add-apt-repository ppa:kelleyk/emacs -y 7 | - sudo apt-get update -q 8 | - sudo apt install -y emacs texlive-latex-extra texlive-generic-recommended 9 | 10 | script: 11 | - emacs --batch -l tests.el 12 | -------------------------------------------------------------------------------- /Assets/.emacs.d/init.el: -------------------------------------------------------------------------------- 1 | ;; * Package settings 2 | ;; ** Activate Org ELPA archives 3 | (require 'package) 4 | (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/")) 5 | (add-to-list 'package-archives '("org" . "https://orgmode.org/elpa/") t) 6 | 7 | ;; activate all the packages 8 | (package-initialize) 9 | 10 | ; fetch the list of packages available 11 | (unless package-archive-contents 12 | (package-refresh-contents)) 13 | 14 | ;; ** Make sure essential packages are installed 15 | ;; list the packages you want 16 | (setq package-list 17 | '(org-plus-contrib ox-reveal htmlize)) 18 | 19 | ;; install the missing packages 20 | (dolist (package package-list) 21 | (unless (package-installed-p package) 22 | (package-install package))) 23 | 24 | 25 | ;; * Org-Coursepack settings 26 | ;; ** General settings 27 | ;; *** Allow remembering risky variables 28 | ;;(advice-add 'risky-local-variable-p :override #'ignore) 29 | (defun risky-local-variable-p (sym &optional _ignored) nil) 30 | 31 | ;; *** org-global-prop-value 32 | ;; Source: https://emacs.stackexchange.com/questions/21713 33 | (defun org-global-props (&optional property buffer) 34 | "Get the plists of global org properties of current buffer." 35 | (unless property (setq property "PROPERTY")) 36 | (with-current-buffer (or buffer (current-buffer)) 37 | (org-element-map (org-element-parse-buffer) 38 | 'keyword (lambda (el) (when (string-match 39 | property (org-element-property :key el)) el))))) 40 | 41 | (defun org-global-prop-value (key) 42 | "Get global org property KEY of current buffer." 43 | (org-element-property :value (car (org-global-props key)))) 44 | 45 | ;; ** General Export Settings 46 | ;; *** set the default export scope to subtree 47 | (setf org-export-initial-scope 'subtree) 48 | 49 | ;; *** bind f5 to keyboard macro of export-last-subtree 50 | (fset 'export-last-subtree 51 | "\C-u\C-c\C-e") 52 | 53 | (eval-after-load "org" 54 | '(progn 55 | (define-key org-mode-map (kbd "") 'export-last-subtree))) 56 | 57 | ;; ** LaTeX Export 58 | (eval-after-load 'ox '(require 'ox-koma-letter)) 59 | 60 | (eval-after-load 'ox '(add-to-list 'org-latex-classes 61 | '("koma-article" 62 | "\\documentclass{scrartcl}" 63 | ("\\section{%s}" . "\\section*{%s}") 64 | ("\\subsection{%s}" . "\\subsection*{%s}") 65 | ("\\subsubsection{%s}" 66 | . "\\subsubsection*{%s}") 67 | ("\\paragraph{%s}" . "\\paragraph*{%s}") 68 | ("\\subparagraph{%s}" 69 | . "\\subparagraph*{%s}"))) ) 70 | 71 | (require 'ox-latex) 72 | 73 | (setq org-latex-listings 'minted) 74 | 75 | (add-to-list 'org-latex-minted-langs '(python "python")) 76 | (add-to-list 'org-latex-minted-langs '(ipython "python")) 77 | 78 | (setq org-latex-pdf-process 79 | '("pdflatex -shell-escape -interaction nonstopmode -output-directory %o %f" 80 | "pdflatex -shell-escape -interaction nonstopmode -output-directory %o %f" 81 | "pdflatex -shell-escape -interaction nonstopmode -output-directory %o %f")) 82 | 83 | ;; *** custom timestamp for syllabus 84 | (defun org-export-filter-timestamp-remove-brackets (timestamp backend info) 85 | "removes relevant brackets from a timestamp" 86 | (cond 87 | ((org-export-derived-backend-p backend 'latex) 88 | (replace-regexp-in-string "[<>]\\|[][]" "" timestamp)) 89 | ((org-export-derived-backend-p backend 'html) 90 | (replace-regexp-in-string "&[lg]t;\\|[][]" "" timestamp)))) 91 | 92 | (eval-after-load 'ox '(add-to-list 93 | 'org-export-filter-timestamp-functions 94 | 'org-export-filter-timestamp-remove-brackets)) 95 | 96 | ;; *** beamer export 97 | (eval-after-load 'ox 98 | 99 | ;; update the list of LaTeX classes and associated header (encoding, etc.) 100 | ;; and structure 101 | '(add-to-list 'org-latex-classes 102 | `("beamer" 103 | ,(concat "\\documentclass[presentation]{beamer}\n" 104 | "[DEFAULT-PACKAGES]" 105 | "[PACKAGES]" 106 | "[EXTRA]\n") 107 | ("\\section{%s}" . "\\section*{%s}") 108 | ("\\subsection{%s}" . "\\subsection*{%s}") 109 | ("\\subsubsection{%s}" . "\\subsubsection*{%s}")))) 110 | 111 | (require 'ox-beamer) 112 | 113 | ;; ** reveal.js export 114 | (require 'ox-reveal) 115 | 116 | ;; ** Other export functionalities 117 | ;; *** ignore headlines of subtrees with :ignore: tag in export 118 | (require 'ox-extra) 119 | (ox-extras-activate '(ignore-headlines)) 120 | 121 | ;; *** support slideonly and handoutonly tags 122 | (defun org/parse-headings (backend) 123 | "Remove every headline with certain tags in the 124 | current buffer. BACKEND is the export back-end being used, as 125 | a symbol. 126 | 127 | " 128 | 129 | (if (member backend '(latex rst)) 130 | (org-map-entries 131 | (lambda () 132 | (progn 133 | (org-narrow-to-subtree) 134 | (org-cut-subtree) 135 | (widen) 136 | )) 137 | "+slideonly")) 138 | 139 | (if (member backend '(reveal beamer)) 140 | (org-map-entries 141 | (lambda () 142 | (progn 143 | (org-narrow-to-subtree) 144 | (org-cut-subtree) 145 | (widen) 146 | )) 147 | "+handoutonly")) 148 | 149 | ) 150 | 151 | (add-hook 'org-export-before-parsing-hook 'org/parse-headings) 152 | 153 | ;; *** Subtrees with :newpage: tag will be exported on a new page 154 | (defun org/get-headline-string-element (headline backend info) 155 | "Return the org element representation of an element. 156 | 157 | Won't work on ~verb~/=code=-only headers" 158 | (let ((prop-point (next-property-change 0 headline))) 159 | (if prop-point (plist-get (text-properties-at prop-point headline) :parent)))) 160 | 161 | (defun org/ensure-latex-clearpage (headline backend info) 162 | (when (org-export-derived-backend-p backend 'latex) 163 | (let ((elmnt (org/get-headline-string-element headline backend info))) 164 | (when (member "newpage" (org-element-property :tags elmnt)) 165 | (concat "\\clearpage\n" headline))))) 166 | 167 | (eval-after-load 'ox '(add-to-list 168 | 'org-export-filter-headline-functions 169 | 'org/ensure-latex-clearpage)) 170 | 171 | ;; *** Special blocks 172 | (defun string/starts-with (string prefix) 173 | "Return t if STRING starts with prefix." 174 | (and (string-match (rx-to-string `(: bos ,prefix) t) string) t)) 175 | 176 | (defun my/process-NOTES-blocks (text backend info) 177 | "Filter NOTES special blocks in export." 178 | (cond 179 | ((eq backend 'latex) 180 | (if (string/starts-with text "\\begin{NOTES}") "")) 181 | ((eq backend 'rst) 182 | (if (string/starts-with text ".. NOTES::") "")) 183 | ((eq backend 'html) 184 | (if (string/starts-with text "
") "")) 185 | ((eq backend 'beamer) 186 | (let ((text (replace-regexp-in-string "\\\\begin{NOTES}" "\\\\note{" text))) 187 | (replace-regexp-in-string "\\\\end{NOTES}" "}" text))) 188 | )) 189 | 190 | (eval-after-load 'ox '(add-to-list 191 | 'org-export-filter-special-block-functions 192 | 'my/process-NOTES-blocks)) 193 | 194 | (defun my/process-mdframed-blocks (text backend info) 195 | "Filter mdframed special blocks in export." 196 | (cond 197 | ((org-export-derived-backend-p backend 'rst) 198 | (replace-regexp-in-string ".. mdframed::" ".. note::" text t t)) 199 | )) 200 | 201 | (eval-after-load 'ox '(add-to-list 202 | 'org-export-filter-special-block-functions 203 | 'my/process-mdframed-blocks)) 204 | 205 | ;; * Convenience settings 206 | ;; ** Use standard keybindings 207 | ;; CUA mode: https://www.emacswiki.org/emacs/CuaMode 208 | (cua-mode t) 209 | (setq cua-auto-tabify-rectangles nil) ;; Don't tabify after rectangle commands 210 | (transient-mark-mode 1) ;; No region when it is not highlighted 211 | (setq cua-keep-region-after-copy t) ;; Standard Windows behaviour 212 | 213 | ;; ** Org mode keybindings 214 | ;; http://orgmode.org/manual/Conflicts.html 215 | (setq org-replace-disputed-keys t) 216 | 217 | (eval-after-load "org" 218 | '(progn 219 | (setq org-support-shift-select t) 220 | 221 | ;; restore shift + arrow keybindings for reading date 222 | (define-key org-read-date-minibuffer-local-map (kbd "S-") 223 | (lambda () (interactive) 224 | (org-eval-in-calendar '(calendar-backward-week 1)))) 225 | (define-key org-read-date-minibuffer-local-map (kbd "S-") 226 | (lambda () (interactive) 227 | (org-eval-in-calendar '(calendar-forward-week 1)))) 228 | (define-key org-read-date-minibuffer-local-map (kbd "S-") 229 | (lambda () (interactive) 230 | (org-eval-in-calendar '(calendar-backward-day 1)))) 231 | (define-key org-read-date-minibuffer-local-map (kbd "S-") 232 | (lambda () (interactive) 233 | (org-eval-in-calendar '(calendar-forward-day 1)))))) 234 | 235 | ;; ** Allow to type just "y" instead of "yes" when you exit. 236 | (fset 'yes-or-no-p 'y-or-n-p) 237 | 238 | ;; ** disable ding sound 239 | (setq visible-bell t) 240 | -------------------------------------------------------------------------------- /Assets/Images/Big_Data/Google_Flu_Trends.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Big_Data/Google_Flu_Trends.jpg -------------------------------------------------------------------------------- /Assets/Images/Misc/affiche.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Misc/affiche.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Course-renamed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Course-renamed.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Code.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Code.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Fragmented.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Fragmented.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Hiding-Contents-LaTeX.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Hiding-Contents-LaTeX.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Hiding-Contents-reveal.js.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Hiding-Contents-reveal.js.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Hiding-Contents.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Hiding-Contents.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Images.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Images.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Include.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Include.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Lists.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Lists.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Math.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Math.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_New_Section.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_New_Section.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Split.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Editing_Split.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Export-Link.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Export-Link.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Exported_Code-LaTeX.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Exported_Code-LaTeX.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Exported_Code-reveal.js.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Exported_Code-reveal.js.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Exported_LaTeX.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Exported_LaTeX.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lecture-Exported_reveal.js.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lecture-Exported_reveal.js.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lectures-Dates.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lectures-Dates.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lectures-Lectures.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lectures-Lectures.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lectures-Run-Script-Update-Lectures-After.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lectures-Run-Script-Update-Lectures-After.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lectures-Run-Script-Update-Lectures-Confirm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lectures-Run-Script-Update-Lectures-Confirm.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lectures-Run-Script-Update-Lectures.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lectures-Run-Script-Update-Lectures.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lectures-Second-Lecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lectures-Second-Lecture.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lectures-Updated-Boilerplate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lectures-Updated-Boilerplate.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Lectures-Updated-Lecture-Info.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Lectures-Updated-Lecture-Info.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Org-Expand.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Org-Expand.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Section-Information-Properties.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Section-Information-Properties.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Semester-Course-Info-Edited.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Semester-Course-Info-Edited.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Semester-Course-Info.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Semester-Course-Info.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Semester-Org-File.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Semester-Org-File.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Semester-Rename-Course-After.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Semester-Rename-Course-After.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Semester-Rename-Course-Before.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Semester-Rename-Course-Before.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Semester-Rename-Semester-After.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Semester-Rename-Semester-After.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Semester-Rename-Semester-Before.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Semester-Rename-Semester-Before.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Semester-renamed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Semester-renamed.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Syllabus-Course-Description-Content-Edited.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Syllabus-Course-Description-Content-Edited.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Syllabus-Course-Description.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Syllabus-Course-Description.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Syllabus-Export-Link.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Syllabus-Export-Link.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Syllabus-Exported-Course-Desc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Syllabus-Exported-Course-Desc.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Syllabus-Exported-Schedule.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Syllabus-Exported-Schedule.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Syllabus-Schedule-New.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Syllabus-Schedule-New.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Syllabus-Schedule-Old.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Syllabus-Schedule-Old.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Quickstart/Syllabus-Schedule-Updated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Quickstart/Syllabus-Schedule-Updated.png -------------------------------------------------------------------------------- /Assets/Images/Org-Teaching/Semester-Lectures-Dynamic-Columnview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Org-Teaching/Semester-Lectures-Dynamic-Columnview.png -------------------------------------------------------------------------------- /Assets/Images/Regression/Omitted_Variable_Bias_BLP.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Regression/Omitted_Variable_Bias_BLP.png -------------------------------------------------------------------------------- /Assets/Images/Regression/Price_elasticity_of_demand.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Regression/Price_elasticity_of_demand.png -------------------------------------------------------------------------------- /Assets/Images/Regression/ln_x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Regression/ln_x.png -------------------------------------------------------------------------------- /Assets/Images/Statistics/hist_mean_n.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Assets/Images/Statistics/hist_mean_n.png -------------------------------------------------------------------------------- /Assets/Institutions/Institution_Template.org: -------------------------------------------------------------------------------- 1 | #+TITLE: Template University 2 | #+AUTHOR: Your Name 3 | #+EMAIL: Your Email 4 | #+DESCRIPTION: School specific teaching materials 5 | #+CATEGORY: Teaching 6 | #+STARTUP: overview 7 | #+STARTUP: hidestars 8 | 9 | * Syllabus 10 | ** Grading 11 | *** Grade Cutoff Percentage 12 | The following table provides the preliminary guidelines for assigning your 13 | letter grade: 14 | 15 | |------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----| 16 | | Grade | A | A- | B+ | B | B- | C+ | C | C- | D+ | D | D- | 17 | |------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----| 18 | | Cutoff Pct | 93% | 90% | 87% | 83% | 80% | 77% | 73% | 70% | 67% | 63% | 60% | 19 | |------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----| 20 | ** School-Specific Policies 21 | :PROPERTIES: 22 | :CUSTOM_ID: Syllabus/School-Specific Policies 23 | :END: 24 | 25 | School-specific policies here. 26 | * Macros 27 | #+MACRO: SCHOOL_COLOR 70,130,180 28 | 29 | #+MACRO: Professor Your Name 30 | #+MACRO: EMAIL YourEmail 31 | #+MACRO: OFFICE BLDG 100 32 | #+MACRO: PHONE (000) 000-0000 33 | #+MACRO: SCHOOL School Name 34 | #+MACRO: CITY City 35 | #+MACRO: CANVAS_LINK [[https://github.com][github.com]] 36 | -------------------------------------------------------------------------------- /Assets/Institutions/JOSE.org: -------------------------------------------------------------------------------- 1 | #+TITLE: Journal of Open Source Education 2 | #+AUTHOR: Joon Ro 3 | #+EMAIL: joon.ro@outlook.com 4 | #+DESCRIPTION: School specific teaching materials 5 | #+CATEGORY: Teaching 6 | #+STARTUP: overview 7 | #+STARTUP: hidestars 8 | 9 | * Syllabus 10 | ** Grading 11 | *** Grade Cutoff Percentage 12 | The following table provides the preliminary guidelines for assigning your 13 | letter grade: 14 | 15 | |------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----| 16 | | Grade | A | A- | B+ | B | B- | C+ | C | C- | D+ | D | D- | 17 | |------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----| 18 | | Cutoff Pct | 93% | 90% | 87% | 83% | 80% | 77% | 73% | 70% | 67% | 63% | 60% | 19 | |------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----| 20 | ** School-Specific Policies 21 | :PROPERTIES: 22 | :CUSTOM_ID: Syllabus/School-Specific Policies 23 | :END: 24 | 25 | School-specific policies here. 26 | * Macros 27 | #+MACRO: SCHOOL_COLOR 70,130,180 28 | 29 | #+MACRO: PROFESSOR Joon H. Ro & Jae-Eun Namkoong 30 | #+MACRO: EMAIL joon.ro@outlook.com 31 | #+MACRO: OFFICE BLDG 100 32 | #+MACRO: PHONE (000) 000-0000 33 | #+MACRO: SCHOOL Journal of Open Source Education 34 | #+MACRO: CITY City 35 | #+MACRO: CANVAS_LINK [[https://github.com][github.com]] 36 | -------------------------------------------------------------------------------- /Assets/Scripts.org: -------------------------------------------------------------------------------- 1 | #+TITLE: Project: Org-Coursepack 2 | #+AUTHOR: Joon Ro 3 | #+EMAIL: joon.ro@outlook.com 4 | #+DESCRIPTION: scripts for Org-Coursepack 5 | 6 | * Update lecture metadata 7 | 8 | #+NAME: org-coursepack-update-lecture-metadata 9 | #+BEGIN_SRC emacs-lisp :results none 10 | ;; Update CLASS, DATE, and EXPORT_FILE_NAME properties of each class subtree 11 | ;; Update CUSTOM_ID of corresponding Class Objectives subtree, which must exist 12 | ;; Update #+INCLUDE of corresponding Last Class and Class Summary subtrees 13 | ;; it will skip subtrees with "skipcount" tag 14 | (setq num-class 1) 15 | (setq custom-id-last-lecture-agenda "") 16 | 17 | (let ((MATCH "-skipcount") 18 | (SCOPE 'tree) 19 | (SKIP nil) 20 | (spacing nil)) 21 | 22 | (org-map-entries 23 | (lambda () 24 | (let ((level (nth 1 (org-heading-components))) 25 | (name (nth 4 (org-heading-components)))) 26 | (if (= level 2) ;; only level-2 subtrees 27 | (save-restriction 28 | (setq num-class-string (number-to-string num-class)) 29 | 30 | ;; CLASS 31 | (org-entry-put nil "CLASS" num-class-string) 32 | 33 | ;; add 0 in front of single digit class number 34 | (if (< num-class 10) 35 | (setq num-class-string 36 | (concat "0" num-class-string))) 37 | 38 | ;; DATE 39 | (org-entry-put nil "DATE" 40 | (org-global-prop-value 41 | (concat "DATE_CLASS_" 42 | num-class-string))) 43 | 44 | ;; EXPORT_FILE_NAME 45 | (if (org-entry-get nil "EXPORT_FILE_NAME_MANUAL") ;; unless EXPORT_FILE_NAME_MANUAL exists 46 | (setq EXPORT_FILE_NAME 47 | (org-entry-get 48 | nil "EXPORT_FILE_NAME_MANUAL")) 49 | (setq EXPORT_FILE_NAME 50 | (org-entry-get nil "ITEM"))) 51 | 52 | (setq EXPORT_FILE_NAME 53 | (replace-regexp-in-string "[^[:alpha:][:digit:][:blank:]_-]" " " 54 | EXPORT_FILE_NAME)) 55 | (setq EXPORT_FILE_NAME 56 | (replace-regexp-in-string " +" " " 57 | EXPORT_FILE_NAME)) 58 | 59 | (org-entry-put nil "EXPORT_FILE_NAME" 60 | (concat "./Lectures/" 61 | num-class-string " " 62 | EXPORT_FILE_NAME)) 63 | 64 | ;; increment counter 65 | (setq num-class (+ num-class 1)) 66 | 67 | (setq subheading-names '()) 68 | 69 | (org-map-entries 70 | ;; Get the list of subtrees for lecture agenda 71 | (lambda () 72 | (let ((level (nth 1 (org-heading-components))) 73 | (name (nth 4 (org-heading-components))) 74 | (tags (nth 5 (org-heading-components)))) 75 | 76 | (if (= level 3) ;; only level-3 subtrees 77 | (setq subheading-names (add-to-list 'subheading-names name t)) 78 | 79 | (if (string= name "Introduction and Recap of Last Class") (setq started t)) 80 | ))) 81 | "-noexport-handoutonly-slideonly" 'tree 'comment) 82 | ) 83 | ) 84 | 85 | (if (string= name "Lecture Outline") 86 | ;; Create Lecture Agenda 87 | (save-restriction 88 | (org-mark-subtree) ;; mark the current subtree 89 | (forward-line) ;; move point forward, so the headline isn't in the region 90 | (delete-region (region-beginning) (region-end)) ;; delete the rest 91 | 92 | (setq custom-id-last-lecture-agenda 93 | (concat "Lectures/" EXPORT_FILE_NAME "/Outline")) 94 | (insert (concat ":PROPERTIES:\n:CUSTOM_ID: " custom-id-last-lecture-agenda "\n:END:\n")) 95 | 96 | (insert "#+ATTR_REVEAL: :frag (appear)\n") 97 | 98 | (while subheading-names 99 | (insert (concat "- " (car subheading-names) "\n")) 100 | (setq subheading-names (cdr subheading-names))) 101 | 102 | )) 103 | 104 | (if (string= name "Recap of Last Class") 105 | ;; Update INCLUDE of the Last Class 106 | (save-restriction 107 | (org-mark-subtree) ;; mark the current subtree 108 | (forward-line) ;; move point forward, so the headline isn't in the region 109 | (delete-region (region-beginning) (region-end)) ;; delete the rest 110 | (unless (string= custom-id-last-lecture-agenda "") 111 | (insert (concat 112 | "#+INCLUDE: \"./" 113 | (file-name-nondirectory (buffer-file-name)) 114 | "::#" 115 | custom-id-last-lecture-agenda 116 | "\" :only-contents t\n"))) 117 | )) 118 | 119 | (if (string= name "Class Recap") 120 | ;; Update INCLUDE of the Summary 121 | (save-restriction 122 | (org-mark-subtree) ;; mark the current subtree 123 | (forward-line) ;; move point forward, so the headline isn't in the region 124 | (delete-region (region-beginning) (region-end)) ;; delete the rest 125 | (insert (concat 126 | "#+INCLUDE: \"./" 127 | (file-name-nondirectory (buffer-file-name)) 128 | "::#" 129 | custom-id-last-lecture-agenda 130 | "\" :only-contents t\n")) 131 | )) 132 | 133 | )) MATCH SCOPE SKIP)) 134 | 135 | ;; Update class schedule 136 | (beginning-of-buffer) 137 | (re-search-forward "BEGIN: columnview :hlines 1 :id Lectures") 138 | (org-ctrl-c-ctrl-c) 139 | 140 | #+END_SRC 141 | -------------------------------------------------------------------------------- /Assets/setup_Macros.org: -------------------------------------------------------------------------------- 1 | * Export Setup 2 | ** HTML Export 3 | #+HTML_HEAD: 4 | #+HTML_HEAD: 5 | ** LaTeX 6 | #+LATEX_HEADER: \usepackage{color} 7 | * Macros 8 | #+MACRO: today date:: %B %d, %Y 9 | ** LaTeX and Reveal.js 10 | #+MACRO: BR @@html:
@@ 11 | #+MACRO: HTML_VSPACE @@html:
 
@@ 12 | #+MACRO: NEWLINE @@latex:\\@@ @@html:
@@ 13 | #+MACRO: NEWPAGE @@latex:\newpage@@ 14 | #+MACRO: VSPACE @@latex:\vspace{$1 mm}@@ 15 | #+MACRO: LTX_VSPACE @@latex:\vspace{$1 mm}@@ 16 | #+MACRO: FRAMEBREAK @@latex:\framebreak@@ @@html:.. nextslide:@@ 17 | #+MACRO: QUAD @@latex:\quad@@ @@html: @@ 18 | #+MACRO: LTX_QUAD @@latex:\quad@@ 19 | #+MACRO: HIDDEN @@latex:\iffalse $1 \fi@@ 20 | 21 | #+MACRO: FA_ICON @@html:@@ 22 | #+MACRO: BEG_FONT_SMALL @@latex:{\footnotesize@@ @@html:@@ 23 | #+MACRO: END_FONT_SMALL @@latex:}@@ @@html:@@ 24 | 25 | #+MACRO: RVL_VSPACE @@html:
 
@@ 26 | 27 | #+MACRO: BLUE @@html:$1@@ @@latex:{\color{blue} $1}@@ 28 | #+MACRO: RED @@html:$1@@ @@latex:{\color{red} $1}@@ 29 | #+MACRO: GREEN @@html:$1@@ @@latex:{\color{green} $1}@@ 30 | 31 | #+MACRO: FRAG @@html:$1@@ @@latex:$1@@ 32 | #+MACRO: FRAG_RED @@html:$1@@ @@latex:{\bf $1}@@ 33 | #+MACRO: FRAG_GREEN @@html:$1@@ @@latex:{\bf $1}@@ 34 | #+MACRO: FRAG_BLUE @@html:$1@@ @@latex:{\bf $1}@@ 35 | #+MACRO: FRAG_GROW @@html:$1@@ @@latex:{\bf $1}@@ 36 | 37 | #+MACRO: FRAG_ID @@html:$2@@ @@latex:{\br $2}@@ 38 | #+MACRO: FRAG_ID_RED @@html:$2@@ @@latex:{\bf $2}@@ 39 | #+MACRO: FRAG_ID_GREEN @@html:$2@@ @@latex:{\bf $2}@@ 40 | #+MACRO: FRAG_ID_BLUE @@html:$2@@ @@latex:{\bf $2}@@ 41 | 42 | #+MACRO: FRAG_ @@html:@@ 43 | #+MACRO: SPAN_ @@html:@@ 44 | 45 | #+MACRO: HSPACE @@html:@@ 46 | 47 | #+MACRO: CITE @@html:$1@@ @@latex:{\small $1}@@ 48 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | 2 | # Contributing to the Org-Coursepack 3 | 4 | Org-Coursepack is an open source project, and we appreciate community 5 | contributions. Contributions should be made in the form of GitHub 6 | pull requests. 7 | 8 | In general, we follow [Git-flow](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow) 9 | as our workflow; hence, the `master` branch is used for releases, 10 | and [pull requests](https://help.github.com/articles/about-pull-requests/) 11 | should be based on the `develop` branch. 12 | 13 | ## Small Contributions 14 | 15 | Org-Coursepack consists of multiple Org files written in 16 | [Org-mode](), a major mode in Emacs. Since Org-mode uses 17 | a markup syntax similar to Markdown and reStructuredText, 18 | small changes (e.g., fixing typos and wording) can be made 19 | directly on GitHub using its online editor by clicking the `Edit this file` 20 | link while viewing an individual file. You can create a pull request from the 21 | page once you finish editing. 22 | 23 | 24 | ## Large Contributions 25 | 26 | If you are interested in making substantial changes to the Org-Coursepack, 27 | please first open an issue so the issue can be discussed prior to making changes. 28 | 29 | 30 | ## All set! 31 | 32 | If you have any questions, feel free to post them to . 33 | 34 | -------------------------------------------------------------------------------- /Courses/Intro-Regression-Excel/2018 Fall/Lectures/01 Regression Analysis Introduction.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Intro-Regression-Excel/2018 Fall/Lectures/01 Regression Analysis Introduction.pdf -------------------------------------------------------------------------------- /Courses/Intro-Regression-Excel/2018 Fall/Lectures/02 Hypothesis Testing for a Mean and Significance of Regression Coefficients.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Intro-Regression-Excel/2018 Fall/Lectures/02 Hypothesis Testing for a Mean and Significance of Regression Coefficients.pdf -------------------------------------------------------------------------------- /Courses/Intro-Regression-Excel/2018 Fall/Lectures/03 Multiple Regression and Categorical Variables.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Intro-Regression-Excel/2018 Fall/Lectures/03 Multiple Regression and Categorical Variables.pdf -------------------------------------------------------------------------------- /Courses/Intro-Regression-Excel/2018 Fall/Lectures/04 Design of Price and Advertising Elasticity Models.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Intro-Regression-Excel/2018 Fall/Lectures/04 Design of Price and Advertising Elasticity Models.pdf -------------------------------------------------------------------------------- /Courses/Intro-Regression-Excel/2018 Fall/Lectures/05 Interaction Effects and Overfitting.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Intro-Regression-Excel/2018 Fall/Lectures/05 Interaction Effects and Overfitting.pdf -------------------------------------------------------------------------------- /Courses/Intro-Regression-Excel/2018 Fall/Lectures/05 Interaction Effects and Overfitting.tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[10pt,article]{article} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage{titling} \posttitle{\par\end{center}} \setlength{\droptitle}{-30pt} \usepackage{multicol} \setlength{\columnsep}{1cm} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \renewcommand{\contentsname}{Table of Contents / Agenda} \usepackage[letterpaper,left=1in,right=1in,top=0.7in,bottom=1in,headheight=23pt,includehead,includefoot,heightrounded]{geometry} \usepackage{fancyhdr} \pagestyle{fancy} \fancyhf{} \cfoot{\thepage} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage[onehalfspacing]{setspace} \usepackage[framemethod=default]{mdframed} \usepackage{wrapfig} \usepackage{booktabs} \usepackage[outputdir=Lectures]{minted} 17 | \setcounter{secnumdepth}{3} 18 | \date{\vspace{-6ex}} 19 | \title{Class 5: Interaction Effects and Overfitting} 20 | \hypersetup{ 21 | pdfauthor={}, 22 | pdftitle={Class 5: Interaction Effects and Overfitting}, 23 | pdfkeywords={}, 24 | pdfsubject={Description School specific teaching materials}, 25 | pdfcreator={Emacs 26.1 (Org mode 9.1.13)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \maketitle 30 | \lhead{ COURSE 0000 \\ Joon H. Ro } 31 | \rhead{ Class 5 \\ 2018-09-11 Tue} 32 | \thispagestyle{fancy} 33 | 34 | \setcounter{tocdepth}{1} 35 | \tableofcontents 36 | \vspace{6ex} 37 | 38 | \section{Interaction Effects} 39 | \label{sec:orge6fc72a} 40 | \[ Sales = \beta_0 + \beta_1 \times Price + \beta_2 \times Display + \beta_3 41 | \times Feature Ad \] 42 | \begin{itemize} 43 | \item If a \texttt{Display}, Sales increases by \(\beta_2\) 44 | \item If a \texttt{Feature Ad}, Sales increase by \(\beta_3\) 45 | \item What if there is a \texttt{Feature Ad} and \texttt{Display} simultaneously? 46 | \end{itemize} 47 | 48 | \iffalse 49 | \begin{align*} 50 | Sales = & \beta_0 + \beta_1 \times Price + \beta_2 \times Display + \beta_3 \times Feature Ad \\ 51 | & + \beta_4 \times (Display \times Feature Ad) 52 | \end{align*} 53 | 54 | 55 | 56 | \begin{align*} 57 | Sales = & 100 - 3 \times Price + 5 \times Display + 4 \times Feature Ad \\ 58 | & + 2 \times (Display \times Feature Ad) 59 | \end{align*} 60 | \fi 61 | 62 | 63 | 64 | \[ Sales = \beta_0 + \beta_1 \times Price + \beta_2 \times Display + \beta_3 65 | \times Feature Ad + \beta_4 \times (Display \times Feature Ad) \] 66 | 67 | \[ \text{e.g., } Sales = 100 - 3 \times Price + 5 \times Display + 4 \times Feature Ad + 2 68 | \times (Display \times Feature Ad) \] 69 | 70 | \begin{itemize} 71 | \item If a \texttt{Display}, Sales increases by \(\beta_2 \; (=5)\) 72 | \item If a \texttt{Feature Ad}, Sales increase by \(\beta_3 \; (=4)\) 73 | \item If both a \texttt{Display} and a \texttt{Feature Ad}, sales increase by \(\beta_2 + 74 | \beta_3 + \beta_4 = 11\) 75 | \end{itemize} 76 | \subsection{With a continuous variable} 77 | \label{sec:orgd1973f7} 78 | 79 | \[ Sales = \beta_0 + \beta_1 \times Price + \beta_2 \times Display + \beta_3 \times Price \times Display \] 80 | \begin{itemize} 81 | \item What does \(\beta_3\) represent? 82 | \end{itemize} 83 | \clearpage 84 | \section{Overfitting} 85 | \label{sec:orgea553e3} 86 | \subsection{Google Flu} 87 | \label{sec:orgb9ec817} 88 | Google's scientists first announced Google Flu in a Nature article in 2009: 89 | 90 | \begin{quote} 91 | \ldots{} We can accurately estimate the current level of weekly influenza activity 92 | in each region of the United States, with a reporting lag of \textbf{about one day}. 93 | \end{quote} 94 | 95 | One report was that Google Flu Trends was able to predict regional 96 | outbreaks of flu up to 10 days before they were reported by the CDC 97 | 98 | \subsubsection{Results} 99 | \label{sec:org88e9403} 100 | \begin{center} 101 | \includegraphics[width=8cm]{c:/Users/joon/Sync/Org-Coursepack/Assets/Images/Big_Data/Google_Flu_Trends.jpg} 102 | \end{center} 103 | 104 | (source: \href{http://www.uvm.edu/\~cdanfort/csc-reading-group/lazer-flu-science-2014.pdf}{The Parable of Google Flu: Traps in Big Data Analysis}) 105 | 106 | \subsubsection{What Went Wrong?} 107 | \label{sec:org5a33904} 108 | 109 | \begin{itemize} 110 | \item Quality of search terms 111 | 112 | \begin{itemize} 113 | \item \textbf{influenza-like illness} 114 | \end{itemize} 115 | 116 | \item Prediction without theory 117 | 118 | \(\Rightarrow\) overfitting problem 119 | \end{itemize} 120 | \subsection{Overfitting} 121 | \label{sec:orgabcf212} 122 | \subsubsection{Error Term in Regression} 123 | \label{sec:orge23c055} 124 | \begin{itemize} 125 | \item When we think about typical regression model: 126 | 127 | \[ y_{i} = \beta_{0} + \beta_{1}x_{i1} + \cdots + \beta_{K}x_{iK} + \varepsilon_{i} \] 128 | 129 | \item The error term (\(\varepsilon_{i}\)) is supposed to have mean zero 130 | \item Not \emph{predictable} 131 | \item However, once they are realized, one can often find some pattern in them, 132 | which will disappear as more data accumulate 133 | \begin{itemize} 134 | \item e.g., stock prices are supposed to be random-walk; however, from historical data, 135 | patterns will pop up 136 | \end{itemize} 137 | \end{itemize} 138 | \subsubsection{Google Flu and Overfitting} 139 | \label{sec:org9b99f1f} 140 | Find the best matches among 50 million search terms to fit 1152 data points 141 | 142 | "They \ldots{} overfit the data. They had fifty million search terms, and they 143 | found some that happened to fit the frequency of the 'flu' over the 144 | preceding decade or so, but really they were getting idiosyncratic terms 145 | that were peaking in the winter at the time the 'flu' peaks \ldots{} but wasn't 146 | driven by the fact that people were actually sick with the 'flu'," 147 | 148 | (David Lazer, an interview with \href{http://www.sciencemag.org/content/343/6176/1270.2.full}{Science}) 149 | \subsection{Takeaways} 150 | \label{sec:org6707529} 151 | \begin{itemize} 152 | \item Be careful of "overfitting", especially when you have a lot of variables 153 | \item Conduct out-of-sample validation 154 | \end{itemize} 155 | \subsection{Out-of-Sample Validation} 156 | \label{sec:org7db504c} 157 | \begin{itemize} 158 | \item Use only a subset of data (e.g., 80\% of the sample; train dataset) to estimate coefficients 159 | \item Then predict \(\hat{y}_i\) values for the rest of the sample (validation 160 | dataset) using the estimated coefficients and actual data for \(x_{k}\)'s 161 | as if we do not know actual \(y_{i}\): 162 | 163 | \[ \hat{y}_{i}= \hat{\beta}_{0} + \hat{\beta}_{1} x_{1i} + 164 | \hat{\beta}_{2} x_{2i} + \cdots + \hat{\beta}_{K} x_{Ki} \] 165 | 166 | \item Compare \(\hat{y}_{i}\) and the actual \(y_{i}\) 167 | \end{itemize} 168 | \end{document} -------------------------------------------------------------------------------- /Courses/Intro-Regression-Excel/2018 Fall/Syllabus/Syllabus (Section 1).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Intro-Regression-Excel/2018 Fall/Syllabus/Syllabus (Section 1).pdf -------------------------------------------------------------------------------- /Courses/Intro-Regression-Excel/2018 Fall/Syllabus/Syllabus (Section 1).tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[article,letterpaper,times,10pt,listings-bw,microtype]{scrartcl} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage[onehalfspacing]{setspace} \usepackage[T1]{fontenc} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage{geometry} \geometry{left=1in,right=1in,top=1in,bottom=1in} \usepackage[framemethod=default]{mdframed} 17 | \author{Joon H. Ro Your Name} 18 | \date{Fall 2018} 19 | \title{COURSE 0000-01 Syllabus} 20 | \hypersetup{ 21 | pdfauthor={Joon H. Ro Your Name}, 22 | pdftitle={COURSE 0000-01 Syllabus}, 23 | pdfkeywords={}, 24 | pdfsubject={Description School specific teaching materials}, 25 | pdfcreator={Emacs 26.1 (Org mode 9.1.13)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \definecolor{SchoolColor}{RGB}{70,130,180} 30 | 31 | \begin{center} 32 | {\color{SchoolColor}{\Large 33 | \textbf{School Name} 34 | }} 35 | \end{center} 36 | 37 | \begin{center} 38 | {\color{SchoolColor}{ 39 | \textbf{COURSE 0000-01} 40 | 41 | \textbf{Introduction to Regression Analysis with Excel} 42 | 43 | \textbf{Fall 2018} 44 | }} 45 | \end{center} 46 | 47 | \vspace{5 mm} 48 | 49 | \begin{center} 50 | \begin{tabular}{llll} 51 | \textbf{Instructor:} & Joon H. Ro & \textbf{Office Phone:} & (000) 000-0000\\ 52 | \textbf{Office:} & BLDG 100 & \textbf{E-mail:} & joon.ro@outlook.com\\ 53 | \textbf{Office Hours:} & Tue 3:30-4:30pm & \textbf{Course Site:} & \textbf{\href{https://github.com}{github.com}}\\ 54 | \textbf{Class Meeting Day \& Time:} & Tue/Thurs, 9:30a-10:45 & \textbf{Class Location:} & BLDG 100\\ 55 | \end{tabular} 56 | \end{center} 57 | \section*{Course Description} 58 | \label{sec:org5fb4d7c} 59 | This course provides students with Introduction to Regression Analysis with 60 | Excel. 61 | \section*{Course Prerequisites} 62 | \label{sec:org479480b} 63 | \begin{itemize} 64 | \item Basic Statistics knowledge 65 | \end{itemize} 66 | \section*{Student Learning Objectives} 67 | \label{sec:org793fa98} 68 | As the result of this course, students should be able to: 69 | 70 | \begin{itemize} 71 | \item Interpret regression results 72 | \item Understand how to implement elasticity models in regression 73 | \item Run regression analysis in Excel 74 | \end{itemize} 75 | \section*{Course Material} 76 | \label{sec:org61232c9} 77 | \begin{description} 78 | \item[{Documentation}] Handouts, readings, and assignments will be uploaded to 79 | the repository. 80 | \item[{Software}] Most data manipulations and analyses will be done using 81 | Microsoft Excel. (Please bring your laptop for each class for 82 | in-class exercises) 83 | 84 | \begin{mdframed}[style=exampledefault, frametitle={Note for Mac users}] 85 | \begin{itemize} 86 | \item It is required that you have \textbf{Excel 2016 for Mac} installed in your 87 | device for this course, as \texttt{Data Analysis ToolPak} and \texttt{Solver} 88 | add-ins are not available in previous versions of Microsoft Excel for 89 | Mac. It still has some limitations comparing to the Windows version, 90 | but you will be able to accomplish most of tasks. 91 | \end{itemize} 92 | \end{mdframed} 93 | \iffalse 94 | \begin{itemize} 95 | \item Mac Users: please install \textbf{Excel 2016 for Mac} 96 | \end{itemize} 97 | \fi 98 | \end{description} 99 | \clearpage 100 | \section*{Class Schedule} 101 | \label{sec:org3708993} 102 | \begin{center} 103 | \begin{tabular}{lrl} 104 | Date & Class & Topic\\ 105 | \hline 106 | 2018-08-28 Tue & 1 & Regression Analysis: Introduction\\ 107 | 2018-08-30 Thu & 2 & Hypothesis Testing for a Mean and Significance of Regression Coefficients\\ 108 | 2018-09-04 Tue & 3 & Multiple Regression and Categorical Variables\\ 109 | 2018-09-06 Thu & 4 & Design of Price and Advertising Elasticity Models\\ 110 | 2018-09-11 Tue & 5 & Interaction Effects and Overfitting\\ 111 | \end{tabular} 112 | \end{center} 113 | 114 | \begin{mdframed}[style=exampledefault, frametitle={Disclaimer}] 115 | \begin{itemize} 116 | \item The class schedule is subject to change (except for the exam dates) 117 | \end{itemize} 118 | \end{mdframed} 119 | \end{document} -------------------------------------------------------------------------------- /Courses/Intro-Regression-Excel/Intro-Regression-Excel.org: -------------------------------------------------------------------------------- 1 | #+TITLE: Course: Introduction to Regression Analysis with Excel 2 | #+AUTHOR: Joon Ro 3 | #+EMAIL: joon.ro@outlook.com 4 | #+CATEGORY: COURSE 5 | #+STARTUP: overview 6 | #+STARTUP: hidestars 7 | 8 | * Courses 9 | ** [[file:2018 Fall/2018 Fall.org][2018 Fall]] 10 | * Syllabus 11 | ** Course Description 12 | :PROPERTIES: 13 | :CUSTOM_ID: Syllabus/Course Description 14 | :END: 15 | This course provides students with Introduction to Regression Analysis with 16 | Excel. 17 | ** Course Prerequisites 18 | :PROPERTIES: 19 | :CUSTOM_ID: Syllabus/Course Prerequisites 20 | :END: 21 | - Basic Statistics knowledge 22 | ** Student Learning Objectives 23 | :PROPERTIES: 24 | :CUSTOM_ID: Syllabus/Student Learning Objectives 25 | :END: 26 | As the result of this course, students should be able to: 27 | 28 | #+ATTR_REVEAL: :frag (appear) 29 | - Interpret regression results 30 | - Understand how to implement elasticity models in regression 31 | - Run regression analysis in Excel 32 | ** Course Material 33 | :PROPERTIES: 34 | :CUSTOM_ID: Syllabus/Course Material 35 | :END: 36 | - Documentation :: Handouts, readings, and assignments will be uploaded to 37 | the repository. 38 | - Software :: Most data manipulations and analyses will be done using 39 | Microsoft Excel. (Please bring your laptop for each class for 40 | in-class exercises) 41 | 42 | #+REVEAL_HTML: 52 | 53 | #+LATEX: \iffalse 54 | #+REVEAL: split 55 | - Mac Users: please install *Excel 2016 for Mac* 56 | #+LATEX: \fi 57 | -------------------------------------------------------------------------------- /Courses/Intro-Regression-Python/2018 Fall/Lectures/01 Introduction to Python Devel Environments and Language Basics.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Intro-Regression-Python/2018 Fall/Lectures/01 Introduction to Python Devel Environments and Language Basics.pdf -------------------------------------------------------------------------------- /Courses/Intro-Regression-Python/2018 Fall/Lectures/02 Regression Analysis Introduction.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Intro-Regression-Python/2018 Fall/Lectures/02 Regression Analysis Introduction.pdf -------------------------------------------------------------------------------- /Courses/Intro-Regression-Python/2018 Fall/Lectures/03 Hypothesis Testing for a Mean and Significance of Regression Coefficients.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Intro-Regression-Python/2018 Fall/Lectures/03 Hypothesis Testing for a Mean and Significance of Regression Coefficients.pdf -------------------------------------------------------------------------------- /Courses/Intro-Regression-Python/2018 Fall/Lectures/04 Multiple Regression and Categorical Variables.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Intro-Regression-Python/2018 Fall/Lectures/04 Multiple Regression and Categorical Variables.pdf -------------------------------------------------------------------------------- /Courses/Intro-Regression-Python/2018 Fall/Lectures/05 Design of Price and Advertising Elasticity Models.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Intro-Regression-Python/2018 Fall/Lectures/05 Design of Price and Advertising Elasticity Models.pdf -------------------------------------------------------------------------------- /Courses/Intro-Regression-Python/2018 Fall/Lectures/06 Interaction Effects and Overfitting.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Intro-Regression-Python/2018 Fall/Lectures/06 Interaction Effects and Overfitting.pdf -------------------------------------------------------------------------------- /Courses/Intro-Regression-Python/2018 Fall/Lectures/06 Interaction Effects and Overfitting.tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[10pt,article]{article} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage{titling} \posttitle{\par\end{center}} \setlength{\droptitle}{-30pt} \usepackage{multicol} \setlength{\columnsep}{1cm} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \renewcommand{\contentsname}{Table of Contents / Agenda} \usepackage[letterpaper,left=1in,right=1in,top=0.7in,bottom=1in,headheight=23pt,includehead,includefoot,heightrounded]{geometry} \usepackage{fancyhdr} \pagestyle{fancy} \fancyhf{} \cfoot{\thepage} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage[onehalfspacing]{setspace} \usepackage[framemethod=default]{mdframed} \usepackage{wrapfig} \usepackage{booktabs} \usepackage[outputdir=Lectures]{minted} 17 | \setcounter{secnumdepth}{3} 18 | \date{\vspace{-6ex}} 19 | \title{Class 6: Interaction Effects and Overfitting} 20 | \hypersetup{ 21 | pdfauthor={}, 22 | pdftitle={Class 6: Interaction Effects and Overfitting}, 23 | pdfkeywords={}, 24 | pdfsubject={Description School specific teaching materials}, 25 | pdfcreator={Emacs 26.1 (Org mode 9.1.13)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \maketitle 30 | \lhead{ COURSE 0000 \\ Joon H. Ro } 31 | \rhead{ Class 6 \\ 2018-09-13 Thu} 32 | \thispagestyle{fancy} 33 | 34 | \setcounter{tocdepth}{1} 35 | \tableofcontents 36 | \vspace{6ex} 37 | 38 | \section{Interaction Effects} 39 | \label{sec:org32795b4} 40 | \[ Sales = \beta_0 + \beta_1 \times Price + \beta_2 \times Display + \beta_3 41 | \times Feature Ad \] 42 | \begin{itemize} 43 | \item If a \texttt{Display}, Sales increases by \(\beta_2\) 44 | \item If a \texttt{Feature Ad}, Sales increase by \(\beta_3\) 45 | \item What if there is a \texttt{Feature Ad} and \texttt{Display} simultaneously? 46 | \end{itemize} 47 | 48 | \iffalse 49 | \begin{align*} 50 | Sales = & \beta_0 + \beta_1 \times Price + \beta_2 \times Display + \beta_3 \times Feature Ad \\ 51 | & + \beta_4 \times (Display \times Feature Ad) 52 | \end{align*} 53 | 54 | 55 | 56 | \begin{align*} 57 | Sales = & 100 - 3 \times Price + 5 \times Display + 4 \times Feature Ad \\ 58 | & + 2 \times (Display \times Feature Ad) 59 | \end{align*} 60 | \fi 61 | 62 | 63 | 64 | \[ Sales = \beta_0 + \beta_1 \times Price + \beta_2 \times Display + \beta_3 65 | \times Feature Ad + \beta_4 \times (Display \times Feature Ad) \] 66 | 67 | \[ \text{e.g., } Sales = 100 - 3 \times Price + 5 \times Display + 4 \times Feature Ad + 2 68 | \times (Display \times Feature Ad) \] 69 | 70 | \begin{itemize} 71 | \item If a \texttt{Display}, Sales increases by \(\beta_2 \; (=5)\) 72 | \item If a \texttt{Feature Ad}, Sales increase by \(\beta_3 \; (=4)\) 73 | \item If both a \texttt{Display} and a \texttt{Feature Ad}, sales increase by \(\beta_2 + 74 | \beta_3 + \beta_4 = 11\) 75 | \end{itemize} 76 | \subsection{With a continuous variable} 77 | \label{sec:org96e1753} 78 | 79 | \[ Sales = \beta_0 + \beta_1 \times Price + \beta_2 \times Display + \beta_3 \times Price \times Display \] 80 | \begin{itemize} 81 | \item What does \(\beta_3\) represent? 82 | \end{itemize} 83 | \clearpage 84 | \section{Overfitting} 85 | \label{sec:orged09ad6} 86 | \subsection{Google Flu} 87 | \label{sec:org58d525d} 88 | Google's scientists first announced Google Flu in a Nature article in 2009: 89 | 90 | \begin{quote} 91 | \ldots{} We can accurately estimate the current level of weekly influenza activity 92 | in each region of the United States, with a reporting lag of \textbf{about one day}. 93 | \end{quote} 94 | 95 | One report was that Google Flu Trends was able to predict regional 96 | outbreaks of flu up to 10 days before they were reported by the CDC 97 | 98 | \subsubsection{Results} 99 | \label{sec:org034a9b3} 100 | \begin{center} 101 | \includegraphics[width=8cm]{c:/Users/joon/Sync/Org-Coursepack/Assets/Images/Big_Data/Google_Flu_Trends.jpg} 102 | \end{center} 103 | 104 | (source: \href{http://www.uvm.edu/\~cdanfort/csc-reading-group/lazer-flu-science-2014.pdf}{The Parable of Google Flu: Traps in Big Data Analysis}) 105 | 106 | \subsubsection{What Went Wrong?} 107 | \label{sec:orgb8095aa} 108 | 109 | \begin{itemize} 110 | \item Quality of search terms 111 | 112 | \begin{itemize} 113 | \item \textbf{influenza-like illness} 114 | \end{itemize} 115 | 116 | \item Prediction without theory 117 | 118 | \(\Rightarrow\) overfitting problem 119 | \end{itemize} 120 | \subsection{Overfitting} 121 | \label{sec:org7810a29} 122 | \subsubsection{Error Term in Regression} 123 | \label{sec:org60ce889} 124 | \begin{itemize} 125 | \item When we think about typical regression model: 126 | 127 | \[ y_{i} = \beta_{0} + \beta_{1}x_{i1} + \cdots + \beta_{K}x_{iK} + \varepsilon_{i} \] 128 | 129 | \item The error term (\(\varepsilon_{i}\)) is supposed to have mean zero 130 | \item Not \emph{predictable} 131 | \item However, once they are realized, one can often find some pattern in them, 132 | which will disappear as more data accumulate 133 | \begin{itemize} 134 | \item e.g., stock prices are supposed to be random-walk; however, from historical data, 135 | patterns will pop up 136 | \end{itemize} 137 | \end{itemize} 138 | \subsubsection{Google Flu and Overfitting} 139 | \label{sec:orgd66050a} 140 | Find the best matches among 50 million search terms to fit 1152 data points 141 | 142 | "They \ldots{} overfit the data. They had fifty million search terms, and they 143 | found some that happened to fit the frequency of the 'flu' over the 144 | preceding decade or so, but really they were getting idiosyncratic terms 145 | that were peaking in the winter at the time the 'flu' peaks \ldots{} but wasn't 146 | driven by the fact that people were actually sick with the 'flu'," 147 | 148 | (David Lazer, an interview with \href{http://www.sciencemag.org/content/343/6176/1270.2.full}{Science}) 149 | \subsection{Takeaways} 150 | \label{sec:org36d6d1f} 151 | \begin{itemize} 152 | \item Be careful of "overfitting", especially when you have a lot of variables 153 | \item Conduct out-of-sample validation 154 | \end{itemize} 155 | \subsection{Out-of-Sample Validation} 156 | \label{sec:orgdcf4cb6} 157 | \begin{itemize} 158 | \item Use only a subset of data (e.g., 80\% of the sample; train dataset) to estimate coefficients 159 | \item Then predict \(\hat{y}_i\) values for the rest of the sample (validation 160 | dataset) using the estimated coefficients and actual data for \(x_{k}\)'s 161 | as if we do not know actual \(y_{i}\): 162 | 163 | \[ \hat{y}_{i}= \hat{\beta}_{0} + \hat{\beta}_{1} x_{1i} + 164 | \hat{\beta}_{2} x_{2i} + \cdots + \hat{\beta}_{K} x_{Ki} \] 165 | 166 | \item Compare \(\hat{y}_{i}\) and the actual \(y_{i}\) 167 | \end{itemize} 168 | \end{document} -------------------------------------------------------------------------------- /Courses/Intro-Regression-Python/2018 Fall/Syllabus/Syllabus (Section 1).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Intro-Regression-Python/2018 Fall/Syllabus/Syllabus (Section 1).pdf -------------------------------------------------------------------------------- /Courses/Intro-Regression-Python/2018 Fall/Syllabus/Syllabus (Section 1).tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[article,letterpaper,times,10pt,listings-bw,microtype]{scrartcl} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage[onehalfspacing]{setspace} \usepackage[T1]{fontenc} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage{geometry} \geometry{left=1in,right=1in,top=1in,bottom=1in} \usepackage[framemethod=default]{mdframed} 17 | \author{Your Name Your Name} 18 | \date{Fall 2018} 19 | \title{COURSE 0000-01 Syllabus} 20 | \hypersetup{ 21 | pdfauthor={Your Name Your Name}, 22 | pdftitle={COURSE 0000-01 Syllabus}, 23 | pdfkeywords={}, 24 | pdfsubject={Description School specific teaching materials}, 25 | pdfcreator={Emacs 26.1 (Org mode 9.1.13)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \definecolor{SchoolColor}{RGB}{70,130,180} 30 | 31 | \begin{center} 32 | {\color{SchoolColor}{\Large 33 | \textbf{School Name} 34 | }} 35 | \end{center} 36 | 37 | \begin{center} 38 | {\color{SchoolColor}{ 39 | \textbf{COURSE 0000-01} 40 | 41 | \textbf{Introduction to Regression Analysis with Python} 42 | 43 | \textbf{Fall 2018} 44 | }} 45 | \end{center} 46 | 47 | \vspace{5 mm} 48 | 49 | \begin{center} 50 | \begin{tabular}{llll} 51 | \textbf{Instructor:} & Joon H. Ro & \textbf{Office Phone:} & (000) 000-0000\\ 52 | \textbf{Office:} & BLDG 100 & \textbf{E-mail:} & joon.ro@outlook.com\\ 53 | \textbf{Office Hours:} & Tue 3:30-4:30pm & \textbf{Course Site:} & \textbf{\href{https://github.com}{github.com}}\\ 54 | \textbf{Class Meeting Day \& Time:} & Tue/Thurs, 9:30a-10:45 & \textbf{Class Location:} & BLDG 100\\ 55 | \end{tabular} 56 | \end{center} 57 | \section*{Course Description} 58 | \label{sec:org2148b25} 59 | This course provides students with Org-Coursepack, a modular and reusable 60 | teaching materials template in org-mode. Using self-explanatory course 61 | contents, students will be able to adapt the template and create their on 62 | course contents through Org-mode. 63 | \section*{Course Prerequisites} 64 | \label{sec:org66d41c3} 65 | \begin{itemize} 66 | \item Basic Statistics knowledge 67 | \end{itemize} 68 | \section*{Student Learning Objectives} 69 | \label{sec:orga46d8fc} 70 | As the result of this course, students should be able to: 71 | 72 | \begin{itemize} 73 | \item Interpret regression results 74 | \item Understand how to implement elasticity models in regression 75 | \item Run regression analysis in Python 76 | \end{itemize} 77 | \section*{Course Material} 78 | \label{sec:org995f75f} 79 | \begin{description} 80 | \item[{Documentation}] Handouts, readings, and assignments will be uploaded to 81 | the repository. 82 | \item[{Software}] Most data manipulations and analyses will be done using Python 83 | 84 | \begin{mdframed}[style=exampledefault, frametitle={Note}] 85 | \begin{itemize} 86 | \item Please install Anaconda (can be downloaded from 87 | \url{https://www.anaconda.com/download/}). Make sure you install Python 3.6 88 | version (64-bit version is recommended) 89 | \item Please bring your laptop for each class for in-class exercises 90 | \end{itemize} 91 | \end{mdframed} 92 | \end{description} 93 | \clearpage 94 | \section*{Class Schedule} 95 | \label{sec:orgdf2b3c4} 96 | \begin{center} 97 | \begin{tabular}{lrl} 98 | Date & Class & Topic\\ 99 | \hline 100 | 2018-08-28 Tue & 1 & Introduction to Python: Devel Environments and Language Basics\\ 101 | 2018-08-30 Thu & 2 & Regression Analysis: Introduction\\ 102 | 2018-09-04 Tue & 3 & Hypothesis Testing for a Mean and Significance of Regression Coefficients\\ 103 | 2018-09-06 Thu & 4 & Multiple Regression and Categorical Variables\\ 104 | 2018-09-11 Tue & 5 & Design of Price and Advertising Elasticity Models\\ 105 | 2018-09-13 Thu & 6 & Interaction Effects and Overfitting\\ 106 | \end{tabular} 107 | \end{center} 108 | 109 | \begin{mdframed}[style=exampledefault, frametitle={Disclaimer}] 110 | \begin{itemize} 111 | \item The class schedule is subject to change (except for the exam dates) 112 | \end{itemize} 113 | \end{mdframed} 114 | \end{document} -------------------------------------------------------------------------------- /Courses/Intro-Regression-Python/Intro-Regression-Python.org: -------------------------------------------------------------------------------- 1 | #+TITLE: Course: Introduction to Regression Analysis with Python 2 | #+AUTHOR: Joon Ro 3 | #+EMAIL: joon.ro@outlook.com 4 | #+CATEGORY: COURSE 5 | #+STARTUP: overview 6 | #+STARTUP: hidestars 7 | 8 | * Courses 9 | ** [[file:2018 Fall/2018 Fall.org][2018 Fall]] 10 | * Syllabus 11 | ** Course Description 12 | :PROPERTIES: 13 | :CUSTOM_ID: Syllabus/Course Description 14 | :END: 15 | This course provides students with Org-Coursepack, a modular and reusable 16 | teaching materials template in org-mode. Using self-explanatory course 17 | contents, students will be able to adapt the template and create their on 18 | course contents through Org-mode. 19 | ** Course Prerequisites 20 | :PROPERTIES: 21 | :CUSTOM_ID: Syllabus/Course Prerequisites 22 | :END: 23 | - Basic Statistics knowledge 24 | ** Student Learning Objectives 25 | :PROPERTIES: 26 | :CUSTOM_ID: Syllabus/Student Learning Objectives 27 | :END: 28 | As the result of this course, students should be able to: 29 | 30 | #+ATTR_REVEAL: :frag (appear) 31 | - Interpret regression results 32 | - Understand how to implement elasticity models in regression 33 | - Run regression analysis in Python 34 | ** Course Material 35 | :PROPERTIES: 36 | :CUSTOM_ID: Syllabus/Course Material 37 | :END: 38 | - Documentation :: Handouts, readings, and assignments will be uploaded to 39 | the repository. 40 | - Software :: Most data manipulations and analyses will be done using Python 41 | 42 | #+REVEAL_HTML: 51 | 52 | -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Assignments/Assignment_1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Assignments/Assignment_1.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Assignments/Assignment_1.tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[10pt,article]{article} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage{titling} \usepackage{multicol} \setlength{\columnsep}{1cm} \usepackage[T1]{fontenc} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage[onehalfspacing]{setspace} \usepackage{geometry}\geometry{left=1in,right=1in,top=1in,bottom=1in} \usepackage[framemethod=default]{mdframed} 17 | \author{ORG 0000 Org Teaching Template Assignment 1} 18 | \date{Due: \textit{2018-09-27 Thu}, before the beginning of the class} 19 | \title{Assignment 1: Create a new class} 20 | \hypersetup{ 21 | pdfauthor={ORG 0000 Org Teaching Template Assignment 1}, 22 | pdftitle={Assignment 1: Create a new class}, 23 | pdfkeywords={}, 24 | pdfsubject={ORG-Teaching-Template: Fall 2018 Template University specific teaching materials}, 25 | pdfcreator={Emacs 25.3.1 (Org mode 9.1.13)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \maketitle 30 | In this assignment, you are to create a new class, by adapting \texttt{Org-Teaching-Template}. 31 | \end{document} -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Exams/Exam_1_01_A.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Exams/Exam_1_01_A.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Exams/Exam_1_01_A.tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[article,letterpaper,times,10pt,listings-bw,microtype]{article} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage{titling} \usepackage{multicol} \setlength{\columnsep}{1cm} \usepackage[T1]{fontenc} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage[singlespacing]{setspace} \usepackage{geometry}\geometry{left=1in,right=1in,top=0.7in,bottom=1in} \usepackage[framemethod=default]{mdframed} \usepackage{enumitem} \setlist[1]{itemsep=15pt} 17 | \author{ORG 0000-01: Org-Coursepack} 18 | \date{2018-02-27 Tue} 19 | \title{Exam 1 (Type A)} 20 | \hypersetup{ 21 | pdfauthor={ORG 0000-01: Org-Coursepack}, 22 | pdftitle={Exam 1 (Type A)}, 23 | pdfkeywords={}, 24 | pdfsubject={Org-Coursepack-Documentation: A Comprehensive Course Template for Teaching with Org Mode School specific teaching materials}, 25 | pdfcreator={Emacs 25.3.1 (Org mode 9.1.13)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \maketitle 30 | \vspace{20 mm} 31 | 32 | \begin{itemize} 33 | \item Your Name: \underline{\hspace{4cm}} 34 | \end{itemize} 35 | 36 | \vspace{20 mm} 37 | 38 | Instructions: 39 | 40 | \begin{itemize} 41 | \item Total time: 75 Minutes 42 | \item There are both multiple choice and short answer questions 43 | \end{itemize} 44 | \clearpage 45 | \section*{Multiple Choice} 46 | \label{sec:orge04042c} 47 | (2 points each, unless otherwise specified) 48 | \begin{enumerate} 49 | \item Which of the following is a vegetable? 50 | \begin{enumerate} 51 | \item Okra 52 | \item Carrot 53 | \item Eggplant 54 | \item Pepper 55 | \end{enumerate} 56 | \end{enumerate} 57 | \clearpage 58 | \section*{Short Answers} 59 | \label{sec:org3b6929b} 60 | \begin{mdframed}[style=exampledefault, frametitle={}] 61 | Please answer the following short answer questions each with no more than 3 62 | sentences. 63 | \end{mdframed} 64 | 65 | \begin{enumerate} 66 | \item Describe how to include the content of a subtree from another org file, excluding its heading. 67 | 68 | \vspace{50 mm} 69 | \end{enumerate} 70 | \end{document} -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Exams/Exam_1_01_B.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Exams/Exam_1_01_B.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Exams/Exam_1_01_B.tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[article,letterpaper,times,10pt,listings-bw,microtype]{article} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage{titling} \usepackage{multicol} \setlength{\columnsep}{1cm} \usepackage[T1]{fontenc} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage[singlespacing]{setspace} \usepackage{geometry}\geometry{left=1in,right=1in,top=0.7in,bottom=1in} \usepackage[framemethod=default]{mdframed} \usepackage{enumitem} \setlist[1]{itemsep=15pt} 17 | \author{ORG 0000-01: Org-Coursepack} 18 | \date{2018-02-27 Tue} 19 | \title{Exam 1 (Type B)} 20 | \hypersetup{ 21 | pdfauthor={ORG 0000-01: Org-Coursepack}, 22 | pdftitle={Exam 1 (Type B)}, 23 | pdfkeywords={}, 24 | pdfsubject={Org-Coursepack-Documentation: A Comprehensive Course Template for Teaching with Org Mode School specific teaching materials}, 25 | pdfcreator={Emacs 25.3.1 (Org mode 9.1.13)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \maketitle 30 | \vspace{20 mm} 31 | 32 | \begin{itemize} 33 | \item Your Name: \underline{\hspace{4cm}} 34 | \end{itemize} 35 | 36 | \vspace{20 mm} 37 | 38 | Instructions: 39 | 40 | \begin{itemize} 41 | \item Total time: 75 Minutes 42 | \item There are both multiple choice and short answer questions 43 | \end{itemize} 44 | \clearpage 45 | \section*{Multiple Choice} 46 | \label{sec:org9f02b77} 47 | (2 points each, unless otherwise specified) 48 | \begin{enumerate} 49 | \item Which of the following is a vegetable? 50 | \begin{enumerate} 51 | \item Okra 52 | \item Pepper 53 | \item Eggplant 54 | \item Carrot 55 | \end{enumerate} 56 | \end{enumerate} 57 | \clearpage 58 | \section*{Short Answers} 59 | \label{sec:org9b58f9b} 60 | \begin{mdframed}[style=exampledefault, frametitle={}] 61 | Please answer the following short answer questions each with no more than 3 62 | sentences. 63 | \end{mdframed} 64 | 65 | \begin{enumerate} 66 | \item Describe how to include the content of a subtree from another org file, excluding its heading. 67 | 68 | \vspace{50 mm} 69 | \end{enumerate} 70 | \end{document} -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Exams/Exam_1_MC_A_Key.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Exams/Exam_1_MC_A_Key.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Exams/Exam_1_MC_A_Key.tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[article,letterpaper,times,10pt,listings-bw,microtype]{article} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage{titling} \usepackage{multicol} \setlength{\columnsep}{1cm} \usepackage[T1]{fontenc} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage[singlespacing]{setspace} \usepackage{geometry}\geometry{left=1in,right=1in,top=0.7in,bottom=1in} \usepackage[framemethod=default]{mdframed} \usepackage{enumitem} \setlist[1]{itemsep=15pt} 17 | \author{ORG 0000: Org-Coursepack \\ Fall 2018} 18 | \date{2018-02-27 Tue} 19 | \title{Exam 1 (Type A) Key} 20 | \hypersetup{ 21 | pdfauthor={ORG 0000: Org-Coursepack \\ Fall 2018}, 22 | pdftitle={Exam 1 (Type A) Key}, 23 | pdfkeywords={}, 24 | pdfsubject={Org-Coursepack-Documentation: A Comprehensive Course Template for Teaching with Org Mode School specific teaching materials}, 25 | pdfcreator={Emacs 25.3.1 (Org mode 9.1.13)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \maketitle 30 | \begin{enumerate} 31 | \item Which of the following is a vegetable? 32 | \begin{enumerate} 33 | \item Okra 34 | \item Carrot \(\checkmark\) 35 | \item Eggplant 36 | \item Pepper 37 | \end{enumerate} 38 | \end{enumerate} 39 | \end{document} -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Exams/Exam_1_MC_B_Key.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Exams/Exam_1_MC_B_Key.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Exams/Exam_1_MC_B_Key.tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[article,letterpaper,times,10pt,listings-bw,microtype]{article} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage{titling} \usepackage{multicol} \setlength{\columnsep}{1cm} \usepackage[T1]{fontenc} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage[singlespacing]{setspace} \usepackage{geometry}\geometry{left=1in,right=1in,top=0.7in,bottom=1in} \usepackage[framemethod=default]{mdframed} \usepackage{enumitem} \setlist[1]{itemsep=15pt} 17 | \author{ORG 0000: Org-Coursepack \\ Fall 2018} 18 | \date{2018-02-27 Tue} 19 | \title{Exam 1 (Type B) Key} 20 | \hypersetup{ 21 | pdfauthor={ORG 0000: Org-Coursepack \\ Fall 2018}, 22 | pdftitle={Exam 1 (Type B) Key}, 23 | pdfkeywords={}, 24 | pdfsubject={Org-Coursepack-Documentation: A Comprehensive Course Template for Teaching with Org Mode School specific teaching materials}, 25 | pdfcreator={Emacs 25.3.1 (Org mode 9.1.13)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \maketitle 30 | \begin{enumerate} 31 | \item Which of the following is a vegetable? 32 | \begin{enumerate} 33 | \item Okra 34 | \item Pepper 35 | \item Eggplant 36 | \item Carrot \(\checkmark\) 37 | \end{enumerate} 38 | \end{enumerate} 39 | \end{document} -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/01 Course Introduction.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Lectures/01 Course Introduction.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/02 Org Mode Basics.rst: -------------------------------------------------------------------------------- 1 | ======================== 2 | Class 2: Org Mode Basics 3 | ======================== 4 | 5 | 6 | ORG 0000 7 | Joon H. Ro & Jae-Eun Namkoong 8 | 9 | Class 2 10 | [2018-08-30 Thu] 11 | 12 | 1 Headings 13 | ---------- 14 | 15 | - In Org mode, a heading is denoted by preceding stars (``\*``), and the level of 16 | a heading is determined by the number of stars. 17 | 18 | - For example, 19 | 20 | :: 21 | 22 | * Heading 1 23 | ** Subheading 1.1 24 | * Heading 2 25 | ** Subheading 2.1 26 | 27 | - A heading can have tags and properties associated with them, which allows 28 | very flexible usage that we exploit throughout Org-Coursepack. 29 | 30 | 1.1 Tags 31 | ~~~~~~~~ 32 | 33 | - A heading can have tags associated with them. They are used in the form of ``:tag:``, on the same line as the heading. For example, 34 | 35 | :: 36 | 37 | * Heading with a tag :tag: 38 | 39 | .. _Lectures/Org Mode Basics/Properties: 40 | 41 | 1.2 Properties 42 | ~~~~~~~~~~~~~~ 43 | 44 | - Each heading can have properties associated with it. You can think of 45 | properties as data specific for the heading, as they consist of 46 | ``:PROPERTY_NAME:`` and ``PROPERTY VALUE`` pairs. 47 | 48 | - For example, a heading for a lecture can have property values for lecture 49 | number, file name for exports, etc. One of the frequently used properties is 50 | ``:CUSTOM_ID:``, which can be used to locate the particular heading. See the 51 | ``Including Content from Another Org file`` section for how it is used in 52 | Org-Coursepack. 53 | 54 | - See the `Org manual `_ for more information. 55 | 56 | - For example, 57 | 58 | :: 59 | 60 | * Heading 1 61 | :PROPERTIES: 62 | :CUSTOM_ID: Heading 1 63 | :END: 64 | 65 | 2 Macros 66 | -------- 67 | 68 | Org mode provides macro replacement functionality. This can be especially 69 | useful for instructors, as shown in the following cases. 70 | 71 | - When defining terms that will be repeated within or across course-related 72 | materials, or needs to be changed in future semesters. 73 | 74 | Example 75 | Suppose an instructor were to present a due date for 76 | "Assignment 1" in three different places (e.g., syllabus, 77 | lecture, and assignment guideline). By using a macro, an 78 | instructor can ensure that all documents have the same 79 | information, and make such updates easily in future 80 | semesters. Such a macro (named ``DUE_ASSIGNMENT_1``) can be 81 | defined like the following: 82 | 83 | :: 84 | 85 | #+MACRO: DUE_ASSIGNMENT_1 [2018-09-27 Thu] 86 | 87 | One can then use the macro with ``{{{MACRO_NAME}}}``. For example, all 88 | areas in documents where it says ``{{{DUE_ASSIGNMENT_1}}}`` will be 89 | replaced with ``[2018-09-27 Thu]`` upon export. 90 | 91 | - When defining terms specific to a subtree (e.g., a specific class) that 92 | the instructor may want to use in multiple places. This can be useful when 93 | specifying class orders, class titles, or section numbers. One 94 | can achieve this by referring to property values of a subtree. 95 | 96 | Example 97 | An instructor can define a class number property like the following: 98 | 99 | :: 100 | 101 | * Heading 102 | :PROPERTIES: 103 | :CLASS: 2 104 | :END: 105 | 106 | Then ``{{{property(PROPERTY_NAME)}}}`` will be replaced by 107 | the value of ``PROPERTY_NAME`` property: 108 | 109 | :: 110 | 111 | This is class number {{{property(CLASS)}}}. 112 | 113 | - See the `Org manual `_ for more information. 114 | 115 | 3 Including Content from Another Org file 116 | ----------------------------------------- 117 | 118 | - In Org mode, a user can pull content, without making a copy, from any org file (including 119 | the current one) via the ``#+INCLUDE:`` statement. See the `Org manual `_ fore more information. 120 | 121 | - Taking advantage of this functionality, the template is created so that its 122 | content is modular and can be pulled flexibly as needed. This feature is 123 | useful when sharing content across different courses or semesters or when 124 | revisiting past materials (e.g., in exam reviews or when reviewing past 125 | cases to build on them). 126 | 127 | Example 128 | This is how an instructor would use the ``#+INCLUDE:`` statement 129 | to pull content from a subtree with ``:CUSTOM_ID:`` ``R-squared`` 130 | in the file ``Regression.org`` so it is presented across multiple 131 | courses (i.e., Statistics 101 and Marketing Research). 132 | ``:only-contents t`` option means only the contents of the 133 | subtree, not its heading and properties, will be included. To 134 | visit the included file, press ``C-c '`` while the cursor is on 135 | the ``#+INCLUDE:`` statement. 136 | 137 | - **``Regression.org``** 138 | 139 | :: 140 | 141 | * R-squared 142 | :PROPERTIES: 143 | :CUSTOM_ID: R-squared 144 | :END: 145 | - The definition of \( R^{2} \) is: 146 | \[ R^{2} = 1 - \dfrac{SS_{\text{res}}}{SS_{\text{tot}}}\] 147 | 148 | - **``Statistics 101.org``** 149 | 150 | :: 151 | 152 | * Regression 153 | ** R-squared 154 | #+INCLUDE: "/Regression.org::#R-squared" :only-contents t 155 | 156 | - **``Marketing Research.org``** 157 | 158 | :: 159 | 160 | * Regression 161 | ** R-squared 162 | #+INCLUDE: "/Regression.org::#R-squared" :only-contents t 163 | -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/02 Org mode Basics.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Lectures/02 Org mode Basics.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/03 Topic and Course Org Files.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Class 3: Topic and Course Org Files 6 | 8 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 26 | 27 | 28 | 29 | 30 |
31 |
32 |

Class 3: Topic and Course Org Files

33 |
34 |
35 |
36 |

1 Introduction and Recap of Last Class

37 |
38 |
39 |
40 |
41 |

1.1 Announcements

42 |
    43 |
  • 44 | 45 |
46 |
47 |
48 |

1.2 Recap of Last Class

49 |
    50 |
  • Headings
  • 51 |
  • Macros
  • 52 |
  • Including Content from Another Org file
  • 53 | 54 |
55 |
56 |
57 |

1.3 Lecture Outline

58 |
    59 |
  • Topic Org Files
  • 60 |
  • Course Org Files
  • 61 | 62 |
63 |
64 |
65 |
66 |
67 |

2 Topic Org Files

68 |

69 | A topic Org file contains course content (e.g., lecture slides and 70 | notes, exam questions, assignment guidelines) for a given topic. Its 71 | general structure is shown below, using an example of Regression as a 72 | teaching topic. The top section (where lines start with #+) has 73 | metadata for the Org file. Including meta data is optional. 74 |

75 | 76 |
 77 | #+TITLE:     Topics: Regression
 78 | #+AUTHOR:    Your Name
 79 | #+EMAIL:     Your Email
 80 | #+DESCRIPTION: Topic Org file for Regression
 81 | #+CATEGORY: TOPIC
 82 | #+STARTUP: overview
 83 | #+STARTUP: hidestars
 84 | 
 85 | * Lectures
 86 | * Assignments
 87 | * Exercises
 88 | * Questions
 89 | 
90 |
91 |
92 |

2.1 Organizing Content in Topic Org Files

93 |
    94 |
  • 95 | In most cases, course content would be created in a topic Org file (e.g., a 96 | topic Org file that covers Regression), each consisting of multiple 97 | sub-topics (e.g., subtopics of Regression such as, Estimation, Interpretation, R-squared). Sub-topics are 98 | organized in the form of a subtree as shown in the example below. 99 |

    100 | 101 |
    102 | * Lectures
    103 | ** Estimation
    104 | :PROPERTIES:
    105 | :CUSTOM_ID: Lectures/Estimation
    106 | :END:
    107 | ** Interpretation
    108 | :PROPERTIES:
    109 | ** R-Squared
    110 | :PROPERTIES:
    111 | 
  • 112 | 113 |
  • 114 | Each sub-topic should have a :CUSTOM_ID: property, as shown in the example 115 | above, so it can be included in another file, such as a semester Org file. 116 |

    117 | 118 |
    119 |

    120 | On a related note, an important consideration when creating a topic 121 | Org file is the fact that the content in it has the potential to be 122 | included in multiple different semester Org files. Hence, an 123 | instructor who, for instance, plans to teach the same topic (e.g., 124 | Regression) or sub-topic (e.g., R-squared) in different courses 125 | (e.g., Statistics 101 and Marketing Research) would benefit from not 126 | making references to a specific course in the topic Org file. 127 |

    128 | 129 |
  • 130 | 131 |
  • The Org-Coursepacket includes multiple topic Org files located in the the 132 | Topics folder.
  • 133 |
  • A topic org file can contain relevant assignments, exercises, and exam 134 | questions under corresponding subtrees.
  • 135 | 136 |
137 |
138 |
139 |
140 |
141 |

3 Course Org Files

142 |

143 | A course Org file contains permanent information for the corresponding 144 | course, that is, information about the course that remains consistent across semesters 145 | (e.g., learning objectives, grading schemes). 146 |

147 | 148 |
149 |
150 | 151 |

152 | We will now review the structure and contents of the course Org 153 | file. The example below shows the highest-level headings of the course 154 | Org file for Org-Coursepack – i.e., Courses and Syllabus. 155 |

156 | 157 |
158 | #+TITLE:     Course: Org-Coursepack
159 | #+AUTHOR:    Your Name
160 | #+EMAIL:     Your Email
161 | #+DESCRIPTION: org file for Org-Coursepack
162 | #+CATEGORY: COURSE
163 | #+STARTUP: overview
164 | #+STARTUP: hidestars
165 | 
166 | * Courses
167 | * Syllabus
168 | 
169 | 170 |

171 | The Courses tree can have a subtree for each semester teaching this 172 | course. See example below. Note that, in the actual course Org file, 173 | semester subtrees are links to their respective semester Org files. 174 |

175 | 176 |
177 | * Courses
178 | ** 2020 Spring
179 | 
180 | 181 |

182 | The Syllabus subtree containts partial content for the syllabus, 183 | specifically, information about the course that remains consistent 184 | across semesters (e.g., Course Description, Learning 185 | Objectives, grading scheme). See an example of the Syllabus 186 | tree with only the Course Description subtree expanded. 187 |

188 | 189 |
190 | * Syllabus
191 | ** Course Description
192 | :PROPERTIES:
193 | :CUSTOM_ID: Syllabus/Course Description
194 | :END:
195 | Course description here
196 | ** Student Learning Objectives
197 | ** Course Material
198 | ** Grading
199 | ** Specific Course Policies
200 | 
201 |
202 |
203 |
204 |
205 |

4 Class Recap

206 |
    207 |
  • Topic Org Files
  • 208 |
  • Course Org Files
  • 209 | 210 |
211 |
212 |
213 |
214 |
215 | 216 | 217 | 218 | 251 | 252 | 253 | -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/03 Topic and Course Org Files.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Lectures/03 Topic and Course Org Files.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/03 Topic and Course Org Files.rst: -------------------------------------------------------------------------------- 1 | =================================== 2 | Class 3: Topic and Course Org Files 3 | =================================== 4 | 5 | 6 | ORG 0000 7 | Joon H. Ro & Jae-Eun Namkoong 8 | 9 | Class 3 10 | [2018-09-04 Tue] 11 | 12 | 1 Topic Org Files 13 | ----------------- 14 | 15 | A topic Org file contains course content (e.g., lecture slides and 16 | notes, exam questions, assignment guidelines) for a given topic. Its 17 | general structure is shown below, using an example of Regression as a 18 | teaching topic. The top section (where lines start with ``#+``) has 19 | metadata for the Org file. Including meta data is optional. 20 | 21 | :: 22 | 23 | #+TITLE: Topics: Regression 24 | #+AUTHOR: Your Name 25 | #+EMAIL: Your Email 26 | #+DESCRIPTION: Topic Org file for Regression 27 | #+CATEGORY: TOPIC 28 | #+STARTUP: overview 29 | #+STARTUP: hidestars 30 | 31 | * Lectures 32 | * Assignments 33 | * Exercises 34 | * Questions 35 | 36 | .. _Lectures/Topic Org Files/Organizing Content: 37 | 38 | 1.1 Organizing Content in Topic Org Files 39 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 40 | 41 | - In most cases, course content would be created in a topic Org file (e.g., a 42 | topic Org file that covers Regression), each consisting of multiple 43 | sub-topics (e.g., subtopics of Regression such as, Estimation, Interpretation, R-squared). Sub-topics are 44 | organized in the form of a subtree as shown in the example below. 45 | 46 | :: 47 | 48 | * Lectures 49 | ** Estimation 50 | :PROPERTIES: 51 | :CUSTOM_ID: Lectures/Estimation 52 | :END: 53 | ** Interpretation 54 | :PROPERTIES: 55 | ** R-Squared 56 | :PROPERTIES: 57 | 58 | - Each sub-topic should have a ``:CUSTOM_ID:`` property, as shown in the example 59 | above, so it can be included in another file, such as a semester Org file. 60 | 61 | .. note:: 62 | 63 | On a related note, an important consideration when creating a topic 64 | Org file is the fact that the content in it has the potential to be 65 | included in multiple different semester Org files. Hence, an 66 | instructor who, for instance, plans to teach the same topic (e.g., 67 | Regression) or sub-topic (e.g., R-squared) in different courses 68 | (e.g., Statistics 101 and Marketing Research) would benefit from not 69 | making references to a specific course in the topic Org file. 70 | 71 | - The Org-Coursepacket includes multiple topic Org files located in the the 72 | ``Topics`` folder. 73 | 74 | - A topic org file can contain relevant assignments, exercises, and exam 75 | questions under corresponding subtrees. 76 | 77 | 2 Course Org Files 78 | ------------------ 79 | 80 | A course Org file contains permanent information for the corresponding 81 | course, that is, information about the course that remains consistent across semesters 82 | (e.g., learning objectives, grading schemes). 83 | 84 | We will now review the structure and contents of the course Org 85 | file. The example below shows the highest-level headings of the course 86 | Org file for Org-Coursepack -- i.e., Courses and Syllabus. 87 | 88 | :: 89 | 90 | #+TITLE: Course: Org-Coursepack 91 | #+AUTHOR: Your Name 92 | #+EMAIL: Your Email 93 | #+DESCRIPTION: org file for Org-Coursepack 94 | #+CATEGORY: COURSE 95 | #+STARTUP: overview 96 | #+STARTUP: hidestars 97 | 98 | * Courses 99 | * Syllabus 100 | 101 | The ``Courses`` tree can have a subtree for each semester teaching this 102 | course. See example below. Note that, in the actual course Org file, 103 | semester subtrees are links to their respective semester Org files. 104 | 105 | :: 106 | 107 | * Courses 108 | ** 2020 Spring 109 | 110 | The ``Syllabus`` subtree containts partial content for the syllabus, 111 | specifically, information about the course that remains consistent 112 | across semesters (e.g., ``Course Description``, ``Learning Objectives``, grading scheme). See an example of the ``Syllabus`` 113 | tree with only the ``Course Description`` subtree expanded. 114 | 115 | :: 116 | 117 | * Syllabus 118 | ** Course Description 119 | :PROPERTIES: 120 | :CUSTOM_ID: Syllabus/Course Description 121 | :END: 122 | Course description here 123 | ** Student Learning Objectives 124 | ** Course Material 125 | ** Grading 126 | ** Specific Course Policies 127 | -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/04 Creating Content for Slides and Handouts.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Lectures/04 Creating Content for Slides and Handouts.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/04 Creating Content for Slides and Handouts.rst: -------------------------------------------------------------------------------- 1 | ================================================= 2 | Class 4: Creating Content for Slides and Handouts 3 | ================================================= 4 | 5 | 6 | ORG 0000 7 | Joon H. Ro & Jae-Eun Namkoong 8 | 9 | Class 4 10 | [2018-09-06 Thu] 11 | 12 | 1 Creating Slides and Handouts: Introduction 13 | -------------------------------------------- 14 | 15 | Content is created using the Org markup language. General information on how 16 | to use the markeup language can be found in the `Org manual `_. Hence, 17 | we focus on common slide- and handout-related tasks that cannot be achieved 18 | with common Org markup language. These tasks require either raw HTML tags or 19 | LaTeX code, or custom Emacs lisp code. For tasks that require custom Emacs 20 | Lisp code, users can put code snippets we present here into their Emacs init 21 | file. 22 | 23 | .. note:: 24 | 25 | We use reveal.js as the default slide format, and while Beamer slides are not 26 | completely supported by Org-Coursepack yet, in some cases we do provide the same 27 | functionality for Beamer as well as reveal.js. In those cases we have a 28 | note describing how to achieve the functionality in Beamer. 29 | 30 | 2 Using Raw HTML Tags and LaTeX Code 31 | ------------------------------------ 32 | 33 | Directly quoting raw HTML tags and LaTeX code allows users to have granular 34 | control over how contents are presented. Such quotes will be only included in 35 | their corresponding outputs that are HTML-based (e.g., reveal.js) and 36 | LaTeX-based, respectively. Hence, to understand the information that follow, 37 | the readers should be familiar with the information in the Org manual on 38 | `Quoting HTML tags `_ and `Quoting LaTeX code `_. 39 | 40 | .. note:: 41 | 42 | **Inline Raw Code** 43 | 44 | To use Org macros with raw LaTeX code (e.g., surround a macro with 45 | LaTeX code), use ``@@latex:your code here@@`` (same grammar 46 | applies to HTML as well) like the following: 47 | 48 | :: 49 | 50 | @@latex:{\small@@ {{{COURSE}}} @@latex:}@@ 51 | 52 | 3 Features for Both Slides and Handouts 53 | --------------------------------------- 54 | 55 | 3.1 Specifying Attributes 56 | ~~~~~~~~~~~~~~~~~~~~~~~~~ 57 | 58 | Org mode allows users to specify attributes to raw HTML tags or LaTeX code 59 | using ``#+ATTR_FORMAT:`` grammar. For example, the following shows how to 60 | specify the width of an image. 61 | 62 | :: 63 | 64 | #+ATTR_HTML: :width 80% 65 | [[/img/image.png]] 66 | 67 | For more information, see the `tutorial on Images and XHTML export `_. 68 | 69 | 3.2 Changing Font Sizes 70 | ~~~~~~~~~~~~~~~~~~~~~~~ 71 | 72 | One of the frequently used use cases of raw HTML or LaTeX code in Org markup 73 | is changing the font size of a specific text. 74 | 75 | For example, to apply a smaller 76 | font size in HTML outputs, the user can use the following code. 77 | 78 | .. code:: text 79 | 80 | #+HTML: 81 | Content with smaller font 82 | #+HTML: 83 | 84 | In LaTeX handouts, the user can use the code below. 85 | 86 | .. code:: text 87 | 88 | #+LATEX: {\small 89 | Content with smaller font 90 | #+LATEX: } 91 | 92 | Since raw code that is irrelevant to the specific output format (e.g., 93 | HTML codes in a LaTeX output) will be ignored, users can safely combine 94 | HTML and LateX codes and use them together like so: 95 | 96 | .. code:: text 97 | 98 | #+LATEX: {\small 99 | #+HTML: 100 | Content with smaller font 101 | #+HTML: 102 | #+LATEX: } 103 | 104 | 3.3 Using a Dummy Heading 105 | ~~~~~~~~~~~~~~~~~~~~~~~~~ 106 | 107 | Instructors may want the option to present content of a tree without its heading. To do so, follow the instructions at 108 | `https://orgmode.org/worg/org-hacks.html#ignoreheadline `_. Specifically, include the 109 | following in your init file, and any header with the ``:ignore:`` tag will not be printed in exported outputs. 110 | 111 | .. code:: common-lisp 112 | 113 | (require 'ox-extra) 114 | (ox-extras-activate '(ignore-headlines)) 115 | 116 | 4 Slides: Features for reveal.js 117 | -------------------------------- 118 | 119 | .. note:: 120 | 121 | Note that reveal.js is HTML-based, so any raw HTML tags (e.g., via ``#+HTML:``) 122 | or attributes (e.g., via ``#+ATTR_HTML:``) will be applied to reveal.js as well 123 | as all HTML-based output formats. For codes that are only for reveal.js, one 124 | should use ``#+REVEAL:`` (``#+ATTR_REVEAL:``) instead of ``#+HTML:`` 125 | (``#+ATTR_HTML:``) to avoid unnecessary tags being exported. 126 | 127 | 4.1 List Fragments 128 | ~~~~~~~~~~~~~~~~~~ 129 | 130 | One can easily obtain list fragments (make items in the list appear 131 | sequentially) using reveal.js. Simply add ``#+ATTR_REVEAL: :frag (appear)`` before the list. See the example below. 132 | 133 | .. code:: text 134 | 135 | #+ATTR_REVEAL: :frag (appear) 136 | - I appear first. 137 | - I appear second. 138 | - I appear third. 139 | 140 | .. note:: 141 | 142 | Similarly, a list fragment can be obtained on the Beamer output by including 143 | ``#+ATTR_BEAMER: :overlay <+->`` before the list. 144 | 145 | 4.2 Splitting slides 146 | ~~~~~~~~~~~~~~~~~~~~ 147 | 148 | To split content into multiple slides, insert the following code between the areas where you want the split to happen. 149 | 150 | .. code:: text 151 | 152 | #+REVEAL: split 153 | 154 | .. note:: 155 | 156 | Similarly, a frame break can be inserted in Beamer by using ``#+BEAMER: \framebreak``. 157 | 158 | 4.3 Embedding Youtube videos 159 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 160 | 161 | One can use the following example to embed a YouTube video in a slide. The 162 | example specifies at which points of the video the viewing will start 163 | (1 second in) and end (60 seconds in). 164 | 165 | .. code:: text 166 | 167 | #+BEGIN_EXPORT HTML 168 | 171 | #+END_EXPORT 172 | 173 | 4.4 Speaker Notes 174 | ~~~~~~~~~~~~~~~~~ 175 | 176 | An instructor may create a speaker note that accompanies a lecture 177 | slide. reveal.js will display the speaker note in a separate browser 178 | window. To create a speaker note, use a ``NOTES`` block as shown in the example 179 | below. 180 | 181 | .. code:: text 182 | 183 | #+BEGIN_NOTES 184 | - This is a speaker note. 185 | #+END_NOTES 186 | 187 | The following code needs to be inserted in the init file to hide speaker 188 | notes in LaTeX, reStructuredText, and HTML output formats. 189 | 190 | .. note:: 191 | 192 | Note that using the example code below will also make speaker notes appear 193 | properly on Beamer. 194 | 195 | .. code:: common-lisp 196 | 197 | (defun string/starts-with (string prefix) 198 | "Return t if STRING starts with prefix." 199 | (and (string-match (rx-to-string `(: bos ,prefix) t) string) t)) 200 | 201 | (defun my/process-NOTES-blocks (text backend info) 202 | "Filter NOTES special blocks in export." 203 | (cond 204 | ((eq backend 'latex) 205 | (if (string/starts-with text "\\begin{NOTES}") "")) 206 | ((eq backend 'rst) 207 | (if (string/starts-with text ".. NOTES::") "")) 208 | ((eq backend 'html) 209 | (if (string/starts-with text "
") "")) 210 | ((eq backend 'beamer) 211 | (let ((text (replace-regexp-in-string "\\\\begin{NOTES}" "\\\\note{" text))) 212 | (replace-regexp-in-string "\\\\end{NOTES}" "}" text))) 213 | )) 214 | 215 | (eval-after-load 'ox '(add-to-list 216 | 'org-export-filter-special-block-functions 217 | 'my/process-NOTES-blocks)) 218 | 219 | 5 Handouts: Features for LaTeX 220 | ------------------------------ 221 | 222 | The features introduced in this section are readily available, as the 223 | necessary items in the LaTeX preamble enabling the features are already 224 | specified in the properties of the ``Lectures`` subtree in the semester Org 225 | files of the Org-Coursepack. 226 | 227 | 5.1 Inserting Boxed Paragraphs 228 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 229 | 230 | With the ``mdframed`` block, users can easily create boxed paragraphs in LaTeX 231 | handouts. The example below shows the code for the box and what the box will 232 | look like in the handout. Note that the title of the box is written in bold 233 | instead of using ``#+ATTR_LATEX: :options [frametitle={Title of the box}]`` 234 | option, so the title gets printed in both reveal.js and LaTeX outputs. 235 | 236 | .. code:: text 237 | 238 | #+BEGIN_mdframed 239 | *Title of the box* 240 | 241 | Content of the box 242 | #+END_mdframed 243 | 244 | .. note:: 245 | 246 | **Title of the box** 247 | 248 | Content of the box 249 | 250 | Optionally, users can choose to add the following code to their init file so 251 | ``mdframed`` boxes are automatically converted to ``note`` directives in 252 | reStructuredText export. 253 | 254 | .. code:: common-lisp 255 | 256 | (defun my/process-mdframed-blocks (text backend info) 257 | "Filter mdframed special blocks in export." 258 | (cond 259 | ((org-export-derived-backend-p backend 'rst) 260 | (replace-regexp-in-string ".. mdframed::" ".. note::" text t t)) 261 | )) 262 | 263 | (eval-after-load 'ox '(add-to-list 264 | 'org-export-filter-special-block-functions 265 | 'my/process-mdframed-blocks)) 266 | 267 | 5.2 Organizing Content in Multiple Columns 268 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 269 | 270 | One can easily make parts of the handout multi-column. The example 271 | below shows the code for creating two columns and what that will look like in 272 | the handout. 273 | 274 | .. code:: text 275 | 276 | #+LATEX: \begin{multicols}{2} 277 | This is content in the first column. 278 | This is content in the first column. 279 | This is content in the first column. 280 | 281 | This is content in the second column. 282 | This is content in the second column. 283 | This is content in the second column. 284 | #+LATEX: \end{multicols} 285 | 286 | Note that one can put ``#+LATEX: \columnbreak`` to force a column break inside a 287 | multicolumn environment at that position. 288 | -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/05 Exporting Slides and Handouts.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Lectures/05 Exporting Slides and Handouts.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/05 Exporting Slides and Handouts.rst: -------------------------------------------------------------------------------- 1 | ====================================== 2 | Class 5: Exporting Slides and Handouts 3 | ====================================== 4 | 5 | 6 | ORG 0000 7 | Joon H. Ro & Jae-Eun Namkoong 8 | 9 | Class 5 10 | [2018-09-11 Tue] 11 | 12 | 1 Exporting Content in Org Mode 13 | ------------------------------- 14 | 15 | Org mode provides powerful export functionalities, which enable users to 16 | convert Org markup content to a variety of other formats. The outputs have proper 17 | formatting while maintaining the original structure and markup. 18 | The Org-Coursepack is set up to use reveal.js for slides and LaTeX for 19 | handouts. Users can adapt the current setting to accomodate other output 20 | formats. 21 | 22 | General information about exporting can be found in the `Org manual `_. Hence, 23 | this lecture focuses on describing how exporting is set up in the 24 | Org-Coursepack, introducing pre-built export functionalities of the 25 | Org-Coursepack, and offering useful exporting tips for instructors. 26 | 27 | 1.1 Setting Export Scope to ``Subtree`` 28 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 29 | 30 | The export command, ``org-export-dispatch`` (``C-c C-e``), takes the user 31 | to the ``Org Export Dispatcher`` interface. Here, the user can select 32 | whether to export the buffer (i.e., the whole file) or only a 33 | subtree. An instructor may use the former to create a course 34 | booklet and the latter to export slides for a full or part of a 35 | lecture. The default scope of Org mode is ``Buffer``, but a user can put the following snippet in 36 | the Emacs init file to set the default scope to ``Subtree``. 37 | 38 | .. code:: common-lisp 39 | 40 | ;; set the default export scope to subtree 41 | (setf org-export-initial-scope 'subtree) 42 | 43 | 1.2 Export Settings 44 | ~~~~~~~~~~~~~~~~~~~ 45 | 46 | Org mode allows users to specify `export settings `_ at both buffer and subtree levels. 47 | 48 | 1.2.1 Buffer-Level Settings 49 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 50 | 51 | For buffer-level settings, one can use the ``#+OPTIONS:`` statement. For 52 | example, including the following line in an Org file will include a table 53 | of contents for that file in the exported document: 54 | 55 | :: 56 | 57 | #+OPTIONS: toc:t 58 | 59 | Similarly including the following line will add numbers in front of the headings. 60 | 61 | :: 62 | 63 | #+OPTIONS: num:t 64 | 65 | 1.2.2 Subtree-Level Settings 66 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 67 | 68 | Export settings can be specified at the subtree level with 69 | ``:PROPERTIES:``. Simply add ``:EXPORT_:`` as a prefix to each option. For 70 | example, the title of the document can be set with 71 | ``:EXPORT_TITLE:``. To specify multiple settings (e.g., items for LaTeX preamble), 72 | one can add ``+`` to the property name to append an additional value. For example, 73 | 74 | :: 75 | 76 | :PROPERTIES: 77 | :EXPORT_LATEX_HEADER+: \usepackage{titling} 78 | :EXPORT_LATEX_HEADER+: \usepackage{multicol} 79 | :END: 80 | 81 | 2 Clickable Links and Keybindings for Exporting 82 | ----------------------------------------------- 83 | 84 | 2.1 Buttons 85 | ~~~~~~~~~~~ 86 | 87 | We include export buttons (in the form of links written in Emacs-lisp) in the 88 | properties of any exportable subtree in the Org-Coursepack (e.g., 89 | lectures, syllabi, and exams). 90 | 91 | For example, each lecture headline comes with the ``:EXPORT_TO:`` 92 | property, which includes buttons such as ``reveal.js`` and 93 | ``LaTeX``. These buttons will export files to their respective format, 94 | using ``Subtree`` as the export scope. 95 | 96 | After exporting, users can click on buttons in the ``:VIEW_OUTPUT:`` 97 | property (e.g., ``HTML`` or ``PDF``) to open the exported files. 98 | 99 | 2.2 Key Bindings 100 | ~~~~~~~~~~~~~~~~ 101 | 102 | Using the command=org-export-dispatch= (``C-c C-e``) when exporting a 103 | content allows users to later repeat the last export action for that 104 | same content using the prefix argument (``C-u``). This is a convenient 105 | feature when exporting the same content multiple times. 106 | 107 | 108 | 109 | .. note:: 110 | 111 | Note that the cursor shoud be in the correct position (heading, 112 | properties, or spaces between the heading and its first subheading) of 113 | the subtree being exported. When using ``C-u C-c C-e`` for repeated 114 | export, however, the cursor position does *not* matter as long as the 115 | same buffer which contains the last exported subtree is open. 116 | 117 | 118 | 119 | To bind ``C-u C-c C-e`` to a key (``F5`` in this example), include 120 | the following Emacs-lisp code in into the init file: 121 | 122 | .. code:: common-lisp 123 | 124 | ;; bind f5 to keyboard macro of export-last-subtree 125 | (fset 'export-last-subtree 126 | "\C-u\C-c\C-e") 127 | 128 | (eval-after-load "org" 129 | '(progn 130 | (define-key org-mode-map (kbd "") 'export-last-subtree))) 131 | 132 | 3 Exporting Slides: with reveal.js 133 | ---------------------------------- 134 | 135 | - See the `org-reveal documentation `_ for instructions on installation and usage. 136 | 137 | 4 Exporting Handouts: with LaTeX 138 | -------------------------------- 139 | 140 | LaTeX export is extensively supported by Org mode. We refer users to the `Org 141 | manual `_ for the in-depth instructions. 142 | 143 | The following snippet shows the basic setup for our LaTeX output, 144 | where the ``koma-article`` class is added to ``org-latex-classes`` and the 145 | ``minted`` package is used for syntax highlighting. Currently, Python is 146 | the only language added to ``org-latex-minted-langs``. Users can add to 147 | ``org-latex-minted-langs`` any other languages they want processed with 148 | the ``minted`` package. 149 | 150 | .. note:: 151 | 152 | Note that we manually added the ``minted`` package to LaTeX preambles as opposed to adding 153 | it to ``org-latex-packages-alist``. This was to allow for flexible specifications of the ``outputdir`` option. 154 | 155 | .. code:: common-lisp 156 | 157 | (eval-after-load 'ox '(require 'ox-koma-letter)) 158 | 159 | (eval-after-load 'ox '(add-to-list 'org-latex-classes 160 | '("koma-article" 161 | "\\documentclass{scrartcl}" 162 | ("\\section{%s}" . "\\section*{%s}") 163 | ("\\subsection{%s}" . "\\subsection*{%s}") 164 | ("\\subsubsection{%s}" 165 | . "\\subsubsection*{%s}") 166 | ("\\paragraph{%s}" . "\\paragraph*{%s}") 167 | ("\\subparagraph{%s}" 168 | . "\\subparagraph*{%s}"))) ) 169 | 170 | (require 'ox-latex) 171 | (setq org-latex-listings 'minted) 172 | 173 | (setq org-latex-pdf-process 174 | '("pdflatex -shell-escape -interaction nonstopmode -output-directory %o %f" 175 | "pdflatex -shell-escape -interaction nonstopmode -output-directory %o %f")) 176 | 177 | (add-to-list 'org-latex-minted-langs '(python "python")) 178 | 179 | 4.1 Inserting a Page Break Before a Heading in LaTeX Export 180 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 181 | 182 | Users can add a page break in the LaTeX export by inserting 183 | ``#+LATEX: \clearpage``. Importantly, adding the following code into the init file 184 | automatically inserts a page break before any subtree that has a ``:newpage:`` 185 | tag. 186 | 187 | .. code:: common-lisp 188 | 189 | (defun org/get-headline-string-element (headline backend info) 190 | "Return the org element representation of an element. 191 | 192 | Won't work on ~verb~/=code=-only headers" 193 | (let ((prop-point (next-property-change 0 headline))) 194 | (if prop-point (plist-get (text-properties-at prop-point headline) :parent)))) 195 | 196 | (defun org/ensure-latex-clearpage (headline backend info) 197 | (when (org-export-derived-backend-p backend 'latex) 198 | (let ((elmnt (org/get-headline-string-element headline backend info))) 199 | (when (member "newpage" (org-element-property :tags elmnt)) 200 | (concat "\\clearpage\n" headline))))) 201 | 202 | (eval-after-load 'ox '(add-to-list 203 | 'org-export-filter-headline-functions 204 | 'org/ensure-latex-clearpage)) 205 | 206 | 5 Selective Export 207 | ------------------ 208 | 209 | By using raw code and custom Emacs-lisp scripts, users can flexibly choose 210 | which content to show/hide, depending on output format. For example, 211 | instructors may want to show images in slides but not in handouts, or they may 212 | want to include supplementary notes in handouts but not in slides. 213 | 214 | .. _Lectures/Exporting/Slide and Handout Only: 215 | 216 | 5.1 Tagging a Subtree as Slide or Handout Only 217 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 218 | 219 | With the code below in added to your init file, you can use the ``:slideonly:`` 220 | or ``:handoutonly:`` tags to selectively include a subtree in either a slide 221 | output or handout output, respectively. Currently LaTeX and ``rst`` backends is 222 | set as a handout output, and reveal.js and beamer backends are set as slide 223 | outputs. 224 | 225 | For example, 226 | 227 | :: 228 | 229 | * This subtree will only be exported in slide output :slideonly: 230 | - Content 231 | * This subtree will only be exported in handout output :handoutonly: 232 | - Content 233 | 234 | .. code:: common-lisp 235 | 236 | (defun org/parse-headings (backend) 237 | "Remove every headline with certain tags in the 238 | current buffer. BACKEND is the export back-end being used, as 239 | a symbol. 240 | 241 | " 242 | 243 | (if (member backend '(latex rst)) 244 | (org-map-entries 245 | (lambda () 246 | (progn 247 | (org-narrow-to-subtree) 248 | (org-cut-subtree) 249 | (widen) 250 | )) 251 | "+slideonly")) 252 | 253 | (if (member backend '(reveal beamer)) 254 | (org-map-entries 255 | (lambda () 256 | (progn 257 | (org-narrow-to-subtree) 258 | (org-cut-subtree) 259 | (widen) 260 | )) 261 | "+handoutonly")) 262 | 263 | ) 264 | 265 | (add-hook 'org-export-before-parsing-hook 'org/parse-headings) 266 | 267 | 5.2 Hiding Specific Content 268 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 269 | 270 | To hide content when exporting to HTML-based format outputs (slides), use raw 271 | HTML tags ````. See the example below. 272 | 273 | .. code:: html 274 | 275 | #+REVEAL_HTML: 278 | 279 | Similarly, any content placed between ``\iffalse`` and ``\fi`` will not be 280 | rendered in LaTeX outputs (handouts). See the example below. 281 | 282 | .. code:: text 283 | 284 | #+LATEX: \iffalse 285 | This will not be shown in LaTeX output 286 | #+LATEX: \fi 287 | -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/06 Semester Org Files 1 4 Introduction.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Lectures/06 Semester Org Files 1 4 Introduction.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/06 Semester Org Files 1 4 Introduction.rst: -------------------------------------------------------------------------------- 1 | =============================================== 2 | Class 6: Semester Org Files (1/4): Introduction 3 | =============================================== 4 | 5 | 6 | ORG 0000 7 | Joon H. Ro & Jae-Eun Namkoong 8 | 9 | Class 6 10 | [2018-09-13 Thu] 11 | 12 | .. _Lecture/Semester Org Files 1 4 Introduction/Agenda: 13 | 14 | 1 Semester Org Files: Introduction 15 | ---------------------------------- 16 | 17 | A semester Org file is the master file for the course in a given 18 | semester. That is, a semester Org file, which is where 19 | semester-specific information about the course (e.g., classroom 20 | location, course schedule, etc.) is stored, is also where materials 21 | from other Org files are pulled as the instructor contructs the 22 | course to create a syllabus, lectures, exams, assignments, etc. It can 23 | accommodate multiple sections of the same course offered in the semester. 24 | 25 | The example below shows the top-level contents of a semester Org file, 26 | with all the trees and drawers collapsed. We will dedicate several 27 | lectures to cover each component, following the order in which they are presented in the example. 28 | 29 | :: 30 | 31 | #+TITLE: Org-Coursepack: 2020 Spring 32 | #+AUTHOR: Your Name 33 | #+EMAIL: Your Email 34 | #+DESCRIPTION: Org-Coursepack: 2020 Spring 35 | #+CATEGORY: Teaching 36 | 37 | :LOCALSETUP: 38 | 39 | :SETUP_EXPORT: 40 | 41 | :SEMESTER_INFO: 42 | 43 | * Tasks 44 | * Sections 45 | * Syllabus 46 | * Classes 47 | * Exams :Exams: 48 | * Assignments :Assignments: 49 | * Local Variables 50 | 51 | 2 Export Options and Macros 52 | --------------------------- 53 | 54 | The file starts with multiple metadata definitions, such as ``TITLE`` 55 | and ``AUTHOR``, which also act as global export keywords. This is 56 | followed by three drawers containing various macros and export 57 | options, which will be used across the file. 58 | 59 | :: 60 | 61 | #+TITLE: Org-Coursepack: 2020 Spring 62 | #+AUTHOR: Your Name 63 | #+EMAIL: Your Email 64 | #+DESCRIPTION: Org-Coursepack: 2020 Spring 65 | #+CATEGORY: Teaching 66 | 67 | :LOCALSETUP: 68 | 69 | :SETUP_EXPORT: 70 | 71 | :SEMESTER_INFO: 72 | 73 | 2.1 ``:LOCALSETUP:`` Drawer 74 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 75 | 76 | The ``:LOCALSETUP:`` drawer has startup options (``#+STARTUP``) for the 77 | Org file as well as a couple of ``#+SETUPFILE``'s which import necessary 78 | macros from the dedicated macro Org file 79 | (``../../../Assets/setup_Macros.org``) and school Org file 80 | (``../../../Assets/Institutions/School.org``). Note that one can visit each 81 | file with ``C-c '``. Absolute paths can be used instead of relative 82 | ones. 83 | 84 | :: 85 | 86 | :LOCALSETUP: 87 | #+STARTUP: overview 88 | #+STARTUP: hidestars 89 | #+STARTUP: indent 90 | 91 | #+SETUPFILE: ../../../Assets/setup_Macros.org 92 | 93 | #+SETUPFILE: ../../../Institutions/School.org 94 | :END: 95 | 96 | 2.2 ``:SETUP_EXPORT:`` Drawer 97 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 98 | 99 | The ``:SETUP_EXPORT:`` drawer has export related options, mainly those 100 | related to ``org-reveal`` (e.g., handouts). For example, ``#+REVEAL_ROOT`` 101 | should specify the location of ``reveal.js`` (see the `org-reveal 102 | documentation `_ for more information). The semester Org file for 103 | Org-Coursepack specifies reveal.js 3.6.0 from a CDN. See the `Org manual `_ 104 | for more general information about export options. 105 | 106 | :: 107 | 108 | :SETUP_EXPORT: 109 | #+REVEAL_ROOT: https://cdnjs.cloudflare.com/ajax/libs/reveal.js/3.6.0 110 | 111 | #+REVEAL_PLUGINS: (classList markdown zoom notes highlight) 112 | 113 | #+EXCLUDE_TAGS: noexport 114 | #+OPTIONS: reveal_history:t tags:nil timestamp:nil todo:nil 115 | 116 | #+REVEAL_THEME: simple 117 | #+REVEAL_TRANS: linear 118 | :END: 119 | 120 | 2.3 ``:SEMESTER_INFO:`` Drawer 121 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 122 | 123 | The ``:SEMESTER_INFO:`` drawer has macros containing information about 124 | the course that is common across sections but specific to the semester. 125 | 126 | .. note:: 127 | 128 | Course name and number are categorized as semester-specific information, as they may change over time. 129 | 130 | :: 131 | 132 | :SEMESTER_INFO: 133 | #+MACRO: COURSE Org Teaching Template 134 | #+MACRO: COURSE_NUM ORG 0000 135 | #+MACRO: SEMESTER 2020 Spring 136 | #+MACRO: OFFICE_HOURS Tue 3:30-4:30pm 137 | :END: 138 | 139 | 3 ``Tasks`` Top-level Tree 140 | -------------------------- 141 | 142 | This is the subtree where users can organize instruction-related tasks 143 | (TODO items) specific to the semester, e.g., reminders to post 144 | announcements or grades. See the `Org manual `_ for more information on 145 | how to use TODO items in Org mode. 146 | -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/07 Semester Org Files 2 4 Sections and Syllabus.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Lectures/07 Semester Org Files 2 4 Sections and Syllabus.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/07 Semester Org Files 2 4 Sections and Syllabus.rst: -------------------------------------------------------------------------------- 1 | ======================================================== 2 | Class 7: Semester Org Files (2/4): Sections and Syllabus 3 | ======================================================== 4 | 5 | 6 | ORG 0000 7 | Joon H. Ro & Jae-Eun Namkoong 8 | 9 | Class 7 10 | [2018-09-18 Tue] 11 | 12 | 1 ``Sections`` Top-level Tree 13 | ----------------------------- 14 | 15 | An instructor may teach multiple sections of the same course during a 16 | given semester. The ``Sections`` subtree contains a subtree for each 17 | section, which contains section-specific information such as section 18 | number, classroom location and time, and exam dates. It also acts as a 19 | wrapper around the content of the syllabus, which passes on section-specific 20 | information. 21 | 22 | :: 23 | 24 | * Sections 25 | :PROPERTIES: 26 | ** 01 27 | ** 02 28 | ** 03 29 | 30 | 1.1 ``:PROPERTIES:`` 31 | ~~~~~~~~~~~~~~~~~~~~ 32 | 33 | - :Properties: of these subtrees have information common across all sections, 34 | such as LaTeX preamble items via ``EXPORT_LATEX_HEADER``. These will be 35 | inherited and shared by the subtrees with the 36 | ``org-use-property-inheritance`` option set to ``t``. For example: 37 | 38 | .. code:: tex 39 | 40 | * Sections 41 | :PROPERTIES: 42 | :CUSTOM_ID: Sections 43 | :EXPORT_LATEX_CLASS: koma-article 44 | :EXPORT_LATEX_CLASS_OPTIONS: [article,letterpaper,times,10pt,listings-bw,microtype] 45 | :EXPORT_LATEX_HEADER+: \usepackage[onehalfspacing]{setspace} 46 | :EXPORT_LATEX_HEADER+: \usepackage[T1]{fontenc} 47 | :EXPORT_LATEX_HEADER+: \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} 48 | :EXPORT_LATEX_HEADER+: \usepackage{geometry} \geometry{left=1in,right=1in,top=1in,bottom=1in} 49 | :EXPORT_LATEX_HEADER+: \usepackage[framemethod=default]{mdframed} 50 | :EXPORT_DATE: {{{SEMESTER}}} 51 | :EXPORT_OPTIONS: num:nil title:nil toc:nil tags:nil 52 | :END: 53 | 54 | 1.2 Sections 55 | ~~~~~~~~~~~~ 56 | 57 | - Each section subtree has properties and macros for the section 58 | information and a subtree for the syllabus of the section: 59 | 60 | :: 61 | 62 | ** 01 63 | :PROPERTIES: 64 | :MACROS_Section_Info: 65 | *** Syllabus 66 | 67 | 1.2.1 ``:PROPERTIES:`` 68 | ^^^^^^^^^^^^^^^^^^^^^^ 69 | 70 | Each section subtree has property items containing section-specific 71 | information such as ``:SECTION:`` (section number), ``:SECTION_LOC:`` 72 | (classroom location), ``:SECTION_DATE:`` (class date and time), and 73 | ``:SECTION_DATE_FINAL_EXAM:`` (final exam date), which will be used in 74 | the syllabus via the ``{{{property(Property_NAME)}}}`` grammar (e.g., 75 | ``{{{property(SECTION_DATE)}}}``). Note that we created a macro 76 | ``{{{DATE_FINAL_EXAM_01}}}`` for ``:SECTION_DATE_FINAL_EXAM:``, so it can be 77 | used in other places, such as class announcements. 78 | 79 | :: 80 | 81 | ** 01 82 | :PROPERTIES: 83 | :SECTION: 01 84 | :SECTION_DATE: Tue/Thurs, 9:30a-10:45 85 | :SECTION_DATE_FINAL_EXAM: {{{DATE_FINAL_EXAM_01}}} 86 | :SECTION_LOC: BLDG 100 87 | :CUSTOM_ID: Sections/01 88 | :END: 89 | 90 | 1.2.2 Macros 91 | ^^^^^^^^^^^^ 92 | 93 | - Instructors can specify the final exam date in the 94 | ``:MACROS_Section_Info:`` drawer. 95 | 96 | - To allow this information to be used in other places (e.g., 97 | reminders or announcements), we used a macro instead of a property. 98 | 99 | :: 100 | 101 | ** 01 102 | :PROPERTIES: 103 | :MACROS_Section_Info: 104 | #+MACRO: DATE_FINAL_EXAM_01 [2018-12-16 Sun 13:00] - 4:00PM 105 | :END: 106 | 107 | 1.2.3 Syllabus 108 | ^^^^^^^^^^^^^^ 109 | 110 | - The ``Syllabus`` subtree has properties containing section-specific 111 | information for the section's syllabus. For its body, it pulls content 112 | from the ``Syllabus`` subtree of the file. 113 | 114 | :: 115 | 116 | *** Syllabus 117 | :PROPERTIES: 118 | #+INCLUDE: "./2020 Spring.org::#Syllabus" :only-contents t 119 | 120 | - ``:PROPERTIES:`` of this subtree contain export-related information for the 121 | syllabus, such as ``:EXPORT_FILE_NAME:``. 122 | 123 | :: 124 | 125 | *** Syllabus 126 | :PROPERTIES: 127 | :EXPORT_TITLE: {{{COURSE_NUM}}}-{{{property(SECTION)}}} Syllabus 128 | :EXPORT_FILE_NAME: ./Syllabus/01_Syllabus 129 | :EXPORT_TO: LaTeX (Custom Time Format) 130 | :OUTPUT_VIEW: PDF 131 | :END: 132 | 133 | - The syllabus subtree simply includes in its body the content of the top level ``Syllabus`` tree. Since 134 | property macros are used for section-specific information in the content, 135 | the corresponding section-specific information will be included automatically. 136 | 137 | :: 138 | 139 | *** Syllabus 140 | :PROPERTIES: 141 | #+INCLUDE: "./2020 Spring.org::#Syllabus" :only-contents t 142 | 143 | 2 ``Syllabus`` Top-level Tree 144 | ----------------------------- 145 | 146 | The ``Syllabus`` subtree contains course description, learning 147 | objectives, grading, etc., as shown in the example below. Instructors 148 | can include additional information as they see fit. We now describe each 149 | subtree. 150 | 151 | :: 152 | 153 | * Syllabus 154 | ** Tasks [0/1] :noexport: 155 | ** Intro :ignore: 156 | ** Course Description 157 | ** Course Prerequisites 158 | ** Student Learning Objectives 159 | ** Course Material 160 | ** Grading 161 | ** Specific Course Policies 162 | ** School-Specific Policies 163 | ** Class Schedule :newpage: 164 | 165 | 2.1 Intro 166 | ~~~~~~~~~ 167 | 168 | The Intro has the title page of the Syllabus. The title page contains a blank 169 | school name (the color of the text is defined in the institution Org file) as a 170 | placeholder for the school logo the instructor wishes to use. There is 171 | also a table of course information, which heavily relies on macros 172 | to avoid redundancy. 173 | 174 | Some of the macros are in the form of ``property(PROPERTY_NAME)`` (e.g., 175 | ``{{{property(SECTION_DATE)}}}``), which means it will receive the value of the 176 | ``:PROPERTY_NAME:`` property of the subtree. When the content is included in 177 | another subtree such as the ``Sections`` subtree, these property macros will pull 178 | the value from the subtree including this content. That is, 179 | ``{{{property(SECTION_DATE)}}}`` will get the value from the ``:SECTION_DATE:`` 180 | property of the ``01`` (``02``) subtree of the ``Sections`` subtree when 181 | included by the ``01`` (``02``) subtree. 182 | 183 | Note that the header of the Intro subtree is assigned an ``:ignore:`` tag, which means the heading (``Intro``) 184 | will be ignored in exporting. 185 | 186 | :: 187 | 188 | ** Intro :ignore: 189 | @@latex:\definecolor{SchoolColor}{RGB}{@@{{{SCHOOL_COLOR}}}@@latex:}@@ 190 | 191 | #+BEGIN_CENTER 192 | #+LATEX: {\color{SchoolColor}{\Large 193 | *{{{SCHOOL}}}* 194 | #+LATEX: }} 195 | #+END_CENTER 196 | 197 | #+BEGIN_CENTER 198 | #+LATEX: {\color{SchoolColor}{ 199 | *{{{COURSE_NUM}}}-{{{property(SECTION)}}}* 200 | 201 | *{{{COURSE}}}* 202 | 203 | *{{{SEMESTER}}}* 204 | #+LATEX: }} 205 | #+END_CENTER 206 | 207 | {{{VSPACE(5)}}} 208 | 209 | | *Instructor:* | {{{PROFESSOR}}} | *Office Phone:* | {{{PHONE}}} | 210 | | *Office:* | {{{OFFICE}}} | *E-mail:* | {{{EMAIL}}} | 211 | | *Office Hours:* | {{{OFFICE_HOURS}}} | *Course Site:* | *{{{COURSE_LINK}}}* | 212 | | *Class Meeting Day & Time:* | {{{property(SECTION_DATE)}}} | *Class Location:* | {{{property(SECTION_LOC)}}} | 213 | 214 | 2.2 Course-speific information 215 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 216 | 217 | - Since different sections of the same course typically share common elements (e.g., 218 | course description, prerequisites, learning objectives), the 219 | content of most subtrees of ``Syllabus`` are pulled from the course Org 220 | file on exporting, using ``#+INCLUDE``. 221 | 222 | - Note that instructors can use semester-specific information in these subtrees using macros -- see the ``Grading`` subtree for an example. 223 | 224 | - School-wide information (e.g., grade cutoff percentages) is imported 225 | from the institution Org file. 226 | 227 | 2.3 Class Schedule 228 | ~~~~~~~~~~~~~~~~~~ 229 | 230 | - The ``Class Schedule`` subtree contains the class schedule in a table format. 231 | 232 | - The table is dynamically generated using org-mode's `columnview dynamic block `_ 233 | functionality -- it will extract information about each class from the class 234 | subtree's properties, and automatically create the class schedule table. 235 | 236 | - One can use ``C-c C-c`` while the cursor is on the ``#+BEGIN: columnview`` to 237 | update the columnview dynamic block. Once it is updated, ``#+TBLFM`` is used 238 | to format the table (e.g., change the third column name from ``ITEM`` to 239 | ``Topic``) automatically. See an example of updated class schedule below. 240 | 241 | .. image:: ../../../Assets/Images/Org-Teaching/Quickstart/Syllabus-Schedule-New.png 242 | 243 | .. note:: 244 | 245 | Note that the ``org-coursepack-update-lecture-metadata`` script described below 246 | will automatically update this table upon execution. Hence, in general manual 247 | updating of the table is not needed. 248 | -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/08 Semester Org Files 3 4 Lectures.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Lectures/08 Semester Org Files 3 4 Lectures.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/09 Semester Org Files 4 4 Exams and Assignments.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Lectures/09 Semester Org Files 4 4 Exams and Assignments.pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Lectures/09 Semester Org Files 4 4 Exams and Assignments.rst: -------------------------------------------------------------------------------- 1 | ======================================================== 2 | Class 9: Semester Org Files (4/4): Exams and Assignments 3 | ======================================================== 4 | 5 | 6 | ORG 0000 Joon H. Ro & Jae-Eun Namkoong 7 | Class 9 [2018-09-25 Tue] 8 | 9 | 1 ``Exams`` Top-level Tree 10 | -------------------------- 11 | 12 | Instructors can create content for exams as they wuold for lectures. Lists can 13 | be used to create multiple choice questions. See the Org mode `manual `_ for more 14 | information. To minimize redundancy, exams are designed to be modular and 15 | common elements are shared as much as possible. Furthermore, Org mode's 16 | property inheritance allows instructors to conveniently create answer keys to 17 | multiple choice questions and to export the exam with or without the keys. 18 | 19 | As shown in the following example, there are two subtrees in the 20 | Org-Coursepack: one for the exam title page and another for the mid-term 21 | exam. 22 | 23 | :: 24 | 25 | * Exams :Exams: 26 | :PROPERTIES: 27 | ** Title Page 28 | ** Mid-Term Exam 29 | 30 | 1.1 ``:PROPERTIES:`` 31 | ~~~~~~~~~~~~~~~~~~~~ 32 | 33 | The properties have general information common across exams, such as LaTeX headers. 34 | 35 | 1.2 ``Title Page`` Subtree 36 | ~~~~~~~~~~~~~~~~~~~~~~~~~~ 37 | 38 | The content of this subtree will be shared across exams via the 39 | ``#+INCLUDE`` statement. Instructors can include general information 40 | pertaining to exams (e.g., student code of conduct) in this page. Note 41 | that any information about a specific exam (e.g., exam date, exam 42 | time, number of questions) can be specified by passing property values 43 | to the ``Title Page`` subtree. For example, the exam time information 44 | uses the value of the property ``TIME`` using ``{{{property(TIME)}}}``. 45 | 46 | 1.3 Exam subtree 47 | ~~~~~~~~~~~~~~~~ 48 | 49 | The mid-term exam subtree in the Org-Coursepack has the following structure: 50 | 51 | :: 52 | 53 | ** Mid-Term Exam 54 | :PROPERTIES: 55 | *** 01 56 | *** 02 57 | *** Exam Content 58 | 59 | Each exam has a separate subtree for each course section, and they will 60 | share common ``Exam Content``. 61 | 62 | 1.3.1 ``:Properties:`` 63 | ^^^^^^^^^^^^^^^^^^^^^^ 64 | 65 | Each exam subtree has properties containing information common across sections. See example below. 66 | 67 | :: 68 | 69 | :PROPERTIES: 70 | :CUSTOM_ID: Exam/1 71 | :EXPORT_TITLE: Exam 1 72 | :EXPORT_DATE: {{{DATE_EXAM_1}}} 73 | :TIME: 75 Minutes 74 | :END: 75 | 76 | 1.4 Section Subtrees 77 | ~~~~~~~~~~~~~~~~~~~~ 78 | 79 | Each exam in the Org-Coursepack has two section subtrees. Instructors 80 | may add additional sections. Each subtree has section-specific 81 | information about the exam in their ``:PROPERTIES:``. Each section can 82 | have multiple versions of the same exam (e.g., ``A`` and ``B`` versions), 83 | with each version beloning to a separate subtree. The exam content 84 | includes a title page, multiple choice questions, and short 85 | answers. See the example and note below. 86 | 87 | :: 88 | 89 | *** 01 90 | :PROPERTIES: 91 | :EXPORT_AUTHOR: {{{COURSE_NUM}}}-01: {{{COURSE}}} 92 | :ANSWER: 93 | :END: 94 | **** A Type 95 | :PROPERTIES: 96 | #+INCLUDE: "2020 Spring.org::#Exam/Title Page" :only-contents t 97 | ***** Multiple Choice :newpage: 98 | (2 points each, unless otherwise specified) 99 | #+INCLUDE: "2020 Spring.org::#Exam/1/MC/A" :only-contents t 100 | ***** Short Answers :newpage: 101 | #+INCLUDE: "2020 Spring.org::#Exam/1/Short Answers" :only-contents t 102 | 103 | .. note:: 104 | 105 | Note that the property ``:ANSWER:`` is empty. This is to hide answers for 106 | multiple choice questions--see ``Exam Contents/Multiple Choice`` for details. 107 | 108 | 1.5 ``Exam Content`` Subtree 109 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 110 | 111 | The ``Exam Content`` subtree contains exam questions. Its content can be 112 | pulled in section-specific exam subtrees to create exams. The ``Exam Content`` subtree 113 | can also be used to create exam keys by exporting the version subtree 114 | (e.g., ``Type A (Key)``) under ``Exam Content/Multiple Choice``. 115 | 116 | :: 117 | 118 | *** Exam Content 119 | **** Multiple Choice 120 | :PROPERTIES: 121 | ***** Type A (Key) 122 | ***** Type B (Key) 123 | **** Short Answers :newpage: 124 | :PROPERTIES: 125 | #+INCLUDE: "../../../Topics/Org_Teaching.org::#Question/SA" :only-contents t 126 | 127 | 1.6 Multiple Choice 128 | ~~~~~~~~~~~~~~~~~~~ 129 | 130 | The Org-Coursepack exams have two versions (type A and B). The two 131 | versions have the same multiple choice questions in the same order, 132 | but the choice options are in different orders. 133 | 134 | .. note:: 135 | 136 | To create a new version, an instructor may first create a duplicate of the 137 | original version subtree and use the ``Alt+Up`` or ``Alt+Down`` keys on the choice 138 | options to change their orders. Pressing ``C-c C-c`` automatically re-numbers the 139 | items in the list. 140 | 141 | The example below shows a 142 | subset of content in the ``Multiple Choice`` tree. 143 | 144 | :: 145 | 146 | **** Multiple Choice 147 | :PROPERTIES: 148 | :ANSWER: \checkmark 149 | :END: 150 | ***** Type A (Key) 151 | :PROPERTIES: 152 | 153 | 1. Which of the following is a vegetable? 154 | 1. Okra 155 | 2. Carrot {{{property(ANSWER)}}} 156 | 3. Eggplant 157 | 4. Pepper 158 | 159 | ***** Type B (Key) 160 | :PROPERTIES: 161 | 162 | 1. Which of the following is a vegetable? 163 | 1. Okra 164 | 2. Pepper 165 | 3. Eggplant 166 | 4. Carrot {{{property(ANSWER)}}} 167 | 168 | .. note:: 169 | 170 | The answer to each multiple choice question is marked with the macro 171 | ``{{{property(ANSWER)}}}`` and the ``Multiple Choice`` tree has the property of ``:ANSWER: \checkmark``. Hence, an instructor can export the version subtree (e.g., ``Type A (Key)``) to obtain the answer keys, with correct answers marked by a checkmark symbol. 172 | 173 | 1.7 Short Answers 174 | ~~~~~~~~~~~~~~~~~ 175 | 176 | Since open-ended questions do not typically require multiple versions, 177 | one can have such questions in the corresponding topic Org file 178 | (e.g., under the ``Questions`` top-level tree) and include them here. 179 | 180 | 2 ``Assignments`` Top-level Tree 181 | -------------------------------- 182 | 183 | - Instructors can create assignments as they do lecture content using Org mode. 184 | 185 | - Assignment instructions may be created in the ``Assignments`` top-level 186 | tree of a topic Org file, which are then included here. 187 | 188 | - See ``Org_Teaching/2020 Spring/2020 Spring.org`` for an example. 189 | 190 | 3 ``Local Variables`` Top-level Tree 191 | ------------------------------------ 192 | 193 | ``Local variables`` top-level tree has file-local variables. See the 194 | `Emacs manual `_ for more information. File-local variables include the 195 | options to (a) skip confirmation on running elisp-link functions 196 | (``org-confirm-elisp-link-function: nil``), (b) allow property 197 | inheritance (``org-use-property-inheritance: t``), which is important 198 | for many functionalities of the Org-Coursepack to work properly, and (c) 199 | change the default timestamp format. 200 | 201 | The following shows the content of this subtree. 202 | 203 | :: 204 | 205 | # Local Variables: 206 | # org-confirm-elisp-link-function: nil 207 | # org-export-babel-evaluate: 'inline-only 208 | # org-use-property-inheritance: t 209 | # org-time-stamp-custom-formats: ("<%a, %b %d, %Y>" . "<%a, %b %d, %Y %l:%M%p>") 210 | # org-latex-active-timestamp-format: "%s" 211 | # org-latex-inactive-timestamp-format: "%s" 212 | # End: 213 | -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Syllabus/Syllabus (Section 1).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Org-Coursepack/2018 Fall/Syllabus/Syllabus (Section 1).pdf -------------------------------------------------------------------------------- /Courses/Org-Coursepack/2018 Fall/Syllabus/Syllabus (Section 1).tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[article,letterpaper,times,10pt,listings-bw,microtype]{scrartcl} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage[onehalfspacing]{setspace} \usepackage[T1]{fontenc} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage{geometry} \geometry{left=1in,right=1in,top=1in,bottom=1in} \usepackage[framemethod=default]{mdframed} 17 | \author{Your Name Joon Ro} 18 | \date{Fall 2018} 19 | \title{ORG 0000-01 Syllabus} 20 | \hypersetup{ 21 | pdfauthor={Your Name Joon Ro}, 22 | pdftitle={ORG 0000-01 Syllabus}, 23 | pdfkeywords={}, 24 | pdfsubject={Fall 2018 Org-Coursepack School specific teaching materials}, 25 | pdfcreator={Emacs 26.1 (Org mode 9.1.14)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \definecolor{SchoolColor}{RGB}{70,130,180} 30 | 31 | \begin{center} 32 | {\color{SchoolColor}{\Large 33 | \textbf{Journal of Open Source Education} 34 | }} 35 | \end{center} 36 | 37 | \begin{center} 38 | {\color{SchoolColor}{ 39 | \textbf{ORG 0000-01} 40 | 41 | \textbf{Org-Coursepack} 42 | 43 | \textbf{Fall 2018} 44 | }} 45 | \end{center} 46 | 47 | \vspace{5 mm} 48 | 49 | \begin{center} 50 | \begin{tabular}{llll} 51 | \textbf{Instructor:} & Joon H. Ro \& Jae-Eun Namkoong & \textbf{Office Phone:} & (000) 000-0000\\ 52 | \textbf{Office:} & BLDG 100 & \textbf{E-mail:} & joon.ro@outlook.com\\ 53 | \textbf{Office Hours:} & Tue 3:30-4:30pm & \textbf{Course Site:} & \textbf{\href{https://github.com}{github.com}}\\ 54 | \textbf{Class Meeting Day \& Time:} & Tue/Thurs, 9:30a-10:45 & \textbf{Class Location:} & BLDG 100\\ 55 | \end{tabular} 56 | \end{center} 57 | \section*{Course Description} 58 | \label{sec:orgbac35d1} 59 | This course provides students with Org-Coursepack, a modular and reusable 60 | teaching materials template in org-mode. Using self-explanatory course 61 | contents, students will be able to adapt the template and create their on 62 | course contents through Org-mode. 63 | \section*{Course Prerequisites} 64 | \label{sec:org8803189} 65 | \begin{itemize} 66 | \item Basic knowledge about using Emacs 67 | \item Basic knowledge about org-mode 68 | \end{itemize} 69 | \section*{Student Learning Objectives} 70 | \label{sec:orgb052fde} 71 | As the result of this course, students should be able to: 72 | 73 | \begin{itemize} 74 | \item Adapt Org-Teaching-Template to create their own course contents 75 | \end{itemize} 76 | \section*{Course Material} 77 | \label{sec:org4844ba4} 78 | \begin{description} 79 | \item[{Documentation}] Handouts, readings, and assignments will be uploaded to 80 | the repository. 81 | \item[{Software}] \quad 82 | 83 | \begin{itemize} 84 | \item Emacs. (Orgmode is a built-in package of Emacs) 85 | \item org-reveal 86 | \end{itemize} 87 | \end{description} 88 | \section*{Grading} 89 | \label{sec:org243d2a2} 90 | 91 | \subsection*{Grade Basis} 92 | \label{sec:org97d536f} 93 | \begin{center} 94 | \label{tab:orgb6b59c7} 95 | \begin{tabular}{ll} 96 | \hline 97 | Item & Percentage Worth\\ 98 | \hline 99 | \textbf{Individual Assessment} & \\ 100 | Exam 1 & 18\%\\ 101 | Exam 2 & 18\%\\ 102 | Final Exam & 29\%\\ 103 | In-class Exercise and Participation & 5\%\\ 104 | Class Attendance & See below\\ 105 | \textbf{Subtotal} & \textbf{70\%}\\ 106 | \hline 107 | & \\ 108 | \textbf{Group Assessment} & \\ 109 | Assignments & 20\%\\ 110 | Presentation & 10\%\\ 111 | \textbf{Subtotal} & \textbf{30\%}\\ 112 | \hline 113 | & \\ 114 | \textbf{Total} & \textbf{100\%}\\ 115 | \hline 116 | \end{tabular} 117 | \end{center} 118 | \subsection*{Individual Assessment} 119 | \label{sec:orgfd25c99} 120 | \subsubsection*{Exams} 121 | \label{sec:org96860af} 122 | All exams are closed-book. Exams 1 and 2 each covers a subsection of the 123 | course material. The final exam will be cumulative. Exams will be held in the 124 | classroom on the following dates: 125 | 126 | \begin{description} 127 | \item[{Exam 1}] \textit{2018-02-27 Tue}, in class 128 | \item[{Exam 2}] \textit{2018-03-22 Thu}, in class 129 | \item[{Final Exam}] \textit{2018-12-16 Sun 13:00 } \emph{- 4:00PM} 130 | \end{description} 131 | \subsubsection*{In-Class Exercises and Participation} 132 | \label{sec:org44289c1} 133 | \begin{description} 134 | \item[{Exercises}] Description of exercises 135 | 136 | \item[{Participation}] Description of participation here 137 | \end{description} 138 | \subsubsection*{Class Attendance} 139 | \label{sec:orga8e4118} 140 | Attendance at all class sessions is expected. 141 | \subsection*{Group Assessment} 142 | \label{sec:orgce26979} 143 | Description of group assessment 144 | \subsubsection*{Assignments} 145 | \label{sec:org19c84cc} 146 | Description of assignments 147 | \subsubsection*{Presentation} 148 | \label{sec:org622d00f} 149 | Description of presentation 150 | \subsection*{Grade Cutoff Percentage} 151 | \label{sec:org087cdd8} 152 | The following table provides the preliminary guidelines for assigning your 153 | letter grade: 154 | 155 | \begin{center} 156 | \begin{tabular}{llllllllllll} 157 | \hline 158 | Grade & A & A- & B+ & B & B- & C+ & C & C- & D+ & D & D-\\ 159 | \hline 160 | Cutoff Pct & 93\% & 90\% & 87\% & 83\% & 80\% & 77\% & 73\% & 70\% & 67\% & 63\% & 60\%\\ 161 | \hline 162 | \end{tabular} 163 | \end{center} 164 | \section*{Specific Course Policies} 165 | \label{sec:org88f7f98} 166 | Specific Course Policies here. 167 | \section*{School-Specific Policies} 168 | \label{sec:org9fe0e92} 169 | School-specific policies here. 170 | \clearpage 171 | \section*{Class Schedule} 172 | \label{sec:org6cf35ec} 173 | \begin{center} 174 | \begin{tabular}{lrl} 175 | Date & Class & Topic\\ 176 | \hline 177 | \textit{2018-08-28 Tue} & 1 & Course Introduction\\ 178 | \textit{2018-08-30 Thu} & 2 & Org Mode Basics\\ 179 | \textit{2018-09-04 Tue} & 3 & Topic and Course Org Files\\ 180 | \textit{2018-09-06 Thu} & 4 & Creating Content for Slides and Handouts\\ 181 | \textit{2018-09-11 Tue} & 5 & Exporting Slides and Handouts\\ 182 | \textit{2018-09-13 Thu} & 6 & Semester Org Files (1/4): Introduction\\ 183 | \textit{2018-09-18 Tue} & 7 & Semester Org Files (2/4): Sections and Syllabus\\ 184 | \textit{2018-09-20 Thu} & 8 & Semester Org Files (3/4): Lectures\\ 185 | \textit{2018-09-25 Tue} & 9 & Semester Org Files (4/4): Exams and Assignments\\ 186 | & & \uline{Assignment 1 Due}\\ 187 | \textit{2018-09-27 Thu} & 10 & \uline{Mid-Term Exam}\\ 188 | \textit{2018-11-21 Wed--2018-11-25 Sun} & & \textbf{Thanksgiving Holiday}\\ 189 | \textit{2018-12-16 Sun 13:00 } \emph{- 4:00PM} & & \uline{Final Exam}\\ 190 | \end{tabular} 191 | \end{center} 192 | 193 | \begin{mdframed}[style=exampledefault, frametitle={Disclaimer}] 194 | \begin{itemize} 195 | \item The class schedule is subject to change (except for the exam dates) 196 | \end{itemize} 197 | \end{mdframed} 198 | \end{document} -------------------------------------------------------------------------------- /Courses/Org-Coursepack/Org-Coursepack.org: -------------------------------------------------------------------------------- 1 | #+TITLE: Course: Org-Coursepack 2 | #+AUTHOR: Joon Ro 3 | #+EMAIL: joon.ro@outlook.com 4 | #+DESCRIPTION: Org file for Org-Coursepack 5 | #+CATEGORY: COURSE 6 | #+STARTUP: overview 7 | #+STARTUP: hidestars 8 | 9 | * Courses 10 | ** [[file:2018 Fall/2018 Fall.org][2018 Fall]] 11 | * Syllabus 12 | ** Course Description 13 | :PROPERTIES: 14 | :CUSTOM_ID: Syllabus/Course Description 15 | :END: 16 | This course provides students with Org-Coursepack, a modular and reusable 17 | teaching materials template in org-mode. Using self-explanatory course 18 | contents, students will be able to adapt the template and create their on 19 | course contents through Org-mode. 20 | ** Course Prerequisites 21 | :PROPERTIES: 22 | :CUSTOM_ID: Syllabus/Course Prerequisites 23 | :END: 24 | - Basic knowledge about using Emacs 25 | - Basic knowledge about org-mode 26 | ** Student Learning Objectives 27 | :PROPERTIES: 28 | :CUSTOM_ID: Syllabus/Student Learning Objectives 29 | :END: 30 | As the result of this course, students should be able to: 31 | 32 | #+ATTR_REVEAL: :frag (appear) 33 | - Adapt Org-Teaching-Template to create their own course contents 34 | ** Course Material 35 | :PROPERTIES: 36 | :CUSTOM_ID: Syllabus/Course Material 37 | :END: 38 | - Documentation :: Handouts, readings, and assignments will be uploaded to 39 | the repository. 40 | - Software :: {{{QUAD}}} 41 | 42 | - Emacs. (Orgmode is a built-in package of Emacs) 43 | - org-reveal 44 | 45 | ** Grading 46 | :PROPERTIES: 47 | :CUSTOM_ID: Syllabus/Grading 48 | :END: 49 | *** Grade Basis 50 | #+NAME: TB: Grade Basis 51 | |-------------------------------------+---------------------------| 52 | | Item | Percentage Worth | 53 | |-------------------------------------+---------------------------| 54 | | *Individual Assessment* | | 55 | | Exam 1 | {{{WEIGHT_EXAM_1}}} | 56 | | Exam 2 | {{{WEIGHT_EXAM_2}}} | 57 | | Final Exam | {{{WEIGHT_FINAL_EXAM}}} | 58 | | In-class Exercise and Participation | {{{WEIGHT_EXERCISES}}} | 59 | | Class Attendance | See below | 60 | | *Subtotal* | *70%* | 61 | |-------------------------------------+---------------------------| 62 | | | | 63 | | *Group Assessment* | | 64 | | Assignments | {{{WEIGHT_ASSIGNMENTS}}} | 65 | | Presentation | {{{WEIGHT_PRESENTATION}}} | 66 | | *Subtotal* | *30%* | 67 | |-------------------------------------+---------------------------| 68 | | | | 69 | | *Total* | *100%* | 70 | |-------------------------------------+---------------------------| 71 | *** Individual Assessment 72 | **** Exams 73 | :PROPERTIES: 74 | :CUSTOM_ID: Syllabus/Grading/Individual Assessment/Exams 75 | :END: 76 | All exams are closed-book. Exams 1 and 2 each covers a subsection of the 77 | course material. The final exam will be cumulative. Exams will be held in the 78 | classroom on the following dates: 79 | 80 | + Exam 1 :: {{{DATE_EXAM_1}}}, in class 81 | + Exam 2 :: {{{DATE_EXAM_2}}}, in class 82 | + Final Exam :: {{{property(SECTION_DATE_FINAL_EXAM)}}} 83 | **** In-Class Exercises and Participation 84 | - Exercises :: Description of exercises 85 | 86 | - Participation :: Description of participation here 87 | **** Class Attendance 88 | Attendance at all class sessions is expected. 89 | *** Group Assessment 90 | Description of group assessment 91 | **** Assignments 92 | Description of assignments 93 | **** Presentation 94 | Description of presentation 95 | ** Specific Course Policies 96 | :PROPERTIES: 97 | :CUSTOM_ID: Syllabus/Specific Course Policies 98 | :END: 99 | Specific Course Policies here. 100 | -------------------------------------------------------------------------------- /Courses/Template/Course Template.org: -------------------------------------------------------------------------------- 1 | #+TITLE: Course: Template 2 | #+AUTHOR: Your Name 3 | #+EMAIL: Your Email 4 | #+DESCRIPTION: Org file for the Template Course 5 | #+CATEGORY: COURSE 6 | #+STARTUP: overview 7 | #+STARTUP: hidestars 8 | 9 | * Courses 10 | ** [[file:Semester/Semester.org][Semester]] 11 | * Syllabus 12 | ** Course Description 13 | :PROPERTIES: 14 | :CUSTOM_ID: Syllabus/Course Description 15 | :END: 16 | Course Description here. 17 | ** Course Prerequisites 18 | :PROPERTIES: 19 | :CUSTOM_ID: Syllabus/Course Prerequisites 20 | :END: 21 | - Course Prerequisites here. 22 | ** Student Learning Objectives 23 | :PROPERTIES: 24 | :CUSTOM_ID: Syllabus/Student Learning Objectives 25 | :END: 26 | As the result of this course, students should be able to: 27 | 28 | #+ATTR_REVEAL: :frag (appear) 29 | - Student Learning Objectives here. 30 | ** Course Material 31 | :PROPERTIES: 32 | :CUSTOM_ID: Syllabus/Course Material 33 | :END: 34 | - Course Materials here. 35 | 36 | ** Grading 37 | :PROPERTIES: 38 | :CUSTOM_ID: Syllabus/Grading 39 | :END: 40 | Grading information here. 41 | ** Specific Course Policies 42 | :PROPERTIES: 43 | :CUSTOM_ID: Syllabus/Specific Course Policies 44 | :END: 45 | Specific Course Policies here. 46 | -------------------------------------------------------------------------------- /Courses/Template/Semester Template/Assignments/Assignment_1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Template/Semester Template/Assignments/Assignment_1.pdf -------------------------------------------------------------------------------- /Courses/Template/Semester Template/Assignments/Assignment_1.tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[10pt,article]{article} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage{titling} \posttitle{\par\end{center}} \setlength{\droptitle}{-30pt} \usepackage{multicol} \setlength{\columnsep}{1cm} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage[letterpaper,left=1in,right=1in,top=0.7in,bottom=1in,headheight=23pt,includehead,includefoot,heightrounded]{geometry} \usepackage{fancyhdr} \pagestyle{fancy} \fancyhf{} \cfoot{\thepage} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage[onehalfspacing]{setspace} \usepackage[framemethod=default]{mdframed} 17 | \author{COURSE 0000 Template Assignment 1} 18 | \date{Due: \textit{2018-09-27 Thu}, before the beginning of the class} 19 | \title{Assignment 1: Template} 20 | \hypersetup{ 21 | pdfauthor={COURSE 0000 Template Assignment 1}, 22 | pdftitle={Assignment 1: Template}, 23 | pdfkeywords={}, 24 | pdfsubject={Description School specific teaching materials}, 25 | pdfcreator={Emacs 26.1 (Org mode 9.1.14)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \maketitle 30 | \lhead{ COURSE 0000 \\ Professor Your Name 31 | } \rhead{ Assignment 1 32 | \\ Due: \textit{2018-09-27 Thu}, before the beginning of the class} 33 | 34 | \thispagestyle{fancy} 35 | 36 | \vspace{6ex} 37 | Assignment instructions here. 38 | \end{document} -------------------------------------------------------------------------------- /Courses/Template/Semester Template/Exams/Exam_1_01_A.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Template/Semester Template/Exams/Exam_1_01_A.pdf -------------------------------------------------------------------------------- /Courses/Template/Semester Template/Exams/Exam_1_01_A.tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[article,letterpaper,times,10pt,listings-bw,microtype]{article} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage{titling} \usepackage{multicol} \setlength{\columnsep}{1cm} \usepackage[T1]{fontenc} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage[singlespacing]{setspace} \usepackage{geometry}\geometry{left=1in,right=1in,top=0.7in,bottom=1in} \usepackage[framemethod=default]{mdframed} \usepackage{enumitem} \setlist[1]{itemsep=15pt} 17 | \author{COURSE 0000-01: Template} 18 | \date{\textit{2018-02-27 Tue}} 19 | \title{Exam 1 (Type A)} 20 | \hypersetup{ 21 | pdfauthor={COURSE 0000-01: Template}, 22 | pdftitle={Exam 1 (Type A)}, 23 | pdfkeywords={}, 24 | pdfsubject={Description School specific teaching materials}, 25 | pdfcreator={Emacs 26.1 (Org mode 9.1.14)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \maketitle 30 | \vspace{20 mm} 31 | 32 | \begin{itemize} 33 | \item Your Name: \underline{\hspace{4cm}} 34 | \end{itemize} 35 | 36 | \vspace{20 mm} 37 | 38 | Instructions: 39 | 40 | \begin{itemize} 41 | \item Total time: 75 Minutes 42 | \item There are both multiple choice and short answer questions 43 | \end{itemize} 44 | \clearpage 45 | \section*{Multiple Choice} 46 | \label{sec:org9d1c75b} 47 | (2 points each, unless otherwise specified) 48 | \begin{enumerate} 49 | \item Multiple Choice Question. 50 | \begin{enumerate} 51 | \item Choice 52 | \item Choice 53 | \item Choice 54 | \end{enumerate} 55 | 56 | \item Multiple Choice Question. 57 | \begin{enumerate} 58 | \item Choice 59 | \item Choice 60 | \item Choice 61 | \end{enumerate} 62 | \end{enumerate} 63 | \clearpage 64 | \section*{Short Answers} 65 | \label{sec:orgac85f18} 66 | \begin{mdframed}[style=exampledefault, frametitle={}] 67 | Please answer the following short answer questions each with no more than 3 68 | sentences. 69 | \end{mdframed} 70 | 71 | \begin{enumerate} 72 | \item Describe how to include the content of a subtree from another org file, excluding the heading 73 | 74 | \vspace{50 mm} 75 | 76 | \item Describe how to include the content of a subtree from another org file, including the heading 77 | \end{enumerate} 78 | \end{document} -------------------------------------------------------------------------------- /Courses/Template/Semester Template/Exams/Exam_1_01_B.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Template/Semester Template/Exams/Exam_1_01_B.pdf -------------------------------------------------------------------------------- /Courses/Template/Semester Template/Exams/Exam_1_01_B.tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[article,letterpaper,times,10pt,listings-bw,microtype]{article} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage{titling} \usepackage{multicol} \setlength{\columnsep}{1cm} \usepackage[T1]{fontenc} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage[singlespacing]{setspace} \usepackage{geometry}\geometry{left=1in,right=1in,top=0.7in,bottom=1in} \usepackage[framemethod=default]{mdframed} \usepackage{enumitem} \setlist[1]{itemsep=15pt} 17 | \author{COURSE 0000-01: Template} 18 | \date{2018-02-27 Tue} 19 | \title{Exam 1 (Type B)} 20 | \hypersetup{ 21 | pdfauthor={COURSE 0000-01: Template}, 22 | pdftitle={Exam 1 (Type B)}, 23 | pdfkeywords={}, 24 | pdfsubject={Org-Coursepack-Documentation: A Comprehensive Course Template for Teaching with Org Mode School specific teaching materials}, 25 | pdfcreator={Emacs 25.3.1 (Org mode 9.1.13)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \maketitle 30 | \vspace{20 mm} 31 | 32 | \begin{itemize} 33 | \item Your Name: \underline{\hspace{4cm}} 34 | \end{itemize} 35 | 36 | \vspace{20 mm} 37 | 38 | Instructions: 39 | 40 | \begin{itemize} 41 | \item Total time: 75 Minutes 42 | \item There are both multiple choice and short answer questions 43 | \end{itemize} 44 | \clearpage 45 | \section*{Multiple Choice} 46 | \label{sec:orga097312} 47 | (2 points each, unless otherwise specified) 48 | \begin{enumerate} 49 | \item Multiple Choice Question. 50 | \begin{enumerate} 51 | \item Choice 52 | \item Choice 53 | \item Choice 54 | \end{enumerate} 55 | 56 | \item Multiple Choice Question. 57 | \begin{enumerate} 58 | \item Choice 59 | \item Choice 60 | \item Choice 61 | \end{enumerate} 62 | \end{enumerate} 63 | \clearpage 64 | \section*{Short Answers} 65 | \label{sec:org31c256f} 66 | \begin{mdframed}[style=exampledefault, frametitle={}] 67 | Please answer the following short answer questions each with no more than 3 68 | sentences. 69 | \end{mdframed} 70 | 71 | \begin{enumerate} 72 | \item Describe how to include the content of a subtree from another org file, excluding the heading 73 | 74 | \vspace{50 mm} 75 | 76 | \item Describe how to include the content of a subtree from another org file, including the heading 77 | \end{enumerate} 78 | \end{document} -------------------------------------------------------------------------------- /Courses/Template/Semester Template/Exams/Exam_1_MC_A_Key.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Template/Semester Template/Exams/Exam_1_MC_A_Key.pdf -------------------------------------------------------------------------------- /Courses/Template/Semester Template/Exams/Exam_1_MC_A_Key.tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[article,letterpaper,times,10pt,listings-bw,microtype]{article} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage{titling} \usepackage{multicol} \setlength{\columnsep}{1cm} \usepackage[T1]{fontenc} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage[singlespacing]{setspace} \usepackage{geometry}\geometry{left=1in,right=1in,top=0.7in,bottom=1in} \usepackage[framemethod=default]{mdframed} \usepackage{enumitem} \setlist[1]{itemsep=15pt} 17 | \author{COURSE 0000: Template \\ Semester} 18 | \date{2018-02-27 Tue} 19 | \title{Exam 1 (Type A) Key} 20 | \hypersetup{ 21 | pdfauthor={COURSE 0000: Template \\ Semester}, 22 | pdftitle={Exam 1 (Type A) Key}, 23 | pdfkeywords={}, 24 | pdfsubject={Org-Coursepack-Documentation: A Comprehensive Course Template for Teaching with Org Mode School specific teaching materials}, 25 | pdfcreator={Emacs 25.3.1 (Org mode 9.1.13)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \maketitle 30 | \begin{enumerate} 31 | \item Multiple Choice Question. 32 | \begin{enumerate} 33 | \item Choice 34 | \item Choice 35 | \item Choice \(\checkmark\) 36 | \end{enumerate} 37 | 38 | \item Multiple Choice Question. 39 | \begin{enumerate} 40 | \item Choice 41 | \item Choice 42 | \item Choice \(\checkmark\) 43 | \end{enumerate} 44 | \end{enumerate} 45 | \end{document} -------------------------------------------------------------------------------- /Courses/Template/Semester Template/Exams/Exam_1_MC_B_Key.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Template/Semester Template/Exams/Exam_1_MC_B_Key.pdf -------------------------------------------------------------------------------- /Courses/Template/Semester Template/Exams/Exam_1_MC_B_Key.tex: -------------------------------------------------------------------------------- 1 | % Intended LaTeX compiler: pdflatex 2 | \documentclass[article,letterpaper,times,10pt,listings-bw,microtype]{article} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{graphicx} 6 | \usepackage{grffile} 7 | \usepackage{longtable} 8 | \usepackage{wrapfig} 9 | \usepackage{rotating} 10 | \usepackage[normalem]{ulem} 11 | \usepackage{amsmath} 12 | \usepackage{textcomp} 13 | \usepackage{amssymb} 14 | \usepackage{capt-of} 15 | \usepackage{hyperref} 16 | \usepackage{titling} \usepackage{multicol} \setlength{\columnsep}{1cm} \usepackage[T1]{fontenc} \usepackage{mathpazo} \usepackage[scaled=0.85]{helvet} \usepackage{courier} \usepackage[singlespacing]{setspace} \usepackage{geometry}\geometry{left=1in,right=1in,top=0.7in,bottom=1in} \usepackage[framemethod=default]{mdframed} \usepackage{enumitem} \setlist[1]{itemsep=15pt} 17 | \author{COURSE 0000: Template \\ Semester} 18 | \date{2018-02-27 Tue} 19 | \title{Exam 1 (Type B) Key} 20 | \hypersetup{ 21 | pdfauthor={COURSE 0000: Template \\ Semester}, 22 | pdftitle={Exam 1 (Type B) Key}, 23 | pdfkeywords={}, 24 | pdfsubject={Org-Coursepack-Documentation: A Comprehensive Course Template for Teaching with Org Mode School specific teaching materials}, 25 | pdfcreator={Emacs 25.3.1 (Org mode 9.1.13)}, 26 | pdflang={English}} 27 | \begin{document} 28 | 29 | \maketitle 30 | \begin{enumerate} 31 | \item Multiple Choice Question. 32 | \begin{enumerate} 33 | \item Choice 34 | \item Choice \(\checkmark\) 35 | \item Choice 36 | \end{enumerate} 37 | 38 | \item Multiple Choice Question. 39 | \begin{enumerate} 40 | \item Choice \(\checkmark\) 41 | \item Choice 42 | \item Choice 43 | \end{enumerate} 44 | \end{enumerate} 45 | \end{document} -------------------------------------------------------------------------------- /Courses/Template/Semester Template/Lectures/01 Course Introduction.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Template/Semester Template/Lectures/01 Course Introduction.pdf -------------------------------------------------------------------------------- /Courses/Template/Semester Template/Syllabus/Syllabus (Section 1).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joonro/Org-Coursepack/7e4b2cf3b219e1019e824fe92e49341b75a81ee6/Courses/Template/Semester Template/Syllabus/Syllabus (Section 1).pdf -------------------------------------------------------------------------------- /README.org: -------------------------------------------------------------------------------- 1 | #+TITLE: Org-Coursepack 2 | #+AUTHOR: Joon Ro 3 | 4 | [[https://doi.org/10.21105/jose.00034][https://jose.theoj.org/papers/10.21105/jose.00034/status.svg]] [[https://travis-ci.com/joonro/Org-Coursepack][https://travis-ci.com/joonro/Org-Coursepack.svg?branch=master]] 5 | 6 | The Org-Coursepack provides a template for developing and managing teaching 7 | materials using [[https://orgmode.org][Org mode]], a major mode in [[https://www.gnu.org/software/emacs/][GNU Emacs]]. 8 | 9 | Please see the [[https://joonro.github.io/Org-Coursepack/Lectures/01 Course Introduction.html#quickstart-guide][quickstart guide]] for basic usage of =Org-Coursepack= with 10 | screenshots. 11 | 12 | The template (see =Courses/Template=) is designed to be self-explanatory, as 13 | the documentation for it (see =Courses/Org-Coursepack=) consists of an example 14 | course developed with this template. See the [[https://joonro.github.io/Org-Coursepack/][HTML version of the documentation]]. 15 | 16 | See [[file:paper.md]] for the detailed summary for the template. 17 | 18 | * Dependencies 19 | Using Org-Coursepack requires Emacs for creating course content and LaTeX for 20 | exporting handouts. Follow the installation instructions below. 21 | ** Emacs 22 | See the official [[https://www.gnu.org/software/emacs/download.html][Download & installation]] page to learn how to install Emacs. 23 | *** Emacs init file 24 | The =Org-Coursepack= includes an example [[https://www.gnu.org/software/emacs/manual/html_node/efaq-w32/Init-file.html#Init-file][Emacs init file]] (located at 25 | [[https://github.com/joonro/Org-Coursepack/blob/master/Assets/.emacs.d/init.el][/Assets/.emacs.d/init.el]] which has necessary settings for its basic usage 26 | (e.g., package installations and export options). You can place the file 27 | (=init.el=) into the =.emacs.d= directory under your =HOME= folder 28 | (=~/.emacs.d/init.el=). See [[https://www.gnu.org/software/emacs/manual/html_node/efaq-w32/Location-of-init-file.html#Location-of-init-file][Where do I put my init file?]] of the Emacs 29 | documentation for more details. (Note that, for Emacs to be able to locate the 30 | init file in Windows, you must to add an environmental variable named =HOME=, 31 | with the variable value set to your user profile directory (e.g., 32 | =C:\Users\UserName=). See [[https://java.com/en/download/help/path.xml][How do I set or change the PATH system variable?]] to 33 | learn how to add environmental variables in Windows.) 34 | 35 | Those already using Emacs would likely have an init file with their own custom 36 | settings. They can copy and paste necessary codes from the example init file 37 | (e.g., lines starting from ~;; * Org-Coursepack settings~) to their own init 38 | file. 39 | 40 | Note that the init file is set up to detect and install any necessary packages 41 | (=htmlize=, =org-plus-contrib=, and =ox-reveal=) that are missing. This might 42 | lengthen the startup time when the user runs Emacs for the first time. 43 | ** LaTeX 44 | You can install [[https://tug.org/texlive/][TeX Live]] (for GNU/Linux and Windows) or [[https://tug.org/mactex/][MacTeX]] (for macOS). 45 | 46 | * Installation of =Org-Coursepack= 47 | =Org-Coursepack= can be installed by cloning the repo (=$ git clone 48 | https://github.com/joonro/Org-Coursepack.git=) or by downloading and unzipping 49 | the [[https://github.com/joonro/Org-Coursepack/archive/master.zip][ZIP archive]]. The Org-Coursepack is a self-contained package and thus will 50 | work regardless of where it is installed; hence, users can freely choose the 51 | location of the installation. 52 | 53 | * Usage 54 | We created the full documentation in the form of a short course. You can read 55 | the [[https://joonro.github.io/Org-Coursepack/][HTML version of the documentation]] or take a look at [[https://github.com/joonro/Org-Coursepack/tree/master/Courses/Org-Coursepack/2018 Fall/Lectures][exported PDF files]]. 56 | * Example Courses 57 | The Org-Coursepack includes two example courses created with Org-Coursepack: 58 | =Introduction to Regression Analysis with Excel= and =Introduction to 59 | Regression Analysis with Python=. These example courses showcase the modular 60 | usage of the template, as they focus on how to reduce redundancy in creating 61 | overalapping course materials. 62 | 63 | The two courses share plenty of materials in statistical topics, but one 64 | course applies these topics using Excel while the other uses 65 | Python. Demonstrating how to efficiently construct course materials with the 66 | Org-Coursepack, the courses share materials on statistical topics via topic 67 | Org files and selectively include materials related to Python and Excel from 68 | their own respective topic Org files where needed. 69 | 70 | See the semester Org files, exported syllabus, and exported lecture files 71 | linked below. 72 | ** Introduction to Regression Analysis with Excel 73 | - [[https://github.com/joonro/Org-Coursepack/blob/master/Courses/Intro-Regression-Excel/2018 Fall/2018 Fall.org][Semester Org file (Fall 2018)]] 74 | - [[https://github.com/joonro/Org-Coursepack/blob/master/Courses/Intro-Regression-Excel/2018 Fall/Syllabus/Syllabus (Section 1).pdf][Exported Syllabus]] 75 | - [[https://github.com/joonro/Org-Coursepack/tree/master/Courses/Intro-Regression-Excel/2018 Fall/Lectures][Exported Lecture files]] 76 | 77 | ** Introduction to Regression Analysis with Python 78 | - [[https://github.com/joonro/Org-Coursepack/blob/master/Courses/Intro-Regression-Python/2018 Fall/2018 Fall.org][Semester Org file (Fall 2018)]] 79 | - [[https://github.com/joonro/Org-Coursepack/blob/master/Courses/Intro-Regression-Python/2018 Fall/Syllabus/Syllabus (Section 1).pdf][Exported Syllabus]] 80 | - [[https://github.com/joonro/Org-Coursepack/tree/master/Courses/Intro-Regression-Python/2018 Fall/Lectures][Exported Lecture files]] 81 | * Authors 82 | - [[https://github.com/joonro/Org-Coursepack/tree/develop/Courses/Intro-Regression-Excel/2018%2520Fall/Lectures][Joon H. Ro]] & [[https://github.com/namkoong80][Jae-Eun Namkoong]] 83 | * Changelog 84 | ** v1.2.1 85 | - Fix special characters in elisp links 86 | ** v1.2.0 87 | - JOSE publication 88 | ** v1.1.0 89 | - Add two example courses, =Introduction to Regression Analysis with Excel= 90 | and =Introduction to Regression Analysis with Python= 91 | -------------------------------------------------------------------------------- /Topics/Excel.org: -------------------------------------------------------------------------------- 1 | #+TITLE: Topics: Excel 2 | #+AUTHOR: Joon Ro 3 | #+EMAIL: joon.ro@outlook.com 4 | #+DESCRIPTION: Teaching Materials for Excel 5 | #+CATEGORY: Teaching 6 | #+STARTUP: overview 7 | #+STARTUP: hidestars 8 | 9 | * Lectures 10 | ** Running Regression Analysis in Excel 11 | :PROPERTIES: 12 | :CUSTOM_ID: Lecture/Running Regression Analysis in Excel 13 | :END: 14 | #+LATEX: \iffalse 15 | - Mac Users: please install *Excel 2016 for Mac* 16 | #+LATEX: \fi 17 | 18 | #+REVEAL_HTML: 29 | 30 | *** Activating =Analysis ToolPak= and =Solver= in Excel 31 | - You have to activate the =Analysis ToolPak= and =Solver=. (You only need the former 32 | for running Regression, but we may need the latter as well) 33 | **** On Windows 34 | 1. Click =File= tab -> Click =Options= -> =Add-Ins= category. 35 | 2. Near the bottom of the =Excel Options= dialog box, make sure that =Excel 36 | Add-ins= is selected in the =Manage= box, and then click =Go...=. 37 | 3. In the =Add-Ins= dialog box, select the check boxes for =Analysis ToolPak= 38 | and =Solver Add-in=, and then click =OK=. 39 | 4. If Excel displays a message that states it can't run this add-in and 40 | prompts you to install it, click =Yes= to install the add-ins. 41 | 5. On the =Data= tab, note that an =Analyze= group has been added. This group 42 | contains command buttons for =Data Analysis= and for =Solver=. 43 | **** On Mac 44 | 1. Go to the =Tools= menu, select =Add-ins= 45 | 2. Check =Analysis ToolPak= and =Solver Add-in= and then click =OK= 46 | *** Running Regression Analysis in Excel 47 | - Click =Data= -> =Data Analysis= -> Select =Regression= -> =OK= 48 | 49 | - =Input Y Range=: Specify the range of cells that contain values for the 50 | dependent variable (\( y \)), _including the variable label_ (the first row) 51 | 52 | - =Input X Range=: Specify the range of cells that contain values for the 53 | independent (predictor) variable (\( x \)), _including the variable label_ 54 | (the first row) 55 | 56 | - For multiple regression, all \( x \) variables must be adjacent to each other. (no gaps) 57 | 58 | - Tip: You can use =Shift + Down Arrow= and =Ctrl + Shift + Down Arrow= to 59 | select a range of data conveniently 60 | 61 | - Make sure =Labels= checkbox is checked 62 | - Click =OK= (it will put the results on a new sheet) 63 | -------------------------------------------------------------------------------- /Topics/Hypothesis_Testing.org: -------------------------------------------------------------------------------- 1 | #+TITLE: Topics: Hypothesis Testing 2 | #+AUTHOR: Joon Ro 3 | #+EMAIL: joon.ro@outlook.com 4 | #+DESCRIPTION: org file for Experiments 5 | #+CATEGORY: Teaching 6 | #+STARTUP: overview 7 | #+STARTUP: hidestars 8 | 9 | * Lectures 10 | ** Hypothesis Testing for a Mean 11 | :PROPERTIES: 12 | :CUSTOM_ID: Lecture/Hypothesis Testing for a Mean 13 | :END: 14 | #+ATTR_REVEAL: :frag (appear) 15 | *Statements* 16 | 17 | #+ATTR_REVEAL: :frag (appear) 18 | - People think that the quality of food at our restaurant is above average (5) 19 | 20 | - College head coaches' winning percentages affects their compensation levels 21 | (Regression) 22 | *** Testing Hypothesis about a Single Mean 23 | #+ATTR_REVEAL: :frag (none appear) 24 | - People think that the quality of food at our restaurant is above average (5) 25 | 26 | - Null hypothesis: 27 | #+ATTR_REVEAL: :frag (appear) 28 | - There is no difference or effect 29 | 30 | #+ATTR_REVEAL: :frag (appear) 31 | \( H_0 \): Average rating of food quality is 5 or, @@html:
@@ 32 | \( H_0 \): \( Rating_{foodquality} = 5 \) 33 | 34 | #+REVEAL: split 35 | 36 | #+ATTR_REVEAL: :frag (none appear) 37 | - Alternative hypothesis: 38 | 39 | #+ATTR_REVEAL: :frag (appear) 40 | - That there is a difference (or an effect) 41 | 42 | #+LATEX: \begin{multicols}{2} 43 | 44 | - Two-sided 45 | #+ATTR_REVEAL: :frag (appear) 46 | - The average rating of food quality is not 5 47 | 48 | - \( H_{a} \) :: \( \text{rating}_{foodquality} \ne 5 \) 49 | 50 | - No discrimination of the direction of difference 51 | 52 | #+REVEAL: split 53 | 54 | - One-sided 55 | #+ATTR_REVEAL: :frag (appear) 56 | - The average rating of food quality is higher than 5 57 | - \( H_{a} \) :: \( \text{rating}_{foodquality} > 5 \) 58 | 59 | - Some idea of the direction of difference 60 | 61 | #+LATEX: \end{multicols} 62 | 63 | #+REVEAL: split 64 | 65 | #+ATTR_REVEAL: :frag (appear) 66 | - \( H_0 \): \( rating_{foodquality} = 5 \) 67 | - \( H_a \): \( rating_{foodquality} \ne 5 \quad \text{or} \quad 68 | rating_{foodquality} > 5 \) 69 | - Average rating from 100 respondents: 6.5, Variance: 4 70 | - Is the difference (5 VS. 6.5) statistically significant? 71 | 72 | *** z-test vs. t-test 73 | #+ATTR_REVEAL: :frag (appear) 74 | - _Rule of thumb_: 75 | #+BEGIN_QUOTE 76 | "Use a z-test when the variance of the distribution is known, otherwise use 77 | a t-test" 78 | #+END_QUOTE 79 | 80 | - For a large sample, t-test is equivalent to a z-test 81 | 82 | - Mostly fine with Regression 83 | 84 | #+REVEAL: split 85 | 86 | #+REVEAL_HTML: 87 | As \( n \) increase, the t-distribution approaches the standard normal 88 | distribution 89 | #+REVEAL_HTML: 90 | 91 | #+BEGIN_NOTES 92 | =/Topics/Hypothesis_Testing/T_and_normal_distribution.ipynb= 93 | #+END_NOTES 94 | *** Recall 95 | #+ATTR_REVEAL: :frag (none appear) 96 | - Sample mean: \( \overline{x} \) 97 | 98 | - Accuracy of sample mean depends on: 99 | - Sample variance: \( s_x^2 \) 100 | - Sample size: \( n \) 101 | 102 | - Standard Error: \( SE_{\overline{x}} = \sqrt{\dfrac{s^2_x}{n}} \) 103 | 104 | #+REVEAL: split 105 | 106 | Hence, with the example, 107 | 108 | #+ATTR_REVEAL: :frag (appear) 109 | - \( \overline{x} = 6.5, \qquad \) {{{FRAG(\( s_x^2 = 4\, \qquad\))}}} {{{FRAG(\( n = 100 \))}}} 110 | - \( SE_{\overline{x}} = \sqrt{\dfrac{s^2_x}{n}} \) {{{FRAG(\( = \sqrt{\dfrac{4}{100}} \))}}} {{{FRAG(\( = .2 \))}}} 111 | 112 | *** Computing t-statistic 113 | #+ATTR_REVEAL: :frag (appear) 114 | - \( H_0: \overline{x} = \overline{x}_0 \qquad (6.5 = 5) \) 115 | - {{{FRAG(\( H_a: \overline{x} \ne \overline{x}_0 \quad (6.5 \ne 5) \quad 116 | \text{or} \quad H_a: \overline{x}>\overline{x}_0 \quad (6.5 > 5) \))}}} 117 | 118 | - \( t=\dfrac{\overline{x} - \overline{x}_0}{SE_{\overline{x}}}, \qquad \) 119 | {{{FRAG(where \(\dfrac{\overline{x} - \overline{x}_0 = 1.5}{SE_{\overline{x}} = .2} \))}}} {{{FRAG(\( \quad = 7.5 \))}}} 120 | 121 | #+REVEAL: split 122 | 123 | #+ATTR_REVEAL: :frag (appear) 124 | - \( t \uparrow \) \( \Rightarrow \) {{{FRAG(p-value \( \downarrow \))}}} 125 | 126 | #+ATTR_REVEAL: :frag (appear) 127 | - p-value: the probability of finding the observed results when \( H_{0} \) is true 128 | 129 | *** t-critical 130 | #+ATTR_REVEAL: :frag (none appear) 131 | - How large must \( t \) be to reject the null hypothesis: 132 | #+ATTR_REVEAL: :frag (appear) 133 | - \( t \) must be larger than \( t_{critical} \) (threshold) 134 | - Since the mean of \( t \)-distribution is zero, larger the value, smaller 135 | the probability 136 | 137 | #+REVEAL: split 138 | 139 | - \( t_{critical} \) depends on: 140 | #+ATTR_REVEAL: :frag (appear) 141 | - Significance level \( \alpha \) (typically \( \alpha=0.05 \)) 142 | - Degrees of freedom: total sample size-1 \( \rightarrow n-1 \) 143 | - Whether test is one sided or two sided 144 | - Use _t-tables_. For large \( n \), you can use normal distribution (\( z \)) 145 | 146 | #+REVEAL: split 147 | 148 | #+LATEX: \begin{multicols}{2} 149 | #+ATTR_REVEAL: :frag (none appear) 150 | - For two-sided test: 151 | #+ATTR_REVEAL: :frag (none appear) 152 | - \( t_{Critical} = t_{\alpha/2, n-1} \) 153 | - For large \( n \), \( t_{0.025}=1.96 \) 154 | - Reject the null if \( |t| > t_{Critical} \) 155 | - Fail to reject the null if \( |t| < t_{Critical} \) 156 | 157 | #+REVEAL: split 158 | 159 | - For one-sided test: 160 | #+ATTR_REVEAL: :frag (none appear) 161 | - \( t_{Critical} = t_{\alpha, n-1} \) 162 | - For large \( n, \; t_{0.05} = 1.65 \) 163 | - Reject the null if \( t > t_{Critical} \) 164 | - Fail to reject the null if \( t < t_{Critical} \) 165 | #+LATEX: \end{multicols} 166 | 167 | #+ATTR_REVEAL: :frag (appear) 168 | - In both cases, rejecting the null means p-value \( < \alpha \) 169 | **** T table :slideonly: 170 | #+REVEAL_HTML: 171 | #+LATEX: {\scriptsize 172 | | 1 tail \alpha = | 0.1 | 0.05 | 0.025 | 0.01 | 0.005 | 173 | | 2 tails \alpha = | 0.2 | 0.1 | 0.05 | 0.02 | 0.01 | 174 | |----------------------------+--------------+--------------+-----------------------+--------------+--------------| 175 | | df =1 | 3.078 | 6.314 | 12.706 | 31.821 | 63.656 | 176 | | 2 | 1.886 | 2.920 | 4.303 | 6.965 | 9.925 | 177 | | 3 | 1.638 | 2.353 | 3.182 | 4.541 | 5.841 | 178 | | 4 | 1.533 | 2.132 | 2.776 | 3.747 | 4.604 | 179 | | \( \vdots \) | \( \vdots \) | \( \vdots \) | \( \vdots \) | \( \vdots \) | \( \vdots \) | 180 | | 15 | 1.341 | 1.753 | 2.131 | 2.602 | 2.947 | 181 | | {{{FRAG_RED(30)}}} | 1.310 | 1.697 | {{{FRAG_RED(2.042)}}} | 2.457 | 2.750 | 182 | | 60 | 1.296 | 1.671 | 2.000 | 2.390 | 2.660 | 183 | | 120 | 1.289 | 1.658 | 1.980 | 2.358 | 2.617 | 184 | | {{{FRAG_RED(\(\infty\))}}} | 1.282 | 1.645 | {{{FRAG_RED(1.960)}}} | 2.326 | 2.576 | 185 | #+LATEX: } 186 | #+REVEAL_HTML: 187 | *** The conclusion is 188 | #+LATEX: \begin{multicols}{2} 189 | #+ATTR_REVEAL: :frag (appear) 190 | \[ H_a: rating_{foodquality} \ne 5 \] 191 | 192 | {{{FRAG(\( |t| = 7.5 > t_{critical}=1.96 \))}}} {{{FRAG(\(\Rightarrow \text{ Reject } H_0 \))}}} 193 | 194 | {{{RVL_VSPACE}}} 195 | 196 | {{{RVL_VSPACE}}} 197 | 198 | #+ATTR_REVEAL: :frag (appear) 199 | \[ H_a: rating_{foodquality} > 5 \] 200 | 201 | {{{FRAG(\( t = 7.5 > t_{critical}=1.65 \))}}} {{{FRAG(\(\Rightarrow \text{ Reject } H_0 \))}}} 202 | #+LATEX: \end{multicols} 203 | 204 | -------------------------------------------------------------------------------- /Topics/Sampling.org: -------------------------------------------------------------------------------- 1 | #+TITLE: Sampling 2 | #+AUTHOR: Joon Ro 3 | #+EMAIL: jro@tulane.edu 4 | #+DESCRIPTION: Teaching material for Sampling 5 | #+CATEGORY: Teaching 6 | #+STARTUP: content 7 | 8 | * Lectures 9 | ** Sampling Distribution and Variance of the Sample Mean 10 | :PROPERTIES: 11 | :CUSTOM_ID: Lecture/Sampling Distribution and Variance of the Sample Mean 12 | :END: 13 | :LOGBOOK: 14 | - Note taken on [2018-02-05 Mon 00:36] \\ 15 | I think I can talk about this separately from the simple random sampling. 16 | :END: 17 | 18 | #+REVEAL: split 19 | 20 | #+ATTR_REVEAL: :frag (none appear) 21 | - Suppose we can /repeatedly/ draw random samples of size \( n \) from the population 22 | - Then calculate the mean for /each/ sample: 23 | 24 | - e.g., \( \bar{x}_1 \): mean of the first sample, \( \bar{x}_2 \): mean of 25 | the second sample, ... 26 | 27 | - Computation of variance of these _means_: 28 | 29 | #+REVEAL_HTML: 30 | \( s^2_{\bar{x}} = \dfrac{s^2}{n} \begin{cases} 31 | \Uparrow & \text{increases with increasing sample variance} (s^2) \\ 32 | \Downarrow & \text{decreases with increasing sample size} (n) 33 | \end{cases} \) 34 | #+REVEAL_HTML: 35 | 36 | *** How reliable is the sample mean as the sample size increases? 37 | #+ATTR_REVEAL: :frag (none appear) 38 | - The histogram of _sample means_ will eventually look like a normal 39 | distribution when \( n \) becomes larger and larger. (Central-Limit Theorem) 40 | - The histogram will also be "thinner" as \( n \) goes larger. 41 | 42 | #+HEADERS: :var output="../../../Assets/Images/Statistics/hist_mean_n.png" 43 | #+BEGIN_SRC python :eval no-export :results file :exports results 44 | import numpy as np 45 | import matplotlib 46 | matplotlib.use('Agg') 47 | import matplotlib.pyplot as plt 48 | plt.style.use('seaborn-pastel') 49 | 50 | numrow, numcol = 1, 3 51 | length, height = 15, 5 52 | fig, axs = plt.subplots(numrow, numcol, sharex=False, sharey=False, 53 | figsize=(length, height), squeeze=False) 54 | 55 | ns = [10, 30, 100] # numbers of observations 56 | ndraw = 1000 # number of draws 57 | 58 | for i in range(3): 59 | n = ns[i] 60 | 61 | # population is the standard normal, with sigma^2 = 1 62 | samples = np.random.normal(loc=3, size=(n, ndraw)) 63 | sample_means = samples.mean(axis=0) 64 | 65 | ax = axs[0, i] 66 | ax.hist(sample_means) 67 | ax.set_title('Distribution of sample mean ($n$={})'.format(n)) 68 | ax.set_ylabel('Frequency') 69 | ax.set_xlabel('Profit') 70 | 71 | if i == 0: 72 | xlim = ax.get_xlim() 73 | else: 74 | ax.set_xlim(xlim) 75 | 76 | fig.tight_layout() 77 | 78 | plt.savefig(output) 79 | return output # return this to org-mode 80 | #+END_SRC 81 | 82 | #+ATTR_REVEAL: :frag (appear) 83 | #+ATTR_LATEX: :width 13cm 84 | #+RESULTS: 85 | [[image:/Statistics/hist_mean_n.png]] 86 | 87 | #+REVEAL_HTML: 91 | #+BEGIN_NOTES 92 | Here, use Jaeeun's explanation. Draw circles as samples. Calculate the 93 | mean. They are more likely to get into the center of histograms. 94 | #+END_NOTES 95 | 96 | *** Sample Mean and Standard Error 97 | #+LATEX: \begin{multicols}{2} 98 | #+ATTR_REVEAL: :frag (none appear) 99 | - Sample mean :: \( \overline{x} \) 100 | 101 | #+REVEAL_HTML: 102 | Accuracy of sample mean depends on: 103 | #+REVEAL_HTML: 104 | 105 | #+ATTR_REVEAL: :frag (appear) 106 | - Sample variance :: \( s_x^2 \) 107 | - Sample size :: \( n \) 108 | 109 | #+REVEAL: split 110 | 111 | - Standard Error :: \( SE_{\overline{x}} = \sqrt{\dfrac{s^2_x}{n}} \) 112 | 113 | #+LATEX: \end{multicols} 114 | 115 | *** Standard Deviation VS. Standard Error 116 | - Standard deviation (\( s_{x} \)) :: Describes the spread of values in the sample 117 | 118 | #+ATTR_REVEAL: :frag (appear) 119 | - The sample standard deviation, \( s_x \) is a random quantity - it varies from 120 | sample to sample 121 | - Becomes *more accurate representation of the population standard 122 | deviation* when the sample size increases 123 | 124 | #+REVEAL: split 125 | 126 | - Standard error of the mean (\( SE_{\bar{x}} \)) :: the standard deviation of 127 | the sample mean \( \bar{x} \) 128 | 129 | #+ATTR_REVEAL: :frag (appear) 130 | - Describes \( \bar{x} \)'s accuracy as an estimate of the population mean, 131 | \( \mu \) 132 | - When the sample size increases, the estimator is based on more information 133 | and becomes more accurate, so *its standard error decreases* 134 | *** Margin of error: Confidence interval of the mean 135 | #+ATTR_REVEAL: :frag (none appear) 136 | - What is a 95% confidence interval? 137 | #+ATTR_REVEAL: :frag (none appear) 138 | - If we would draw samples of the same size _over and over again_, then in 95% 139 | of the times this interval covers the mean. 140 | - So it is a measure of reliability 141 | - \( [ \bar{x} \) {{{FRAG(\(- 1.96 SE_{\bar{x}} \))}}}, \(\quad \bar{x} \) 142 | {{{FRAG(\( + 1.96 SE_{\bar{x}} \))}}} \( ] \) 143 | 144 | - It does _not_ mean that "there is a 95% chance that the population mean is 145 | in this specific confidence interval" @@latex:(See textbook page 277)@@ 146 | 147 | -------------------------------------------------------------------------------- /Topics/Topic Template.org: -------------------------------------------------------------------------------- 1 | #+TITLE: Topics: Template 2 | #+AUTHOR: Your Name 3 | #+EMAIL: Your Email 4 | #+DESCRIPTION: org file for the topic Template 5 | #+CATEGORY: TOPIC 6 | #+STARTUP: overview 7 | #+STARTUP: hidestars 8 | 9 | * Lectures 10 | ** Introduction 11 | :PROPERTIES: 12 | :CUSTOM_ID: Lectures/Introduction 13 | :END: 14 | Content for this section here. 15 | ** Subtopic 16 | :PROPERTIES: 17 | :CUSTOM_ID: Lectures/Subtopic 18 | :END: 19 | Subtopic content here. 20 | * Assignments 21 | ** Assignment 1 22 | :PROPERTIES: 23 | :CUSTOM_ID: Assginments/1 24 | :END: 25 | *** Instructions 26 | :PROPERTIES: 27 | :CUSTOM_ID: Assginments/1/Instructions 28 | :END: 29 | Assignment instructions here. 30 | *** Rubrics 31 | - Rubrics for assignment 32 | * Exercises 33 | ** Exercise 1 34 | :PROPERTIES: 35 | :CUSTOM_ID: Exercises/1 36 | :END: 37 | Exercise 1 instructions here. 38 | * Questions 39 | ** Question 1 40 | :PROPERTIES: 41 | :CUSTOM_ID: Questions/1 42 | :END: 43 | 1. Multiple Choice Question. 44 | 1. Choice 45 | 2. Choice 46 | 3. Choice {{{property(ANSWER)}}} 47 | ** Short Answer 48 | :PROPERTIES: 49 | :CUSTOM_ID: Questions/SA 50 | :END: 51 | #+ATTR_LATEX: :options [style=exampledefault, frametitle={}] 52 | #+BEGIN_mdframed 53 | Please answer the following short answer questions each with no more than 3 54 | sentences. 55 | #+END_mdframed 56 | 57 | 1. Describe how to include the content of a subtree from another org file, excluding the heading 58 | 59 | {{{VSPACE(50)}}} 60 | 61 | 2. Describe how to include the content of a subtree from another org file, including the heading 62 | -------------------------------------------------------------------------------- /export-org-coursepack.el: -------------------------------------------------------------------------------- 1 | ;; Script to export syllabus and all lectures of a semester Org file 2 | 3 | (load-file "./Assets/.emacs.d/init.el") 4 | 5 | (require 'org) 6 | (require 'ox-latex) 7 | 8 | (setq org-use-property-inheritance t) 9 | 10 | (setq target-file "./Courses/Org-Coursepack/2018 Fall/2018 Fall.org") 11 | 12 | ;; Update lecture metadata 13 | (with-current-buffer (find-file-noselect target-file) 14 | (progn 15 | ;; Update lecture metadata 16 | (beginning-of-buffer) 17 | (re-search-forward "CALL: org-coursepack-update-lecture-metadata") 18 | (org-ctrl-c-ctrl-c) 19 | 20 | (save-buffer) 21 | )) 22 | 23 | ;; Export syllabus 24 | (with-current-buffer (find-file-noselect target-file) 25 | (progn 26 | (beginning-of-buffer) 27 | (re-search-forward ":EXPORT_FILE_NAME: ./Syllabus/Syllabus \(Section 1\)") 28 | (org-latex-export-to-pdf nil t) 29 | ;; (org-html-export-to-html nil t) 30 | )) 31 | 32 | ;; Export lectures 33 | (with-current-buffer (find-file-noselect target-file) 34 | (progn 35 | (beginning-of-buffer) 36 | (while (re-search-forward ":EXPORT_FILE_NAME: ./Lectures/" nil nil) 37 | (progn 38 | (org-reveal-export-to-html nil t) 39 | (org-latex-export-to-pdf nil t) 40 | (org-rst-export-to-rst nil t) 41 | (forward-line 1) 42 | )))) 43 | 44 | -------------------------------------------------------------------------------- /paper.bib: -------------------------------------------------------------------------------- 1 | Automatically generated by Mendeley Desktop 1.19.1 2 | Any changes to this file will be lost if it is regenerated by Mendeley. 3 | 4 | BibTeX export options can be customized via Options -> BibTeX in Mendeley Desktop 5 | 6 | @article{Kuo2014, 7 | abstract = {Student satisfaction is important in the evaluation of distance education courses as it is related to the quality of online programs and student performance. Interaction is a critical indicator of student satisfaction; however, its impact has not been tested in the context of other critical student- and class-level predictors. In this study, we tested a regression model for student satisfaction involving student characteristics (three types of interaction, Internet self-efficacy, and self-regulated learning) and class-level predictors (course category and academic program). Data were collected in a sample of 221 graduate and undergraduate students responding to an online survey. The regression model was tested using hierarchical linear modeling (HLM). Learner-instructor interaction and learner-content interaction were significant predictors of student satisfaction but learner-learner interaction was not. Learner-content interaction was the strongest predictor. Academic program category moderated the effect of learner-content interaction on student satisfaction. The effect of learner-content interaction on student satisfaction was stronger in Instructional Technology and Learning Sciences than in psychology, physical education or family, consumer, and human development. In sum, the results suggest that improvements in learner-content interaction yield most promise in enhancing student satisfaction and that learner-learner interaction may be negligible in online course settings.}, 8 | author = {Kuo, Yu Chun and Walker, Andrew E. and Schroder, Kerstin E.E. and Belland, Brian R.}, 9 | doi = {10.1016/j.iheduc.2013.10.001}, 10 | file = {:home/joon/Documents/Mendeley Library/Internet and Higher Education/2014/Kuo et al. - 2014 - Internet and Higher Education.pdf:pdf}, 11 | isbn = {1096-7516}, 12 | issn = {10967516}, 13 | journal = {Internet and Higher Education}, 14 | keywords = {Hierarchical linear modeling (HLM),Interactions,Internet self-efficacy,Online education,Satisfaction,Self-regulated learning}, 15 | pages = {35--50}, 16 | pmid = {24921255}, 17 | publisher = {Elsevier B.V.}, 18 | title = {{Interaction, Internet self-efficacy, and self-regulated learning as predictors of student satisfaction in online education courses}}, 19 | url = {http://dx.doi.org/10.1016/j.iheduc.2013.10.001}, 20 | volume = {20}, 21 | year = {2014} 22 | } 23 | @book{Csikszentmihalyi2014Book, 24 | abstract = {An analysis of the reported experiences of people involved in various play-forms (i.e., rock-climbing, chess, dance, basketball, music composi- tion) suggests that the qualities which make these activities enjoyable are the following: (a) a person is able to concentrate on a limited stimulus field, (o) in which he or she can use his or her skills to meet clear demands, (c) thereby forgetting his or her own problems, and (d) his or her own separate identity, (e) at the same time obtaining a feeling of control over the environment, Q which may result in a transcendence of ego-boundaries and consequent psychic integration with metapersonal systems A formal analysis is carried out to establish what are the characteristics that an activity must have to provide such intrinsically rewarding experiences. The implications of intrinsic rewards for the understanding of human motiva- tion are briefly discussed.}, 25 | archivePrefix = {arXiv}, 26 | arxivId = {0803973233}, 27 | author = {Csikszentmihalyi, Mihaly}, 28 | doi = {10.1007/978-94-017-9088-8}, 29 | eprint = {0803973233}, 30 | file = {:home/joon/Documents/Mendeley Library/Unknown/2014/Csikszentmihalyi - 2014 - Unknown.pdf:pdf}, 31 | isbn = {978-94-017-9087-1}, 32 | issn = {0022-1678}, 33 | pmid = {4852177}, 34 | title = {{Flow And The Foundations Of Positive Psychology}}, 35 | url = {http://link.springer.com/10.1007/978-94-017-9088-8}, 36 | year = {2014} 37 | } 38 | -------------------------------------------------------------------------------- /paper.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 'Org-Coursepack: A Modular and Reusable Teaching Materials Template in Org-mode' 3 | tags: 4 | - emacs 5 | - org-mode 6 | - template 7 | - software 8 | authors: 9 | - name: Joon H. Ro 10 | orcid: 0000-0002-5895-163X 11 | affiliation: 1 12 | - name: Jae-Eun Namkoong 13 | orcid: 0000-0002-8133-5317 14 | affiliation: 2 15 | affiliations: 16 | - name: Tulane University 17 | index: 1 18 | - name: University of Nevada, Reno 19 | index: 2 20 | date: 22 July 2018 21 | bibliography: paper.bib 22 | --- 23 | 24 | # Summary 25 | 26 | The Org-Coursepack provides a template for developing and managing teaching 27 | materials using [Org mode](https://orgmode.org), a major mode in [GNU 28 | Emacs](https://www.gnu.org/software/emacs/). The template is designed to be 29 | self-explanatory since the documentation for it consists of a sample course 30 | developed with this template. 31 | 32 | # Statement of Need 33 | 34 | Org-Coursepack started as an attempt to solve challenges authors experienced 35 | when creating and managing teaching materials. The key benefits of using the 36 | template as an instructor are summarized below. 37 | 38 | First, sharing materials across courses becomes more effective and efficient 39 | with the template than with traditional means of creating lecture slides 40 | (e.g., PowerPoints or Beamer) because the template relies heavily on the file 41 | inclusion functionality of Org mode; thus, it is designed to be as modular as 42 | possible. As a result, a course topic can be used across multiple sections of 43 | the same course or across multiple courses, which means improvements made to 44 | one lecture file will automatically propagate across all sections and courses 45 | covering the topic, reducing redundancy and inconsistency. Thus, 46 | Org-Coursepack would be especially useful for an instructor with multiple 47 | courses that share common course materials. 48 | 49 | Second, the flexible export system and output-specific export options in Org 50 | mode allow instructors to generate outputs in multiple formats. Any 51 | course-related material, such as syllabi, exam reviews, or lectures, can be 52 | easily exported in the form of slides (e.g., via reveal.js or Beamer backends) 53 | or handouts (e.g., via LaTeX or reStructuredText backends) while maintaining 54 | consistent content regardless of format. This allows instructors to create 55 | properly formatted, document-like handouts for their lectures, offering better 56 | presentation and legibility compared to scaled-down slides. In addition, 57 | instructors can choose to selectively present certain components (e.g., 58 | images, charts, or notes) depending on the output format. These features 59 | eliminate the need for instructors to maintain separate files for different 60 | output formats. 61 | 62 | Third, the template contains utility functions written in Emacs Lisp, 63 | shortcuts to Org mode functions, and basic class structures, all of which 64 | contribute to automating a variety of instruction-related tasks. The features 65 | include, but are not limited to, automatic class numbering and automatic 66 | creation of key content, such as course schedules for syllabi, summaries of 67 | class materials, and exam keys. 68 | 69 | In sum, the template can improve instructors’ efficacy by minimizing 70 | redundancy and automating various tasks. This is important because repetitive, 71 | tedious, tangential tasks―and the psychological distractions associated with 72 | them―can pull instructors’ attention away from core instructional 73 | responsibilities. Removing such elements makes course preparation more 74 | seamless, and redirecting the newly found time and mental resources to 75 | positive educational outlets can enhance instructors’ intrinsic motivation and 76 | creativity [@Csikszentmihalyi2014Book]. 77 | 78 | We believe students are the ultimate beneficiaries of this approach since 79 | their overall learning experience can be enhanced through consistent, properly 80 | formatted, strategically presented course materials that are more engaging and 81 | easier to comprehend. Such materials are also easier to digest and review 82 | outside the classroom. 83 | 84 | Two business courses related to marketing analytics, which share about 60% of 85 | their course materials, were successfully created and managed using this 86 | template. We have received positive feedback from students about the benefits 87 | of having well-organized, high-quality teaching materials, as shown by the 88 | following comments from students’ course evaluations: 89 | 90 | > The slides are extremely helpful and I appreciate that because textbooks are 91 | > expensive and unnecessary when the lecture material is of this caliber. 92 | 93 | > The teaching materials could not be any better. It was very helpful to expect 94 | > a handout at the beginning of each class, one that was formatted identically 95 | > to the others and was very clear about communicating the content of the 96 | > lecture. 97 | 98 | The documentation provided in the Org-Coursepack is designed to be 99 | straightforward so instructors with basic knowledge about Org mode can 100 | customize it to meet their unique needs, whether they are creating new course 101 | content or converting existing courses. Outside a traditional classroom 102 | setting, the tool may be used for a wide range of instructional purposes, such 103 | as employee training sessions, workshops, and consumer 104 | education. Well-organized, effectively presented course materials can enhance 105 | fluency in self-regulated learning; thus, the template may be especially 106 | beneficial for online courses in which independent work and learnercontent 107 | interaction are critical to student satisfaction and success [@Kuo2014]. 108 | 109 | More broadly, Org mode is useful for not only instructors but also 110 | practitioners across a variety of fields. For instance, businesses can use the 111 | approach when documenting multiple, often overlapping products and services 112 | either for internal recording purposes or for presentations to external 113 | clients. It is also useful to those managing a myriad of legal or other 114 | administrative documents that often refer to one another or contain common 115 | elements. We hope the Org-Coursepack, and Org mode in general, will contribute 116 | to the productivity of both those who use it and those who are served by it. 117 | 118 | # References 119 | -------------------------------------------------------------------------------- /sphinx/Lectures/01 Course Introduction.rst: -------------------------------------------------------------------------------- 1 | .. include:: ../../Courses/Org-Coursepack/2018 Fall/Lectures/01 Course Introduction.rst 2 | 3 | -------------------------------------------------------------------------------- /sphinx/Lectures/02 Org Mode Basics.rst: -------------------------------------------------------------------------------- 1 | .. include:: ../../Courses/Org-Coursepack/2018 Fall/Lectures/02 Org Mode Basics.rst 2 | 3 | -------------------------------------------------------------------------------- /sphinx/Lectures/03 Topic and Course Org Files.rst: -------------------------------------------------------------------------------- 1 | .. include:: ../../Courses/Org-Coursepack/2018 Fall/Lectures/03 Topic and Course Org Files.rst 2 | 3 | -------------------------------------------------------------------------------- /sphinx/Lectures/04 Creating Content for Slides and Handouts.rst: -------------------------------------------------------------------------------- 1 | .. include:: ../../Courses/Org-Coursepack/2018 Fall/Lectures/04 Creating Content for Slides and Handouts.rst 2 | 3 | -------------------------------------------------------------------------------- /sphinx/Lectures/05 Exporting Slides and Handouts.rst: -------------------------------------------------------------------------------- 1 | .. include:: ../../Courses/Org-Coursepack/2018 Fall/Lectures/05 Exporting Slides and Handouts.rst 2 | 3 | -------------------------------------------------------------------------------- /sphinx/Lectures/06 Semester Org Files 1 4 Introduction.rst: -------------------------------------------------------------------------------- 1 | .. include:: ../../Courses/Org-Coursepack/2018 Fall/Lectures/06 Semester Org Files 1 4 Introduction.rst 2 | 3 | -------------------------------------------------------------------------------- /sphinx/Lectures/07 Semester Org Files 2 4 Sections and Syllabus.rst: -------------------------------------------------------------------------------- 1 | .. include:: ../../Courses/Org-Coursepack/2018 Fall/Lectures/07 Semester Org Files 2 4 Sections and Syllabus.rst 2 | 3 | -------------------------------------------------------------------------------- /sphinx/Lectures/08 Semester Org Files 3 4 Lectures.rst: -------------------------------------------------------------------------------- 1 | .. include:: ../../Courses/Org-Coursepack/2018 Fall/Lectures/08 Semester Org Files 3 4 Lectures.rst 2 | 3 | -------------------------------------------------------------------------------- /sphinx/Lectures/09 Semester Org Files 4 4 Exams and Assignments.rst: -------------------------------------------------------------------------------- 1 | .. include:: ../../Courses/Org-Coursepack/2018 Fall/Lectures/09 Semester Org Files 4 4 Exams and Assignments.rst 2 | 3 | -------------------------------------------------------------------------------- /sphinx/conf.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # 3 | # Configuration file for the Sphinx documentation builder. 4 | # 5 | # This file does only contain a selection of the most common options. For a 6 | # full list see the documentation: 7 | # http://www.sphinx-doc.org/en/master/config 8 | 9 | # -- Path setup -------------------------------------------------------------- 10 | 11 | # If extensions (or modules to document with autodoc) are in another directory, 12 | # add these directories to sys.path here. If the directory is relative to the 13 | # documentation root, use os.path.abspath to make it absolute, like shown here. 14 | # 15 | # import os 16 | # import sys 17 | # sys.path.insert(0, os.path.abspath('.')) 18 | 19 | 20 | # -- Project information ----------------------------------------------------- 21 | 22 | project = 'Org-Coursepack' 23 | copyright = '2018, Joon Ro & Jae Eun Namkoong' 24 | author = 'Joon Ro & Jae Eun Namkoong' 25 | 26 | # The short X.Y version 27 | version = '' 28 | # The full version, including alpha/beta/rc tags 29 | release = '' 30 | 31 | 32 | # -- General configuration --------------------------------------------------- 33 | 34 | # If your documentation needs a minimal Sphinx version, state it here. 35 | # 36 | # needs_sphinx = '1.0' 37 | 38 | # Add any Sphinx extension module names here, as strings. They can be 39 | # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom 40 | # ones. 41 | extensions = [ 42 | 'sphinx.ext.mathjax', 43 | 'sphinx.ext.githubpages', 44 | ] 45 | 46 | # Add any paths that contain templates here, relative to this directory. 47 | templates_path = ['_templates'] 48 | 49 | # The suffix(es) of source filenames. 50 | # You can specify multiple suffix as a list of string: 51 | # 52 | # source_suffix = ['.rst', '.md'] 53 | source_suffix = '.rst' 54 | 55 | # The master toctree document. 56 | master_doc = 'index' 57 | 58 | # The language for content autogenerated by Sphinx. Refer to documentation 59 | # for a list of supported languages. 60 | # 61 | # This is also used if you do content translation via gettext catalogs. 62 | # Usually you set "language" from the command line for these cases. 63 | language = None 64 | 65 | # List of patterns, relative to source directory, that match files and 66 | # directories to ignore when looking for source files. 67 | # This pattern also affects html_static_path and html_extra_path . 68 | exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] 69 | 70 | # The name of the Pygments (syntax highlighting) style to use. 71 | pygments_style = 'sphinx' 72 | 73 | 74 | # -- Options for HTML output ------------------------------------------------- 75 | 76 | # The theme to use for HTML and HTML Help pages. See the documentation for 77 | # a list of builtin themes. 78 | # 79 | html_theme = 'alabaster' 80 | 81 | # Theme options are theme-specific and customize the look and feel of a theme 82 | # further. For a list of options available for each theme, see the 83 | # documentation. 84 | # 85 | # html_theme_options = {} 86 | 87 | # Add any paths that contain custom static files (such as style sheets) here, 88 | # relative to this directory. They are copied after the builtin static files, 89 | # so a file named "default.css" will overwrite the builtin "default.css". 90 | html_static_path = ['_static'] 91 | 92 | # Custom sidebar templates, must be a dictionary that maps document names 93 | # to template names. 94 | # 95 | # The default sidebars (for documents that don't match any pattern) are 96 | # defined by theme itself. Builtin themes are using these templates by 97 | # default: ``['localtoc.html', 'relations.html', 'sourcelink.html', 98 | # 'searchbox.html']``. 99 | # 100 | # html_sidebars = {} 101 | 102 | html_baseurl = 'Org-Courspack' 103 | # -- Options for HTMLHelp output --------------------------------------------- 104 | 105 | # Output file base name for HTML help builder. 106 | htmlhelp_basename = 'Org-CoursepackDocumentationdoc' 107 | 108 | 109 | # -- Options for LaTeX output ------------------------------------------------ 110 | 111 | latex_elements = { 112 | # The paper size ('letterpaper' or 'a4paper'). 113 | # 114 | # 'papersize': 'letterpaper', 115 | 116 | # The font size ('10pt', '11pt' or '12pt'). 117 | # 118 | # 'pointsize': '10pt', 119 | 120 | # Additional stuff for the LaTeX preamble. 121 | # 122 | # 'preamble': '', 123 | 124 | # Latex figure (float) alignment 125 | # 126 | # 'figure_align': 'htbp', 127 | } 128 | 129 | # Grouping the document tree into LaTeX files. List of tuples 130 | # (source start file, target name, title, 131 | # author, documentclass [howto, manual, or own class]). 132 | latex_documents = [ 133 | (master_doc, 'Org-CoursepackDocumentation.tex', 'Org-Coursepack Documentation', 134 | 'Joon Ro \\& Jae Eun Namkoong', 'manual'), 135 | ] 136 | 137 | 138 | # -- Options for manual page output ------------------------------------------ 139 | 140 | # One entry per manual page. List of tuples 141 | # (source start file, name, description, authors, manual section). 142 | man_pages = [ 143 | (master_doc, 'org-coursepackdocumentation', 'Org-Coursepack Documentation', 144 | [author], 1) 145 | ] 146 | 147 | 148 | # -- Options for Texinfo output ---------------------------------------------- 149 | 150 | # Grouping the document tree into Texinfo files. List of tuples 151 | # (source start file, target name, title, author, 152 | # dir menu entry, description, category) 153 | texinfo_documents = [ 154 | (master_doc, 'Org-CoursepackDocumentation', 'Org-Coursepack Documentation', 155 | author, 'Org-CoursepackDocumentation', 'One line description of project.', 156 | 'Miscellaneous'), 157 | ] 158 | 159 | 160 | # -- Extension configuration ------------------------------------------------- 161 | -------------------------------------------------------------------------------- /sphinx/index.rst: -------------------------------------------------------------------------------- 1 | .. Org-Coursepack documentation master file, created by 2 | sphinx-quickstart on Tue Jul 24 09:43:16 2018. 3 | You can adapt this file completely to your liking, but it should at least 4 | contain the root `toctree` directive. 5 | 6 | Welcome to Org-Coursepack's documentation! 7 | ========================================== 8 | 9 | .. toctree:: 10 | :maxdepth: 2 11 | :caption: Contents: 12 | 13 | Lectures/01 Course Introduction.rst 14 | Lectures/02 Org Mode Basics.rst 15 | Lectures/03 Topic and Course Org Files.rst 16 | Lectures/04 Creating Content for Slides and Handouts.rst 17 | Lectures/05 Exporting Slides and Handouts.rst 18 | Lectures/06 Semester Org Files 1 4 Introduction.rst 19 | Lectures/07 Semester Org Files 2 4 Sections and Syllabus.rst 20 | Lectures/08 Semester Org Files 3 4 Lectures.rst 21 | Lectures/09 Semester Org Files 4 4 Exams and Assignments.rst 22 | 23 | 24 | Indices and tables 25 | ================== 26 | 27 | * :ref:`genindex` 28 | * :ref:`modindex` 29 | * :ref:`search` 30 | -------------------------------------------------------------------------------- /sphinx/post-processing.ps1: -------------------------------------------------------------------------------- 1 | Get-ChildItem ("../html/Lectures") -Filter *.html | 2 | 3 | Foreach-Object { 4 | (Get-Content $_.FullName) -Replace "Lectures\\../../../", "../" -join "`n" | Set-Content $_.FullName -NoNewline -Force 5 | (Get-Content $_.FullName) -Replace '\\\*', '*' -join "`n" | Set-Content $_.FullName -NoNewline -Force 6 | (Get-Content $_.FullName) -Replace '\\\*\\\*', '**' -join "`n" | Set-Content $_.FullName -NoNewline -Force 7 | (Get-Content $_.FullName) -Replace '\\\*\\\*\\\*', '***' -join "`n" | Set-Content $_.FullName -NoNewline -Force 8 | } 9 | 10 | echo "Image paths and escape characters for * are fixed." 11 | 12 | cp ../Assets/Images/Org-Teaching/*.png ../html/Assets/Images/Org-Teaching/ 13 | cp ../Assets/Images/Org-Teaching/Quickstart/*.png ../html/Assets/Images/Org-Teaching/Quickstart 14 | 15 | echo "Images copied to ../html/Assets/Images." 16 | 17 | 18 | -------------------------------------------------------------------------------- /tests.el: -------------------------------------------------------------------------------- 1 | (load-file "./Assets/.emacs.d/init.el") 2 | 3 | (require 'org) 4 | (require 'ox-latex) 5 | 6 | (setq org-use-property-inheritance t) 7 | 8 | ;; Test org-coursepack-update-lecture-metadata() 9 | (with-current-buffer (find-file-noselect "./Courses/Template/Semester Template/Semester Template.org") 10 | (progn 11 | ;; Update lecture metadata 12 | (beginning-of-buffer) 13 | (re-search-forward "CALL: org-coursepack-update-lecture-metadata") 14 | (org-ctrl-c-ctrl-c) 15 | 16 | (save-buffer) 17 | )) 18 | 19 | ;; Test exporting syllabus 20 | (with-current-buffer (find-file-noselect "./Courses/Template/Semester Template/Semester Template.org") 21 | (progn 22 | (beginning-of-buffer) 23 | (re-search-forward ":EXPORT_FILE_NAME: ./Syllabus/Syllabus \(Section 1\)") 24 | (org-latex-export-to-pdf nil t) 25 | ;; (org-html-export-to-html nil t) 26 | )) 27 | 28 | ;; Test exporting lecture 29 | (with-current-buffer (find-file-noselect "./Courses/Template/Semester Template/Semester Template.org") 30 | (progn 31 | (beginning-of-buffer) 32 | (re-search-forward ":EXPORT_FILE_NAME: ./Lectures/01 Course Introduction") 33 | (org-reveal-export-to-html nil t) 34 | (org-latex-export-to-pdf nil t) 35 | ;; (org-html-export-to-html nil t) 36 | )) 37 | 38 | ;; Test exporting exam 39 | (with-current-buffer (find-file-noselect "./Courses/Template/Semester Template/Semester Template.org") 40 | (progn 41 | (beginning-of-buffer) 42 | (re-search-forward ":EXPORT_FILE_NAME: ./Exams/Exam_1_01_A") 43 | (org-latex-export-to-pdf nil t) 44 | ;; (org-html-export-to-html nil t) 45 | )) 46 | 47 | ;; Test exporting assignment 48 | (with-current-buffer (find-file-noselect "./Courses/Template/Semester Template/Semester Template.org") 49 | (progn 50 | (beginning-of-buffer) 51 | (re-search-forward ":EXPORT_FILE_NAME: ./Assignments/Assignment_1") 52 | (org-latex-export-to-pdf nil t) 53 | ;; (org-html-export-to-html nil t) 54 | )) 55 | 56 | --------------------------------------------------------------------------------