SCIENCE

Programming with Web Technologies (Online)

Certificate of Proficiency | Contributes to PGCertInfoTech

Explore the tools and techniques used to create modern websites and web apps with this 30-point credit-bearing course comprising 12 weekly modules and a 2-week project.

Entry Requirements

Students will have a bachelors degree in a non IT-related subject

Duration

14 weeks

Next Start Dates

17 July 2023 (2023 Semester Two)

Enrolment closes one week before the course starts. Enrol early to secure your spot.

Domestic Fees

$2,554.50

 

 

Course Overview

This course is part of the Postgraduate Certificate in Information Technology (PGCertInfoTech) and may also be taken as a course-only study option. It provides a practical exploration of tools and techniques used to create modern, responsive websites and web apps. You will learn how technologies such as HTML5, CSS, JavaScript, Node JS, and SQL fit together to create the websites you see and use every day.

Upon completion, students who wish to progress their studies further towards a formal qualification may count this course towards the Postgraduate Certificate in Information Technology (entry criteria and time limits apply).

This intensive hands-on course focuses on the development of web-based applications, which are hugely prevalent in the modern world. Knowledge of design principles and technologies for web-based applications, coupled with associated practical skills, are invaluable to individuals intending to work in the IT industry. This course introduces the key client-side technologies HTML, CSS and JavaScript, as well as server-side technologies to support dynamic web pages and relational database access. Students will also learn about the usability of web-based user interfaces, and the use of mobile apps in a web application.
Introduction to HTML In this first module, you’ll be introduced to one of the most fundamental building blocks of modern websites: HTML. We’ll begin with a brief discussion activity, in which you will introduce yourself to the rest of the class, and meet your fellow students. We then start to learn about some of the tools that you’ll be using in your sites, as you progress through the course.
Introduction to CSS In the first module, you learnt about some of the fundamental building blocks of a webpage using HTML. Now, it is time to move onto ways to style your pages. You will do this using CSS.
Advanced CSS In this module, we will continue our exploration of all things CSS. Specifically, we will be looking at how to use filters, transforms, transitions and animations. All of these are ways to manipulate elements on the page.

We will then be covering modern CSS layout techniques, including Flexbox and Grid, before we examine responsive design—the practice of building webpages that are responsive to changes in browser characteristics, like changing screen sizes and differences between mobile and desktop browsers.

Introduction to JavaScript Now, we’re really into the swing of things and starting to get a feel for creating responsive and dynamic web pages. For the next couple of modules, we’ll be focusing on client-side JavaScript (JS).

In this series, we’ll talk about why we would want JS in our webpages, and how to include it. We’ll then go over basic concepts—variables, strings, and console debugging. Finally, we’ll jump right into how we can actually interact with our HTML from JavaScript, to bend the page to our will.

JavaScript continues As we continue with our focus on JavaScript, you will now be introduced to functions. You will also spend some more time on event handling, as well as discovering how to use JS packages, in particular, JSON.
fetch() and async programming (JavaScript III) This module represents the last of the client-side JavaScript-focused topics. In particular, we will be looking at one of the most useful functions in JavaScript—fetch(). We’ll also be discussing asynchronous programming, as fetch() is an asynchronous function. The module will introduce what this means, and why it’s necessary, and focus on the easiest way to use asynchronous functions in your code.
node.js and Express For the remainder of the course, we’re going to be looking at the backend infrastructure of a web app. Often, servers will need to contain some logic and data storage, beyond simply serving up HTML, CSS, JS files, images, etc. There are many ways in which we can write this logic and provide data storage.

In this module, we’ll be looking at Node.js, coupled with several convenient libraries and frameworks such as Express, to provide this logic. Later on we’ll also be looking at SQLite databases to provide the data storage for us.

Handlebars and file uploading/processing In this module we’re going to be looking at how we can output HTML from our node.js backend code. We’ll first look at how this can be done manually. Then, we’ll look at how to do it properly, using a view engine—specifically, Handlebars.
Cookies, modules and routers In this module, we look at several, additional useful concepts related to node.js and Express. These include handling file uploads using the Multer package, storing data in the browser using cookies, and better code organisation using node.js modules and Express routers.
Databases In this module, you’ll learn about SQL and how to create and query SQLite databases. The knowledge you gain here is directly transferrable to any other SQL-based database, such as MySQL, OracleDB, or Microsoft’s SQL Server.

