Hide menu

TDDE18 Programming (C++)

Activities


Lectures (FÖ)

Lecture/FÖ in the schedule means lecture. Lectures present language feature you will need on laborations. It is important to be curious, ask questions, and try the discussed topics on lab. Attending is the only way to get all information.

Lessons (LE)

Lesson/LE in the schedule means lesson. Attending is the only way to get all information.

On the lessons your class will practice on examples related to the previous lecture. Exercises are solved and discussed together. It is important to be active and both ask and answer questions. You are allowed - intended - to do things "incorrectly" during the lessons, in order to see why it is wrong and how to get it right. Do not be afraid to just guess how to do things if you do not know.

Programming workshops (PROGR)

Programming workshop/PROGR (Swedish: programmeringsstuga) is times where you can independently work on lab assignments in the computer halls without the presence of assistants in the room. The assistants will be available for questions in a separate room (see TimeEdit) so you can also go to that room if you wish to talk to an assistant. Note that the assistants will generally not go to the computer rooms with you, in general if you have specific questions about problems in your code then you should ask during lab sessions instead. The programming workshop sessions are instead reserved for more discussion based questions and questions of a more general nature.

Programming laborations

LA schedule means computer laboration. You must do all computer laborations together with a fellow student of your choice. You will work best together if you and your friend are equally skilled, so we urge everyone to pair up with someone who is approximately of the same skill level. If your friend is noticeable more skilled than you, you should find someone at your level to work with.

The most fatal mistake a beginner can do is to pair up with someone already very skilled, in the belief that the skilled person can teach them a lot. What really happens in that situation is that the beginner will never be challenged to think and do his/her own work, and thus not learn anything. The beginner will perhaps feel like they understand, but during the exam he/she will usually discover that they did not understand as much as they thought.

Attending labs is the only way to demonstrate solutions and get help from assistant. You should use this time well, do NOT use it to solve lab problems, DO use it to test and ask questions regarding your particular solution (that you prepared BEFORE the lab).

Note that course personnel easily can get overloaded, so before asking you should try to figure out how things work by reading the course book, manual pages, online pages or by usingsystematic trial and error (be aware that what seems to work may still be wrong, a book or reference manual is the best source of accurate information). You can even ask a fellow student (preferably the one you work with) how a language feature works. Beware however that solutions to lab problems may not be copied. You may not ask for solutions, accept solutions offered, or offer solutions to others. You can discuss with friends how the for-loop works in general, but you may not copy a specific for-loop they wrote from their screen, and they may not write the for-loop for you. Give your friends help by asking clever questions, do not give away solutions. (I may decide you was the one that copied the code, and not your friend.)

It's often worthwhile to listen in on others when they get help and hints from the assistant. That way you can get a little bit ahead of your mates, and you can spend your time with the assistant on other questions. Thus you learn twice as much.

The scheduled laborations are only a small part of the time you will need to complete the labs. You will have to find more lab time on your own. The lab computers are generally available 24/7 (24h/day, 7day/week), except during holidays and exams, but even then at least one room is usually open. If a computer is free you are allowed to use it, provided you do not interfere with scheduled activity (see the schedule next to the lab room door). It is sometimes OK to use a free computer also if some activity is scheduled in the room, but be prepared to leave the computer in favor of any students that attend the scheduled lab. Use your senses and be polite.

If you have a scheduled lab you may ask anyone not belonging to your course (or group) to leave (look at what they are doing, and if it does not look like C++ and your labs they're probably using your computer). If someone refuse to leave, or if you're too shy, go to the assistant immediately. Do not go to a free computer in another room unless the assistant instruct you to.

Rules for examination of computer lab assignments at IDA

You are expected to do lab assignments in group or individually, as instructed for a course. However, examination is always based on individual performance.

It is not allowed to hand in solutions copied from other students, or from elsewhere, even if you make changes to the solutions. If there is suspicion of such, or any other form of cheating, teachers are obliged to report it to the University Disciplinary Board.

Be prepared to answer questions about details in specific code and its connection to theory. You may also be asked to explain why you have chosen a specific solution. This applies to all group members.

If you foresee problems meeting a deadline, contact your teacher. You can then get some help and maybe the deadline can be set to a later date. It is always better to discuss problems, instead of, e.g., to cheat.

Any kind of academic dishonesty, such as cheating (e.g., plagiarism, use of unauthorized assistance, and use of prohibited AI-based assistants) and failure to comply with university examination rules, may result in the filing of a complaint to the University Disciplinary Board. The potential penalties include suspension, warning.

Policy for handing in computer lab assignments at IDA

For all IDA courses having computer lab assignments there will be one deadline during or at the end of the course. If you fail to make the deadline, you must retake the, possibly new, lab course the next time the course is given.

If a course deviates from this policy, information will be given on the course web pages.


Page responsible: Christoffer Holm
Last updated: 2023-08-23