mirror of
https://github.com/asimonson1125/asimonson1125.github.io.git
synced 2026-02-25 05:09:49 -06:00
Added resume
This commit is contained in:
173
resume/README.md
Normal file
173
resume/README.md
Normal file
@@ -0,0 +1,173 @@
|
||||
# AltaCV, yet another LaTeX CV/Résumé class
|
||||
|
||||
v1.6.2 (28 Aug 2021), by LianTze Lim (liantze@gmail.com)
|
||||
|
||||
* Starred `\NewInfoField*` command to handle Mastodon; Icons, `\cvskills`, `\wheelchart` have "copyable" text values; `\cvskill` supports numerical values {0.5, 1, ..., 4.5, 5} on 21 May 2021
|
||||
* Moved `biblatex`-related code to `*.cfg` files for easier edit on 8 May 2021
|
||||
* Removed dependency on `academicons` on 12 Apr 2021
|
||||
* Clickable hyperlinked info fields added on 10 May 2020
|
||||
* Sample file with new `paracol` layout added on 2 February 2020
|
||||
|
||||
(Thanks to [Nur](https://github.com/nurh) for the name.)
|
||||
|
||||
It all started with this:
|
||||
|
||||
[<img src="tweet-that-started-this.png" width="500px">](https://twitter.com/Leonduck/status/764281546408923136)
|
||||
|
||||
Leonardo was talking about a [résumé of Marissa Mayer that Business Insider put together](http://www.businessinsider.my/a-sample-resume-for-marissa-mayer-2016-7/) using [enhancv.com](https://enhancv.com).
|
||||
I _knew_ I had to do something about it. And so AltaCV was born.
|
||||
|
||||
## Samples
|
||||
|
||||
This is how the re-created résumé looks like ([view/open on Overleaf](https://www.overleaf.com/latex/examples/recreating-business-insiders-cv-of-marissa-mayer-using-altacv/gtqfpbwncfvp)):
|
||||
|
||||
<img src="mmayer.png" alt="Marissa Mayer's résumé, re-created with AltaCV" width="600px">
|
||||
|
||||
Though if you're creating your own CV/résumé, you'd probably prefer using the basic template ([view/open on Overleaf](https://www.overleaf.com/latex/templates/altacv-template/trgqjpwnmtgv)):
|
||||
|
||||
<img src="sample.png" alt="sample barebones AltaCV template" width="600px">
|
||||
|
||||
|
||||
## Requirements and Compilation
|
||||
|
||||
* pdflatex + biber + pdflatex
|
||||
* AltaCV uses [`fontawesome5`](http://www.ctan.org/pkg/fontawesome5).
|
||||
* Use the `normalphoto` option to get normal (i.e. non-circular) photos.
|
||||
* As of v1.2 you can add multiple photos on the left or right: `\photoL{2cm}{logo1}` and `\photoR{2.5cm}{logo2,photo}`. (`\photo` will work like `\photoR`.) Separate your image filenames with commas _without_ spaces.
|
||||
* Use the `ragged2e` option to activate hyphenations while keeping text left-justified; line endings will thus be less jagged and more aesthetically pleasing.
|
||||
* As of v1.3 the `withhyper` document class option will make the "personal info" fields into clickable hyperlinks (where it makes sense). See below for more details.
|
||||
* Can now be compiled with pdflatex, XeLaTeX and LuaLaTeX!
|
||||
* Note that to compile with XeLaTeX, you should use a command line as follows, per [the `pdfx` documentation](http://mirrors.ctan.org/macros/latex/contrib/pdfx/pdfx.pdf): `xelatex -shell-escape -output-driver="xdvipdfmx -z 0" sample.tex`
|
||||
* The samples here use the [Lato](http://www.latofonts.com/lato-free-fonts/) and [Roboto Slab fonts](https://github.com/googlefonts/robotoslab). Feel free to use a different typeface package instead—often a different typeface will change the entire CV's feel.
|
||||
|
||||
## `sample.tex` [WAS `sample-alt.tex` 2 FEBRUARY 2020, DEFAULT SINCE 10 MAY 2020] ##
|
||||
Many users have overlooked the optional argument of `\cvsection` to insert the right sidebar contents, and often confused that the right sidebar doesn't automatically break across pages. This new layout uses the `paracol` package for typesetting the left and right columns that _can_ break across pages. It also makes changing the column widths easier:
|
||||
|
||||
```latex
|
||||
%% Set the left/right column width ratio to 6:4.
|
||||
\columnratio{0.6}
|
||||
|
||||
% Start a 2-column paracol. Both the left and right columns will automatically
|
||||
% break across pages if things get too long.
|
||||
\begin{paracol}{2}
|
||||
\cvsection{Experience}
|
||||
...
|
||||
... END OF LEFT COLUMN CONTENTS ...
|
||||
|
||||
% Now switch to the right column.
|
||||
\switchcolumn
|
||||
\cvsection{Education}
|
||||
...
|
||||
...END OF RIGHT COLUMN CONTENTS ...
|
||||
\end{paracol}
|
||||
```
|
||||
You can also use `\swithcolumn*` for "synchronising" the columns, as well as other commands from the `paracol` package. See the [`paracol` package documentation](http://texdoc.net/pkg/paracol) for further details.
|
||||
|
||||
**You do not need use the `fullwidth` environment nor use optional arguments with `\cvsection` with this new template.**
|
||||
|
||||
## Clickable Info fields
|
||||
|
||||
As of v1.3, the `withhyper` document class option will load the `hyperref` package, and make fields in the personal detail fields into clickable hyperlinks (where it makes sense anyway).
|
||||
|
||||
*BIG CAVEAT:* Remember that not all readers may want to click on hyperlinks in PDFs. You may therefore sometimes want to _remove_ `withhyper`, and spell out the field URL details a bit more completely, e.g. `\github{github.com/your-id}`.
|
||||
|
||||
Anyway assuming that you _do_ keep `withhyper` enabled: For each field e.g. `\homepage{foobar.com}`, a `\homepagesymbol` has been defined, and the clickable hyperlink is generated by prepending the `\homepagehyperprefix` to `foobar.com`. The `\homepgehyperprefix` is defined to be `\https://`, so this generates the hyperlink `https://foobar.com`.
|
||||
|
||||
If your homepage doesn't use HTTPS yet, or if you want to use a different symbol, you can re-define them with
|
||||
```latex
|
||||
\renewcommand{\homepagehyperprefix}{http://}
|
||||
\renewcommand{\homepagesymbol}{\faLink}
|
||||
```
|
||||
|
||||
|
||||
## New Information Fields ####
|
||||
|
||||
I've decided against adding definitions for too many fields and symbols in the `.cls` itself; otherwise we'll have all possible platforms in the world (and more services are born everyday!) within `altacv.cls` before we know it.
|
||||
|
||||
You can actually just typeset your own arbitrary information fields using the `\printinfo{symbol}{detail}[optional hyperlink prefix]` command within `\personalinfo`:
|
||||
|
||||
````latex
|
||||
\printinfo{\faPaw}{Hey ho!}
|
||||
\printinfo{\faGitLab}{your-handle}[https://gitlab.com/]
|
||||
````
|
||||
|
||||
Or if you really prefer, you can define a new field yourself with `\NewInfoFiled{fieldname}{symbol}[optional hyperlink prefix]` before using it:
|
||||
|
||||
````latex
|
||||
\NewInfoField{gitlab}{\faGitlab}[https://gitlab.com/]
|
||||
\gitlab{your_id}
|
||||
````
|
||||
|
||||
For services and platforms like Mastodon where there isn't a straightforward relation between the more popular user ID or nickname and the hyperlink, you can use `\printinfo` directly e.g.
|
||||
|
||||
```latex
|
||||
\printinfo{\faMastodon}{@username@instace}[https://instance.url/@username]
|
||||
```
|
||||
|
||||
But if you absolutely want to create new dedicated info fields for such platforms, then use `\NewInfoField*` with a star:
|
||||
|
||||
```latex
|
||||
\NewInfoField*{mastodon}{\faMastodon}
|
||||
```
|
||||
|
||||
then you can use `\mastodon` with TWO arguments where the 2nd argument is the full hyperlink.
|
||||
|
||||
```latex
|
||||
\mastodon{@username@instance}{https://instance.url/@username}
|
||||
```
|
||||
|
||||
|
||||
## Configurable colours
|
||||
|
||||
Use `\colorlet` or `\definecolor` to change these.
|
||||
* `accent`
|
||||
* `emphasis`
|
||||
* `heading`
|
||||
* `headingrule`
|
||||
* `subheading`
|
||||
* `body`
|
||||
* `name`
|
||||
* `tagline`
|
||||
|
||||
## Configurable fonts
|
||||
|
||||
Use `\renewcommand` to change these.
|
||||
* `\namefont`
|
||||
* `\taglinefont`
|
||||
* `\personalinfofont`
|
||||
* `\cvsectionfont`
|
||||
* `\cvsubsectionfont`
|
||||
|
||||
---
|
||||
|
||||
## `legacy/sample-old.tex`
|
||||
|
||||
This is the original sample template file until 5 May 2020. The right sidebar is actually a _`marginpar`_, so it doesn't support footnote and cannot automatically break across pages if it's too long. You would need to split your right sidebar contents into separate files e.g. `p1sidebar.tex` and `p2sidebar.tex`, and insert them as the optional argument of the `\cvsection{...}` that you want to align them with:
|
||||
|
||||
```latex
|
||||
\cvsection[p1sidebar]{Experience}
|
||||
...
|
||||
... END OF FIRST PAGE OF YOUR CV ...
|
||||
\cvsection[page2sidebar]{Publications}
|
||||
...
|
||||
```
|
||||
|
||||
This assumes that the next page's main column would start immediately with a `\cvsection`, so that the top of your right sidebar contents also appear at the top of the page. Now if the _next_ page doesn't start with a `\cvsection` but you'd still like to add a sidebar, then use this command on the _current_ page to add it. The optional argument lets you pull up the sidebar a bit so that it looks aligned with the top of the main column:
|
||||
|
||||
```latex
|
||||
\addnextpagesidebar[-1ex]{page3sidebar}
|
||||
```
|
||||
|
||||
If you want to change the left and right columns' widths, you'll need to tinker with the `right` (distance from paper's right edge until the main column's right edge) and `marginparwidth` (width of the right sidebar) options in the `\geometry` line. For example, to make the right sidebar wider by 2cm, you could use
|
||||
|
||||
```latex
|
||||
%% original was right=9cm, marginparwidth=6.8cm
|
||||
\geometry{left=1cm,right=11cm,marginparwidth=8.8cm,marginparsep=1.2cm,top=1cm,bottom=1cm}
|
||||
```
|
||||
as well as doing a bit of arithmetic when you're making the header to get it full-width, i.e. reducing the sidebar by 2cm and extending the main column by 2cm.
|
||||
|
||||
```latex
|
||||
\begin{adjustwidth}{}{-10cm} %% original was -8cm
|
||||
\makecvheader
|
||||
\end{adjustwidth}
|
||||
```
|
||||
440
resume/altacv.cls
Normal file
440
resume/altacv.cls
Normal file
@@ -0,0 +1,440 @@
|
||||
%%%%%%%%%%%%%%%%%
|
||||
% This is altacv.cls (v1.6.1, 22 Aug 2021) written by
|
||||
% LianTze Lim (liantze@gmail.com).
|
||||
%
|
||||
%% It 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 2003/12/01 or later.
|
||||
%%
|
||||
%%
|
||||
% Contributions:
|
||||
% - https://github.com/akreuzer Added ragged2e option (5 Nov 2018)
|
||||
% - https://github.com/stefanogermano Fixed bad boxes and undefined font shape (July 2018)
|
||||
% - https://github.com/foohyfooh Fixed blank spaces in \cvevent and bad link in README.md (June 2018)
|
||||
% - https://github.com/logological Remove redundant hyperref and typos (Apr 2021)
|
||||
|
||||
%%%%%%%%%%%%%%%%
|
||||
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
|
||||
\ProvidesClass{altacv}[2021/08/28 AltaCV v1.6.2, yet another alternative class for a resume/curriculum vitae.]
|
||||
|
||||
%% v1.1: Optionally load academicons
|
||||
%% v1.4: Nope, academicons is unnecessary; fontawesome5 has \faOrcid.
|
||||
\DeclareOption{academicons}{\ClassWarning{altacv}{academicons option is now obsolete and unnecessary.}}
|
||||
%% v1.1.3: Choice of round/square photo
|
||||
\newif\if@normalphoto
|
||||
\DeclareOption{normalphoto}{\@normalphototrue}
|
||||
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{extarticle}}
|
||||
\newif\if@raggedtwoe
|
||||
\DeclareOption{ragged2e}{\@raggedtwoetrue}
|
||||
%% v1.3: load hyperref for clickable hyperlinks
|
||||
\newif\if@withhyper
|
||||
\DeclareOption{withhyper}{\@withhypertrue}
|
||||
\ProcessOptions\relax
|
||||
|
||||
\LoadClass{article}
|
||||
%% v1.3.2 Hopefully this helps make the PDF
|
||||
%% file more 'friendly' with copy-paste etc
|
||||
%% v 1.6.1 Temporary fix for pdfx incompatibility; see https://tex.stackexchange.com/a/610445
|
||||
\RequirePackage{etoolbox}
|
||||
\@ifl@t@r\fmtversion{2021-06-01}%
|
||||
{\AddToHook{package/after/xmpincl}
|
||||
{\patchcmd\mcs@xmpincl@patchFile{\if\par}{\ifx\par}{}{\fail}}}{}
|
||||
\RequirePackage[a-1b]{pdfx}
|
||||
%% v1.3.3 Temporary fix for pdfx and biblatex incompatibility
|
||||
%% (Thanks to @badetitou for highlighting this issue)
|
||||
%% https://github.com/plk/biblatex/issues/1044
|
||||
%% Will be removed when fix is released in biblatex 3.16
|
||||
% \catcode30=12
|
||||
\RequirePackage{accsupp}
|
||||
\RequirePackage[margin=2cm]{geometry}
|
||||
\RequirePackage[fixed]{fontawesome5}
|
||||
\RequirePackage{ifxetex,ifluatex}
|
||||
\RequirePackage{scrlfile}
|
||||
\RequirePackage{xparse}
|
||||
|
||||
%% v1.1.5: added for convenience
|
||||
\newif\ifxetexorluatex
|
||||
\ifxetex
|
||||
\xetexorluatextrue
|
||||
\else
|
||||
\ifluatex
|
||||
\xetexorluatextrue
|
||||
\else
|
||||
\xetexorluatexfalse
|
||||
\fi
|
||||
\fi
|
||||
|
||||
\ifxetexorluatex
|
||||
\RequirePackage{fontspec}
|
||||
\else
|
||||
%% v1.3.2 attempts to make ligatures
|
||||
%% copy-paste as normal characters
|
||||
\RequirePackage{cmap}
|
||||
\RequirePackage[utf8]{inputenc}
|
||||
\RequirePackage[T1]{fontenc}
|
||||
\input{glyphtounicode}
|
||||
\pdfglyphtounicode{f_f}{FB00}
|
||||
\pdfglyphtounicode{f_f_i}{FB03}
|
||||
\pdfglyphtounicode{f_f_l}{FB04}
|
||||
\pdfglyphtounicode{f_i}{FB01}
|
||||
\pdfgentounicode=1
|
||||
\fi
|
||||
|
||||
\if@raggedtwoe
|
||||
\RequirePackage[newcommands]{ragged2e}
|
||||
\fi
|
||||
|
||||
\if@withhyper
|
||||
\AtBeginDocument{%
|
||||
\hypersetup{hidelinks}
|
||||
\urlstyle{same}
|
||||
}
|
||||
\fi
|
||||
|
||||
\RequirePackage{xcolor}
|
||||
|
||||
\colorlet{accent}{blue!70!black}
|
||||
\colorlet{emphasis}{black}
|
||||
\colorlet{heading}{black}
|
||||
\colorlet{headingrule}{black}
|
||||
\colorlet{subheading}{emphasis}
|
||||
\colorlet{body}{black!80!white}
|
||||
\colorlet{name}{heading}
|
||||
\colorlet{tagline}{accent}
|
||||
\newcommand{\itemmarker}{{\small\textbullet}}
|
||||
\newcommand{\ratingmarker}{\faCircle}
|
||||
|
||||
\RequirePackage{tikz}
|
||||
\usetikzlibrary{arrows}
|
||||
\RequirePackage[skins]{tcolorbox}
|
||||
\RequirePackage[inline]{enumitem}
|
||||
\setlist{leftmargin=*,labelsep=0.5em,nosep,itemsep=0.25\baselineskip,after=\vspace{0.25\baselineskip}}
|
||||
\setlist[itemize]{label=\itemmarker}
|
||||
\RequirePackage{graphicx}
|
||||
\RequirePackage{trimclip}
|
||||
\RequirePackage{dashrule}
|
||||
\RequirePackage{multirow,tabularx}
|
||||
\RequirePackage{changepage}
|
||||
% \RequirePackage{marginfix}
|
||||
|
||||
\setlength{\parindent}{0pt}
|
||||
\newcommand{\divider}{\textcolor{body!30}{\hdashrule{\linewidth}{0.6pt}{0.5ex}}\medskip}
|
||||
|
||||
\newenvironment{fullwidth}{%
|
||||
\begin{adjustwidth}{}{\dimexpr-\marginparwidth-\marginparsep\relax}}
|
||||
{\end{adjustwidth}}
|
||||
|
||||
%% v1.3.1 \detokenize will break UTF-8 in pdflatex
|
||||
%% Using alternative from https://tex.stackexchange.com/a/530911/226
|
||||
\newcommand{\utffriendlydetokenize}[1]{%
|
||||
\scantokens{%
|
||||
\catcode`\_=12%
|
||||
% \catcode`\^=12%
|
||||
% \catcode`\{=12%
|
||||
% \catcode`\}=12%
|
||||
\catcode`\&=12%
|
||||
\catcode`\$=12%
|
||||
\catcode`\#=12%
|
||||
\catcode`\~=12%
|
||||
% \catcode`\\=12%
|
||||
{#1}%
|
||||
}%
|
||||
}
|
||||
%% v1.3: Incorporating hyperlinks
|
||||
%% v1.3.1: using \unfriendlydetokenize to avoid breaking unicode
|
||||
%% v1.6: Use accsupp so that when copying/pasting the icon from PDF to a text
|
||||
%% file, the icon name is pasted
|
||||
\ExplSyntaxOn
|
||||
\NewDocumentCommand{\printinfo}{m m o}{%
|
||||
\BeginAccSupp{method=escape,ActualText={#1:~#2}}
|
||||
\IfNoValueTF{#3}{%
|
||||
\mbox{\textcolor{accent}{\normalfont #1}~\utffriendlydetokenize{#2}\hspace{2em}}%
|
||||
}{%
|
||||
\if@withhyper%
|
||||
\mbox{\textcolor{accent}{\normalfont #1}~
|
||||
\href{#3}{\utffriendlydetokenize{#2}}\hspace{2em}}
|
||||
\else%
|
||||
\ClassWarning{Please specify [withhyper] option to enable hyperlinks. Printing out full hyperlink prefix #1 for now.}%
|
||||
\mbox{\textcolor{accent}{\normalfont #1}~{\utffriendlydetokenize{#3#2}}\hspace{2em}}%
|
||||
\fi%
|
||||
}%
|
||||
\EndAccSupp{}
|
||||
}%
|
||||
|
||||
|
||||
%% v1.3: Exploring convenient creation of fields
|
||||
%% v1.6: Add starred mode to create \printinfo with full URL
|
||||
\NewDocumentCommand{\NewInfoField}{s m m o}{%
|
||||
\IfBooleanF{#1}{
|
||||
\IfNoValueF{#4}{\csdef{#2 hyperprefix}{#4}}%
|
||||
}
|
||||
\csdef{#2 symbol}{#3}%
|
||||
\IfBooleanTF{#1}
|
||||
{ \csdef{#2}##1##2{%
|
||||
\if@withhyper
|
||||
\IfNoValueTF {##2}
|
||||
{\printinfo{\csuse{#2 symbol}}{##1}}%
|
||||
{\printinfo{\csuse{#2 symbol}}{##1}[##2]}%
|
||||
\else
|
||||
\printinfo{\csuse{#2 symbol}}{##1}%
|
||||
\fi%
|
||||
}%
|
||||
}
|
||||
{ \csdef{#2}##1{%
|
||||
\if@withhyper
|
||||
\IfNoValueTF {#4}
|
||||
{\printinfo{\csuse{#2 symbol}}{##1}}%
|
||||
{\printinfo{\csuse{#2 symbol}}{##1}[\csuse{#2 hyperprefix}##1]}%
|
||||
\else
|
||||
\printinfo{\csuse{#2 symbol}}{##1}%
|
||||
\fi%
|
||||
}%
|
||||
}
|
||||
}
|
||||
\ExplSyntaxOff
|
||||
|
||||
\newcommand{\name}[1]{\def\@name{#1}}
|
||||
\newcommand{\tagline}[1]{\def\@tagline{#1}}
|
||||
\newcommand{\personalinfo}[1]{\def\@personalinfo{#1}}
|
||||
\NewInfoField{email}{\faAt}[mailto:]
|
||||
\NewInfoField{mailaddress}{\faEnvelope}
|
||||
\NewInfoField{phone}{\faPhone}[tel:]
|
||||
\NewInfoField{homepage}{\faGlobe}[https://]
|
||||
\NewInfoField{twitter}{\faTwitter}[https://twitter.com/]
|
||||
\NewInfoField{linkedin}{\faLinkedin}[https://linkedin.com/in/]
|
||||
\NewInfoField{github}{\faGithub}[https://github.com/]
|
||||
\NewInfoField{githubProject}{\faGithub}[https://github.com/asimonson1125/]
|
||||
% v1.?? Use fontawesome5 for Orcid symbol
|
||||
\NewInfoField{orcid}{\faOrcid}[https://orcid.org/]
|
||||
\NewInfoField{location}{\faMapMarker}
|
||||
|
||||
% v1.2: Support for multiple photos
|
||||
\newlength{\altacv@photos@width}
|
||||
\newlength{\altacv@photo@diam@left}
|
||||
\newlength{\altacv@photo@diam@right}
|
||||
\def\altacv@left@photos{}
|
||||
\def\altacv@right@photos{}
|
||||
|
||||
\newcommand{\@makeaphoto}[2]{%
|
||||
\begin{minipage}{#1}%
|
||||
\if@normalphoto
|
||||
\includegraphics[width=\linewidth]{#2}
|
||||
\else
|
||||
\tikz\path[fill overzoom image={#2}]circle[radius=0.5\linewidth];
|
||||
\fi%
|
||||
\end{minipage}%
|
||||
}
|
||||
|
||||
\newcommand{\altacv@add@photo@left}[1]{%
|
||||
\appto{\altacv@left@photos}{%
|
||||
\@makeaphoto{\altacv@photo@diam@left}{#1}\hspace{1ex}%
|
||||
}%
|
||||
\addtolength{\altacv@photos@width}{\altacv@photo@diam@left}%
|
||||
\addtolength{\altacv@photos@width}{1ex}%
|
||||
}
|
||||
\newcommand{\altacv@add@photo@right}[1]{%
|
||||
\appto{\altacv@right@photos}{%
|
||||
\@makeaphoto{\altacv@photo@diam@right}{#1}\hspace{1ex}%
|
||||
}%
|
||||
\addtolength{\altacv@photos@width}{\altacv@photo@diam@right}%
|
||||
\addtolength{\altacv@photos@width}{1ex}%
|
||||
}
|
||||
\newcommand{\photoL}[2]{%
|
||||
\setlength{\altacv@photo@diam@left}{#1}%
|
||||
\forcsvlist{\altacv@add@photo@left}{#2}%
|
||||
}
|
||||
\newcommand{\photoR}[2]{%
|
||||
\setlength{\altacv@photo@diam@right}{#1}%
|
||||
\forcsvlist{\altacv@add@photo@right}{#2}%
|
||||
}
|
||||
\let\photo\photoR
|
||||
|
||||
\newcommand{\namefont}{\Huge\bfseries}
|
||||
\newcommand{\taglinefont}{\large\bfseries}
|
||||
\newcommand{\personalinfofont}{\footnotesize\bfseries}
|
||||
\newcommand{\cvsectionfont}{\LARGE\bfseries}
|
||||
\newcommand{\cvsubsectionfont}{\large\bfseries}
|
||||
|
||||
\newcommand{\makecvheader}{%
|
||||
\begingroup
|
||||
\altacv@left@photos\hfill%
|
||||
\begin{minipage}{\dimexpr\linewidth-\altacv@photos@width}%
|
||||
\raggedright%
|
||||
{\namefont\color{name}\MakeUppercase{\@name}\par}
|
||||
\medskip
|
||||
{\taglinefont\color{tagline}\@tagline\par}
|
||||
\medskip
|
||||
{\personalinfofont\@personalinfo\par}
|
||||
\end{minipage}\hfill%
|
||||
\altacv@right@photos\par%
|
||||
\endgroup\medskip
|
||||
}
|
||||
|
||||
\renewenvironment{quote}{\color{accent}\itshape\large}{\par}
|
||||
|
||||
\newcommand{\cvsection}[2][]{%
|
||||
\nointerlineskip\bigskip% %% bugfix in v1.6.2
|
||||
\ifstrequal{#1}{}{}{\marginpar{\vspace*{\dimexpr1pt-\baselineskip}\raggedright\input{#1}}}%
|
||||
{\color{heading}\cvsectionfont\MakeUppercase{#2}}\\[-1ex]%
|
||||
{\color{headingrule}\rule{\linewidth}{2pt}\par}\medskip
|
||||
}
|
||||
|
||||
\newcommand{\cvsubsection}[1]{%
|
||||
\smallskip%
|
||||
{\color{subheading}\cvsubsectionfont{#1}\par}\medskip
|
||||
}
|
||||
|
||||
% v1.1.4: fixes inconsistent font size
|
||||
\newcommand{\cvevent}[4]{%
|
||||
{\large\color{emphasis}#1\par}
|
||||
\smallskip\normalsize
|
||||
\ifstrequal{#2}{}{}{
|
||||
\textbf{\color{accent}#2}\par
|
||||
\smallskip}
|
||||
\ifstrequal{#3}{}{}{{\small\makebox[0.5\linewidth][l]{\faCalendar~#3}}}%
|
||||
\ifstrequal{#4}{}{}{{\small\makebox[0.5\linewidth][l]{\faMapMarker~#4}}}\par
|
||||
\medskip\normalsize
|
||||
}
|
||||
|
||||
\newcommand{\cvproject}[2]{%
|
||||
{\large\color{emphasis}#1}
|
||||
\medskip\normalsize
|
||||
{\color{accent}\hspace{.1in}$|$\hspace{.05in}#2}\par
|
||||
\normalsize
|
||||
}
|
||||
|
||||
\newcommand{\cvactivity}[5]{%
|
||||
{\large\color{emphasis}#1}
|
||||
\medskip\normalsize
|
||||
{\color{accent}\hspace{.1in}#2\hspace{.05in}#3}\par
|
||||
\smallskip
|
||||
\ifstrequal{#4}{}{}{{\small\makebox[0.5\linewidth][l]{\faCalendar~#5}}}
|
||||
\ifstrequal{#4}{}{}{{\small\makebox[0.5\linewidth][l]{\faMapMarker~#4}}}\par
|
||||
\medskip\normalsize
|
||||
}
|
||||
|
||||
\newcommand{\cvachievement}[3]{%
|
||||
\begin{tabularx}{\linewidth}{@{}p{2em} @{\hspace{1ex}} >{\raggedright\arraybackslash}X@{}}
|
||||
\multirow{2}{*}{\Large\color{accent}#1} & \bfseries\textcolor{emphasis}{#2}\\
|
||||
& #3
|
||||
\end{tabularx}%
|
||||
\smallskip
|
||||
}
|
||||
|
||||
\newcommand{\cveventShort}[4]{%
|
||||
{\large\color{emphasis}#1\par}
|
||||
\smallskip\normalsize
|
||||
\ifstrequal{#2}{}{}{
|
||||
\textbf{\color{accent}#2}\par
|
||||
\smallskip}
|
||||
\ifstrequal{#3}{}{}{{\small\makebox[0.5\linewidth][l]{\faCalendar~#3}}}\\
|
||||
\ifstrequal{#4}{}{}{{\small\makebox[0.5\linewidth][l]{\faMapMarker~#4}}}\par
|
||||
\medskip\normalsize
|
||||
}
|
||||
|
||||
\newcommand{\cvtag}[1]{%
|
||||
\tikz[baseline]\node[anchor=base,draw=body!30,rounded corners,inner xsep=1ex,inner ysep =0.75ex,text height=1.5ex,text depth=.25ex]{#1};
|
||||
}
|
||||
|
||||
% v1.6: Use accsupp so that the actual numeric value is copied/pasted
|
||||
% and also support 0.5, 1.5, 2.5, 3.5, 4.5
|
||||
\newcommand{\cvskill}[2]{%
|
||||
\textcolor{emphasis}{\textbf{#1}}\hfill
|
||||
\BeginAccSupp{method=plain,ActualText={#2}}
|
||||
\foreach \x in {1,...,5}{%
|
||||
\ifdimequal{\x pt - #2 pt}{0.5pt}%
|
||||
{\clipbox*{0pt -0.25ex {.5\width} {\totalheight}}{\color{accent}\ratingmarker}%
|
||||
\clipbox*{{.5\width} -0.25ex {\width} {\totalheight}}{\color{body!30}\ratingmarker}}
|
||||
{\ifdimgreater{\x bp}{#2 bp}{\color{body!30}}{\color{accent}}\ratingmarker}%
|
||||
}\EndAccSupp{}\par%
|
||||
}
|
||||
|
||||
% Adapted from @Jake's answer at http://tex.stackexchange.com/a/82729/226
|
||||
\newcommand{\wheelchart}[4][0]{%
|
||||
\begingroup\centering
|
||||
\def\innerradius{#3}%
|
||||
\def\outerradius{#2}%
|
||||
% Calculate total
|
||||
\pgfmathsetmacro{\totalnum}{0}%
|
||||
\foreach \value/\colour/\name in {#4} {%
|
||||
\pgfmathparse{\value+\totalnum}%
|
||||
\global\let\totalnum=\pgfmathresult%
|
||||
}%
|
||||
\begin{tikzpicture}
|
||||
|
||||
% Calculate the thickness and the middle line of the wheel
|
||||
\pgfmathsetmacro{\wheelwidth}{\outerradius-\innerradius}
|
||||
\pgfmathsetmacro{\midradius}{(\outerradius+\innerradius)/2}
|
||||
\pgfmathsetmacro{\totalrot}{-90 + #1}
|
||||
|
||||
% Rotate so we start from the top
|
||||
\begin{scope}[rotate=\totalrot]
|
||||
|
||||
% Loop through each value set. \cumnum keeps track of where we are in the wheel
|
||||
\pgfmathsetmacro{\cumnum}{0}
|
||||
\foreach \value/\width/\colour/\name in {#4} {
|
||||
\pgfmathsetmacro{\newcumnum}{\cumnum + \value/\totalnum*360}
|
||||
|
||||
% Calculate the percent value
|
||||
\pgfmathsetmacro{\percentage}{\value/\totalnum*100}
|
||||
% Calculate the mid angle of the colour segments to place the labels
|
||||
\pgfmathsetmacro{\midangle}{-(\cumnum+\newcumnum)/2}
|
||||
|
||||
% This is necessary for the labels to align nicely
|
||||
\pgfmathparse{
|
||||
(-\midangle>180?"west":"east")
|
||||
} \edef\textanchor{\pgfmathresult}
|
||||
\pgfmathparse{
|
||||
(-\midangle>180?"flush left":"flush right")
|
||||
} \edef\textalign{\pgfmathresult}
|
||||
\pgfmathsetmacro\labelshiftdir{1-2*(-\midangle<180)}
|
||||
|
||||
% Draw the color segments. Somehow, the \midrow units got lost, so we add 'pt' at the end. Not nice...
|
||||
\filldraw[draw=white,fill=\colour] (-\cumnum:\outerradius) arc (-\cumnum:-(\newcumnum):\outerradius) --
|
||||
(-\newcumnum:\innerradius) arc (-\newcumnum:-(\cumnum):\innerradius) -- cycle;
|
||||
|
||||
% Draw the data labels
|
||||
% v1.6: Use accsupp so that the numeric number is copied/pasted too
|
||||
\draw [*-,thin,emphasis] node [append after command={(\midangle:\midradius pt) -- (\midangle:\outerradius + 1ex) -- (\tikzlastnode)}] at (\midangle:\outerradius + 1ex) [xshift=\labelshiftdir*0.5cm,inner sep=1ex, outer sep=0pt, text width=\width,anchor=\textanchor,align=\textalign,font=\small,text=body]{\BeginAccSupp{method=pdfstringdef,ActualText={\name: \value}}\name\EndAccSupp{}};
|
||||
% Set the old cumulated angle to the new value
|
||||
\global\let\cumnum=\newcumnum
|
||||
}
|
||||
\end{scope}
|
||||
% \draw[gray] (0,0) circle (\outerradius) circle (\innerradius);
|
||||
\end{tikzpicture}\par
|
||||
\endgroup
|
||||
}
|
||||
|
||||
\newcommand{\cvref}[3]{%
|
||||
\smallskip
|
||||
\textcolor{emphasis}{\textbf{#1}}\par
|
||||
\begin{description}[font=\color{accent},style=multiline,leftmargin=1.35em,align=left]
|
||||
\item[\small\normalfont\emailsymbol] #2
|
||||
\item[\small\normalfont\mailaddresssymbol] #3
|
||||
\end{description}
|
||||
% \medskip
|
||||
}
|
||||
|
||||
\newenvironment{cvcolumn}[1]{\begin{minipage}[t]{#1}\raggedright}{\end{minipage}}
|
||||
|
||||
% v1.5 Move biblatex-related code to separate .cfg file
|
||||
% so that it's easier to change and customise the style for
|
||||
% publication lists
|
||||
|
||||
% v1.1.2: make it easier to add a sidebar aligned with top of next page
|
||||
\RequirePackage{afterpage}
|
||||
\newcommand{\addsidebar}[2][]{\marginpar{%
|
||||
\ifstrequal{#1}{}{}{\vspace*{#1}}%
|
||||
\input{#2}}%
|
||||
}
|
||||
\newcommand{\addnextpagesidebar}[2][]{\afterpage{\addsidebar[#1]{#2}}}
|
||||
|
||||
\AtBeginDocument{%
|
||||
\pagestyle{empty}
|
||||
\color{body}
|
||||
\raggedright
|
||||
}
|
||||
222
resume/main.tex
Normal file
222
resume/main.tex
Normal file
@@ -0,0 +1,222 @@
|
||||
%%%%%%%%%%%%%%%%%
|
||||
% This is an sample CV template created using altacv.cls
|
||||
% (v1.6, 21 May 2021) written by LianTze Lim (liantze@gmail.com). Now compiles with pdfLaTeX, XeLaTeX and LuaLaTeX.
|
||||
%
|
||||
%% It 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 2003/12/01 or later.
|
||||
%%%%%%%%%%%%%%%%
|
||||
|
||||
%% Use the "normalphoto" option if you want a normal photo instead of cropped to a circle
|
||||
% \documentclass[10pt,a4paper,normalphoto]{altacv}
|
||||
|
||||
\documentclass[10pt,a4paper,ragged2e,withhyper]{altacv}
|
||||
%% AltaCV uses the fontawesome5 and packages.
|
||||
%% See http://texdoc.net/pkg/fontawesome5 for full list of symbols.
|
||||
|
||||
% Change the page layout if you need to
|
||||
\geometry{left=1.25cm,right=1.25cm,top=1.5cm,bottom=1.5cm,columnsep=1.2cm}
|
||||
|
||||
% The paracol package lets you typeset columns of text in parallel
|
||||
\usepackage{paracol}
|
||||
|
||||
% Change the font if you want to, depending on whether
|
||||
% you're using pdflatex or xelatex/lualatex
|
||||
\ifxetexorluatex
|
||||
% If using xelatex or lualatex:
|
||||
\setmainfont{Roboto Slab}
|
||||
\setsansfont{Lato}
|
||||
\renewcommand{\familydefault}{\sfdefault}
|
||||
\else
|
||||
% If using pdflatex:
|
||||
\usepackage[rm]{roboto}
|
||||
\usepackage[defaultsans]{lato}
|
||||
% \usepackage{sourcesanspro}
|
||||
\renewcommand{\familydefault}{\sfdefault}
|
||||
\fi
|
||||
|
||||
% Change the colours if you want to
|
||||
\definecolor{SlateGrey}{HTML}{2E2E2E}
|
||||
\definecolor{LightGrey}{HTML}{666666}
|
||||
\definecolor{DarkPastelRed}{HTML}{450808}
|
||||
\definecolor{PastelRed}{HTML}{8F0D0D}
|
||||
\definecolor{GoldenEarth}{HTML}{E7D192}
|
||||
\colorlet{name}{black}
|
||||
\colorlet{tagline}{PastelRed}
|
||||
\colorlet{heading}{DarkPastelRed}
|
||||
\colorlet{headingrule}{GoldenEarth}
|
||||
\colorlet{subheading}{PastelRed}
|
||||
\colorlet{accent}{PastelRed}
|
||||
\colorlet{emphasis}{SlateGrey}
|
||||
\colorlet{body}{LightGrey}
|
||||
|
||||
% Change some fonts, if necessary
|
||||
\renewcommand{\namefont}{\Huge\rmfamily\bfseries}
|
||||
\renewcommand{\personalinfofont}{\footnotesize}
|
||||
\renewcommand{\cvsectionfont}{\LARGE\rmfamily\bfseries}
|
||||
\renewcommand{\cvsubsectionfont}{\large\bfseries}
|
||||
|
||||
% Change the bullets for itemize and rating marker
|
||||
% for \cvskill if you want to
|
||||
\renewcommand{\itemmarker}{{\small\textbullet}}
|
||||
\renewcommand{\ratingmarker}{\faCircle}
|
||||
%% Use (and optionally edit if necessary) this .tex if you
|
||||
%% want to use an author-year reference style like APA(6)
|
||||
%% for your publication list
|
||||
\input{pubs-authoryear}
|
||||
|
||||
%% Use (and optionally edit if necessary) this .tex if you
|
||||
%% want an originally numerical reference style like IEEE
|
||||
%% for your publication list
|
||||
% \input{pubs-num}
|
||||
|
||||
%% sample.bib contains your publications
|
||||
\addbibresource{sample.bib}
|
||||
\begin{document}
|
||||
\name{Andrew Simonson}
|
||||
\tagline{Seeking co-op or internship in data science or similar field for the summer of 2022}
|
||||
%% You can add multiple photos on the left or right
|
||||
% \photoL{2.5cm}{Yacht_High,Suitcase_High}
|
||||
|
||||
\personalinfo{%
|
||||
% Not all of these are required!
|
||||
\email{asimonson1125@gmail.com}
|
||||
\phone{(240)-707-1486}
|
||||
\homepage{asimonson1125.github.io}
|
||||
\linkedin{simonsonandrew}
|
||||
\github{asimonson1125}
|
||||
%% You can add your own arbitrary detail with
|
||||
%% \printinfo{symbol}{detail}[optional hyperlink prefix]
|
||||
% \printinfo{\faPaw}{Hey ho!}[https://example.com/]
|
||||
%% Or you can declare your own field with
|
||||
%% \NewInfoFiled{fieldname}{symbol}[optional hyperlink prefix] and use it:
|
||||
% \NewInfoField{gitlab}{\faGitlab}[https://gitlab.com/]
|
||||
% \gitlab{your_id}
|
||||
%%
|
||||
%% For services and platforms like Mastodon where there isn't a
|
||||
%% straightforward relation between the user ID/nickname and the hyperlink,
|
||||
%% you can use \printinfo directly e.g.
|
||||
% \printinfo{\faMastodon}{@username@instace}[https://instance.url/@username]
|
||||
%% But if you absolutely want to create new dedicated info fields for
|
||||
%% such platforms, then use \NewInfoField* with a star:
|
||||
% \NewInfoField*{mastodon}{\faMastodon}
|
||||
%% then you can use \mastodon, with TWO arguments where the 2nd argument is
|
||||
%% the full hyperlink.
|
||||
% \mastodon{@username@instance}{https://instance.url/@username}
|
||||
}
|
||||
|
||||
\makecvheader
|
||||
%% Depending on your tastes, you may want to make fonts of itemize environments slightly smaller
|
||||
% \AtBeginEnvironment{itemize}{\small}
|
||||
|
||||
%% Set the left/right column width ratio to 6:4.
|
||||
\columnratio{0.6}
|
||||
|
||||
% Start a 2-column paracol. Both the left and right columns will automatically
|
||||
% break across pages if things get too long.
|
||||
\begin{paracol}{2}
|
||||
|
||||
\cvsection{Projects}
|
||||
|
||||
\cvproject{Slate}{\githubProject{Slate}}
|
||||
A web app for RIT Computer Science House to help event coordinators schedule events by congregating participant calendar data\\
|
||||
\cvtag{Python}
|
||||
\cvtag{APIs}
|
||||
\cvtag{OAuth2}
|
||||
|
||||
\divider
|
||||
|
||||
\cvproject{Humans vs. Zombies Bot}{\githubProject{HvZ-bot}}
|
||||
A Discord bot to handle role management and statistics for RIT's Humans vs Zombies games\\
|
||||
\cvtag{JavaScript}
|
||||
\cvtag{NodeJS}
|
||||
\cvtag{APIs}
|
||||
\cvtag{SQL}
|
||||
|
||||
|
||||
\divider
|
||||
|
||||
\cvproject{NationsGame Rolls Simulator}{\githubProject{NG-Rolls-Simulator}}
|
||||
A NationsGame competition simulator for division predictions and statistical analysis, originally written in Python, ported to JavaScript for use in Discord bots.\\
|
||||
\cvtag{Python}
|
||||
\cvtag{JavaScript}
|
||||
\cvtag{NodeJS}
|
||||
\cvtag{APIs}
|
||||
|
||||
|
||||
\medskip
|
||||
|
||||
\cvsection{Activities}
|
||||
|
||||
\cvactivity{Computer Science House}{|}{\homepage{csh.rit.edu}}{Active Member}{May 2021 - Present}{Rochester Institute of Technology}
|
||||
A living and learning community with an emphasis on hands-on learning and a strong social atmosphere. CSH helps its members grow as professionals with the organization's focus on learning from each other through seminars and the yearly major project requirement.
|
||||
|
||||
\divider
|
||||
|
||||
\cvevent{FinTech}{Member/Dev}{September 2021 - Present}{Rochester Institute of Technology}
|
||||
A group derived from the RIT Financial Management Association dedicated to learning about financial management of equities using modern programmatic applications developed by students.
|
||||
|
||||
\divider
|
||||
|
||||
\cvevent{National Honor Society}{Member and Volunteer}{2019 - 2021}{Boonsboro High School}
|
||||
A nationwide organization promoting scholarship, leadership, service, and character
|
||||
|
||||
\divider
|
||||
|
||||
\cvevent{BHS VEX Robotics}{President and Team Lead}{2015-2021}{Boonsboro High School}
|
||||
An organization to design, build, and program robots to compete in the
|
||||
annual VEX Robotics Competition
|
||||
%% Switch to the right column. This will now automatically move to the second
|
||||
%% page if the content is too long.
|
||||
\switchcolumn
|
||||
|
||||
\cvsection{Skills}
|
||||
|
||||
\cvtag{Python}
|
||||
\cvtag{JavaScript}
|
||||
\cvtag{Java}
|
||||
\cvtag{C++}
|
||||
\cvtag{SQL}
|
||||
\cvtag{Object-Oriented Programming}
|
||||
|
||||
\divider\smallskip
|
||||
|
||||
\cvtag{Git}
|
||||
\cvtag{Linux}
|
||||
\cvtag{Raspberry Pi}
|
||||
\cvtag{LaTeX}
|
||||
\cvtag{NodeJS}
|
||||
\cvtag{Flask}
|
||||
\cvtag{Statistical Analysis}
|
||||
\cvtag{DOM Scraping}
|
||||
|
||||
\medskip
|
||||
|
||||
\cvsection{Experience}
|
||||
|
||||
\cveventShort{Kitchen Staff}{\href{https://www.pretzelandpizzacreations.com/}{Pretzel and Pizza Creations}}{April 2021 -- August 2021}{Hagerstown, MD}
|
||||
Worked part-time as a chef with a team to manage and fulfill orders and manage active ingredient supply
|
||||
|
||||
\divider
|
||||
|
||||
\cveventShort{Election Official}{\href{https://www.washco-mdelections.org/}{Washington County Board of Elections}}{August 2020 -- December 2020}{Hagerstown, MD}
|
||||
Trained in voter registry operations and provisional voting for the 2020 US Presidential Election
|
||||
|
||||
\cvsection{Education}
|
||||
|
||||
\cvevent{Rochester Institute of Technology}{Computer Science B.S.}{August 2021 -- May 2026}{}
|
||||
Sophomore Standing
|
||||
|
||||
\divider
|
||||
|
||||
\cvevent{Boonsboro High School}{}{Sept 2001 -- June 2002}{}
|
||||
GPA: 4.2
|
||||
SAT: 1500
|
||||
|
||||
\end{paracol}
|
||||
|
||||
\end{document}
|
||||
18
resume/nicethings_icons_readme.txt
Normal file
18
resume/nicethings_icons_readme.txt
Normal file
@@ -0,0 +1,18 @@
|
||||
------------------
|
||||
Freebie: Nice Things Icon Set (128 Icons, PNG, AI)
|
||||
Designed by Chris Behr (http://www.chrisbehr.com/) and released for Smashing Magazine and its readers.
|
||||
------------------
|
||||
|
||||
Dear Friends,
|
||||
|
||||
Thank you for downloading this icon set!
|
||||
|
||||
This freebie has been brought to you by SmashingMagazine.com. You can freely use it for both your private and commercial projects, including software, online services, templates and themes.
|
||||
|
||||
However, the icons may not be resold, sublicensed, rented, transferred or otherwise made available for use. The icons may not be offered for free downloading from websites other than SmashingMagazine.com.
|
||||
|
||||
Please link to the article in which this freebie was released if you would like to spread the word: http://www.smashingmagazine.com/2013/11/01/freebie-nice-things-icon-set/
|
||||
|
||||
Smashing Magazine Team,
|
||||
www.smashingmagazine.com
|
||||
|
||||
8
resume/pubs-authoryear.tex
Normal file
8
resume/pubs-authoryear.tex
Normal file
@@ -0,0 +1,8 @@
|
||||
% When using APA6 if you need more author names to be listed
|
||||
% because you're e.g. the 12th author, add apamaxprtauth=12
|
||||
\usepackage[backend=biber,style=apa6,sorting=ydnt]{biblatex}
|
||||
\defbibheading{pubtype}{\cvsubsection{#1}}
|
||||
\renewcommand{\bibsetup}{\vspace*{-\baselineskip}}
|
||||
\AtEveryBibitem{\makebox[\bibhang][l]{\itemmarker}}
|
||||
\setlength{\bibitemsep}{0.25\baselineskip}
|
||||
\setlength{\bibhang}{1.25em}
|
||||
7
resume/pubs-num.tex
Normal file
7
resume/pubs-num.tex
Normal file
@@ -0,0 +1,7 @@
|
||||
\usepackage[backend=biber,style=ieee,sorting=ydnt]{biblatex}
|
||||
%% For removing numbering entirely when using a numeric style
|
||||
\setlength{\bibhang}{1.25em}
|
||||
\DeclareFieldFormat{labelnumberwidth}{\makebox[\bibhang][l]{\itemmarker}}
|
||||
\setlength{\biblabelsep}{0pt}
|
||||
\defbibheading{pubtype}{\cvsubsection{#1}}
|
||||
\renewcommand{\bibsetup}{\vspace*{-\baselineskip}}
|
||||
Reference in New Issue
Block a user