210 likes | 302 Views
This course overview discusses the growth and evolution of the DEWDROP course at the University of Scranton, focusing on web development concepts, technologies, and best practices. From its inception as a Special Topics Course in 1997 to its integration as a regular course, DEWDROP has emphasized programming languages, server-side and client-side scripting, CGI interface, object-oriented programming, and the importance of standards in web development. The course also explores the PNA Project, a joint initiative between the University of Scranton and Marywood University focused on web-based daily diet analysis and nutrition targets. The conclusion highlights key principles to consider when teaching web development, emphasizing the importance of foundational knowledge, standards adherence, pattern recognition, object-oriented design, and database integration.
E N D
DEWDROPEducating students for the future of web development John Beidler Computing Sciences, University of Scranton, Scranton, PA 18510 , USAE-mail: beidler@cs.scranton.edu
DEWDROP • Background • PNA Project • A Web Development Course • DEWDROP and other courses • Conclusions John Beidler - University of Scranton
DEWDROP (Background) • 1997 – First offered as a Special Topics Course • 1998-1999 – Course growth • 2000 – Offered as a regular course, Cmps 356 • 2002 – DEWDROP John Beidler - University of Scranton
DEWDROP (Background) • 1997 – First offered as a Special Topics Course • Client side: Javascript emphasis • CGI: Know the standard, use it • Server side: • Resources required • Environmental variables • String processing (Reg. Expr.) • System resources • Call other programs • Access to data representations • Perl (or tcl) emphasized as a convenience John Beidler - University of Scranton
DEWDROP (Background) • 1998-1999 – Course growth • Strong reuse emphasis • Javascript libraries • Standardized use of CGI interface • Perl reuse using “require”. • PNA Project • Beginning of web development with OO John Beidler - University of Scranton
DEWDROP (Background) • 2000-2001 – Offered as a regular course, Cmps 356 • OO based reuse • 2002 – DEWDROP John Beidler - University of Scranton
The PNA Project • Joint project • U. of Scranton – Comp. Sci. • Marywood U. – Dietetics and Nutrition • USDA Nutrition Database • Daily diet analysis • Currently, 1 to 2 hours per day w. dietitian • Goal, < 15 minutes per day w/o dietitian John Beidler - University of Scranton
The PNA Project • Web based (www.scranton.edu/pnap) • Client Modules • Daily diet control/analysis • Calorie expenditure • Personal Information • Nutrition Targets • Dietitian/Health care modules John Beidler - University of Scranton
The PNA Project • Web based (www.scranton.edu/pnap) • Client Modules • Dietitian/Health care modules • Set client targets • View client diaries • Improved (asynchronous) correspondence via the web and email John Beidler - University of Scranton
A Web Development Course • Essential resources required • Environmental variables • String processing • File/directory processing • Resource access • Concept dependence, not programming language dependence. • Using objects to develop a combined client-side, server-side view. John Beidler - University of Scranton
A Web Development Course • Low level intro to server side • Base choice on need • RE capable • Associative memory capable • Prefer Perl or tcl • Integrated view • Single resource combining client/server views • PHP is one alternative John Beidler - University of Scranton
A Web Development Course • Why Apache/PHP combination • Price – $0.00 • Availability • MS windows • UNIX platforms • Compatibility between platforms John Beidler - University of Scranton
A Web Development Course • What about Apache/PHP/database • Apache/PHP/MySQL • Apache/PHP/PostGres John Beidler - University of Scranton
DEWDROP and other courses • Web - Network – Database Courses • Chicken and egg problem • Which course is “easier”? More marketable? • Use it to feed the other two • No formal pre/co-requisite structure • The Web course feeds the Network and the Database courses • Web as network protocol • Role of database in web’s future John Beidler - University of Scranton
DEWDROP and other courses • The Database course feeds the web course • Use of Java servlets to create a simple (web) front end to databases. • The Network course feeds the web course • See the web from under the hood • Unix/Apache web security • Good – Linux/Apache • Better – FreeBSD/Apache • Best – VMS/Apache John Beidler - University of Scranton
DEWDROP and other courses • Is security important? • Sept. 2001 – Code red and nimda virus attacks • U. of Scranton web servers • 3 MS-based, 2 participated, including www.Scranton.edu • 11 unix based, 0 participated John Beidler - University of Scranton
Conclusions • If you are teaching HTML, you are not teaching Web Development. • If you are teaching Javascript, you are not teaching Web Development. • If you are teaching Perl, you are not teaching Web Development. • If you are teaching PHP, you are not teaching Web Development. John Beidler - University of Scranton
Conclusions • If you are teaching vendor specific resources, you are not teaching Web Development. • If you are teaching ASP, you may get bit by a snake. John Beidler - University of Scranton
Conclusions • Web Development must include the basics • Web Development must include standards • Web Development must be recognize patterns • Web Development must be object based • Web Development must be proceed towards using a database John Beidler - University of Scranton
Conclusions • Web Development must include security issues – There is no IIS equivalent to SUExec • Web Development must be based on international standards (Apache > 50%) • Web Development must include software reuse John Beidler - University of Scranton
Conclusions Database Enhanced Web Development with Reusable Objects and Patterns John Beidler - University of Scranton