In addition, you’ll learn about how to design databases, from real-world descriptions given by clients. In doing so, you’ll gain experience with the Entity-Relational (ER) model and will learn how to draw ER diagrams to visualise database structure.

Putting it all together In the previous module, we learned about SQLite databases, and saw what a valuable tool they are for storing, manipulating, and querying data. In this module, we’ll tie this into our node.js backends in order to create truly full-stack web applications.
Focus on assessment work There are no learning materials for the final week of the course. Instead, you are encouraged to devote all of your time to working on your assessment tasks. From this point, you will be forming teams to complete the final major project, and your individual report on this process.

Students who complete this course will be able to:

  1. Describe the anatomy of web-based software applications
  2. Describe the open standards upon which web-based applications are built: HTTP, HTML, and URIs
  3. Develop simple web-based client applications using contemporary client-side technologies: HTML5, CSS and JavaScript
  4. Develop applications with dynamic web pages using Node JS and relational databases
  5. Explain fundamental principles of usability and design web-based user interfaces according to established usability guidelines.

Upon successful completion of the course you will:

  • Be awarded with 30 credit points from the University of Auckland
  • Have the option to take your credit into the PGCertInfoTech (entry criteria and time limits apply)

Frequently asked questions about this course

Application FAQs

What are the entry requirements?

This course is for students with a bachelors degree in a non IT-related subject.

What is the date for the next intake?

The next start date for this course is 17 July 2023. Enrolment closes one week before the course starts. Enrol early to secure your spot.

Is the course fee a one-off lump sum?

Yes, the course fee is a one-off sum of $2,554.50 for domestic students.

Is this course open to non-resident students?

No. Currently Auckland Online Certificates of Proficiency are only open to NZ citizens and permanent residents.

Studying FAQs
Can I study the course in my own time? Is it suitable for those working full-time?

Yes. You can study at a time that suits you (within the allocated course dates). Auckland Online courses are designed for working professionals. They are flexible yet structured to help you gain the knowledge in the time you have.

How is the course structured?

The course will run over 14 weeks (with a break in the middle), and will comprise 12 weekly modules and a 2-week project. Further details on the course structure can be found under the ‘Course Structure’ tab further up on this page.

Assessment FAQs
How will I be assessed?

Learners will be assessed through a combination of activities that address the learning objectives from each of the modules in the course. These will comprise practical tests, quizzes, individual assignments, and a group project.

What does the 2-week project involve?

Working in groups assigned by your instructor, you will develop a blogging website using the skills you have learnt throughout the course. The project will also give you the opportunity to show how you can use online resources to discover and apply content not taught within the course.

Benefits FAQs

What is a Certificate of Proficiency (CoP)?

A Certificate of Proficiency (CoP) is a course-only study option that allows you to take a course at the University of Auckland, without studying a full programme. It is a good option for those who want to study short-term or to test whether a subject is something they wish to pursue more of in the future.

Does the course enable me to take further study at the University?

If you decide to progress your studies further towards a full qualification, you can apply to reassign the points from your CoP to the PGCertInfoTech (entry criteria and time limits apply).

How many course credits will I attain upon completion of the course?

Upon completion of the course, you will be awarded with 30 credit points from the University of Auckland.

Do I get a certificate at the end?

As a Certificate of Proficiency is not a formal qualification, you will not be able to graduate with it or receive a graduation certificate. Your results will be recorded on your official academic transcript, providing evidence of your study.

Programming with Web Technologies – Start your enrolment

* indicates a required field

We collect your contact details so we can send you information about studying at the University of Auckland. Please read our Privacy Policy for more information.

Experimenting with programming in the browser

Experimenting with programming in the browser

How to Learn the Basics of Programming? Getting started with programming can be a daunting prospect. Reading code can seem like you're reading a foreign language. Also, there are a huge amount of resources available online - but where do you start? Today we'll be...

read more
Perspectives in Public Policy – The Policy Cycle

Perspectives in Public Policy – The Policy Cycle

What is Public Policy? According to Wilson (2009), public policy is what governments decide to do, or not do, and their explanations for the outcomes of those decisions in the real world. A recent example of this is the government's 2019 cash injection into the mental...

read more