Warning
This page is located in archive.

Troubleshooting

This page groups the troubleshooting you might encounter (mainly) at the beginning at the course.

Log in

Q: I'm having problem logging-in in the lab.

A: You should not use your main password. You need a separate password for the labs, you can set it:

  1. by using the following credential pair at the lab computer (username/password): problem/login. The computer should reboot and display a web browser (use Ctrl+Q for terminating the session).
  2. using the following link: https://cw.felk.cvut.cz/password/ Note: You will need the main access password (that one used for the study information system (KOS)).

Q: I'm having problem connecting using SSH/SCP protocol

A: Make sure you can connect to the server, i.e.:

  • Check your internet connection
  • Verify that the file-server is ON (ping 147.32.84.128)
  • Use correct syntax: ssh user@147.32.84.128
  • Make sure you use the correct password (use the one you use for logging-in in the lab, see above). Note: Make sure you provide your own username.

Data, scripts, programming

Q: My data/scripts are lost

A: Use your backed-up version. Only the files in your home directory are maintained (/home.nfs/username). These are accessible via any of the lab computer. Note that:

  • Data in temporary locations (/tmp, /local/temporary) are deleted daily.
  • Data saved on a disk of a local machine might be accessible by logging-into the target machine. Not guaranteed and not recommended.
  • It's up to you to backup your data.

Q: I can not execute my shell scripts

A: Make sure

  • Your script is executable (has correct permissions, see chmod)
  • The header (shebang) is correct (#!/bin/bash)
  • You use the correct path of executing the script: ./script.sh, or you've added the directory (where the script is located) to your PATH environment variable
  • The script was not modified during transfer (less ./script.sh), or the CR/LF line endings are correct (Note: Linux uses only LF, Windows use CR/LF. Use Google or take a look at stackoverflow.com discussion.

Q: Automated evaluator ignores my STDERR output

A: You probably use the following redirection: echo “ERROR” > /dev/stderr

  • In such case this is executed as a redirection to a file (with creation/truncation).
  • A bit better solution is to use: echo “ERROR” » /dev/stderr
  • But I prefer simpler solution: echo “ERROR” >&2

Q: I don't like the AutomatedEvaluation, it's ... [*UNPUBLISHABLE*]

A: Ok, you need to understand the motivation that led us to use the Automated Evaluation: The Automated Evaluation (AE) is only a part of the process of teaching you how to create develop a program according to the client specification (and to simulate a nearly-real-world scenario). We try to maintain an industry-level requirements for a good programming style:

  • The specification is never complete1). Make your best effort to guess/think (or even show some creativity/enhancement)2).
  • Read the specification multiple times, make sure you understand the main idea of the task. Remember to create a list (i.e. by underlining) of important technical details (what should go to stderr, what strings should be output, …).
  • Design, develop and test the code on your own. Think about it, redesign (refactor) it when needed. Make it readable and elegant3).
  • Verify that it conforms to the specification given.
  • The client (in real world) only occasionally provides you with some testing software you can test your code with. Therefore, make your best effort and handle all possible exceptions (incorrect input, non-existing file, incorrect permissions, …). Do not try to satisfy the AutomatedEvaluation system only4).
  • After you have created your 'best' solution, you should try if it passes the Automated evaluation. If it does not pass, it's probable that you have made a mistake in your code (or in understanding the specification). However, if your code was near-correct, these modifications shall be minor. If not, there is an error out there…
  • Of course, even AutomatedEvaluation system is undergoing changes. It's therefore possible that it also contains errors. Verify with your teacher and report the bug. If you are lucky you might get some +points for activity.
1)
And usually the one that decides about acceptance of your creation is so busy that he has no time to consult.
2)
If unsure where/how to start, try TDD so you have at least one of the software development methodologies in your resume.
3)
Remember that it might happen that this code might be the only one you have to show when applying for a job.
4)
If you are not precise now, it's not probable that you will be in your job…
courses/ae4b33oss/troubleshooting.txt · Last modified: 2015/02/26 16:21 by bursam