X-Git-Url: https://git.shemshak.org/gitweb.cgi/~bandali/cv/blobdiff_plain/0abf949c190a0ff3559fc32d2f21476e28fa1e34..4977a8785fb4f09442327b825360c74260a9866c:/cv.tex diff --git a/cv.tex b/cv.tex index 9a6e292..f4c54b2 100644 --- a/cv.tex +++ b/cv.tex @@ -1,5 +1,5 @@ %% cv.tex -%% Copyright 2016-2017 Amin Bandali +%% Copyright 2016-2019 Amin Bandali % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 @@ -26,24 +26,26 @@ % Fonts \usepackage{graphicx} -\usepackage{fontspec} -\setmainfont[Scale=0.95,SmallCapsFont={Equity Caps A},RawFeature=+c2sc]{Equity Text A} -\setsansfont[SmallCapsFont={Concourse C4}]{Concourse T4} -\setmonofont[Scale=0.9]{Triplicate T4c} -\newfontfamily{\tallnums}[RawFeature={+ss02}]{Equity Text A} -\newfontfamily{\largersans}[Scale=1.05,SmallCapsFont={Concourse C4}]{Concourse T4} -\newcommand{\amper}{{\fontspec[Scale=.9]{Equity Text A}\selectfont\itshape\&}} +\usepackage[cmintegrals,cmbraces]{newtxmath} +\usepackage{ebgaramond-maths} +\usepackage[sf]{libertine} +\usepackage[scale=0.87]{inconsolata} +\usepackage[T1]{fontenc} +\newcommand{\amper}{{\selectfont\itshape\&}} \newcommand{\tla}{TLA${}^+$} \def\name{Amin Bandali} +\def\site{bndl.org} +\def\siteurl{https://\site} % The following metadata will show up in the PDF properties \hypersetup{ colorlinks = true, urlcolor = black, pdfauthor = {\name}, - pdfkeywords = {Formal Methods, Type Systems, Proof Systems, Interactive Provers, + pdfkeywords = {Formal Methods, Formal Logic, Model Checking, + Verification, Type Systems, Proof Systems, Interactive Provers, Programming Languages, Functional Programming, Haskell, Rust}, pdftitle = {\name: Curriculum Vitae}, pdfsubject = {Curriculum Vitae}, @@ -59,8 +61,8 @@ \pagestyle{fancy} \fancyhf{}% to clear existing header/footer \renewcommand\headrulewidth{0pt} -\cfoot{\vspace*{-.25em}\textsc{Bandali CV --- page \thepage \xspace of - \pageref*{LastPage}}} +\cfoot{\vspace*{-.25em}\textsc{bandali cv --- page + \thepage \xspace of \pageref*{LastPage}}} % Custom section fonts \usepackage{sectsty} @@ -103,8 +105,8 @@ \medskip \begin{minipage}[t]{0.495\textwidth} - site: \href{https://aminb.org}{https://aminb.org} \\ - email: \href{mailto:abandali@uwaterloo.ca}{abandali@uwaterloo.ca} \\ + site: \href{\siteurl}{\site} \\ + email: \href{mailto:bandali@uwaterloo.ca}{bandali@uwaterloo.ca} \\ phone: available upon request \end{minipage} @@ -121,7 +123,7 @@ \begin{itemize} \item Supervised by Dr. Nancy Day | GPA: 3.7/4.0 | Expected - completion: December 2019 + completion: Winter 2020 \item Research focusing on formal logic, model checking, and verification. \end{itemize} @@ -143,14 +145,17 @@ \section*{Publications} \begin{itemize} -\item {\large \tallnums MoDRE 2018} +\item {\large MoDRE 2018} \begin{itemize} - \item {\largersans A Comparison of the Declarative Modelling - Languages B, Dash, and \tla} - % TODO: pdf, - - Ali Abbassi, Amin Bandali, Nancy A. Day, and Jose Serna + \item \textsf{A Comparison of the Declarative Modelling Languages B, + Dash, and \tla} \textsf{\footnotesize + (\href{\siteurl/papers/modre2018-declarative.pdf}{pdf}, + \href{\siteurl/papers/modre2018-declarative.bib}{bib})} + + Ali Abbassi, Amin Bandali, Nancy A. Day, and Jose Serna\\ + \textit{2018 IEEE 8th International Model-Driven Requirements + Engineering Workshop (MoDRE)} \end{itemize} \end{itemize} @@ -161,15 +166,15 @@ \item {\large Cheriton School of Computer Science, } University of Waterloo\, |\, {\small 2018--present} - \textit{Teaching Assistant} + \textit{Instructional Apprentice (IA), Teaching Assistant (TA)} \begin{itemize} - \item I'm currently a TA for \textsf{\small SE 212}, Logic and - Computation, taught by Dr. Day in Fall 2018. - \item I was a TA for \textsf{\small SE 463}, Software Requirements - Specification and Analysis, taught by Prof. Atlee. - \item I was a TA for \textsf{\small CS 136}, Elementary Algorithm - Design and Data Abstraction. + \item \textsf{\small SE 212} (Logic and Computation): IA in Fall + 2019, TA in Fall 2018 + \item \textsf{\small SE 463} (Software Requirements Specification + and Analysis): TA in Summer 2019 and 2018 + \item \textsf{\small CS 136} (Elementary Algorithm Design and Data + Abstraction): TA in Winter 2018 \end{itemize} \item {\large EECS Department, } York University\, |\, {\small fall 2017} @@ -181,6 +186,8 @@ Introduction to Computing, taught by Dr. Brown. \end{itemize} + \pagebreak + \item {\large Software Engineering Lab, } York University\, |\, {\small summer 2017} @@ -191,7 +198,7 @@ \href{https://bertrandmeyer.com/2014/12/07/lampsort/}{\textit{Lampsort}} in Eiffel. I also extended the \href{https://svn.eecs.yorku.ca/repos/sel-open/mathmodels/}{\texttt{mathmodels}} - library, implementing a \textsc{RATIONAL} class for working with arbitrarily + library, implementing a \textsc{rational} class for working with arbitrarily large rational numbers. \end{itemize} @@ -207,7 +214,7 @@ From the Literate Unit-B codebase (written in Haskell), I decoupled the logic module and used it to build \textit{Unit-B Web}, a web interface using - Literate Unit-B to do predicate calculus proofs. \linebreak Unit-B Web, also + Literate Unit-B to do predicate calculus proofs. Unit-B Web, also written in Haskell, supports the \LaTeX\ syntax of the Unit-B logic, renders user input on the page, and calls the sequent prover of the logic module, which uses the \textsc{z3 smt} solver to check the validity of user input. @@ -221,22 +228,22 @@ \section*{Conference Presentations} \begin{itemize} -\item {\large \tallnums CUCSC 2017} +\item {\large CUCSC 2017} \begin{itemize} - \item {\largersans The Magic of Specifications and Type Systems} - (\href{https://static.aminb.org/cucsc-2017-slides.pdf}{slides}), - at Canadian Undergraduate Computer Science Conference, University of - Toronto, Canada, Jun 15--17 2017. + \item \textsf{The Magic of Specifications and Type Systems} + (\href{\siteurl/talks/cucsc-2017-slides.pdf}{slides}), + at Canadian Undergraduate Computer Science Conference, University + of Toronto, Canada, Jun 15--17 2017. \end{itemize} -\item {\large \tallnums Lassonde USSR Conference 2017} +\item {\large Lassonde USSR Conference 2017} \begin{itemize} - \item {\largersans The Magic of Specifications and Type Systems} - (\href{https://static.aminb.org/eecs4080-poster.pdf}{poster}), - at Lassonde Undergraduate Summer Student Research Conference, York University, - Toronto, Canada, August 15, 2017. + \item \textsf{The Magic of Specifications and Type Systems} + (\href{\siteurl/talks/eecs4080-poster.pdf}{poster}), + at Lassonde Undergraduate Summer Student Research Conference, York + University, Toronto, Canada, August 15, 2017. \end{itemize} \end{itemize} @@ -277,15 +284,37 @@ \begin{itemize} -\item {\large EmacsConf 2015, } \href{http://emacsconf.org}{emacsconf.org}\, |\, +\item {\large EmacsConf 2019, } \href{https://emacsconf.org/2019}{\texttt{emacsconf.org/2019}}\, |\, + {\small fall 2019} + + \textit{Organizer} + + \begin{itemize} + \item I was the chief organizer for EmacsConf 2019, and in charge of + maintaining and overseeing the EmacsConf infrastructure, including + our streaming servers. + \end{itemize} + \vspace{.25em} + +\item {\large Computer Science Club, } University of Waterloo, + Canada\, |\, {\small summer 2019--present} + + \textit{Systems Committee} + + \begin{itemize} + \item I'm a member of the CSC syscom at the University of Waterloo, + operating and maintaining the club's fleet of GNU/Linux servers. + \end{itemize} + \vspace{.25em} + +\item {\large EmacsConf 2015, } \href{https://emacsconf.org/2015}{\texttt{emacsconf.org/2015}}\, |\, {\small summer 2015} \textit{Organizer} \begin{itemize} - \item EmacsConf is a conference about the joy of Emacs and writing Emacs - Lisp. I was a key organizer and in charge of setting up and maintaining - several vital pieces of the EmacsConf infrastructure. + \item I was one of the organizers and in charge of setting up and + maintaining several vital pieces of the EmacsConf infrastructure. \end{itemize} \vspace{.25em} @@ -329,33 +358,39 @@ \section*{Recent Projects} \begin{itemize} +\item \textit{george-mode:} Emacs major mode for editing George + files.\\ Source code available at + \href{https://git.sr.ht/~bandali/george-mode}{\texttt{https://git.sr.ht/\textasciitilde{}bandali/george-mode}} +\item \textit{alloy-catalyst:} Framework for performance analysis of + Alloy models.\\ Source code available at + \href{https://git.uwaterloo.ca/bandali/alloy-catalyst}{\texttt{https://git.uwaterloo.ca/bandali/alloy-catalyst}} \item \textit{Unit-B Web:} The web interface for Unit-B, as mentioned in the \textit{Research Experience} section.\\ Source code available at - \href{https://github.com/unitb/unitb-web}{https://github.com/unitb/unitb-web} + \href{https://github.com/unitb/unitb-web}{\texttt{https://github.com/unitb/unitb-web}} \item \textit{tex2png-hs:} A tool for easily converting \TeX\ and \LaTeX\ to - \textsc{PNG} images. \texttt{tex2png-hs} is a Haskell port of Xyne's + \textsc{png} images. \texttt{tex2png-hs} is a Haskell port of Xyne's \texttt{tex2png} tool. It is a wrapper around \texttt{latex} and \texttt{dvipng} and provides several options for modifying its behaviour, such - as cropping the whitespace around the content, specifying the \textsc{DPI}, or - inputting a full document. + as cropping the whitespace around the content, specifying the \textsc{dpi}, or + inputting a full document.\\ Source code available at - \href{https://github.com/unitb/tex2png-hs}{https://github.com/unitb/tex2png-hs} + \href{https://github.com/unitb/tex2png-hs}{\texttt{https://github.com/unitb/tex2png-hs}} -\item For more projects, visit my GitHub profile at - \href{https://github.com/aminb}{https://github.com/aminb}. +\item For more projects, visit my personal site at + \href{\siteurl}{\texttt{\siteurl}}. \end{itemize} \section*{Miscellaneous} \begin{itemize} -\item \textit{Programming Languages:} Haskell, Rust, Eiffel, Python, C, Emacs - Lisp, C\#, JavaScript. -\item \textit{Tools:} Emacs, Liquid Haskell, Git, Zsh, \LaTeX, CI Systems - (e.g. Travis CI), Rodin. -\item \textit{Platforms:} Arch Linux, Ubuntu and other distros, Android, macOS, - Windows. +\item \textit{Programming Languages:} Haskell, Python, C, Emacs Lisp, + Guile, Eiffel, Rust, C\#, Java, JavaScript. +\item \textit{Tools:} Emacs, Git, Alloy, \tla, \LaTeX, CI + systems, Rodin, Liquid Haskell. +\item \textit{Platforms:} GNU/Linux distributions including GNU Guix, + Trisquel, Parabola, Debian. \item \textit{Languages:} Persian (mother tongue), English (fluent), French (beginner). \end{itemize}