Coding Bootcamp: Course authoring
Basics
- We use reveal.js for our slides,
 but this should be transparent to you
 
- We write slides either in Markdown or as a Jupyter Notebook
 
- More details follow
Markdown slides
- Write slides in GitHub flavoured Markdown
 
- Start title text with ##followed by a space
 
- Start bullet items with *followed by a space
 
- Separate each slide from the next with two empty lines
 
- Add hyperlinks using the [text](URL)syntax
Example
## First slide title
* Bullet item 1
* Bullet item 2
 
 
## Second slide title
Code listings
File organization
- Each lecture is written as a single Markdown or as a Jupyter Notebook file
 
- Name the file using Java variable identifier rules
 
- Suffix the Markdown file name with .md
 
- Example: unitTests.md
 
- Suffix the Jupyter file name with .ipynb
Folder organization
- Place the file in one of the following folders
 
- java: Java material
 
- cs: C# material
 
- common: Material common to both courses
 
- admin: Course instructor and administrator material
Linking lectures into a course
- Within the coursesdirectory create or edit a Markdown file named after
 the course
 
- Use a level-1 title for the course
 
- Use a level-2 title for units
 
- Enter each lecture as a separate bullet
 
- Example
# Coding bootcamp: Java specialization
## Test driven development and object-oriented programming
* [Hello world!](java/hello.md)
* [Constructing and using objects](java/objects.md)
* [Python classes](common/pythonClasses.ipynb)
Contributions
- You can perform small changes directly on the GitHub repository
 
- For substantial work it is recommended that you work on a local repository
 
- Commit your changes with proper commit messages
 
- Do not forget to push after committing
- You will need to have the following tools installed
 
- A Unix shell
 
- Git
 
- Pandoc
 
- rsync
 
- Jupyter Notebook
 
- This setup is trivial on Mac and Linux systems
 
- On Windows systems we recommend the installation of Cygwin
 
- Anaconda simplifies the Jupyter Notebook installation
Building and deploying
- First clone the GitHub repository
 
- Run maketo build the presentation and note handouts
 
- This generates the material in the webdirectory
 
- View the presentations and handouts through this link
 
- Pushing your changes will result in an automatic update of the web site
Style
- Use lower case in titles, Not Title Case
 
- Start each bullet item with a capital
 
- Don't punctuate at the end of bullet items
 
- Spell-check what you write
 
- Use British spelling
 
- Don't pack your slides with text
 
- Take care of capitalization: JavaScript, SQL, Java, C#, Git, GitHub
 
- Put names of code and commands in backticks, e.g. `main` or `git`
 
- Avoid lines longer than 67 characters

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.