%% cv.tex
-%% Copyright 2016-2019 Amin Bandali <bandali@gnu.org>
+%% Copyright 2016-2019 Amin Bandali <mab@gnu.org>
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
% 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${}^+$}
\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}
\medskip
\begin{minipage}[t]{0.495\textwidth}
- site: \href{https://bndl.org}{https://bndl.org} \\
- email: \href{mailto:abandali@uwaterloo.ca}{abandali@uwaterloo.ca} \\
+ site: \href{https://bandali.eu.org}{bandali.eu.org} \\
+ email: \href{mailto:bandali@uwaterloo.ca}{bandali@uwaterloo.ca} \\
phone: available upon request
\end{minipage}
\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}
\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}
- \textsf{\footnotesize
- (\href{https://bndl.org/papers/2018-AbBaDaSe-modre.pdf}{pdf},
- \href{https://bndl.org/papers/2018-AbBaDaSe-modre.bib}{bib})}
+ \item \textsf{A Comparison of the Declarative Modelling Languages B,
+ Dash, and \tla} \textsf{\footnotesize
+ (\href{https://bandali.eu.org/papers/modre2018-declarative.pdf}{pdf},
+ \href{https://bandali.eu.org/papers/modre2018-declarative.bib}{bib})}
- Ali Abbassi, Amin Bandali, Nancy A. Day, and Jose Serna.
+ Ali Abbassi, Amin Bandali, Nancy A. Day, and Jose Serna\\
\textit{2018 IEEE 8th International Model-Driven Requirements
Engineering Workshop (MoDRE)}
\end{itemize}
\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 was 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}
Introduction to Computing, taught by Dr. Brown.
\end{itemize}
+ \pagebreak
+
\item {\large Software Engineering Lab, } York University\, |\, {\small summer
2017}
\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}
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.
\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{https://bandali.eu.org/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{https://bandali.eu.org/talks/eecs4080-poster.pdf}{poster}),
+ at Lassonde Undergraduate Summer Student Research Conference, York
+ University, Toronto, Canada, August 15, 2017.
\end{itemize}
\end{itemize}
\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}
\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 personal site at
- \href{https://bndl.org}{https://bndl.org}.
+ \href{https://bandali.eu.org}{\texttt{https://bandali.eu.org}}.
\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}