Skip to main content

Command Palette

Search for a command to run...

Advanced Web Development - CM3035

Updated
3 min read
Advanced Web Development - CM3035
P

Working as an online tutor for the Bachelor of Computer Science Degree from Goldsmiths, University of London on the Coursera platform. This is the first undergraduate degree programme available on Coursera, one of the world’s leading online education providers.

The programme has been designed to equip students to access careers in emerging technologies, providing opportunities for students to study machine learning, data science, virtual reality, game development and web programming to meet the needs of career changers in industry as well as those taking their first steps into the innovative computer science field.

Web application development is a critical application area for computer science. Many of the largest technology companies maintain large scale web applications, providing services such as social media, search, advertising and video and audio streaming. While studying this Computer Science programme, you will have developed client-side web development skills, database and networking skills, programming skills and computer security know-how. The advanced web development module provides an in-depth exploration of server and client-side web technologies and development which builds on this foundation.

By taking this module, through this module, you will learn how to build dynamic, data-driven websites using databases, front-end frameworks and server-side programming. This module provides the skill set required to do full stack web development work. By studying this module, you will develop a web developer skill set that enables you to understand how to build and deploy complete, data-driven websites. You will consider several different technologies for client side-web development such as HTML, CSS, Javascript and templates. You will explore methods for developing server-side web applications, by building web-accessible wrappers around databases. You will consider issues of scalability, and learn about web application configuration and deployment.


Topics covered will be:

  • The web stack: clients, web servers and databases
  • Advanced features of HTML, CSS and Templates
  • Deploy a website
  • Basic databases and data schemas for a website
  • Build a CRUD/ RESTFul API
  • Build a web-socket server
  • User authentication and security
  • Working with external APIs
  • Scalability

Students who successfully complete this module will be able to:

  • Create a data-driven web page using HTML, CSS and templates
  • Create server-side web applications with HTTP, RESTFul and web socket interfaces
  • Set up a web and database server and use it to deploy a data driven web application
  • Design basic database schemas to model specific data
  • Describe and evaluate user authentication and security features and implement them in software
  • Explain issues relating to scalability in web servers and use these principles to assess particular web server configurations

Resources

"The module will draw on a number of different, largely web-based, public resources as well as the resources produced as bespoke material for this module."

Essential reading

"The standard text book(s) for the module will be:"

  • Hall, Eric Internet Core Protocols: the Definitive Guide, O'Reilly Media, Incorporated, 2000.

  • Harrington, J.L. Relational Database Design and Implementation, Elsevier Science & Technology, 2016.

  • Kumar, Akshi Web Technology : Theory and Practice, CRC Press LLC, 2018.

  • Webber et al. REST in Practice: Hypermedia and Systems Architecture. O'Reilly 2016

Essential reading


Pedram Badakhchani Useful links:

My p5 sketches:

https://editor.p5js.org/pedbad/collections

My codepen:

https://codepen.io/pedbad

More from this blog

pedbad

39 posts

Head of eLearning at the University of Cambridge Language Centre & Online Tutor for the BSc Computer Science, Goldsmiths, University of London.