diff options
| author | Sebastiano Tronto <sebastiano.tronto@gmail.com> | 2021-05-26 10:24:50 +0200 |
|---|---|---|
| committer | Sebastiano Tronto <sebastiano.tronto@gmail.com> | 2021-05-26 10:24:50 +0200 |
| commit | 1c708d25453056e01ae10d85f302ac8486289bba (patch) | |
| tree | 87e74a03d3620acd70bd75be8c640d6f2bf15e00 | |
| parent | d6c61d988bfa4255baf9cdae42db59ebee38363f (diff) | |
| download | mathsoftware-1c708d25453056e01ae10d85f302ac8486289bba.tar.gz mathsoftware-1c708d25453056e01ae10d85f302ac8486289bba.zip | |
More info on the course
Diffstat (limited to '')
| -rw-r--r-- | README.md | 115 |
1 files changed, 98 insertions, 17 deletions
| @@ -15,8 +15,6 @@ understanding of these tools and can use them whenever needed, such as if they | |||
| 15 | need to write a Thesis, prepare slides for a presentation or carry out | 15 | need to write a Thesis, prepare slides for a presentation or carry out |
| 16 | intense computations. | 16 | intense computations. |
| 17 | 17 | ||
| 18 | ### LaTeX | ||
| 19 | |||
| 20 | LaTeX is a markup language to write and format documents of any type. It is | 18 | LaTeX is a markup language to write and format documents of any type. It is |
| 21 | particularly well-suited for scientific documents, but it can be used for any | 19 | particularly well-suited for scientific documents, but it can be used for any |
| 22 | type of document, including books, CVs and even presentation slides. | 20 | type of document, including books, CVs and even presentation slides. |
| @@ -30,8 +28,6 @@ visually changing the appearence of the text, the "compiler" will always try to | |||
| 30 | produce an output that is faithful to what the user indicated, so the user does | 28 | produce an output that is faithful to what the user indicated, so the user does |
| 31 | not have to manually adjust the result after every major modification. | 29 | not have to manually adjust the result after every major modification. |
| 32 | 30 | ||
| 33 | ### SageMath | ||
| 34 | |||
| 35 | SageMath is a free and open-source mathematical software system which builds | 31 | SageMath is a free and open-source mathematical software system which builds |
| 36 | on top of many existing ones: NumPy, SciPy, matplotlib, Sympy, Pari/GP, GAP, R | 32 | on top of many existing ones: NumPy, SciPy, matplotlib, Sympy, Pari/GP, GAP, R |
| 37 | and many more. Thanks to it, all the features all these languages can be | 33 | and many more. Thanks to it, all the features all these languages can be |
| @@ -43,8 +39,9 @@ computations. | |||
| 43 | ## Videos | 39 | ## Videos |
| 44 | 40 | ||
| 45 | For the first few lectures I have filmed some videos which are a shorter | 41 | For the first few lectures I have filmed some videos which are a shorter |
| 46 | version of what explained in class. You can find all of them in [this YouTube | 42 | version of what explained in class. You can find all of them in |
| 47 | channel](https://www.youtube.com/channel/UCUPWzPfoW5UJInqZcqGCigg). | 43 | [this YouTube channel] |
| 44 | (https://www.youtube.com/channel/UCUPWzPfoW5UJInqZcqGCigg). | ||
| 48 | 45 | ||
| 49 | * [Getting started with LaTeX](https://www.youtube.com/watch?v=HVvQpZEeIDI) | 46 | * [Getting started with LaTeX](https://www.youtube.com/watch?v=HVvQpZEeIDI) |
| 50 | * [LaTeX bibliography](https://www.youtube.com/watch?v=-KrNY7BXdPo) | 47 | * [LaTeX bibliography](https://www.youtube.com/watch?v=-KrNY7BXdPo) |
| @@ -58,21 +55,105 @@ channel](https://www.youtube.com/channel/UCUPWzPfoW5UJInqZcqGCigg). | |||
| 58 | The files in this repository are organized as follows: | 55 | The files in this repository are organized as follows: |
| 59 | 56 | ||
| 60 | * `Lectures` contains the slides and notes I have made and used during the | 57 | * `Lectures` contains the slides and notes I have made and used during the |
| 61 | lectures. Some of them are classic (Beamer) slides, some other are | 58 | lectures. Some of them are classic (Beamer) slides, some other are |
| 62 | [Jupyter Notebook](https://jupyter.org/) files. | 59 | [Jupyter Notebook](https://jupyter.org/) files. Each notebook file has |
| 60 | also been converted to pdf. | ||
| 63 | * `Homework` contains the four homework assignment given during the course. | 61 | * `Homework` contains the four homework assignment given during the course. |
| 64 | They accounted for 100% of the final grade. | 62 | They accounted for 100% of the final grade. |
| 65 | * `Resources` contains some random files (tutorials, reference manual) that I | 63 | * `Resources` contains some random links and files (tutorials, reference |
| 66 | have found online. All credits go to the original authors. | 64 | manual) that I have found online. All credits go to the original authors. |
| 67 | * `src` contains the LaTeX and (and Sage) source code for the files in the | 65 | * `src` contains the LaTeX and (and Sage) source code for the files in the |
| 68 | `Lectures` and `Homework` folders, as well as some "scratchpad" LaTeX file | 66 | `Lectures` and `Homework` folders, as well as some "scratchpad" LaTeX file |
| 69 | written during the lectures as a live example. | 67 | written during the lectures as a live example. |
| 70 | 68 | ||
| 71 | ## Teaching | 69 | ## Teaching |
| 72 | 70 | ||
| 73 | INS guidelines for teachers who want to do something similar (including how long | 71 | If you want to teach a course on the same or similar topic, feel free to use, |
| 74 | each lecture was etc.) | 72 | modify, adapt and share, as a whole or in part, the material you find in this |
| 73 | repository. | ||
| 74 | Technically the license is Creative Commons Attribution (see `LICENSE`), so | ||
| 75 | you should mention where you got this from: a link to this git repository at | ||
| 76 | the beginning of the course is enough. | ||
| 77 | |||
| 78 | Moreover, you should remove or replace the university logo and my email | ||
| 79 | address, which you can replace with your own or with my personal address | ||
| 80 | `sebastiano [dot] tronto [at] gmail [dot] com`. | ||
| 81 | |||
| 82 | Below you can find some details on how the course was taught. | ||
| 83 | |||
| 84 | ### Lecture mode, duration and frequency | ||
| 85 | |||
| 86 | The lectures were given in remote format, except for the last one which was | ||
| 87 | given in a classroom with some of the students following it remotely. | ||
| 88 | |||
| 89 | For lectures with slides I would switch to a LaTeX editor or Python console | ||
| 90 | every time I introduced a new feature, so that I could immediately show | ||
| 91 | it in practice. | ||
| 92 | For lectures with Jupyter notes I would simply follow them on a Jupyter | ||
| 93 | notebook, modifying the example and solving the exercises as I went through | ||
| 94 | them. | ||
| 95 | |||
| 96 | The lectures were 3 hours and 30 minutes long (four 45 minute units + 30 | ||
| 97 | minutes for breaks) and they were given roughly once every two weeks, with | ||
| 98 | some exceptions. This heavily influenced the distribution of the topics in | ||
| 99 | some cases: for example, the first and second lectures were 3 weeks apart, | ||
| 100 | so I decided to give a very broad overview of the main features of LaTeX on | ||
| 101 | the first lecture, saving the technical details for lecture 2, so that the | ||
| 102 | students could start using it immediately. With a different schedule I would | ||
| 103 | have probably taken a different approach. | ||
| 104 | |||
| 105 | ### Content | ||
| 106 | |||
| 107 | The content of each lecture was as follows: | ||
| 108 | |||
| 109 | * **Lecture 1 (slides 1 and 2):** introduction to the course, | ||
| 110 | LaTeX fundamentals. | ||
| 111 | * **Lecture 2 (slides 3):** more technical details on LaTeX; defining commands, | ||
| 112 | using counters (e.g. for theorem numbering) and basic bibliography with | ||
| 113 | Bibtex. | ||
| 114 | * **Lecture 3 (slides 4 and 5):** graphics with TikZ and presentations with | ||
| 115 | Beamer. | ||
| 116 | * **Lecture 4 (slides 6):** a "practical" introduction to Python; in this | ||
| 117 | lecture I assumed that the students did not know even the basics of | ||
| 118 | programming and I introduced Python mainly as an interactive language, | ||
| 119 | explaining the most common programming structures (conditional statements, | ||
| 120 | loops, functions) only towards the end. | ||
| 121 | * **Lecture 5 (notebook 7):** introduction to SageMath, algebra and some | ||
| 122 | cryptography. | ||
| 123 | * **Lecture 5 (notebooks 8 and 9):** calculus and some basic data analysis | ||
| 124 | and plotting with SageMath; interactions between SageMath and LaTeX. | ||
| 125 | This lecture was 4 hours and 15 minutes long. | ||
| 126 | * **Lecture 6 (slides X1 and X2 and respective notebooks):** extra topics; | ||
| 127 | the first part is an introduction to the topic of computational complexity, | ||
| 128 | the second part covers two topics requested by the students via an | ||
| 129 | anonymous questionaire (more cryptography, numerical methods for PDEs). | ||
| 130 | |||
| 131 | *Note: Symbolic expressions, a very basic feature of Sage, was introduced at | ||
| 132 | the beginning of Lecture 5 but used extensively only in the following lecture. | ||
| 133 | In hindsight it would have been better to swap the contents of the two | ||
| 134 | lectures and do Symbolic expressions and calculus before algebra. This is | ||
| 135 | because the Algebra part requires more specific constructions (polynomials, | ||
| 136 | rings), while one can do most calculus operations simply working with | ||
| 137 | Symbolic expressions.* | ||
| 138 | |||
| 139 | ### Homework | ||
| 140 | |||
| 141 | There were 4 homework assignments, 2 for LaTeX and 2 for SageMath, | ||
| 142 | accounting for 100% of the students' final grade. | ||
| 143 | |||
| 144 | For the LaTeX assignments some of the exercises are of the type "copy this | ||
| 145 | thing that you see here" and others were of type "write some stuff in LaTeX, | ||
| 146 | it does not matter what". The rationale behind the latter type is that I wanted | ||
| 147 | the students to use LaTeX for whatever they were going to use in their daily | ||
| 148 | life, inlcuding (if they wanted) homework for other courses. | ||
| 149 | |||
| 150 | Most of the SageMath exercises simply required the students to compute some | ||
| 151 | things, without much "real" programming involved, with the exception of | ||
| 152 | the second exercise of homework 2. For that one I tried to do something | ||
| 153 | "fun", but I am not very satisfied with the result: in the end it was harder | ||
| 154 | to understand the problem than how to solve it. | ||
| 75 | 155 | ||
| 76 | INS also stuff about license (use my personal email address instead of unilu) | 156 | ### Final comments |
| 77 | 157 | ||
| 78 | INS also list of topics for each lecture (take from moodle) | 158 | (I will elaborate my comments on the course overall once I receive the |
| 159 | course evaluation from the students) | ||
