title: Courses

Introduction

Go is a great language for CS majors. This page presents some university courses that use Go. For a list of free and commercial Go training classes, see the Learn wiki.

Language

  • University of Helsinki, Department of Computer Science used to have a course named Introduction to Go, taught by K. Bäckman: http://www.cs.helsinki.fi/courses/582336 in Spring 2010.
  • University of Sofia “St. Kliment Ohridski”, Faculty of Mathematics and Informatics has elective course named “Programming with Go”, taught by K. Vladimiroff: http://fmi.golang.bg (bulgarian) and their [public lectures] - (also in bulgarian)
  • Free University of Berlin (Germany) had a course Introduction to Go Programming in Spring 2013.
  • J.W. Goethe University (Frankfurt/Main, Germany) had a course Introduction to Go Programming in Spring 2015 (in german)
  • University of Pennsylvania had a course on Go Programming in Spring 2017.
  • SUNY Potsdam (Potsdam, NY) “Selected languages course with Go”, taught by Dr. Brian C. Ladd (Associate Professor of Computer Science). First class in Spring 2017
  • University of Milan has a course named “Computer Programming” taught by Paolo Boldi: http://boldi.di.unimi.it/Corsi/Inf2018/
  • University of Zagreb (Croatia), Faculty of Electrical Engineering and Computing, has an ongoing course Go programming language since 2020, held by Z. Bratković and B. Banelli. Videos available from academic year 2019./2020. and 2020./2021. (Croatian)
  • The Faculty of Informatics at Masaryk University has offered a Go course as part of the PB173: Domain Specific Development course since 2023. The current course materials are publicly accessible under the course-go organization.

Programming Concepts

  • President University (Cikarang, West Java, Indonesia) had a course Programming Concepts for every junior students (using C, Go and Javascript).

Web

  • CS 4830: Science and Engineering of the WWW taught by Ryanne Dolan at University of Missouri: http://4830.ryannedolan.info/
  • CSCI 130: Web Programming taught by Todd McLeod at California State University Fresno
  • CSCI 194: Adv. Web Programming taught by Todd McLeod at California State University Fresno
  • CIT 90: Data Drive Websites taught by Todd McLeod at Fresno City College
  • CIT 94: Server Side Scripting taught by Todd McLeod at Fresno City College

Concurrency

Distributed Computing

Networking

Compiler Design

  • Compiler Design (CS712/CS812) at the University of New Hampshire: http://www.cs.unh.edu/~cs712/. In Fall 2016 we are compiling a subset of Go to LLVM code.

  • Introduction to Compilers (6197, Spanish) at Rey Juan Carlos University of Madrid: http://lsub.org/comp. Students write a compiler in Go that implements a language for drawing graphics.

Security