Ross Gayler 2020-02-22
Create the presentation, “VSA, Analogy, and Dynamic Similarity”, to be given at the Workshop on Developments in Hyperdimensional Computing and Vector Symbolic Architectures on 2020-03-16 in Heidelberg, Germany. This event is associated with the 8th Annual Neuro-Inspired Computational Elements (NICE) Workshop.
The workshop was cancelled because of the COVID-19 pandemic, but I have made the presentation available anyway.
The primary purpose of this repository is to archive the source code for creating the presentation. The secondary purpose is to document the process of creating and running the project, in the hope that it will save me some time for the next presentation project.
This assumes starting with everything that’s on my computer right now. Your mileage will vary (in particular, you may have to install a bunch of R packages).
-
Make sure
usethis
is installed and follow the setup instructions so that user name and other details are set up ready for the project. -
Create empty GitHub repo
VSA_2020_presentation
using these instructions. -
Create a local RStudio project by cloning the GitHub repo using these instructions.
-
Add file
.gitattributes
with the following contents so that Rmarkdown files are recognised asR
by GitHub.
# Get GitHub to reclassify `.Rmd` files as R
*.Rmd linguist-language=R
-
Create a
figs
subdirectory of the new project to contain figures (which will be copied from past projects). -
Guard against leaking credentials to GitHub. This only needs to be done once per user/computer but does no harm to be repeated for each new project.
usethis::git_vaccinate()
-
Activate
renv
package tracking.
renv::init()
This starts the project with an empty library, so all the infrastructure will have to be installed as it is first used. You will userenv::install()
a lot, in particular, you will have to installusethis
into the project. -
Install
usethis
to the project and mark the project as usingusethis
(updates the project-specific.Rprofile
).
renv::install("usethis")
usethis::use_usethis()
-
This presentation document requires the
binb
package to enable rendering the output as a PDF presentation. The document uses thebinb
metropolis template. This requires a variety of LaTeX tools and fonts to be installed, in addition to the rmarkdown and knitr infrastructure. See eddelbuettel/binb forbinb
installation advice.- Make sure the Fira Sans and Fira Mono fonts are installed.
(Instructions on how to check what fonts are
installed.
I found it convenient to download Fira
Sans and Fira
Mono from Font
Squirrel. Instructions on how to
install fonts - for
reasons I don’t understand, using
font-manager
didn’t work, whereas copying the font files to$/.fonts
did work.) - The first attempt to knit the presentation may result in the LaTeX package manager running for ages while installing the required LaTeX infrastructure.
- For a future project it may be worth trying to set up a Docker image with the fonts and LaTeX packages installed.
- Make sure the Fira Sans and Fira Mono fonts are installed.
(Instructions on how to check what fonts are
installed.
I found it convenient to download Fira
Sans and Fira
Mono from Font
Squirrel. Instructions on how to
install fonts - for
reasons I don’t understand, using
-
Copy
README.Rmd
(this document) from a prior GitHub linked project and edit it to explain what this project is about and how it was set up. Keep this up to date as the project progresses. See GitHub document for instructions on the contents for this kind of README to be rendered on GitHub. -
Set the license.
usethis::use_ccby_license()
Add the appropriate license badge from lukas-h/license-badges.md to README.Rmd. -
Commit, push, rinse, and repeat as the project progresses. Follow these instructions.
-
Copy in resources from previous projects to use as a starting point.
- VSA2020_Gayler_abstract.pdf # submitted extended abstract of presentation
- VSA2020_Gayler_abstract.zip # source code of extended abstract
- Figures from old presentations
-
Write presentation, copying figures from prior documents as needed
- How to make citations in Rmarkdown: https://rmarkdown.rstudio.com/authoring_bibliographies_and_citations.html#bibliographies
- The citation style file
apa-single-spaced.csl
came from the Zotero Style Repository.
-
Render presentation by clicking the
Knit
button in the notebook editor window. -
Insert, into the presentation, links to the published/archived versions of the documents.
-
Remove any documents not used in current presentation.
-
Push the final version to github.
-
Publish to Zenodo by clicking the “Publish” button on the upload page. Previous work in progress versions were “Save”d rather than “Publish”ed.