mirror of
https://github.com/extreme-tech-seminar/seven-languages-in-seven-weeks.git
synced 2024-11-29 03:00:18 +00:00
106 lines
5 KiB
Org Mode
106 lines
5 KiB
Org Mode
#+TITLE: Extreme Tech Seminar
|
|
#+AUTHOR: Correl Roush
|
|
#+EMAIL: correl@gmail.com
|
|
#+OPTIONS: H:1 toc:nil ^:nil
|
|
#+STARTUP: beamer indent
|
|
#+COLUMNS: %45ITEM %10BEAMER_env(Env) %10BEAMER_act(Act) %4BEAMER_col(Col) %8BEAMER_opt(Opt)
|
|
#+PROPERTY: BEAMER_col_ALL 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 0.0 :ETC
|
|
#+LaTeX_CLASS: beamer
|
|
#+LaTeX_CLASS_OPTIONS: [presentation,aspectratio=169]
|
|
|
|
#+begin_src emacs-lisp :exports results :results silent
|
|
(defun org-get-scheduled-end-time (pom &optional inherit)
|
|
(let ((parse-end-time
|
|
(lambda (time)
|
|
(let ((ts-regexp (concat org-ts-regexp1
|
|
"\\(-\\([0-9]\\{1,2\\}\\):\\([0-9]\\{2\\}\\)\\)")))
|
|
(when (string-match ts-regexp time)
|
|
(org-parse-time-string (string-join (list (string-join (list (match-string 2 time)
|
|
(match-string 3 time)
|
|
(match-string 4 time))
|
|
"-")
|
|
(match-string 5 time)
|
|
(string-join (list (match-string 10 time)
|
|
(match-string 11 time))
|
|
":"))
|
|
" ")))))))
|
|
(let* ((time (org-entry-get pom "SCHEDULED"))
|
|
(end-time (funcall parse-end-time time)))
|
|
(if end-time
|
|
(apply 'encode-time end-time)
|
|
(org-get-scheduled-time pom inherit)))))
|
|
|
|
(defun xts-announcement (location language)
|
|
(print (string-join `("#+LATEX: \\fontspec{Antonio-Bold}\\color{trek@lightyellow}"
|
|
"#+LATEX: \\Huge"
|
|
"#+BEGIN_CENTER"
|
|
"THE EXTREME TECH SEMINAR"
|
|
"#+END_CENTER"
|
|
"#+LATEX: \\Large\\color{trek@lightorange}"
|
|
"#+BEGIN_CENTER"
|
|
,(concat (format-time-string "%a, %B %e @%l:%M%p"
|
|
(org-get-scheduled-time (point)))
|
|
(format-time-string "-%l:%M%p" (org-get-scheduled-end-time (point))))
|
|
"#+END_CENTER"
|
|
"#+LATEX: \\normalsize\\color{trek@lightblue}"
|
|
"#+BEGIN_CENTER"
|
|
"Come join us as we study Bruce Tate's book, \"Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages\"."
|
|
"#+END_CENTER"
|
|
"#+LATEX: \\small\\color{trek@darkorange}"
|
|
"#+BEGIN_CENTER"
|
|
,(concat "THIS WEEK: " language)
|
|
"#+END_CENTER"
|
|
"#+LATEX: \\small\\color{trek@midblue}"
|
|
"#+BEGIN_CENTER"
|
|
"pragprog.com/book/btlang\\\\"
|
|
"COUPON CODE: ExtremeTech7\\\\"
|
|
"#+END_CENTER"
|
|
"#+LATEX: \\footnotesize\\color{red}"
|
|
"#+BEGIN_CENTER"
|
|
"FOOD WILL BE PROVIDED"
|
|
"#+END_CENTER")
|
|
"\n")))
|
|
#+end_src
|
|
|
|
* Ruby
|
|
SCHEDULED: <2015-05-27 Wed 18:00-20:00>
|
|
#+begin_src emacs-lisp :exports results :results raw
|
|
(xts-announcement "Franklin Training Room"
|
|
"The object-oriented langauge, \"Ruby\"")
|
|
#+end_src
|
|
* Io
|
|
SCHEDULED: <2015-06-10 Wed 18:00-20:00>
|
|
#+begin_src emacs-lisp :exports results :results raw
|
|
(xts-announcement "Franklin Training Room"
|
|
"The prototype language, \"Io\"")
|
|
#+end_src
|
|
* Prolog
|
|
SCHEDULED: <2015-06-24 Wed 18:00-20:00>
|
|
#+begin_src emacs-lisp :exports results :results raw
|
|
(xts-announcement "Franklin Training Room"
|
|
"The logic programming language, \"Prolog\"")
|
|
#+end_src
|
|
* Scala
|
|
SCHEDULED: <2015-07-08 Wed 18:00-20:00>
|
|
#+begin_src emacs-lisp :exports results :results raw
|
|
(xts-announcement "Franklin Training Room"
|
|
"The functional/object-oriented hybrid JVM language, \"Scala\"")
|
|
#+end_src
|
|
* Erlang
|
|
SCHEDULED: <2015-07-29 Wed 18:00-20:00>
|
|
#+begin_src emacs-lisp :exports results :results raw
|
|
(xts-announcement "Franklin Training Room"
|
|
"The concurrent, functional language, \"Erlang\"")
|
|
#+end_src
|
|
* Clojure
|
|
SCHEDULED: <2015-08-12 Wed 18:00-20:00>
|
|
#+begin_src emacs-lisp :exports results :results raw
|
|
(xts-announcement "Franklin Training Room"
|
|
"The JVM lisp, \"Clojure\"")
|
|
#+end_src
|
|
* Haskell
|
|
SCHEDULED: <2015-08-26 Wed 18:00-20:00>
|
|
#+begin_src emacs-lisp :exports results :results raw
|
|
(xts-announcement "Franklin Training Room"
|
|
"The pure functional language \"Haskell\"")
|
|
#+end_src
|