Introducing the web Lecture 1 CS 638 Web Programming The web in a nutshell Web page (HTML) Web client Conversation using http CS 638 Web Programming – Estan & Kivolowitz Web server Lecture outline The client Conversation between client and server The server HTML documents Class overview CS 638 Web Programming – Estan & Kivolowitz <title>Bucky Badger’s web page</title> <body> <h1>Welcome to Bucky's web page</h1> <img src="bucky.gif"> <p>I am Bucky, the mascot for University of Wisconsin athletics. Please visit <a href="http://www.uwbadgers.com/football/index.html"> the web page of our football team</a> and <a href="http://www.uwbadgers.com/basketball/index.html"> the web page of our basketball team</a>. </body> CS 638 Web Programming – Estan & Kivolowitz Class overview What this class is meant to give you Fundamental concepts of client-server systems Hands-on introduction to current web technologies Things covered elsewhere Full mastery of technologies – years of experience Programming languages and compilers – CS 536 Building system software – CS 537 Graphics, imaging – CS 559 Building database systems, designing databases – CS 564 How computer networks work – CS 640 Finding out what apps should do – IS classes (e.g.371, 365) CS 638 Web Programming – Estan & Kivolowitz General problems addressed System organization – how to organize a large distributed system such as the web Software engineering – how to make large applications easy to build and update Data representation – how to organize data Multiple stakeholders – what happens if different participants have different goals Performance – how to make it fast CS 638 Web Programming – Estan & Kivolowitz The 7 segments of the class Web pages (HTML, CSS, images, http) The C# language (used on server side) Interacting with databases (SQL, ODBC) ASP.NET (framework for web applications) JavaScript (client side programming) Web 2.0 (AJAX, XML, web services) The Internet, security, wider context Each segment will span 3 – 5 lectures CS 638 Web Programming – Estan & Kivolowitz Grading Per-segment in-class quizzes (best 6 of 7) 30% 4 individual programming assignments Extra credit programming assignment Cumulative final exam 40% 5% 30% CS 638 Web Programming – Estan & Kivolowitz