Skip to main content
UiA

University of Agder Unifies Student Development Environments with Coder

The Norwegian university started with Coder's open source platform to consolidate scattered SSH access and JupyterHub instances, then upgraded to Coder Enterprise to scale securely across teaching, research, and exams.

Industry
Industry Icon
Higher Education
Number of Developers
Number of Developers Icon
~ 14,000 students
Challenges
  • Environments scattered across SSH, JupyterHub, and shared servers
  • No unified interface across teaching, research, and exams
  • Small IT team maintaining multiple disconnected systems
  • No native way to allocate compute resources by course
  • No way to assign different templates to different user groups
  • While exams are run digitally, the student does not have development tools available
Outcomes
  • Single, unified interface across teaching, research, and exams
  • JupyterHub deployment retired entirely
  • Built-in credits system for compute allocation
  • Group-based template assignment by course and user type
  • High-availability deployment across multiple Coder instances
  • Live exam piloted successfully with 40 concurrent students
  • Reduced dependence on physical computer labs
  • Templates managed through Terraform, extending to OpenStack
Share this article

About the University of Agder (UiA)

The University of Agder (UiA) is a public university in Norway with campuses in Kristiansand and Grimstad, enrolling approximately 14,000 students university-wide, including close to 4,000 at the Grimstad campus. Sigurd Kristian Brinch, Senior Consultant and Lab Engineer in UiA's Department of ICT within the Faculty of Engineering and Science, leads the infrastructure that supports student coursework, faculty research, and GPU-backed computing across the department.

The challenge

Before Coder, a student or researcher at UiA could end up on any of three different paths to a working development environment, depending on the course or project:

  • Direct SSH access to a virtual machine
  • A JupyterHub notebook for coursework
  • Direct SSH access to a shared server

None of these paths were connected to one another, and each came with its own setup process, its own quirks, and its own maintenance schedule for Brinch's team to track.

For a small ICT team supporting thousands of students across two campuses, that fragmentation added up. Every system needed its own patching, its own upgrades, and its own troubleshooting playbook, and none of it gave students or faculty a consistent starting point.

As the department leaned further into GPU-backed research computing, UiA began to outgrow the open-source version of Coder they started with. Built-in ways to control how compute resources and environment templates were allocated across courses and projects became a requirement that bespoke workarounds could no longer handle. Moving from Coder OSS to Coder Enterprise would allow a student in an introductory course and a researcher running GPU workloads to be treated the same way, from an infrastructure standpoint.

The same limitations showed up in exams. Programming courses at UiA were run digitally but without development tools available in part because there was no dependable way to give an entire class a live, working coding environment at the same moment.

The goal with Coder is to have everyone access our compute resources through a single interface.

Sigurd Kristian Brinch, Senior Consultant and Lab Engineer, UiA's Department of ICT

The solution

Starting with open source

UiA started with the open source version of Coder, using it to spin up on-demand workspaces on a local Kubernetes cluster. That alone solved the most immediate problem: one system, one starting point, regardless of which course or project a user was working on.

Scaling with Coder Premium

As plans for the platform grew across teaching and research, the university moved to Coder's Premium edition for two capabilities it needed at scale:

  • A built-in credits system replaced the team's manual Kubernetes workaround for managing resource allocation
  • Group management let Brinch's team assign separate templates to separate groups of users

Enterprise's high-availability support also lets UiA run multiple Coder instances to handle load as more students and researchers move onto the platform. The team manages templates through Terraform wherever possible and plans to extend that same workflow to the university's OpenStack virtual machine environment.

The results

Exams at scale

UiA has been piloting Coder since last semester, including a live RStudio exam run in a locked-down browser with roughly 40 students launching workspaces within minutes of each other. According to Brinch, provisioning held up under that load, with workspaces starting as fast as, or faster than, under the university's previous setup, an early signal that Coder can support the live coding exams the department wants to move toward.

One less system to maintain

UiA has used Coder to host other web-based tools for teaching and research, including RStudio and ComfyUI, and has already retired its JupyterHub deployment. That is one fewer system for a small ICT team to patch, upgrade, and troubleshoot.

Less reliance on physical labs

The shift is also loosening the university's dependence on physical computer labs. Most students already bring their own laptops, and dedicated lab space is now largely limited to specialized programs such as UiA's esports program.

What's next

UiA plans to make Coder the primary development platform for at least three introductory computer science courses, covering C and .NET programming, and to extend its use into GPU-backed research workloads. The university is also working toward running programming exams directly in Coder, allowing exams with live coding assignments that give students a working compiler in the browser.

Mostly, I'm excited about getting a unified interface for all our users. That gives students and researchers an easier way to start working, so they can concentrate on what they should be doing instead of on setup.

Sigurd Kristian Brinch, Senior Consultant and Lab Engineer, UiA's Department of ICT