MCQ: IPython notebooks and github

Feb 12, 2014 • Chris Friedline

As was my intent, and the comments picked up on, the map was made to be very high level.  While this was great for the concept map, it was not so great for the MCQ part, so I just picked out the git part and went with that.  Apologies for the lateness, I’ve been in the field for the past week.

Concept map: IPython notebook for documented and reproducible computing

#1:

Which of the following git commands can be used to create (i.e., initialize) a new repository?

  1. git init
  2. git create
  3. git clone
  4. git pull

As for the overall intent of the lesson:

Which of the following aspects of computing in an IPython notebook with Github contribute to open and reproducible science?

  1. IPython notebooks are simple text-based documents which can be directly attached as supplemental material
  2. The use of Markdown is no more effective than describing code with traditional “#” comment lines.
  3. Change-based history facilitates both blame and attribution
  4. A python distribution such as Canopy or Anaconda is the only way to make sure that your module versions are properly documented

Exercise:

Create a new git repository and add a new IPython notebook to it with a meaningful name.  In the same repository, create a new text file with some text in it, and include it in your git repo.  Create another blank text file, but make sure that it’s never included in your git repo.  In the first cell of the notebook, write some code to read the text of the file (the one with text in it) and print its output.  Commit those changes to your local repo and push those changes to a new remote repository on Github.  On Github, add a README file to the repository, then make sure that file is reflected in your local repository.  Send me the link to your Github repository and the output your local directory.