Kunskapsbanken

Artiklar, guider, tips och trix tillsammans med exempelprogram inom webbprogrammering och webbutveckling. Inläggen är listade i den ordning som de senast uppdaterats.

Att skriva enhetstester

Enhetstester, eller unittester, används för att testa att enskilda metoder eller funktioner gör vad vi förväntar oss. Till exempel om en metod ska returnera bool-värdet True, så ska den aldrig kunna returnera False.

Vi ska titta lite närmare på de olika delarna av pythons inbyggda testramverk unittest. Vi hoppar inte i den djupa delen av bassängen, utan vi håller oss vid det grundläggande delarna. Vill du läsa mer kan du kika på docs.python.org.

Read more »

Category: oopython.

JavaScript och Node.js

Vi skall ta de första stegen för att bygga ett program med JavaScript som vi kan köra med Node.js. Vi börjar med den interaktiva interpretatorn för att sedan lägga koden i en fil och exekvera med programmet node.

Vi ser även hur vi kan lägga funktioner och klasser i separata moduler som inkluderas till vårt main-program.

Read more »

Category: nodejs, javascript, kursen databas.

JavaScript och Node.js med async och await

Vi tittar på hur den asynkrona programmeringsmodellen fungerar i JavaScript tillsammans med Node.js.

Vi läser in innehållet från en fil och kombinerar det med utskrifter och försöker förstå hur synkron programmeringsmodell förhåller sig till den asynkrona.

Vi använder async/await för att hantera den asynkrona programmeringsmodellen och styra upp exekveringsordningen. Men för att förstå vad som händer så tar vi vägen förbi callback och promise.

Read more »

Category: nodejs, javascript, kursen databas.

MySQL och Node.js (v2)

Vi skall använda JavaScript och Node.js för att koppla oss mot en MySQL databas, med hjälp av externa paket vi installerar med pakethanteraren npm.

Vi använder en befintlig databas och kopplar upp oss med ett par JavaScript-filer och gör en rapport via SELECT och en sökfunktion där vi filterar resultatet.

Vi använder async/await för att hantera det asynkrona beteendet och vi gör en enkel inmatning från tangentbordet.

Read more »

Category: nodejs, javascript, mysql, kursen dbjs, kursen databas.

Installera MySQL Server och MySQL WorkBench på Linux

Vi skapar en egen lokal utvecklingsmiljö för databasen MySQL (eller MariaDB) tillsammans med desktopklienten MySQL Workbench på Debian/Linux.

Vi använder också terminalklienten mysql för att koppla oss mot databasen.

Read more »

Category: databas, mysql, debian/linux.

#Mysql i Kubernetes

Vi läste tidigare att det inte är så bra att köra en databas i K8s, men vi gör det ändå för att öva på stateful applikationer. Vi ska använda PersistentVolumeClaim för att få stateful data åt databasen. Det är inte säkert egentligen då vi förlorar all data om noden går ner. Om vi har gjort detta i verkligheten hade vi också kopplat vår data till en molntjänst eller server.

Read more »

Category: devops, kubernetes, mysql.

#Sätt upp ett kubernetes kluster med kubeadm

Kubernetes (K8s) tillåter oss att automatiskt hantera distributionen och skalning av våra applikationer. Nästan alla molntjänster som Azure, AWS och GCP har sina egna sätt att hantera K8s cluster. Det är oftast ganska dyrt och, om man byter plattform behövs det även ändras en hel del i sin kod.

I denna artikeln skall vi se hur man själv kan sätta upp ett eget self-managed K8s cluster med hjälp av verktyget kubeadm som fungerar på alla tjänster och gör det billigare i längden.

Read more »

Category: devops, kubernetes.

Cimage - Hur fungerar det?

En väg att gå med optimering och manipulering av bilder är att använda moduler för det. Vi ska jobba med Mikael Roos egenbyggda Cimage, som bland annat ger oss tillgång till följande funktionalitet:

  • Resize, crop
  • Filter
  • Quality, file size

Vi ska kolla lite närmre på hur man kan använda sig av detta och hur ni kan använda det i eran portfolio för att dels matcha färgschemat ni går efter men även för att minska storleken på de filer som laddas in.

Read more »

Category: design, cimage.

#Övervaka MySQL med Prometheus och Grafana

I denna artikel skall vi gå igenom hur man kan övervaka trafiken till våran MySQL server med hjälp av Prometheus och Grafana.

Read more »

Category: devops, monitoring.

Sätt upp session i Pico

För att Pico ska kunna veta om den ska ladda in ert vanliga tema eller det mörka temat så behöver vi sätta upp en session. Vi tar vara på våra kunskaper ifrån webtec och sätter upp det i Pico. Artikeln är uppdelad i ett par olika delar där varje del är filer ni behöver uppdatera.

Read more »

Category: design, pico.