From: Amin Bandali Date: Thu, 6 Aug 2020 00:26:01 +0000 (-0400) Subject: revamp and update the cv X-Git-Url: https://git.shemshak.org/~bandali/cv/commitdiff_plain/88457a3748dc603b777fd6d542ba85c511f3377e?hp=4977a8785fb4f09442327b825360c74260a9866c revamp and update the cv --- diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..607248b --- /dev/null +++ b/Makefile @@ -0,0 +1,30 @@ +# Makefile --- GNU Makefile for building bandali's cv + +# Copyright (C) 2020 Amin Bandali + +# This file is part of bandali's cv. + +# This CV is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This CV is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this CV. If not, see . + + +all: bandali-cv.pdf + +bandali-cv.pdf: bandali-cv.tex + latexmk -lualatex bandali-cv + +watch: + latexmk -lualatex -pvc -view=none bandali-cv + +clean: + latexmk -C diff --git a/bandali-cv.tex b/bandali-cv.tex new file mode 100644 index 0000000..5096e87 --- /dev/null +++ b/bandali-cv.tex @@ -0,0 +1,381 @@ +% bandali-cv.tex --- bandali's curriculum vitae -*-latex-*- + +% Copyright (C) 2016-2020 Amin Bandali + +% This CV is free software: you can redistribute it and/or modify +% it under the terms of the GNU General Public License as published by +% the Free Software Foundation, either version 3 of the License, or +% (at your option) any later version. + +% This CV is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. + +% You should have received a copy of the GNU General Public License +% along with this CV. If not, see . + +% With inspirations from Jason Blevins's CV . + + +\documentclass[letterpaper]{article} + +\def\name{Amin Bandali} +\def\site{bndl.org} +\def\siteurl{https://\site} +\def\pubs#1{\siteurl/publications\##1} +\def\mail{bandali@uwaterloo.ca} +\def\nday{https://cs.uwaterloo.ca/~nday/} + +%% package imports +\usepackage{geometry} % setting page geometry +\usepackage{enumitem} % enumerate with [resume] option +\usepackage{fontspec} % needs LuaTeX +\usepackage{sectsty} % custom section fonts +\usepackage{hyperref} % for PDF metadata +\usepackage{fancyhdr} % fine control of headers/footers +\usepackage{lastpage} % as the name says :-) + +%% PDF metadata +\hypersetup{ + pdfstartview={FitH}, % (H for horizontal) + pdftitle={\name: Curriculum Vitae}, + pdfauthor={\name}, + pdfsubject={Curriculum Vitae}, + pdfkeywords={formal methods, formal logic, model checking, + verification, type systems, interactive theorem provers, + functional programming, lean prover, haskell}, + pdfpagemode=UseNone, + pdfcreator={GNU Emacs 28.0.50}, + pdflang={English}, + pdfnewwindow=true, + colorlinks=true, + urlcolor=black +} + +%% page geometry +\geometry{ + %% bottom=1.25in, + body={6.5in, 9.0in}, + left=1.0in, + top=1.0in +} + +%% footer setup +\pagestyle{fancy} +\fancyhf{} % clear existing header/footer +\renewcommand\headrulewidth{0pt} +\cfoot{% + \textsc{\addfontfeature{Letters=UppercaseSmallCaps,LetterSpace=6.0}% + Bandali CV \textemdash{} page \thepage{} of \pageref*{LastPage}}} + +%% body text font +\usepackage[lining, tabular]{ebgaramond} +\setmonofont[Scale=0.87]{inconsolata} +\setsansfont[Scale=0.95]{Jost} + +%% title font +\newfontfamily\titleface{Linux Libertine O} +\newcommand{\titlefont}[1]{{\titleface\large\addfontfeature{LetterSpace=6.0}\MakeUppercase{#1}}} + +%% section heading font +\newfontfamily\sectionface{Linux Libertine O} +\sectionfont{\sectionface\mdseries\normalsize\uppercase} +\subsectionfont{\sectionface\mdseries\normalsize\itshape} + +%% don't indent paragraphs +\setlength\parindent{0em} + +%% omit itemize bullets, set more compact spacing +\renewenvironment{itemize}{ + \begin{list}{}{ + \setlength{\leftmargin}{1.5em} + \setlength{\itemsep}{0.25em} + \setlength{\parskip}{0em} + \setlength{\parsep}{0.25em} + } +}{ + \end{list} +} +\setlist[enumerate]{itemsep=0.25em} + +%% month and year only +\renewcommand{\today}{\ifcase \month \or January\or February\or March% + \or April\or May \or June\or July\or August\or September\or October% + \or November\or December\fi% +\space \number \year} + +%% various command definitions +\newcommand{\tla}{TLA${}^+$} + + +\begin{document} + +\titlefont{\name} + +\bigskip +\today + +\medskip +\href{\siteurl}{\addfontfeature{LetterSpace=2.0}\site}\\ +\href{mailto:\mail}{\mail}\\ + +\section*{Education} + +\begin{itemize} + \item Master of Mathematics in Computer Science, University of + Waterloo, 2020. + % completed July 14, 2020 + \begin{itemize} + \item Thesis: A Comprehensive Study of Declarative Modelling + Languages. + \item Supervisor: \href{\nday}{Dr. Nancy~A. Day}. \ GPA: 3.7/4.0. + \end{itemize} + \item Bachelor of Science with Honours in Computer Science, York + University, 2017. + % completed December 2017 +\end{itemize} + +\section*{Research Interests} + +\begin{itemize} +\item Formal Logic, Model Checking, Theorem Proving, Verification +\end{itemize} + +\section*{Publications \& Presentations} + +\begin{itemize} +\item \href{\siteurl/mmath}{\textsf{A Comprehensive Study of + Declarative Modelling Languages}}\\ \href{\siteurl}{Amin Bandali}, + \textit{Master's thesis}, University of Waterloo, 2020. +\item \href{\pubs{DBLP:conf/re/AbbassiBDS18}}{\textsf{A Comparison + of the Declarative Modelling Languages B, Dash, and \tla}}\\ Ali + Abbassi, \href{\siteurl}{Amin Bandali}, \href{\nday}{Nancy~A. Day}, + and Jose Serna. \textit{Proc. MoDRE@RE 2018}. +\item \textsf{The magic of specifications and type systems} {\small{} + (\href{\pubs{bandali-magic-lassonde-2017}}{poster}, + \href{\pubs{bandali-magic-cucsc-2017}}{slides})}\\ \href{\siteurl}{Amin + Bandali}, \href{https://github.com/cipher1024}{Simon Hudon}, and + \href{https://www.eecs.yorku.ca/~jonathan/}{Jonathan S. Ostroff}. + Presented at the Canadian Undergraduate Computer Science Conference + 2017, and at the 2017 Lassonde Undergraduate Summer Student Research + Conference. +\end{itemize} + +\section*{Work Experience} + +\subsection*{Free Software Foundation (FSF)} +\begin{itemize} +\item + \begin{description}[font=\mdseries] + \item[spring 2020] Tech team intern + + Working in a sysadmin role on a variety of tasks including + installation of the Sourcehut free software forge on the FSF + infrastructure for evaluation for the FSF forge project, as well + as a series of enhancements for + \href{https://www.gnu.org}{www.gnu.org}. + \end{description} +\end{itemize} + +\subsection*{Cheriton School of Computer Science, University of Waterloo} +\begin{itemize} +\item TA: Teaching Assistant, marking exams and assignments. IA: + Instructional Apprentice, holding tutorials and marking +\item + \begin{description}[font=\mdseries] + \item[SE 465 (Software Testing and Quality Assurance)] TA in winter + 2020. + \item[SE 212 (Logic and Computation)] IA in fall 2019, TA in fall + 2018. + \item[SE 463 (Software Requirements Specification and Analysis)] TA + in spring 2019 and 2018. + \item[CS 136 (Elementary Algorithm Design and Data Abstraction)] TA + in winter 2018. + \end{description} +\end{itemize} + +\subsection*{Dept. of Electrical Engineering \& Computer Science, York University} +\begin{itemize} +\item + \begin{description}[font=\mdseries] + \item[EECS 1012 (Net-Centric Introduction to Computing)] TA in fall + 2017. + \end{description} +\end{itemize} + +\subsection*{Software Engineering Lab, York University} +\begin{itemize} +\item + \begin{description}[font=\mdseries] + \item[summer 2017] Research Assistant + + Worked on an implementation of + \href{https://bertrandmeyer.com/2014/12/07/lampsort/}{\textsf{Lampsort}} + in Eiffel. Extended the + \href{https://svn.eecs.yorku.ca/repos/sel-open/mathmodels/}{\textsf{mathmodels}} + library, implementing a \textsc{rational} class for working with + arbitrarily large rational numbers. + \item[summer 2016] Research Student + + Worked on \textit{Literate Unit-B}, the verifier for Unit-B, a new + formal method focused on formal verification of reactive, + concurrent and distributed systems. From the Literate Unit-B + codebase (written in Haskell), 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. 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 Z3 SMT solver to check the + validity of user input. + + Separated Literate Unit-B's type checker from its parser in a + large refactoring, allowing easier substitution of other type + checking algorithms, and in preparation for implementing + subtyping. + \end{description} +\end{itemize} + +\subsection*{Lotek Wireless Inc.} +\begin{itemize} +\item + \begin{description}[font=\mdseries] + \item[summer 2016] Software Developer + + Designed and developed an Employee Portal web application in C\# + and the MVC framework, used by employees for accessing various + data catalogs and archives. + \item[summer 2015] Software Developer + + Designed and implemented various applications in C\# and C for + analyzing and testing a satellite pass prediction algorithm for + predicting the pass windows of Argos satellites, for scheduling + send times of data collected by the company's wildlife tracking + products. + \end{description} +\end{itemize} + +\subsection*{Athlete Builder} +\begin{itemize} +\item + \begin{description}[font=\mdseries] + \item[2013--2014] Software Developer + + Developed the Backend of Athlete Builder platform in C\# and MVC. + + Key role in development of the platform core. + + Developed the alpha version of Athlete Builder Android application + in Java. + \end{description} +\end{itemize} + +\section*{Community Service} + +\subsection*{EmacsConf Conference} + +\begin{itemize} +\item + \begin{description}[font=\mdseries] + \item[\href{https://emacsconf.org}{2019--present}] Chief organizer + and maintainer of conference infrastructure, including the + streaming servers. + \item[\href{https://emacsconf.org/2015/}{2015}\phantom{--present}] + One of the organizers and in charge of setting up and maintaining + vital pieces of infrastructure. + \end{description} +\end{itemize} + +\subsection*{Computer Science Club (CSC) of the University of Waterloo} + +\begin{itemize} +\item Served as the CSC System Administrator in Winter and Spring + 2020. Present member of the CSC Systems Committee, overseeing and + maintaining a large fleet of GNU/Linux servers for CSC members, as + well as running the CSC mirror for free software projects. + + Notable projects include + \href{https://mailman.csclub.uwaterloo.ca/pipermail/csc-general/2020-July/000837.html}{launching + the CSC web IRC client} as part of an effort in bringing modern + user freedom- and privacy-respecting communication tools to club + members. +\end{itemize} + +\subsection*{Free/Libre Software Contributions} + +\begin{itemize} +\item Co-maintainer of + \href{https://www.gnu.org/software/gnuzilla/gnuzilla.html}{GNUzilla + and IceCat}, the GNU version of the Mozilla suite and the Firefox + browser respectively. +\item Maintainer of + \href{https://www.gnu.org/software/emacs/erc.html}{ERC}, the + powerful, modular, and extensible IRC client distributed with + GNU~Emacs. +\item Committer and regular contributor to + \href{https://www.gnu.org/software/emacs/emacs.html}{GNU~Emacs} and + \href{https://guix.gnu.org}{GNU~Guix}. +\item + \href{https://www.gnu.org/people/webmeisters.html#bandali}{GNU~webmaster} + and + \href{https://savannah.gnu.org/maintenance/SavannahHacker/}{GNU~Savannah + hacker}. +\end{itemize} + +\subsection*{Volunteer Work} + +\begin{itemize} +\item + \begin{description}[font=\mdseries] + \item[spring 2013] Application Developer for VONICAL Inc. + + Worked on development of the Employment Accessibility Resource + Network (EARN) portal using the Anahita social networking + platform, written in PHP and running on GNU/Linux. + \end{description} +\item + \begin{description}[font=\mdseries] + \item[winter 2013] Mobile \& Web Developer for Hire Works Inc. + + Worked on a variety of web and mobile development projects for + Hire Works. + \end{description} +\item + \begin{description}[font=\mdseries] + \item[summer 2012] Web Developer for St. Brigid's Summer Camp + + Redesigned and revamped the codebase for the photo gallery section + of the camp's website in PHP and JavaScript. + \end{description} +\end{itemize} + +%% TODO? \section*{Recent Projects} + +%% \section*{Achievements} + +%% \begin{itemize} +%% \item Was among the top 1\% incoming students in Carleton University's +%% undergraduate Computer Science program, and a top student in the +%% faculty of science. +%% \item Highest standing in Computer Science in grade 11 (92\%) and +%% grade 12 (100\%) at High school at Glebe~Collegiate~Institute. +%% \item Ranked in the top 25\% in the Canadian Senior Mathematics +%% Contest held by University of Waterloo, in 2013 (grade 11). +%% \item Graduated from high school with an average of 95\%; and +%% designated as an Ontario Scholar. +%% \end{itemize} + +\section*{Miscellaneous} + +\begin{itemize} +\item \textit{Programming Languages:} Haskell, Python, C, Emacs Lisp, + Guile Scheme, Eiffel, Rust, C\#, Java, JavaScript. +\item \textit{Tools:} GNU Emacs, Git, Alloy, \tla, ProB, \LaTeX, + continuous integration systems. +\item \textit{Platforms:} GNU/Linux distributions, including Trisquel, + GNU Guix, Debian. +\item \textit{Languages:} Persian (mother tongue), English (fluent), French + (beginner). +\end{itemize} + +\end{document} diff --git a/cv.tex b/cv.tex deleted file mode 100644 index f4c54b2..0000000 --- a/cv.tex +++ /dev/null @@ -1,417 +0,0 @@ -%% cv.tex -%% 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 -% of this license or (at your option) any later version. -% The latest version of this license is in -% http://www.latex-project.org/lppl.txt -% and version 1.3 or later is part of all distributions of LaTeX -% version 2005/12/01 or later. -% -% Based on Jason R. Blevins's Curriculum Vitae template, -% Copyright (C) 2004-2016 Jason R. Blevins -% http://jblevins.org/ - -\documentclass[12pt,letterpaper]{article} - -\usepackage{hyperref} -\usepackage{geometry} -\usepackage{enumitem} -\usepackage{fancyhdr} -\usepackage{lastpage} -% To enable correct spacing -\usepackage{xspace} -\pagestyle{fancy} - -% Fonts -\usepackage{graphicx} -\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, Formal Logic, Model Checking, - Verification, Type Systems, Proof Systems, Interactive Provers, - Programming Languages, Functional Programming, Haskell, Rust}, - pdftitle = {\name: Curriculum Vitae}, - pdfsubject = {Curriculum Vitae}, - pdfpagemode = UseNone -} - -\geometry{ - body={6.5in, 9.0in}, - left=1.0in, - top=1.0in -} - -\pagestyle{fancy} -\fancyhf{}% to clear existing header/footer -\renewcommand\headrulewidth{0pt} -\cfoot{\vspace*{-.25em}\textsc{bandali cv --- page - \thepage \xspace of \pageref*{LastPage}}} - -% Custom section fonts -\usepackage{sectsty} -\sectionfont{\rmfamily\mdseries\Large} -\subsectionfont{\rmfamily\mdseries\itshape\large} - -% Other possible font commands include: -% \ttfamily for teletype, -% \sffamily for sans serif, -% \bfseries for bold, -% \scshape for small caps, -% \normalsize, \large, \Large, \LARGE sizes. - -% Don't indent paragraphs. -\setlength\parindent{0em} - -% Make lists without bullets and compact spacing -\renewenvironment{itemize}{ - \begin{list}{}{ - \setlength{\leftmargin}{1.5em} - \setlength{\itemsep}{0.25em} - \setlength{\parskip}{0pt} - \setlength{\parsep}{0.25em} - } -}{ - \end{list} -} -\setlist[enumerate]{itemsep=0.25em} - -\begin{document} - -\vspace*{-3em} - -% Place name at left -{\huge \name} - -% Alternatively, print name centered and bold: -%\centerline{\huge \bf \name} - -\medskip - -\begin{minipage}[t]{0.495\textwidth} - site: \href{\siteurl}{\site} \\ - email: \href{mailto:bandali@uwaterloo.ca}{bandali@uwaterloo.ca} \\ - phone: available upon request -\end{minipage} - -\vspace*{1em} - -\section*{Education} - -\begin{itemize} - \setlength\itemsep{.75em} - -\item {\large Master of Mathematics (Computer Science)}\, |\, {\small 2018--present} - - \textit{University of Waterloo}, Canada - - \begin{itemize} - \item Supervised by Dr. Nancy Day | GPA: 3.7/4.0 | Expected - completion: Winter 2020 - \item Research focusing on formal logic, model checking, and verification. - \end{itemize} - -\item {\large B.Sc. Honours Computer Science}\, |\, {\small 2013--2017} - - \textit{York University}, Toronto, Canada - - \begin{itemize} - \item GPA: 7.84/9.0 - \item Relevant courses: System Specification \amper\ - Refinement, Software Requirements Eng., Software Design, Operating - Systems, Computational Complexity, Design \amper\ Analysis of Algorithms. - \item Finished first year (2013-14) at \textit{Carleton University} with a GPA - of 11.0/12.0, then transferred to \textit{York University} in Fall 2014. - \end{itemize} - -\end{itemize} - -\section*{Publications} - -\begin{itemize} -\item {\large MoDRE 2018} - - \begin{itemize} - \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} - -\section*{Work \amper\ Research Experience} - -\begin{itemize} - -\item {\large Cheriton School of Computer Science, } University of Waterloo\, |\, {\small 2018--present} - - \textit{Instructional Apprentice (IA), Teaching Assistant (TA)} - - \begin{itemize} - \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} - - \textit{Teaching Assistant} - - \begin{itemize} - \item I was a TA for \textsf{\small EECS 1012}, Net-Centric - Introduction to Computing, taught by Dr. Brown. - \end{itemize} - - \pagebreak - -\item {\large Software Engineering Lab, } York University\, |\, {\small summer - 2017} - - \textit{Research Assistant} - - \begin{itemize} - \item I worked on an implementation of - \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 - large rational numbers. - \end{itemize} - -\item {\large Software Engineering Lab, } York University\, |\, {\small summer - 2016} - - \textit{Research Student} - - \begin{itemize} - \item As an undergraduate research student, I worked on \textit{Literate - Unit-B}, the verifier for Unit-B, a new formal method focused on formal - verification of reactive, concurrent and distributed systems. - - 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. 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. - - \item Further, I separated Literate Unit-B's type checker from its parser, - allowing easier substitution of other type checking algorithms and in - preparation for implementing subtyping. - \end{itemize} -\end{itemize} - -\section*{Conference Presentations} - -\begin{itemize} -\item {\large CUCSC 2017} - - \begin{itemize} - \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 Lassonde USSR Conference 2017} - - \begin{itemize} - \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} - -\section*{Professional Experience} -\begin{itemize} -\item {\large Lotek Wireless Inc., } Newmarket, Canada\, |\, {\small - summer 2015 \amper\ 2016} - - \textit{Software Developer} - - \begin{itemize} - \item Designed and implemented various applications in C\# and C to test and - analyze a satellite pass prediction algorithm for predicting the pass - windows of Argos satellites, for scheduling send times of data collected by - company's wildlife tracking products. - - \item Designed and developed an Employee Portal web application in C\# and the - MVC framework, used by employees for accessing various data catalogs and - archives. - \end{itemize} - \vspace{.25em} - -\pagebreak % TODO: remove if necessary - -\item {\large Athlete Builder, } Ottawa, Canada\, |\, {\small 2013--2014} - - \textit{Software Developer} - - \begin{itemize} - \item Developed the Backend of Athlete Builder platform in C\# and MVC. - \item Was a key role in development of the platform core. - \item Developed the alpha version of Athlete Builder Android app in Java. - \end{itemize} -\end{itemize} - -\section*{Volunteer Activities} - -\begin{itemize} - -\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 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} - -\item {\large VONICAL Inc., } Ottawa, Canada\, |\, {\small spring 2013} - - \textit{Application Developer} - - \begin{itemize} - \item As a volunteer, worked on development of EARN (Employment Accessibility - Resource Network) portal using the Anahita social networking platform, in - PHP under Linux. - \end{itemize} - \vspace{.25em} - -\item {\large Hire Works Inc., } Ottawa, Canada\, |\, {\small winter 2013} - - \textit{Mobile \& Web Developer} - - \begin{itemize} - \item As a volunteer, I worked on a variety of web and mobile projects for - Hire Works, Inc. - \end{itemize} - \vspace{.25em} - -\item {\large St. Brigid's Summer Camp, } Ottawa, Canada\, |\, {\small summer - 2012} - - \textit{Web Developer} - - \begin{itemize} - \item As a volunteer, I re-designed and coded (from scratch) an updated and - revamped version of the photo gallery section of St. Brigid Summer Camp's - website in PHP and JavaScript. A refactored version of my code is deployed - and being used. - \end{itemize} - % \vspace{.25em} - -\end{itemize} - - -\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}{\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 - \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.\\ - Source code available at - \href{https://github.com/unitb/tex2png-hs}{\texttt{https://github.com/unitb/tex2png-hs}} - -\item For more projects, visit my personal site at - \href{\siteurl}{\texttt{\siteurl}}. -\end{itemize} - -\section*{Miscellaneous} - -\begin{itemize} -\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} - - -% \section*{Achievements} - -% \begin{itemize} -% \item Was among the top 1\% incoming students in Carleton University's -% undergraduate Computer Science program, and a top student in the faculty of -% science. -% \item Highest standing in Computer Science in grade 11 (92\%) and grade 12 -% (100\%) at High school at Glebe~Collegiate~Institute. -% \item Ranked in the top 25\% in the Canadian Senior Mathematics Contest held by -% University of Waterloo, in 2013 (grade 11). -% \item Graduated from high school with an average of 95\%; and designated as an Ontario Scholar. -% \end{itemize} - - -% Footer -\bigskip -{\small Last updated: \today} - -\end{document} diff --git a/font/jost/Jost-100-Hairline.otf b/font/jost/Jost-100-Hairline.otf new file mode 100644 index 0000000..a7834f8 Binary files /dev/null and b/font/jost/Jost-100-Hairline.otf differ diff --git a/font/jost/Jost-100-HairlineItalic.otf b/font/jost/Jost-100-HairlineItalic.otf new file mode 100644 index 0000000..854573b Binary files /dev/null and b/font/jost/Jost-100-HairlineItalic.otf differ diff --git a/font/jost/Jost-200-Thin.otf b/font/jost/Jost-200-Thin.otf new file mode 100644 index 0000000..7e5f9f9 Binary files /dev/null and b/font/jost/Jost-200-Thin.otf differ diff --git a/font/jost/Jost-200-ThinItalic.otf b/font/jost/Jost-200-ThinItalic.otf new file mode 100644 index 0000000..c7d6734 Binary files /dev/null and b/font/jost/Jost-200-ThinItalic.otf differ diff --git a/font/jost/Jost-300-Light.otf b/font/jost/Jost-300-Light.otf new file mode 100644 index 0000000..faa3900 Binary files /dev/null and b/font/jost/Jost-300-Light.otf differ diff --git a/font/jost/Jost-300-LightItalic.otf b/font/jost/Jost-300-LightItalic.otf new file mode 100644 index 0000000..251450c Binary files /dev/null and b/font/jost/Jost-300-LightItalic.otf differ diff --git a/font/jost/Jost-400-Book.otf b/font/jost/Jost-400-Book.otf new file mode 100644 index 0000000..7abf6cf Binary files /dev/null and b/font/jost/Jost-400-Book.otf differ diff --git a/font/jost/Jost-400-BookItalic.otf b/font/jost/Jost-400-BookItalic.otf new file mode 100644 index 0000000..bef2b40 Binary files /dev/null and b/font/jost/Jost-400-BookItalic.otf differ diff --git a/font/jost/Jost-500-Medium.otf b/font/jost/Jost-500-Medium.otf new file mode 100644 index 0000000..a3a9d18 Binary files /dev/null and b/font/jost/Jost-500-Medium.otf differ diff --git a/font/jost/Jost-500-MediumItalic.otf b/font/jost/Jost-500-MediumItalic.otf new file mode 100644 index 0000000..587dff0 Binary files /dev/null and b/font/jost/Jost-500-MediumItalic.otf differ diff --git a/font/jost/Jost-600-Semi.otf b/font/jost/Jost-600-Semi.otf new file mode 100644 index 0000000..ac7b299 Binary files /dev/null and b/font/jost/Jost-600-Semi.otf differ diff --git a/font/jost/Jost-600-SemiItalic.otf b/font/jost/Jost-600-SemiItalic.otf new file mode 100644 index 0000000..edff7a9 Binary files /dev/null and b/font/jost/Jost-600-SemiItalic.otf differ diff --git a/font/jost/Jost-700-Bold.otf b/font/jost/Jost-700-Bold.otf new file mode 100644 index 0000000..0c7d675 Binary files /dev/null and b/font/jost/Jost-700-Bold.otf differ diff --git a/font/jost/Jost-700-BoldItalic.otf b/font/jost/Jost-700-BoldItalic.otf new file mode 100644 index 0000000..c3c6335 Binary files /dev/null and b/font/jost/Jost-700-BoldItalic.otf differ diff --git a/font/jost/Jost-800-Hevy.otf b/font/jost/Jost-800-Hevy.otf new file mode 100644 index 0000000..db5e0c1 Binary files /dev/null and b/font/jost/Jost-800-Hevy.otf differ diff --git a/font/jost/Jost-800-HevyItalic.otf b/font/jost/Jost-800-HevyItalic.otf new file mode 100644 index 0000000..d7fdca8 Binary files /dev/null and b/font/jost/Jost-800-HevyItalic.otf differ diff --git a/font/jost/Jost-900-Black.otf b/font/jost/Jost-900-Black.otf new file mode 100644 index 0000000..46b2cb8 Binary files /dev/null and b/font/jost/Jost-900-Black.otf differ diff --git a/font/jost/Jost-900-BlackItalic.otf b/font/jost/Jost-900-BlackItalic.otf new file mode 100644 index 0000000..7cb4b41 Binary files /dev/null and b/font/jost/Jost-900-BlackItalic.otf differ diff --git a/font/jost/LICENSE.md b/font/jost/LICENSE.md new file mode 100644 index 0000000..70a5f00 --- /dev/null +++ b/font/jost/LICENSE.md @@ -0,0 +1,79 @@ +SIL OPEN FONT LICENSE +===================== + +Version 1.1 - 26 February 2007 + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting — in part or in whole — any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +4) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/font/jost/README.md b/font/jost/README.md new file mode 100644 index 0000000..ddbbd00 --- /dev/null +++ b/font/jost/README.md @@ -0,0 +1,72 @@ +[Jost*](http://indestructible-type.github.io/Jost.html) +======== +![Jost* Picture](https://indestructibletype.com/assets/Jost-h.svg) +Jost* is an original font created by indestructible type*. It is inspired by +the 1920s German sans-serifs. This is version 3.5. + +Jost* is designed and maintained by [Owen Earl](https://ewonrael.github.io/), who is the creator of the font foundry [indestructible type*](http://indestructible-type.github.io). + +About +----- +During the 1920s there was a radical shift in German sans serif letterforms. A marriage between the +precise geometry of earlier German sans serifs with the clean legibility of the humanists coming out of +England, yielded a geometric sans serif that is so iconic that it still looks as futuristic and forward- +thinking as it did almost 100 years ago. Jost* is an ode to this era of type design. Instead of trying to +recreate it precisely, Jost* aims to capture the spirit, using the technologies of today. + +Jost* has 9 weights, ranging from Hairline to Black. It can support many languages, includes stylistic +alternatives, and both tabular and proportional numbers. Using Jost* on the web is as easy as copying a +line of code into your webpage and includes automatic updates. As of version 3.0, Jost* supports OpenType +Variable Font technology that allows users to control the exact weight and italic of the font. Best of all +Jost* is still being actively developed meaning it will continue to improve and future updates may include +features requested by you! [Visit the website for more information!](http://indestructibletype.com/Jost) + +![Jost* weights Picture](https://indestructibletype.com/Jost/weight.svg) + +Changelog +--------- +2.0 +Rebuilt from the ground up.
+2.1 +Added oe ligatures to support French, fixed some italics
+2.2 +Added alternative a, fixed some kerning, fixed overshoot in bolder weights, added thin version!
+2.3 +Fixed missing kerning information on Book, Medium, and Bold weights
+3.0 +Redesigned and rebuilt to work as an OpenType Variable Font. Added Hairline, Semi, and Heavy weights. Added tabular number alternatives. Improved language support. General fixing of things.
+3.1 +Fixed metadata and metric issues
+3.2 +Renamed font from "Renner\*" to "Jost\*" due to international intellectual property rights concerns. Fixed some kerning issues, added capital sharp S, added Polish glyphs. Minor design fixes.
+3.3 +Added optical compensation to italics. Added Czech support. Minor tweaks and fixes.
+3.4 +Added Cyrillic alphabet (Russian support). Fixed metadata issues and added Romanian support.
+3.5 +Added some math symbols. Improved letterforms. Improved GitHub repo. Added automated build.sh script. + +Web Use +------- +To use on your webpage, simply put the following line of code into the `` of the webpage you'd like to display Jost* and use `font-family: 'Jost';` in your css.
+`` + +Building the Variable Font. +--------------------------- +Jost* is licensed under the [SIL open type license](http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL), meaning that it is free to use and modify. However, because of the difficulty +associated with creating the OpenType Variable Font features, the compliled, functoning version of this font +requires a payment of $10 or more on the website. However, if you'd like to build this font yourself using +the source code, the follow the following instructions. + +1. Download the complete source code, either by cloning this repository or downloading the .zip file. + +2. Download and install:
+**fontmake** which can be found [here](https://github.com/googlei18n/fontmake)
+**gftools** which can be found [here](https://github.com/googlefonts/gftools)
+**ttfautohint** which can be found [here](https://www.freetype.org/ttfautohint/)
+ +3. Run the build.sh script located in the "scripts" folder. This should make both the variable and non-variable versions of the font. + +Contact +------- +If you have questions or want to help out, send me and email at indestructibletype@gmail.com diff --git a/fontspec.cfg b/fontspec.cfg new file mode 100644 index 0000000..7e601c2 --- /dev/null +++ b/fontspec.cfg @@ -0,0 +1,118 @@ +% fontspec.cfg --- fontspec configuration -*-latex-*- + +% Copyright (C) 2020 Amin Bandali + +% This file is part of bandali's cv. + +% This CV is free software: you can redistribute it and/or modify +% it under the terms of the GNU General Public License as published by +% the Free Software Foundation, either version 3 of the License, or +% (at your option) any later version. + +% This CV is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. + +% You should have received a copy of the GNU General Public License +% along with this CV. If not, see . + + +%% =================================================================== +%% Jost* +%% =================================================================== + +\defaultfontfeatures[Jost Hairline]{ + Extension = .otf, + Path = font/jost/, + UprightFont = Jost-100-Hairline, + BoldFont = Jost-500-Medium, + ItalicFont = Jost-100-HairlineItalic, + BoldItalicFont = Jost-500-MediumItalic +} + +\defaultfontfeatures[Jost Thin]{ + Extension = .otf, + Path = font/jost/, + UprightFont = Jost-200-Thin, + BoldFont = Jost-500-Medium, + ItalicFont = Jost-200-ThinItalic, + BoldItalicFont = Jost-500-MediumItalic +} + +\defaultfontfeatures[Jost Light]{ + Extension = .otf, + Path = font/jost/, + UprightFont = Jost-300-Light, + BoldFont = Jost-500-Medium, + ItalicFont = Jost-300-LightItalic, + BoldItalicFont = Jost-500-MediumItalic +} + +\defaultfontfeatures[Jost Book]{ + Extension = .otf, + Path = font/jost/, + UprightFont = Jost-400-Book, + BoldFont = Jost-500-Medium, + ItalicFont = Jost-400-BookItalic, + BoldItalicFont = Jost-500-MediumItalic +} + +\defaultfontfeatures[Jost]{ % same as Jost Book + Extension = .otf, + Path = font/jost/, + UprightFont = Jost-400-Book, + BoldFont = Jost-500-Medium, + ItalicFont = Jost-400-BookItalic, + BoldItalicFont = Jost-500-MediumItalic +} + +\defaultfontfeatures[Jost Regular]{ % same as Jost Book + Extension = .otf, + Path = font/jost/, + UprightFont = Jost-400-Book, + BoldFont = Jost-500-Medium, + ItalicFont = Jost-400-BookItalic, + BoldItalicFont = Jost-500-MediumItalic +} + +\defaultfontfeatures[Jost Medium]{ + Extension = .otf, + Path = font/jost/, + UprightFont = Jost-500-Medium, + BoldFont = Jost-600-Semi, + ItalicFont = Jost-500-MediumItalic, + BoldItalicFont = Jost-600-SemiItalic +} + +\defaultfontfeatures[Jost Semi]{ + Extension = .otf, + Path = font/jost/, + UprightFont = Jost-600-Semi, + BoldFont = Jost-700-Bold, + ItalicFont = Jost-600-SemiItalic, + BoldItalicFont = Jost-700-BoldItalic +} + +\defaultfontfeatures[Jost Bold]{ + Extension = .otf, + Path = font/jost/, + UprightFont = Jost-700-Bold, + BoldFont = Jost-800-Hevy, + ItalicFont = Jost-700-BoldItalic, + BoldItalicFont = Jost-800-HevyItalic +} + +\defaultfontfeatures[Jost Hevy]{ + Extension = .otf, + Path = font/jost/, + UprightFont = Jost-800-Hevy, + ItalicFont = Jost-800-HevyItalic +} + +\defaultfontfeatures[Jost Heavy]{ % same as Jost Hevy + Extension = .otf, + Path = font/jost/, + UprightFont = Jost-800-Hevy, + ItalicFont = Jost-800-HevyItalic +}