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]
This course will provide students with an opportunity to develop the Graduate Attributes specified below:
Employable, innovative and enterprising
Students will develop key skills and attributes sought by employers that can be used in a range of applications.
Entry is subject to the approval of the Head of Department
Students must attend one activity from each section.
Ben Adams
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,110.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 .