Class today will be an introduction to the course and the course tools
- Homepage: https://rebelskyw.cs.grinnell.edu/
- Syllabus TPS:
- What stood out to you
- What was confusing
- Where should I add detail?
- Why do we care about this course?
- In other words, why is Math relevant to Computer Science/computer scientists
- Course Materials:
- Website: https://rebelskyw.cs.grinnell.edu/
- Readings: https://osera.cs.grinnell.edu/ttap/mathematical-foundations/introduction.html
- Tools (recommended by PM): https://osera.cs.grinnell.edu/ttap/mathematical-foundations/course-tools.html
- Tools (recommended by Me):
- Latex: https://www.overleaf.com/
- Overleaf makes latex easier to use
- Python: https://colab.research.google.com/
- While you can use a more traditional latex installation, a notebook environment will be more useful for this course
- Overleaf Template: https://www.overleaf.com/read/bxhvcmcsmtkm#91b7fa
- Latex: https://www.overleaf.com/
- When submitting a lab, for every problem do the following
- Do the problem by hand
- Take a picture of the problem
- Insert the picture in latex
- Try to convert the handwritten solution to latex
- At the start of the semester, doing the problem correctly is the most important part, not necessarily the latex syntax
Lab 0: Exploring Python and Latex
- Install and set up latex (however you wish to do so)
- We will walk through how to do this in Overleaf as a class
- Install and set up python (however you wish to do so)
- We will walk through how to do this in Google Colab as a class
- Lab problems
- Discuss (and record) reflections to the following questions:
- What is the relevance of mathematics to computer science?
- How do you go about understanding how a program works?
- How should you go about studying a new programming language?
- Fun with python:
- figure out how to create a function that multiplies the input by 2
- first write it out by hand, then implement it in python
- create a second function that calls the first function and then adds 3
- first write it out by hand, then implement it in python
- Test both functions with the numbers 1, 0, -1, and 0.1
- figure out how to create a function that multiplies the input by 2
- Latex Basics (using the template)
- Question 1 should have the answers to part 1
- Try to work out how to make a list and put each answer under a separate bullet
- Question 2: add a photo of your handwritten work for part 2
- Then add the code as a code segment (lstlisting)
- Try copy-pasting the code outside of the code segment, what happens?
- Question 3: Playing with latex
- Using the image from question 2, make a figure with a caption. (make it smaller)
- Justify with examples why and when you would want to use inline math mode vs display math mode
- Question 1 should have the answers to part 1
- Discuss (and record) reflections to the following questions:
- Compile the latex file to pdf and submit it on gradescope