Skip to content

Meeting Notes 2018 09 15

John David Smith edited this page Sep 25, 2018 · 1 revision

Location: Study room 2B at Central Library, Downtown Portland -- 801 SW 10th

Scheduling: Next meeting is Oct 6.

Decisions made:

  • Use glue() instead of paste0()? https://github.com/smithjd/sql-pet/issues/63

    • There is consensus that glue adds functionality that makes it better to use than paste0. For example, it handles quoting better for SQL statements and it allows for strings with parameter positions that can be filled with variables. So we will use glue() from the beginning of the book.
  • Where to start when I come to the site?

    • Open the project in r-database-docker: r-database-docker.Rproj

    • Open index.rmd. Read it, but nothing to execute here.

    • Run the *.rmd files in sequence.

    • If you are a Windows user, open 02-docker_hosting_for_windows.Rmd.

      • This file may still have some problems.
    • 03-learning-goals-use-cases.Rmd: no executable code.

    • 04-docker-setup-postgres-connect-with-r.Rmd is first file with code.

      • Need to explain when error occurs in line 29, docker_cmd.

      • system2("docker", docker_cmd, stdout = TRUE, stderr = TRUE) suggestions:

        • Use fully qualified parameter names with --, for example, rather than -d, use --detach.
        • Use glue with parameter names that are self-documenting. For example, container_name, port, postgres_image.
        • Add comments in the code block, explaining the parts of the command. For example, run --detach will start a container, running independent of the current process.
  • We walked through an example of the the workflow:

    • John made changes on a branch.
    • John committed on his local machine on that branch.
    • John pushed that branch to the github.com/smithjd/sql-pet/ repository.
    • Everyone else reviewed the changes. Some people made comments. Some people noticed a typo.
    • John went back to his local branch, fixed the typo, committed, and pushed the branch again.
    • After refresh of browser, the change appeared in the pull request.
    • John felt confident that he had reviewed all comments and did the Merge in GitHub.
    • Everyone else refreshed browser and saw that the pull request was closed.
    • Everyone needs to pull from the github.com/smithjd/sql-pet/ repository to get John's changes that are now on the master branch.
  • Minimal toolset to include Rocker/Rstudio?

    • Advantages of using a Docker image for your development environment: In tutorial setting, everyone has the same versions of everything.
    • Disadvantage: Adds complexity and take much more time to download. Need to explain to people why the Rocker/RStudio image is needed.
    • Decision: Wait on Rocker/Rstudio, because it adds complexity and not completely required at this time.
  • Minimal toolset to include pgAdmin4?

    • Decision: Same as for Rocker/RStudio: It adds complexity that is not needed immediately.
  • File mounts

  • Clean up the directory structure?

    • JDS: make a diagram of the current directory structure. Put that in the README
    • Decision: It is okay to delete the src directory. It is already in GitHub, so we can go back to it if necessary.
    • In the future, we might want a src/ directory again, with the code from the r-database-docker/*.Rmd files.

Discussions (above the line is “need to discuss”, below are topics we can let slide if necessary)

  • How is our process?

    • Pace, scope, purpose, etc.?
    • Pull requests, reviews, approvals?
    • Github Projects?
    • Mix of Git Issues, Wiki, Google Docs, etc.
  • Have we collected all the insights from the “Windows troubles”?

    • Action Item: Sophie will write something about her experiences testing the set-up for Windows. Provide any corrections / details for Chapter 2.
  • a sample: .gitattributes to save Windows folks some grief?

    • Anything sent to Linux (e.g., Docker) needs to have Linux line endings.
    • .gitattributes allows you to define line endings? Need to test this.
    • If you are editing *.Rmd files on Windows, edit them in RStudio to get the line endings correct.
  • Use and installation of pgAdmin4: https://github.com/smithjd/sql-pet/issues/55

  • PostgreSQL backup and restore: https://github.com/smithjd/sql-pet/issues/54

    • This is most conveniently done with pgAdmin4 - we’d need a shared volume to store backups
  • How much do we lean on existing tutorials

  • Todo’s

    • Sophie: slew of SQL examples

      • Metadata investigation

        • Tables
        • Columns
    • Ian: sql_glue on dvdrental

    • Maryann: instructional chapter edits

    • Dipti: Learning goals / accomplishments for each chapter.