![](https://media.enccs.se/2023/06/Screenshot-2023-06-29-at-11.00.00.jpg) # Best Practices in HPC Training ### September 28 - 29, 2023 ## General information - This hackMD: https://hackmd.io/@enccs/instructor-training-sept2023 - Backup hedgeDoc: https://johank-enccs-hedgedoc.icedc.se/GAzvF4MJSm2AAVVX1i6KxQ - Training material: https://enccs.github.io/instructor-training/ - Direct link: https://rise.zoom.us/j/69209747774?pwd=bVhiWXJTT25ocHI0NFRZQkVTOVJTZz09 - Workshop feedback form: https://events.prace-ri.eu/event/1514/surveys/1098 ### Follow [ENCCS](https://enccs.se/) - Upcoming events: https://enccs.se/events/ - Sign up for the newsletter: https://enccs.se/newsletter - Follow us on [LinkedIn](https://www.linkedin.com/company/enccs), or [Twitter](https://twitter.com/EuroCC_Sweden) - YouTube channel: https://www.youtube.com/@enccs ### Schedule **September 28, 9:00-12:30 CEST** |Time | Topic | | --- | ----- | |09:00-09:10 | Welcome and introduction| |09:10-09:25 | Training providers| |09:25-09:40 | Available lessons| |09:40-10:10 | First teaching practice| |10:10-10:25 | Break| |10:25-11:10 | Acquisition of skill| |11:10-11:20 | Break| |11:20-12:20 | Lesson design| **September 29, 9:00-12:30 CEST** |Time | Topic | | --- | ----- | |09:00 - 09:15 | Recap and discussion on Practice backwards design| |09:15 - 10:05 | Good interactive teaching practices| |10:05 - 10:20 | Break| |10:20 - 10:40 | Teaching mechanics| |10:40 - 11:20 | Collaborative lesson development| |11:20 - 11:30 | Break| |11:30 - 12:30 | Practice: teaching and giving feedback| ### Feedback At the end of each day, please give short feedback at the bottom of this document: - What was most interesting and/or useful today? - What was most unclear/complicated/less useful? --- ## Preparing for Day 2 To participate in certain exercises on day 2, you will need a GitHub account: - Go to https://github.com. - Click on the "Sign up" at the right-top corner. - Enter your username of your choice (if it is already used, you will get some suggestions), email address, and password. - Follow further instruction and verify your account. - To later delete a repository, see [these instructions](https://docs.github.com/en/repositories/creating-and-managing-repositories/deleting-a-repository). - To remove your GitHub account, see [these instructions](https://docs.github.com/en/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account). --- ### Instructors and helpers Instructor: - Martina Blazkova, CASTIEL - Stepas Toliautas, NCC Lithuania - Thor Wikfeldt, ENCCS Helpers and mentors: - Yonglei Wang, ENCCS --- ### Code of conduct We strive to follow the [Contributor Covenant Code of Conduct](https://www.contributor-covenant.org/version/2/1/code_of_conduct/) to foster an inclusive and welcoming environment for everyone. [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.0-4baaaa.svg)](https://github.com/ENCCS/event-organisation/blob/main/CODE_OF_CONDUCT.md) In short: - Use welcoming and inclusive language - Be respectful of different viewpoints and experiences - Gracefully accept constructive criticism - Focus on what is best for the community - Show courtesy and respect towards other community members Contact details to report CoC violations can be [found here](https://enccs.se/kjartan-thor-wikfeldt). --- :::danger You can ask questions about the workshop content at the bottom of this page. We use the Zoom chat only for reporting Zoom problems and such. ::: --- ## Ice breaking question What is your first name and what do you enjoy most about teaching? - Stepas: when I realize that people understand something :) - Matias: I have the same as Stepas. Plus it is also a way to learn for me - Samantha: Same as above but also not just understand but also when people can "connect the dots" based on what was learned - Richel (pronounce: 'Rea-shell'): the proud feeling of learners developing - Dhanya: same as above, when people understand + learning myself through the process of teaching - Tija: I mostly enjoy seeing the joy in students'faces when they understand something, a "gotcha" moment. - Davor: To teach someone and to know that this new knowledge will improve his/her future work and life - Daniel: I interact mostly with people who have never worked with Linux/UNIX topics, so when they understand the topics I get very happy as myself am not the best in the field. - Alan: I get a lot out of the fact that the feedback loop can be short (like right after), and very long (like when someone comes up to you years later and says you gave a great course). - Martin: When you can contribute to helping individuals reach their goals by providing them with new insights, abilities, and knowledge. - Pedro: Try to explain difficult concepts in the simplest terms possible. - Björn: See that the students learn and my own learning on the way - Maris: how to explain difficult things in easy words. - Claudia: helping people to overcome challenges and that even after quite some experience in HPC and teaching HPC I learn something new myself with every course I teach - Oscar: Seeing students doing something by themselves (most times better) based on something I teached. - Diana: the interaction with the students and co-teachers; and as many others mentioned, it's very rewarding when the participants assimilated the material taught - Heidi: Quite much same as many people have written. Being able to share knowledge and giving answer to something that I knew but the other person didn't know _yet_ - Yonglei: effective interactions between teachers/mentors and students/mentees - Simeon: I enjoy triggering first curiosity, then interest and maybe even passion for a topic amongst my audience --- ## Questions, answers, discussion and information :::warning **Recommendation**: open a text editor of any kind (Word, NotePad, emacs/vim, an email...) and have it ready. In some exercises you'll be asked to write something down into this hackMD. Consider writing it first in your text editor and then copy-pasting it here. ::: ## Day 1 ### Questions - is this how to ask a question? - yes, and an answer will appear like so! - Do we number the questions? - Bullet points are easier to maintain. - Richel: no rush to answer this: how much % of people does not like to use G - (GitHub? Google? LUMI-G?) - ### First teaching practice - Main room discussion (10 minutes) - (When teaching) What was difficult when giving the teaching demo? - I took a small section of an established lesson, so I was then unsure what to explain for introduction. Also I did not think that beforehand :see_no_evil: - Short time to even get started with something - Keeping the time (In pracitse what I aimed to show would have taken very much longer, and wasnt able to go thought the whole thing). Also could have prepared better in other ways too - Very short time :) - Daniel: It was a bit difficult trying to improvise for trying to compensate for missing some clarifying hints that would be beneficial for beginners. - Richel: the technicalities of bad headsets - Short time for both of us to give a proper presentation, - Björn: Forgot my working computer home - Overthinking about how deep the explanation goes with the short time. +1 - Not preparing better screen sharing - (When teaching) Did you make mistakes that you immediately became aware of? - Davor: I say too much often "simple" and "just" demotivating people to continue listening - I did not prepared much, so it was not as fluid as it should be +1 - Björn: I usually only see spelling mistakes live. - I had demo + lesson material and it was difficult to shuffle between the two - Tija: That I have not prepared very well - Richel: Unsure: I spent 2,5 mins to get the know the existing knowledge of the student. I feel it was worth it, but I can be wrong - Too short time and I ws trying to change my speach to fit and ended up still going over the time and doing errors - I realised during the demo that the lack of preparation did show. Not really mistakes, or anything that would bother the teaching, but some clumsiness - NOt explaing enough each step. Not preparing enough - Forgot to explain the dynamic of the lesson (theory and practice). - Yes, didn't prepared enough - Yes, prepared too little and was not fully clear myself on what was my goal for this session - (When providing feedback) Was it easy for you to give feedback? Why or why not? - It was ok, the presentation was very good, so we had some time to discuss: We found that there is two sides to saying "just", "simple", "easy" - on the one hand it can take fear from participants towards a certain tool/concept, "oh yea, even though the tool is complicated, I can easily get started following these instructions" - on the other hand it might intimidate ("if this is the easy part and it is already hard for me, i do not feel up for what is supposed to be hard") - It was easy because I got a bit confused easily - Björn: Not easy because not knowing background of students - Richel: yes, I think it is important to practice giving feedback. I think I did a good job, as we had a warm, friendly and open discussion - Diana: it is easier to give constructive feedback if one knows the material - Dhanya: it was easy, since the other did well and we were in a good environment. - Not easy, since the time was so short, to get a good view how the demo would have been. Also it's difficult to focus on what goes well, or notice that - It was not easy for me. The main problem is that we did not have enought time for presentation which was just an very short intro. --- ### Break until 10:30 CET ### Questions (cont.) - How many man power and hours did ENCCS use for preparing the materials before this workshop? How many man power and hours in total are required to host a workshop like this one? I wish to know this information as a reference to prepare a similar event in the future. - most of the training material was compiled and prepared one year ago. It wasn't done from scratch but based on existing great resources from CodeRefinery and Carpentries. The material took a couple of weeks of 100% work i think. Preparing the actual workshop, maybe 10-20 hours over multiple people or so - Richel: Thor mentioned that some people do not use GitHub (anymore) when Microsoft took over. I estimate this to be 1% of all people. What are your experiences; which percentage would you estimate this at? - interesting question, you're probably correct about the 1% - Thanks for reducing the standard error on my estimation :-) - Richel: Thor showed the list and did a poll on recommended practices. I am in doubt if these are recommended practices in all situations. For example, I feel it is better to *not* use a shared document if this would be the only reason to use a computer; computers can be a major source of distraction. - Well, these are in the context of the current workshop on best practices of HPC training, often performed online. - Yup, I agree in that context :-) - Nothing works all the time in all situations. We always need to choose the right practices based on the format of the training, target audience and their level, age, further on the topic, available technical equipment and other factors. Also, your personal experience counts too so you will know with time what works for you, for your teaching style and personality. - Nice, we agree :-) Thanks :+1: - Richel: I think Code of Conducts are important too. However, I've never needed to enforce them, hence I estimate that 999 out of a 1000 learners 'naturally' follow a CoC. What are your experiences? What percentage? And, if you agree with the estimated number, does it pay off by mentioning it; it is only for 1 in 1000 students? - we have (unfortunately) had situations where it was important - mentioning the CoC not only makes the rules clear, but hopefully also frames the workshop in an inclusive and positive light - Maris: It is paid version of hackmd , no free, right https://hackmd.io/pricing#? Nothing similar will be available on free versions, for 20-25 users? - this is the free version. Another good option is to self-host a hedgeDoc server, if that's possible on your side - Does ENCCS provide a certificate for this workshop? - **yes!** a pdf document - Does presenting using document showing and scrolling text, is better than powerpoint? - I have also recently wondered about this. Personally came to the conclusion that it is, as long as there is not too much text, but rather images or short points which are explained more below the part of the materials that is shown when teaching. I like that students have it then both together right away, the short stuff that was shown during teaching but also the possibly longer explanation. Toggles help with hiding the "too much info" during teaching. Really interested to hear other comments about this :) - oh and with materials I find it very important not to scroll too fast or too much and if one follows links it also needs to be very slow so that students know what is happening - This is a very deep question, actually. In the ideal world, one would choose the format for knowledge "database" (coursebook, website, Moodle) as well as the format for live teaching (slides, group-chats, performative dance...) and use each in appropriate situations. However, this takes time, which many prospective teachers (esp. in non-education institutions) simply do not have. Easily accessible, collaborative resource made using various Web technologies (HTML, H5P, hosted coding environments...) can be a good compromise between having perfect lecture never and some info dump that is left for the learner to decipher. In this particular workshop, episode webpages are more or less used as a visual progress bar, while bullet points, graphics etc. make the feeling similar to slides (and no slide transitions! :D) ### [Acquisition of Skill](https://enccs.github.io/instructor-training/learners/) - questions/comments continue here #### Exercise: Mapping a mental model (20 min) - independent work until 10:55 CEST - Please write the topic of the concept map you're creating: - How to get started with JupyterLab - Richel: [0AD](https://play0ad.com/), a computer game - How to do spline interpolation in Python, focusing on writing the code - Intro to supercomputer web interface - How to add own easyconfigs on LUMI - Why use a cluster? - Module system with lmod - A typical scenario of using HPC resources - one example: https://enccs.github.io/julia-for-hpc/conclusions/ - difficultes: - Maybe it is lack of exam at the beginning… or lack of information, that after the lectures we will do it. ### Describe a misconception (5 min) - Moving script from laptop to supercomputer makes my code run faster immediately +3 - Tija: I am not good at programming - Richel: - [ticks](https://en.wikipedia.org/wiki/Tick) fall on humans from trees. - `x` times more threads/cores makes the program `x` times faster +1 - Using gcc yields wrong results with my code so I need to use compiler X - Wait, what? **Before** or **after** making sure that the code is correct conceptually/ on at least one architecture? :D - Meditation involves a heavy and loud exhaling - Array indexing (Fortran vs C style) - as above! - Daniel: The terminal is hard. - Alan: when I log on to a cluster, it's exclusively for me to use and all the resources are "just there" and ready to go. +2 - CUDA threads and CUDA cores are equivalent to cpu threads and cpu cores. - [GPU Programming: Why, When and How](https://enccs.github.io/gpu-programming/) ;) - When Going from serial code to parallel code this `a=a+5` gives the right result. - I don't have a "[perfect pitch](https://en.wikipedia.org/wiki/Absolute_pitch)", hence I don't have any sense of pitch - If someone has a black belt in a martial art they are an ultimate fighter - ### Break until 11:32 CEST ### Questions (cont.) - I am terrible at general drawings, not scientific plots and charts. How does ENCCS produce thoese beautiful figures used in the website and documents? Free copy-left resources? In-house artists and designers? Any suggestions for this issue? - Most of the figures and images in the current lesson are reused from existing open source material! - but using [excalidraw](https://excalidraw.com), the online drawing tool recommended in an exercise, you can create very nice-looking graphs and concept maps and similar - Do you have good example questions to ask from audience before a course to find out about the current level of knowledge of the audience in the topic of a course? - This very likely is closely connected to the topic itself: similarly as a learner has to learn to "ask the right questions", course taker can also evaluate the level (only) by asking leading, topical questions. We will have a section on addressing pre-/misconceptions by exercise, so initial exercises/ questions of such type could prove useful. ### [Lesson design](https://enccs.github.io/instructor-training/lesson-design/) #### Exercise -- Discuss either in groups or via collaborative document: How do you start when you design a new lesson/presentation? - brainstorming in a group of co-teachers, starting with the learning objectives and developing material from there Has your approach changed over the years? If yes, how? - the approach has not changed too much, but we try to always incorporate hands-on sessions, as it increases the interactivity and it makes it easier to assimilate new concepts - Notes from a breakout room: - Davor - Start from a blank page - Not systematic - Look around for similar target content - Start with outline of basic sections, then refine - Most lessons are one-off, not much to be reused - Bjorn - Took a similar course to this one a year ago - Tried new approach, but easy to fall back on old ways - Don't take the backwards approach, taking a logical approach - Need to feel the lesson will _be_ reused to devote to "proper" design - maybe a few extra minutes for the breakoutrooms? - hmm, this time i hard-coded the time limit and i don't seem able to change it... - it's okay ### Questions (cont.) - Any tips and tricks for exercise design? How to decide what is too difficult / too much for xx minutes? - Seems like I was too quick, current lesson answered this well, thanks :) ## Feedback (Day 1): - What was most interesting and/or useful today? - It was really useful to connect with people doing similar things and get feedback on my ideas. +3 - To see where other places/countries stand in terms of HPC training - I enjoyed to see Thor give an excellent example how an HPC course should be taught. I intend to use Thor as a role model in being generous in pasting URLs in the chat! - Talking to more experienced instructors and get tips and of course the well prepared and presented materials; they will get a bookmark and I will probably often look back into them - first training course (for me) focused on HPC, it was very useful for me to pick up some ideas to use in my own teaching; also, it was a great mix between theoretical concepts and more HPC-applied practice - really helpful! - good to really see examples of formative aqssessments - I started to use concept maps, I like it, but was discouraged by other teachers. Now I will try again! Perhaps there is a learning curve to create good ones! - The exercises made me rethink the lesson I was teaching even tho it is already good (developed collaboratively with experts) - The experience of breakout sessions in this workshop was very interesting as the get you really involved. Practising and trying to discuss with others helped me unexpectedly learn new things in a few hours - What was most unclear/complicated/less useful? - The part about organisations: the course title is 'Teaching in HPC'. I do see some use in knowing about other related HPC teaching courses (as we may assist/teach those). But, for example, CASTIEL; I fail to see the relevance completely - [name=Team] The title, "ENCCS - Best practices in HPC training", reflects the context of this workshop as a case presentation on what works for the HPC competence provider(s) within EuroHPC framework (EuroCC/Castiel being the associated projects). One useful thing about this could be the knowledge of the official avenues for teaching/ training collaboration in EU (on top of the specific connections you might make during the workshop :) ). - [name=Team] It was mentioned at the beginning that this workshop is organised by EuroCC and CASTIEL, therefore we wanted to provide a brief introduction of the projects. Perhaps next time this introduction can be right at the beginning. - The test teaching session in beginning could be longer, like 5-10 min to try to actually teach something. - [name=Team] There will be another opportunity to do that tomorrow, _on_ the basis of what you've learned. - I knew a lot of the concepts already - Bloom's taxonomy, conceptual maps. To be honest, I dislike conceptual maps, I never can get them to work for me! - I too always find it hard to figure out how to _apply_ Blooms taxonomy in a useful way - [name=ST] In my case, taxonomy is not a proactive tool to design for, but rather a way to reflect. For example, it can make easier to understand why some exercises prove too difficult for most -- it might be because the trainer aimed too high and asked to _test_ or _evaluate_ concepts (i.e. to check/ judge the solution) that most learners still struggle to _apply_ (i.e. provide the solution). - Too small amout of people in breakout rooms - [name=Team] Ideally, this is to give everyone time to speak up. But on the other hand, the _technical_ issues with breakout-room balancing are noted and will be definitely addressed. - I feel less inclined to give good feedback if the teacher chooses to do 'just one more exercise' at the cost of having the time during the lesson to give good feedback. - [name=Team] (Constructive) criticism is also the form of feedback and equally appreciated :) - Also sometimes it looks that is too much breaks than lectures (working in breakout rooms looks more as a break than a lecture) - [name=ST] That's actually one of the main points of the workshop: frequent breaks from auditorium-style lecturing and exercises set up to try out something presented moments ago help with retaining new things in memory and not overtire the learners. For university staff, this basically looks like lecture and hands-on session blended into one. - I find concept maps difficult, did not practice them enough, but I find them useful and I'll try to incorporate them in my lessons. I got inspired by the fact that Thor included the Julia concept map in the lesson material itself, I think that's a great idea. I'll try to adopt it. - [name=ST] In my opinion, it isn't even _required_ to use the concept maps for planning out teaching material -- although it is a tool that works very well for some. But simply thinking about learning in terms of concept maps leads to applicable insights: - adding to concepts or connections reflects the importance of adding knowledge incrementally and -- if possible -- in a personalized way; - the notion of the concepts explains the **mis**conceptions; - experts (especially if they are **not** educational staff!) can recognize the difficulties in passing the knowledge not as their or their students' failures, but simply as an additional task of "extracting" knowledge back from the excellent, unique, optimized/ intuitively working mental model of the expert. - Some teachers do address all of these perfectly fine without using concept maps, but they had to become aware of them in their own ways. - I would consider extending the workshop also after lunch in favor of longer exercises (min 20min / exercise). That seems to be working also with the ongoing CodeRefinery workshop - [name=Team] Noted. --- ## Day 2 ### Reflections around exercise "Backwards-design a lesson" **If you attempted to work on this yesterday, how did it go?** - . - - - - - **How does this approach compare to other lessons or courses you have designed?** - Backwards design is the way I -to some extent- always develop my courses. I feel it is quite similar to test-driven development, something I always use too - Mostly I worked with lessons that already existed in some shape beforehand, and there was "not enough time" to start from scratch; found it hard to bring in backwards design at this "late" stage - - - - ### [Good Interactive Teaching Practices](https://enccs.github.io/instructor-training/interactive-teaching/) **Exercise What are the top issues new instructors face? (10 minutes)** - What are some not-mentioned top issues an instructor might face? - answer - Learning new tools for teaching - Not having a blackboard to sketch things quickly - Richel: Forgetting to engage students, or 'teaching content-centered' (bad idea, instead teach student-centered instead) +1 - Should you ask people to leave who clearly exceed the prereqs? And those who clearly don't meet them? - i wouldn't ask anyone to leave. Instead perhaps encourage them to help others during exercises - Richel: I like to identify these at the start, then use them as helpers +1 - another thing to keep in mind in this context: avoid getting involved in advanced discussions with the more advanced learners. They might want to "take advantage of the course" to ask you advanced questions but this might get demotivational for the remaining majority of learners ### Live coding example 1 Please paste in your notes below here! --- Template: ``` Positive Content: - . - - Content Opportunities for Growth: - . - - Positive Delivery: - . - - Delivery Opportunities for Growth - . - - ``` **Group 4-1** Video 2 Positive Content: - some metatalk - explaining the steps. whys! - explaining errors - connected to earlier lessons - best practice for different levels Content Opportunities for Growth: - little more metatalk - possibly more different names of files (easy to mix up) Positive Delivery: - Standing - eye contact - Pointing on screen Delivery Opportunities for Growth - ask for feedback / following - ask for questions **Group 2** - the content was the same in both videos - the delivery style made the difference - Video 1: trainer uninterested, distracted, too fast, did not explain in detail, unengaging content unreadable - Video 2: presenter takes time to go through commands, explains in detail, utilises mistakes for delivery, possible to type along **Group 3** - Mistakes can be used as an opportunity to provide the learners with useful infromation. - The teacher could allow learners to find the solution to the error, so that they become more engaded. **Group 4-2** Positive Content: - Making mistakes and explaining these - More engaged with students, e.g. making eye contact; - Clear point, i.e. with hands - White backgrounds Content Opportunities for Growth: - _maybe_ let students explain themselves - ask students if they already know the errors - topic is about for loops, no do not explain variable naming here - show for-loop in flowchart on the blackboard **Group 5** Positive Content: - Video 1+2: nothing expected, explained from scratch - Video 1+2: teacher had a good estimation of learners experience Content Opportunities for Growth: - [did not get there, not enough time] Positive Delivery: - Video 2: interactive, enganged with the audience, well explained - Video 2: error (typo) was well explained - Video 2: good presentation on the beamer (screen share), visibility Delivery Opportunities for Growth - Video 1: distraction with messages coming in and clicks from the terminal - Video 1: not interactive, talked to the laptop not to the audience **Group 6** - --- ### Break until 10:40 ### Exercise: Addressing the challenges **Have you encountered any of the challenges listed above?** - It happens every so often that after asking question there's a prolonged silence and then two people start to talk at the same time. As if people have the same thinking process on whether to speak out loud or not. - Richel: lack of student facial expressions while sharing screen - Yes, zoom fatigue, especially when there is other Zoom meetings on same day +1 - asking questions: no, the opposite, I feel like people ask more when using collaborative doc over asking by voice (anonymity helps to also ask the "stupid questions") - interaction, no idea about what the learners are doing unless they give feedback which is very less - I'm missing the standard human interaction, hard to adopt the speed of my talk to the audience, don't know if lecturers are paying attention or not, found interactive parts hard to implement - difficult to write on whiteboard using mouse or ipad. - need more hardware support such as monitors, microphones, etc. to perform a good lecture. - teaching fatigue. don't know who is behind the screen and i thought of giving a reharsal to myself **Do you have any ideas for how to solve them or reduce their effects?** - Richel: from the start and often: ask questions to all students that have a camera on (encourage/enforce camera use), show it is OK not to know an answer. Prepare to allow for regular group work, in different groups - Block full day for other meetings even if course is only half day - Breakout rooms are a great way to keep people engaged :+1: - Maybe also encourage people to open their camera when speaking, because then some non-verbal cues may become more evident (and also it helps other attendees) :+1: - Also, letting people know that even if a meeting is recorded anything they say as participants will not necessarily be included in the recordings (like what was mentioned yesterday) is an ice-breaker. - we/UPPMAX have alternative online and on-site for some workshops for the same teaching material - At least all participants have their videos on, use different online tools to improve interactivity between the presenter and lectures, having shared workspace - hybrid instead of fully online, requires good AV setup though, having some students or co-teacher in same room helps to feel more together :+1: - I saw one suggestion online that a good icebreaker is to ask people to show what kind of socks they are wearing 🤭 ### Questions (cont.) - Should the lecture materials be composed self-contented, as a book ready for self-study afterwards (ENCCS currently uses this style), or like a presentation slides which is only an aid for oral speaking? In more general speaking, what is the pros and cons between this two styles? - They **should be** both (as separate content formats), but rarely are, because it's a double effort. - Slide-deck **pros**: very common, teachers have deep experience in making them, could be content- or interaction-driven. - Slide-deck **cons**: they are fundamentally an oral presentation aid, so tend to become cramped with content (even more so during teaching than during sci conferences). And if they are indeed well-written and then shown on the projector... what is the teacher there for? - Online material **pros**: huge variety of formats, control (even real-time) on focus/ interactivity; they _can_ indeed transform from a visual aid to study material with a press of a button. Even in simpler cases (like Sphinx lessons), it's relatively easy to follow, collaborate and catch-up to the content/ changes made by others. - Online material **cons**: need to learn current best tools for content creation, sometimes less fancy, sense of "difference" for PPT "consumers". - Any tips on how to go from content-centered teaching to student-centered teaching when materials already exist? A checklist? - [name=ST] It's not actually about materials, they can remain with minimal changes in many cases. Points to consider: - Ask for questions early and often. Try to avoid glazed eyes in the room. Many of the ice-breakers, polls etc. are used to refresh interest rather than to teach directly. - Try and update/ clarify the material as soon as possible (in university context, that's usually "next week"). - Have the material span a few levels of skill -- either optional harder parts or get-up-to-speed basic exercises, whatever is relevant. - For half a year, GitHub Pages is part an experimental GitHub repo CI setup (literally, 3x clicking gives a website!), rending the `main`/`master` to a static website. In that way, no need to maintain a separate `gh-pages` branch. An example is [here](https://github.com/UPPMAX/programming_formalisms/tree/main) and its teachers like it a lot. Did you know this? It's awesome to get a simple website up! - Interesting! - What do you use most commonly these days for lessons with your template, the MD or RST syntax? (Personal preference would be MD, but curious if that comes with limitations) - https://coderefinery.github.io/sphinx-lesson/ is a documentation for Sphinx package that includes advice on Markdow vs. ReST. One case is that Markdown is used for Jupyter notebooks as well, so may seem more familiar for not-too-complicated formatting needs. - Is the "flip-classroom" style of teaching suitable for the HPC or programming training? - Yes, f.e. as a "bring your own code" session. However, one should be cautious/ very explicit with the instructions on the **introductory** level, because most learners will have difficulties to set up their toolchains independently. - `CITATION.cff` files are also interesting, see https://citation-file-format.github.io/ - Is there any tools could create documents and websites from LaTex files? Does Sphinx support LaTex source too? - No idea about Sphinx. One program used for collaborative LaTeX editing/ rendering I've seen used is Overleaf. - Problem "Unable to enable actions on this repository" on GitHub - https://github.com/orgs/community/discussions/26931 ### Practice Teaching and Giving Feedback (exercise) - If you've used the 2x2 rubric to note down and give constructive verbal feedback within group -- great! - **Write down questions here that you would like to discuss in the main room or interesting conclusions which you would like to share with others.** - Everyone's tired... ## Feedback (Day 2): - What was most interesting and/or useful today? - The Sphinx lesson +1 - Sharing shell history +3 - Causes for motivation - the lesson-development part - The Sphinx and collaborative teaching lessons + some tips on how to improve our teaching skills (interactivity) - the split screen tips on screen sharing via zoom - Can you please inform here about the web visitor plugin? Interesting! - we use plausible.io, an ethical alternative to google analytics which costs a small fee - once you've set up your plausible account, you can add a page URL and get a small code snippet that you should add to your page header. For a sphinx lesson you put it into conf.py, see here for example (at the bottom): https://github.com/ENCCS/instructor-training/blob/main/content/conf.py - What was most unclear/complicated/less useful? - No chance to get hands dirty with lesson template. - [name=Team] This is a time constraint, but the template is here to use and abuse for the foreseeable future :) - I found it hard to distinguish personal preferences from findings from the literature and I hope reference to the literature will be added in the future. - [name=Team] The general references/ further reading can be found on the bottom of almost every episode (page). Many "uplifted" concepts link back to [Teaching Tech Together](https://teachtogether.tech/) book, which has _a lot_ of backing research (see also their page [What to Read Instead](https://teachtogether.tech/en/index.html)). - Would be nice with an earlier heads-up to the second teaching demo. I think it was not mentioned in the email that we do it twice. Maybe this optional homework would have supported there with the second demo but I did not have time to do it. - [name=Team] It could have been the same demo :) We'll try to make it even clearer. - What happens to the feedback? Can I read it back somewhere? - This page itself will live on for at least some time. ## Have a nice weekend everyone! ---- :::info *Always ask questions at the very bottom of this document, right **above** this.* ::: ----