Use the Tab and Up, Down arrow keys to select menu items.
Special Topic
COSC473-24S2 SPECIAL TOPIC: DECENTRALISED APPLICATIONS ON THE WEBDESCRIPTIONThis course covers a variety of techniques for developing decentralised web applications that do not require centralised servers to function. Students will learn about advanced web programming technologies as well as the latest methods and research in decentralised computing.Since the early 2000s a wide variety of peer-to-peer technologies have been developed which allow people to digitally share information without centralised servers or gateways. However, until recently developing decentralised peer-to-peer applications required navigating a number of complex underlying network details. The development of better tooling that abstracts away many of these complex network details–along with other innovations such as Turing complete programming environments running on blockchain networks–make it easier to build decentralised applications than ever before. This course will introduce students to current research and trends in decentralised applications on the Web. Topics will include using the libp2p networking API to build peer-to-peer applications, the IPFS data transfer protocols, real-time collaboration in peer to peer networks, and the development of smart contracts for decentralised applications running on blockchain networks. For all these topics, the primary focus will be on the application layer and how to develop decentralised applications, though occasionally we will need to dive into the lower layers of the network stack. The course includes hands-on programming tutorials alongside lectures, and students will use the Typescript and Rust programming languages and WebAssembly learning about their use in decentralised systems.The course is open to postgraduate students from a variety of programming backgrounds; students who have taken SENG365 and/or COSC364 will likely find ways to build off what they learned in those courses.
1.Explain fundamental characteristics and components of decentralised applications, and classify existing applications in terms of decentralisation and distribution [WA1]2. Summarise and use common protocols, transports and methodologies for decentralised applications [WA1]3. Recognise some of the challenges relating to developing and deploying decentralised applications, including non-technical aspects such as evaluating their social and cultural context [WA2, WA6]4. Be able to design and develop a peer-to-peer application, taking a well-structured approach and making appropriate use of relevant resources [WA3]5. Identify and evaluate some of the emerging research in decentralised web technologies [WA10. WA12]6. Critically compare and contrast peer-to-peer software, such as different protocols, libraries, and different approaches to implementation [WA2]
Entry is subject to the approval of the Head of Department
Students must attend one activity from each section.
Ben Adams
The Computer Science department's grading policy states that in order to pass a course you must meet two requirements:1. You must achieve an average grade of at least 50% over all assessment items.2. You must achieve an average mark of at least 45% on invigilated assessment items.If you satisfy both these criteria, your grade will be determined by the following University-wide scale for converting marks to grades: an average mark of 50% is sufficient for a C- grade, an average mark of 55% earns a C grade, 60% earns a C+ grade and so forth. However if you do not satisfy both the passing criteria you will be given either a D or E grade depending on marks. Marks are sometimes scaled to achieve consistency between courses from year to year.Students may apply for special consideration if their performance in an assessment is affected by extenuating circumstances beyond their control.Applications for special consideration should be submitted via the Special Considerations website within five days of the assessment.Where an extension may be granted for an assessment, this will be decided by direct application to the Department and an application to the Examinations Office may not be required. Special consideration is not available for items worth less than 10% of the course.Students prevented by extenuating circumstances from completing the course after the final date for withdrawing, may apply for special consideration for late discontinuation of the course. Applications must be submitted to the Examinations Office within five days of the end of the main examination period for the semester.
Please click HERE for the CSSE Department's policy for the academic remedy of applications for a special consideration for final exams.
Domestic fee $1,176.00
International Postgraduate fees
* All fees are inclusive of NZ GST or any equivalent overseas tax, and do not include any programme level discount or additional course-related expenses.
For further information see Computer Science and Software Engineering .