I denna kurs använder vi programmeringsspråket Scala och olika programmeringsverktyg. Läs om hur du använder dessa programmeringsverktyg i Appendix i kompendiet. Verktygen finns förinstallerade på LTH:s Linuxdatorer i E-huset. Instruktioner om hur du installerar dessa verktyg på din egen dator finns nedan.

Tips om du ska köpa egen dator finns längre ned under rubriken “Hårdvara”.

Programmera på LTH:s datorer

På LTH:s Linuxdatorer i E-huset finns alla dessa verktyg förinstallerade:

Mer info om skolans datorer här och hur du använder Linux och hur du använder bash.

Programmera på din egen dator

Du behöver installera detta på din egen dator: OpenJDK, Scala och VS Code med tillägget Scala (Metals). Följ instruktionerna noga nedan under rubriken för ditt operativsystem om hur du installerar verktygen på din egen dator. Du kan läsa mer om hur du använder dessa verktyg i Appendix i kompendiet.

Många av de programmeringsverktyg vi använder körs via ett terminalfönster. Hur du får igång terminalen beskrivs nedan.

Scala med tillhörande verktyg installeras med hjälp av det officiella installationsverktyget Coursier enligt nedan. Du får då bl.a. följande terminalverktyg som du kan läsa om i kompendiet: scala, scalac, scala-cli, scaladoc, sbt.

Om du kör MacOS eller Linux/Ubuntu/WSL så kan du gärna i stället använda den smidiga pakethanteraren SDKMAN, läs mer nedan under rubriken “SDKMAN” längre ned.

Om redan har en gammal installation av Scala-verktyg så avinstallera först med detta kommando: cs uninstall --all och starta om din dator efter det, innan du sedan följer efterföljande instruktioner för ditt operativsystem.

Om du kör en gammal version av SDKMAN rekommenderas att köra sdk selfupdate force och sedan starta om innan du installerar nya versioner enligt instruktioner under rubriken “SDKMAN” längre ned.

WINDOWS

  1. Innan du installerar är det bra om du först tar reda på vilken typ av dator du har, x86 eller ARM. Du hittar information i Settings -> System -> About. Fråga någon om hjälp om du inte hittar eller läs här.

  2. Därefter är det bra om du i Windows-inställningarna slår på att visa filtyp och dolda filer och sökväg (tryck på Windows-knappen och leta efter “Visa filtyp” eller “Show file extension”). Fråga någon om hjälp om du inte hittar.

Terminalfönster i Windows

För terminal i Windows rekommenderas Microsoft-appen “Windows Terminal”, se vidare här: https://docs.microsoft.com/en-us/windows/terminal/get-started. I en modern installation av Windows är Windows Terminal redan standard.

Det räcker fint med Windows Terminal för att köra alla kursens verktyg i cmd eller powershell, men det finns också andra sätt att köra en terminal i Windows som beskrivs i punktlistan nedan.

Installera OpenJDK i Windows

Installera Scala med tillhörande verktyg i Windows

Installera Git på Windows

MacOS

  1. Innan du installerar är det bra om du först tar reda på vilken typ av dator du har. Öppna ett terminalfönster (se nedan) och skriv uname -m och se om du har x86 eller ARM och notera detta (det påverkar hur du ska installera grejer i efterföljande steg).

  2. Därefter är det bra om du slår på att visa filtyp och dolda filer. Öppna ett terminalfönster (se nedan) och klistra in dessa kommandon:

defaults write NSGlobalDomain AppleShowAllExtensions -bool true && killall Finder
defaults write com.apple.finder AppleShowAllFiles YES && killall Finder

Terminalfönster i MacOS

Installera Homebrew (pakethanterare)

Homebrew är det enklaste sättet att installera program och verktyg på macOS. Öppna ett terminalfönster och kör kommando:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

När installationen är klar, följ de instruktioner som skrivs ut för att lägga till Homebrew i din PATH.

