STFC ECCC
    • The Single Responsibility Principle
    • The Open/Closed Principle
    • Spack
    • GitHub Actions
    • Inheritance is Evil
    • Nuxt
    • LogSeq
    • Time Complexity
    • How to Review a Codebase
    • Numba and Bitmasks
    • Mutation Testing
    • Message Passing Interface
    • P vs NP
    • Verbose Graphics with Rust and Vulkan
    • Slidev
    • Nuxt Content By Example
    • Rust MMU Guest Lecture
    • As We May Think - AI for Coding
    • Git in Practice: Techniques for Collaborative Development
    • A Crash Course in Natural Language Processing
    • Graphs: Ruining the Travelling Salesman's Day Since 1930
    • Automating File Creation With Jinja2 Templates in Python
    • What the hell is a Monad?
    • The Liskov Substitution Principle
    • Everything as a Specification
    • The Interface Segregation Principle
    • The Dependency Inversion Principle
    • A Field Guide To Coupling
    • Why Python is (and isn't) Fast
    • Cybersecurity
    • What Linux Distribution Should You Use?
    • Agent Communication Protocols
    • Why I hate try/catch, and why you should hate it too!
    • The Beauty of Vim Motions
Talks

Spack

Kiran Jonathan

Kiran Jonathan

Research Software Engineer

A live demo introduction to Spack, a package manager designed for high-performance computing (HPC) environments.

Since this was given as an ad-hoc demo in the terminal, no presentation is available for this talk.

However, here are a few useful links to get started with Spack:

  • Spack's main landing page
  • Why to use Spack
  • Spack's getting started guide for users
  • A live demo/tutorial of Spack from its creators (warning: quite long)
  • A website where you can check all software already supported by Spack
  • A guide on how to make your own Spack packages (recipes for installation) for your own software/any software you use that isn't already supported

The Open/Closed Principle

A talk on the Open/Closed Principle, the second of the SOLID principles. Covers why code should be open for extension but closed for modification, with a practical example showing how isinstance chains break when new types are added.

GitHub Actions

An introduction to GitHub Actions, covering the basics of setting up workflows, common use cases, and best practices for automating tasks in your repositories.

STFC • © 2026