Freely available projects

This is an overview over projects I’ve taken part in that are now freely available on the Internet.

Much of this content is related to Oslo Code Club. Oslo Code Club teaches kids and young adults to code. I have taken part in course planning and creation, guided course nights and written tasks.

Hotload: Code Python live

Hotload (Github, release announcement) enables you to develop Python code from within your application, rather than from the outside. The development flow is inspired by Clojure’s REPL-driven development.

Hotload is all about response times. I want to drastically lower the effort of seeing the result of running new code. We’re now at a keystroke (ctrl+s) and a few milliseconds wait time. For the small projects I’ve been working on, the code is reloaded by the time the next frame is ready to be shown on the screen.

Computational Mechanics (Norwegian)

Masteroppgaven min handlet om hvordan materialer oppfører seg på liten skala, titulert “Finite element implementation of lower-order strain gradient plasticity in Abaqus”.

Når vi regner på hvordan konstruksjoner oppfører seg ved påføring av krefter, kan vi velge oss enkle modeller eller kompliserte modeller. Kriterier som påvirker valget er effekten av brudd, og hvor komplisert konstruksjonen i seg selv er. Enkle modeller er lette å forstå, kompliserte modeller har potensial til å predikere oppførsel mer nøyaktig.

  1. Newtons lover sier at en belastning må mobilisere en like stor reaksjonskraft.
  2. Elastisk teori gir at dersom vi dobler kraften, vil vi doble deformasjonen. Hvor stor deformasjonen er avhenger av stivheten i materialet.
  3. Plastisk teori tar hensyn til at det kan finnes en grense for hvor mye krefter en konstruksjon kan tåle. Dobler du kraften du bruker til å dytte på et tre, kan det hende at forskyvningen mer enn dobler seg.
  4. Gradientplastisk teori ser i tillegg på skalaeffekter. Dersom du påfører en svært høy last på et svært lite punkt, sier gradientplastisk teori at materialet skal oppføre seg stivere enn predikert av plastisk teori.

I masteroppgaven min utforsker jeg hvordan vi kan lage modeller som tar hensyn til gradientplastisk teori. Teksten er tilgjengelig på engelsk.

Elm (Norwegian)

Jeg tok initiativ til Kodeklubb i Elm i 2017. Erfaringer og anbefaling til bruk er samlet i en kursplan. Oppgavene dekker 10 kurskvelder, der hver kurskveld varer i halvannen time.

Typisk materiell for å lære seg Elm på nett er for personer som allerede er utviklere. Opplegget på Elm-kurset måtte være mer tilgjengelig; tidligere erfaring med programmering var Scratch, og kanskje litt Python.

Lecture notes: Introduction to Python (Norwegian)

Introduksjonskurs i Python med Alexander Perry for lærere og kolleger. Materellet er åpent tilgjengelig.

ComputerCraft (Norwegian)

ComputerCraft lar deg programmere dine egne objekter i Minecraft. Du får nye blokker du kan bruke, deriblant nettopp en Computer.

Jeg liker særlig tilnærmingen: Datamaskinen i ComputerCraft har sitt eget operativsystem. Operativsystemet kan du se kildekoden til. Du skriver programmer som kjører på operativsystemet, på samme måte som programmering til vanlig. Lærer man hvordan ComputerCraft henger sammen, kan man altså bruke dette direkte til å forstå datamaskiner!

Jeg har laget to oppgaver til kurs:


Got a comment? Just , then use the arrow in the upper-right corner to make a general note. Or mark text to make an annotation to just that text. More information on the commentary system is available at Commentary with Hypothesis.