Kontrollera att Homebrew fungerar genom att köra kommando:

brew --version

Alternativ terminal på MacOS (Valfri)

MacOS kommer med en inbyggd terminal, men många föredrar att använda iTerm2 som är mer flexibel. * Installera iTerm2 (valfritt) med: bash brew install --cask iterm2 * Installera Bash Apple använder zsh som standard, men våra instruktioner förutsätter bash. Installera en ny version av bash via Homebrew: bash brew install bash * Byt sedan standardskal till bash: bash chsh -s /opt/homebrew/bin/bash * Stäng terminalen och öppna en ny för att ändringarna ska träda i kraft. Förslagsvis kan du använda iTerm2 istället för vanliga terminalen.

Installera OpenJDK i MacOS

Installera Git på MacOS

brew install git

LINUX

  1. Innan du installerar är det bra om du först tar reda på vilken typ av dator du har. Öppna ett terminalfönster (se nedan) och skriv uname -m och se om du har x86 eller ARM och notera detta (det påverkar hur du ska installera grejer i efterföljande steg).

  2. Därefter är det bra om du slår på att visa dolda filer och filtyp. Öppna ett terminalfönster (se nedan) och klistra in detta kommando och tryck enter:

gsettings set org.gtk.gtk4.Settings.FileChooser show-hidden true
gsettings set org.gtk.gtk4.Settings.FileChooser show-type-column true

Starta terminalfönster i Linux/Ubuntu/WSL

Installera OpenJDK i Linux/Ubuntu/WSL

sudo apt update && sudo apt full-upgrade -y
sudo apt install openjdk-21-jdk openjdk-21-doc openjdk-21-source

Installera Scala med tillhörande verktyg i Linux/Ubuntu/WSL

SDKMAN

Linux/Ubuntu/WSL: Installera SDKMAN

https://sdkman.io/ är ett populärt installationsverktyg för att enkelt installera och hantera olika versioner av allehanda programmeringsverktyg för Ubuntu/Linux/WSL. För dig som hellre vill använda SDKMAN i stället så går det utmärkt att installera Scala-verktugen ovan med hjälp av nedan kommando ett i taget i tur och ornding (om du har installerat SDKMAN) och svara med stort Y på eventuella frågor om att göra nya versionen default:

sdk update
sdk install java 21.0.4-tem
sdk install scala
sdk install scalacli
sdk install sbt

Tips: Det är viktigt att du noterar HUR du har installerat olika grejer på din dator, speciellt om du blandar olika metoder. Om du behöver uppdatera eller avinstallera så blir det lätt förvirring om du glömt hur du installerat och försöker uppdatera/avinstallera med annan metod än du installerat etc.

EDITOR

Windows/MacOS/Linux/Ubuntu/WSL: Installera VS Code + Metals

  1. Installera VS Code för ditt system här: https://code.visualstudio.com/Download eller genom kommando brew install --cask visual-studio-code om du installerat Homebrew. OBS: Ifall du kör WSL, så ska du alltså fortfarande installera VS Code direkt under Windows, inte inuti WSL.
  2. Installera tillägget Scala Metals. Du kan antingen göra detta via tilläggshanterare (Extensions) inne i VS Code eller via terminalen.
  3. Om du kör WSL har du nytta av tillägget “WSL”, sök bland tillägg (Ctrl+Shift+X) och klicka “Install”, eller skriv i terminalen code --install-extension ms-vscode-remote.remote-wsl --force
  4. När du ska börja på ett nytt projekt så stäng ned VS Code och förbered VS Code för Scala med följande kommando (välj bättre namn på mittprojekt): mkdir mittprojekt cd mittprojekt scala setup-ide . code . Första gången ett projekt öppnas i VS Code så tar det ett tag innan Metals har byggt allt från grunden. Du kan följa vad som händer i meddelandefältet längst ned; allt är klart när det står “Index complete” efter en raket-ikon.
  5. Om VS Code inte fungerar bra med Scala kan det vara bra att stänga ner VS Code och ta bort dessa underkataloger (om de existerar): .bsp .bloop .vscode .metals .scala-build target och därefter köra scala setup-ide . innan du startar VS Code igen i aktuell katalog med code .

