130 likes | 297 Views
DINANIC WEB PROGRAMMING. Stanko Shtrakov , Assos . Professor, d-r Department of Computer Science and Technologies South-West University of Blagoevgrad. Course Goal:. Understand the basic principles of computer networks Network basic Basic design principles in network protocols
E N D
DINANIC WEB PROGRAMMING StankoShtrakov , Assos. Professor, d-r Department of Computer Science and Technologies South-West University of Blagoevgrad
Course Goal: • Understand the basic principles of computer networks • Network basic • Basic design principles in network protocols • Internet protocols • Wireless network protocols • Study the programming aspects of computer networks • Socket programming • Inter-process communication • Understand how network research is done • How to determine what is important • What are the trend
Administrative • Course website: • http://www.renenergy2011.net/moodle • Announcements • Homework Assignments • Lecture Notes • Links to required/recommended readings • How to reach me: • Email: sshtrakov@abv.bg • Office Hours: 9:30am-11:15am or by appointment • Office: 1331, 1549 • Prerequisites:Apache, PHP, Mysql
Textbook • Required: • Unix Network Programming, The Sockets Networking API, Volumes 1, by W Richard Stevens, Bill Fenner, Andrew M. Rudoff, published by Addison-Wesley (UNP) • Optional: • TCP/IP Illustrated Volumes 1, by W. Richard Stevens, published by Addison-Wesley, 1994 (TI). • Java Network Programming, by Merlin Hughes, Michael Shoffner, Derek Hamner, Maria Winslow, Conrad Hughes, published Manning Publications • Mailing list: • CSCE515-001@lists.cse.sc.edu CSCE515 – Computer Network Programming – 2008 Fall
Tentative topics • OSI and TCP/IP Network models • TCP/IP • CGI and Perl • Socket programming • Web programming • Other network programming
Grading • 40% Computer Projects (3 – one in Perl, one in php, one in Java) • 20% Midterm • 40% Final: closed book, and comprehensive. • Grading scale: • A : 90 — 100 • B+ : 87 — 89 • B : 80 — 86 • C+ : 77 — 79 • C : 70 — 76 • D : 60 — 69 • F <= 59
Homework & projects • Programming Environments • Windows XP workstation lab.: • Lab. 1331 • All students should have an account on Computer System and Technologies Department Windows workstations • Submission should be via Moodle application • Make sure you understand how to submit. • Directions for submission will be posted on the course home page with the first assignment.
Project grading • It is expected that everyone is familiar with programming • Comment your code! • Your code should be readable, structured! • 25% of the grade depends on the quality of the code. • Is the code easy to understand? • Is it easy to make a small change of the functionality? • Can code handle unexpected input, exceptions? • Programs must come with a makefile • Java programs must come with a shell script that starts them: • Sets CLASSPATH to the right value
Project grading • 25% of the grade depends on documentation • Documentations must contain: • Your name and student number • How to use your programs • Which program does what, which parameters are needed, screenshots • A description of your program’s design • Documentations must not contain: • Your code in words • “After spending the whole weekend and today at my girlfriend’s house trying to solve the exercises for the Network Programming course which are due today, I must confess that I did not succeed in solving them all”.
Grading • Horner code: • All submitted work should be yours! • NO sharing of code • Do not copy code from Internet • Discussion is encouraged
Email Policies • Make sure you put your course in the subject of the message. • I may check my messages in time to help you make a deadline, but this may not necessarily be the case. • Ask specific question instead of general question. • Bad example: “I don’t know why it does not work?” • In general, I will answer quick questions sooner than one that will take a long time to answer • In general I will monitor and respond to email during office hours, but in-person students will take precedence.
Your Best Strategy • Come to every lecture • Read articles related to network protocols and network programming • Do not wait till last minute to prepare for exam or work on project • Enjoy the fun!
Lectures need your help! • Ask questions • Make suggestions! • Read something interesting and relevant to this course? • Announce it in class!