392132 Code Reading Club (S) (SoSe 2023)

Contents, comment

-Why attend this course-

"Nobody would try to become an author without being an active reader. Why should becoming a programmer be different?", "Code is read much more often than it is written", "The ratio of time spent reading versus writing is well over 10 to 1. We are constantly reading old code as part of the effort to write new code [...] Making it easy to read makes it easier to write." - these are just some quotes for you to get an idea of how important reading and readability of code is, especially in industry jobs (see our github for sources). Also, any programmer who has ever worked on a project that consisted of more than some throwaway scripts knows the frustrating situation of spending inordinate amounts of time trying to understand code you or someone else wrote months ago - preferably to fix a bug right before an important deadline. Like any skill, we believe that becoming proficient (and efficient) at reading code can be trained by practice. A more than welcome side effect of reading other people's code is that you get to learn how they think and organize their software, becoming a better programmer on the way - and there are many open source repositories of great coders to learn from out there!

-What we will do in this course-

In this course, we adapt the concept of a Journal Club to reading code. Instead of reading a new paper, we will be finding our way around a new code base every week. As a bioinformatics group, our focus is on bioinformatics tools and the languages C, C++ and python. However, you are welcome to bring projects in other languages or from other fields if you want.

We will start the course by learning about how to get into an unfamiliar code base, after which each of you can choose a repository to read in depth and present in one of the following weeks. You can either bring your own or choose from a list we will provide.

Every session after that will work just like a "normal" journal club: Preparing for the session everyone reads (parts of) the repository and tries to understand it while the "presenter" reads it more in depth and tries to become more of an expert on it than the others. In the actual session, we will develop an understanding of the code base together as well as re-read those parts of the code that we did not quite understand or that are simply critical/interesting/cool.

Requirements for participation, required level

-What we recommend-

If you're thinking of attending this course, most likely you have all that is needed. If you have at least some knowledge about C(++) and python and have done at least done some bigger project in any language (experience from "Grundlagen des Softwareengineering" or equivalent is probably enough here), you should be fine.

External comments page

https://gi.cebitec.uni-bielefeld.de/teaching/2023summer/readcode

Teaching staff

Dates ( Calendar view )

Frequency Weekday Time Format / Place Period  

Show passed dates >>

Subject assignments

Module Course Requirements  
39-Inf-EGMI Ergänzungsmodul Informatik vertiefendes Seminar 1 Ungraded examination
Student information
vertiefendes Seminar 2 Ungraded examination
Student information
vertiefendes Seminar 3 Ungraded examination
Student information
vertiefendes Seminar 4 Ungraded examination
Student information

The binding module descriptions contain further information, including specifications on the "types of assignments" students need to complete. In cases where a module description mentions more than one kind of assignment, the respective member of the teaching staff will decide which task(s) they assign the students.


No more requirements

E-Learning Space

A corresponding course offer for this course already exists in the e-learning system. Teaching staff can store materials relating to teaching courses there:

Registered number: 8
This is the number of students having stored the course in their timetable. In brackets, you see the number of users registered via guest accounts.
Address:
SS2023_392132@ekvv.uni-bielefeld.de
This address can be used by teaching staff, their secretary's offices as well as the individuals in charge of course data maintenance to send emails to the course participants. IMPORTANT: All sent emails must be activated. Wait for the activation email and follow the instructions given there.
If the reference number is used for several courses in the course of the semester, use the following alternative address to reach the participants of exactly this: VST_391466752@ekvv.uni-bielefeld.de
Coverage:
8 Students to be reached directly via email
Notes:
Additional notes on the electronic mailing lists
Email archive
Number of entries 9
Open email archive
Last update basic details/teaching staff:
Thursday, January 5, 2023 
Last update times:
Thursday, May 4, 2023 
Last update rooms:
Thursday, May 4, 2023 
Type(s) / SWS (hours per week per semester)
S / 2
Language
This lecture is taught in english
Department
Faculty of Technology
Questions or corrections?
Questions or correction requests for this course?
Planning support
Clashing dates for this course
Links to this course
If you want to set links to this course page, please use one of the following links. Do not use the link shown in your browser!
The following link includes the course ID and is always unique:
https://ekvv.uni-bielefeld.de/kvv_publ/publ/vd?id=391466752
Send page to mobile
Click to open QR code
Scan QR code: Enlarge QR code
ID
391466752