Läs mer om vad du kan göra med en VS Code och andra verktyg i appendix i kompendiet

KOJO

Windows/MacOS/Linux/Ubuntu/WSL: Installera Kojo

Vi använder Kojo på första labben. Kojo är utvecklat speciellt för att hjälpa elever i grundskola och gymnasium att lära sig programmera.

Det finns olika sätt att köra Kojo:

  1. Använd grafikbiblioteket i kojo (rekommenderas för vuxna kodare) som fungerar med Scala 3. Ladda ner filen https://fileadmin.cs.lth.se/kojo.scala och kör enl. instruktioner i kompendiet, t.ex. med scala repl .

  2. Kör Kojo som Desktopapp (rekommenderas om du har barn i närheten): en nybörjarvänlig utvecklingsmiljö med lättanvänd editor med unga kodare som målgrupp. Använder gamla Scala 2 som kräver klammerparenteser (valfria i Scala 3). Följ installationsinstruktioner för ditt system här: http://www.kogics.net/kojo-download

  3. Kör Kojo i din webbläsare (rekommenderas bara i nödfall om din dator ej har Scala installerat). Webbversionen har endast en mycket begränsad uppsättning av de kommandon som finns i Kojo Desktop och gamla Scala 2. Skriv och kör din Scala-2-kod direkt här: http://kojo.lu.se/

Kojo används på Vattenhallen Science Center. LTH-studenter med programmeringskunskaper och intresse för pedagogik är välkomna att ansöka om att bli programmeringshandledare i Vattenhallen här: https://www.vattenhallen.lu.se/om-oss/kontakt/vh-student/student-intresseanmalan/

Hårdvara

Vid undervisning på campus rekommenderas LTH:s Linux-datorer. Ta gärna med ett eget tangentbord och en egen mus och koppla in i skolans datorer så minskar du smittrisken.

När du studerar hemma behöver du en bra arbetsplats och en dator med Linux (t.ex. Ubuntu), Windows eller MacOS. Det är bra att ha en ergonomisk kontorsstol vid ett bekvämt skrivbord, ett flyttbart tangentbord, en separat mus och en höj-och-sänkbar skärm.

Köpa egen dator

När du ska programmera är det bra med en dator med minst 8GB RAM och minst 1.5GHz CPU.

Begagnade Lenovo är prisvärda och de brukar vara kontrollerade innan försäljning med garanti från sajter som specialiserar sig på begagnat, tex Inrego Prisvärda val är Thinkpad T490 eller Thinkpad T14 som har matt skärm utan reflexer och bra tangentbord och kostar från ca 3500kr - vill du lägga lite mer så uppgradera till 16GB RAM (+750kr) och SSD 480GB (+1000 kr).

Både Lenovo och Dell har studentrabatt och säljer både stationära och bärbara datorer. Lokala datorbutiker finns här: Inet i Malmö, Webhallen i Malmö, Compliq i Lund

Om du letar efter en bra stationär dator som är fläktlös och därför helt tyst rekommenderas AtLast Solutions som även erbjuder Ubuntu förinstallerat utan extra kostnad.

Headset-adapter

Vid distansundervisning är det bra med headset och webbkamera. Det går bra att koppla ditt eget headset till skolans datorer, t.ex. om du behöver prata med en handledare som jobbar hemifrån. Enklast är att använda ett USB-headset då kontakten sitter på framsidan. Om du har ett headset med 4-polig mobil-kontakt medan din dator har två 3-poliga kontakter för mic och hörlurar behövs en sådan här adapter:

drawing

Kan t.ex. köpas här: NetOnNet, Elgiganten, Webhallen, Kjell, Inet