Code Monkey home page Code Monkey logo

vsa_2020_presentation's Introduction

VSA 2020 Presentation

Ross Gayler 2020-02-22

DOI License: CC BY 4.0

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.

Project setup

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).

  1. Make sure usethis is installed and follow the setup instructions so that user name and other details are set up ready for the project.

  2. Create empty GitHub repo VSA_2020_presentation using these instructions.

  3. Create a local RStudio project by cloning the GitHub repo using these instructions.

  4. Add file .gitattributes with the following contents so that Rmarkdown files are recognised as R by GitHub.
    # Get GitHub to reclassify `.Rmd` files as R
    *.Rmd linguist-language=R

  5. Create a figs subdirectory of the new project to contain figures (which will be copied from past projects).

  6. 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()

  7. 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 use renv::install() a lot, in particular, you will have to install usethis into the project.

  8. Install usethis to the project and mark the project as using usethis (updates the project-specific .Rprofile).
    renv::install("usethis")
    usethis::use_usethis()

  9. This presentation document requires the binb package to enable rendering the output as a PDF presentation. The document uses the binb 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 for binb 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.
  10. 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.

  11. Set the license.
    usethis::use_ccby_license()
    Add the appropriate license badge from lukas-h/license-badges.md to README.Rmd.

  12. Commit, push, rinse, and repeat as the project progresses. Follow these instructions.

Write presentation

  1. 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
  2. Write presentation, copying figures from prior documents as needed

  3. Render presentation by clicking the Knit button in the notebook editor window.

  4. Insert, into the presentation, links to the published/archived versions of the documents.

    • The URL of the github is already known.
    • The presentation will be published on Zenodo. A DOI can be reserved as part of uploading a work in progress. See here for example instructions.

Clean up and publish

  1. Remove any documents not used in current presentation.

  2. Push the final version to github.

  3. Publish to Zenodo by clicking the “Publish” button on the upload page. Previous work in progress versions were “Save”d rather than “Publish”ed.

vsa_2020_presentation's People

Contributors

rgayler avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.