This course provides a foundation of current and future web technologies, which include the development of web applications and services, web components, and network protocols necessary for web programming. The course begins with the basics such as markup languages HTML and XML, HTTP protocol and the mechanism of how a web server handles requests, web programming languages, cookies, session management, database integration, performance tuning, and security issues concerning the web applications. This course emphasizes on both client-side programming using JavaScript and server-side programming using Python. Finally this course introduces web service development and semantic web technology.