Programming

Programming: We will use PostgreSQL as the database system, Java and C as the primary programming languages, and a POSIX environment as the primary operating system, for programming assignments.

Programming Environment and Tools: You are free to choose details such as operating system, development environment, and editor based on your preferences. However, no matter what you use, the result should be a source-file package that works on all platforms supported by Java J2SE. Further details on the packaging, submission, and testing procedure will be provided in class and on the newsgroup.

Programming Environment and Tools: You are free to choose details such as operating system, development environment, and editor based on your preferences. However, no matter what you use, the result should be a source-file package that works on the test platforms announced in class. Further details on the packaging, submission, and testing procedure will be provided in class and on the newsgroup.

Other Languages: If you prefer to use a language other than Java, please contact me. I am quite open to the idea, and encourage interested students to explore it further. However, please check with me very early in the course so that we can go over the specifics to make sure your submissions can be tested and graded fairly. You should avail of this option only if you are confident enough of your programming skills to not require any programming help, and are prepared to take on additional work. This option is designed for students who are proficient in Java and wish to use this opportunity to master another language, not for students weak in Java who wish to avoid it. There is absolutely no guarantee anyone will be granted this option.

Literate Programming: All submitted work must use a literate programming style: Your programs must be designed with a human as the intended reader, although they must also compile and run correctly. Programs that do not meet this requirement are likely to receive a zero score with no further consideration. Details will be discussed in class. The use of any specific literate-programming or documentation tool is neither necessary nor sufficient for this requirement.

Class accounts: Class accounts for Unix and PostgreSQL will be generated based on the forms distributed at the first class meeting. If you missed them, please get in touch with me. You should be able to access your accounts from anywhere on the Internet (including the labs in Neville Hall and elsewhere on campus) by using ssh to connect to cs.umaine.edu. On most Unix hosts, the command ssh -l username cs.umaine.edu should suffice. For Windows hosts, the freely available Putty program works well: http://www.chiark.greenend.org.uk/~sgtatham/putty/. Do not use unencrypted telnet sessions to connect to your account!