Penetration med Pontus

Talare: Pontus Thulin

Statiskt, dynamiskt eller interaktivt? Hur penetrerar du din applikation för att hitta sårbarheter? Jag tar upp de vanligaste typerna av automatiserade säkerhetstesttekniker som finns idag och går kort igenom hur teknikerna går tillväga för att hitta säkerhetshål. Den här presentationen är en del av den nya och uppfräschade versionen av SäkApp-kursen som kommer att ges både internt och externt framöver.

Take-away: Penetrera mera!

Förkunskaper: Det krävs minst intresse och grundläggande kunskaper om både kod och säkerhet.

Dramatisk gestaltning av OAuth 2

Talare: George Spalding

Under denna blixt kommer vi snabbt, enkelt och tydligt gestalta hur OAuth2 protokollet fungerar. Jag kommer att behöva ta hjälp av er som publik med att agera i de olika rollerna.
Tänk att få leva ut i rollen som Client, Resource Owner, Authorization Server eller Resource Server. Jag kommer att orkestrera och regissera föreställningen, så bara lugn, inga särskilda förkunskaper krävs.

Tanken är också att lite försiktigt säkerhetstesta protokollet med några scenarier.

(I mån av tid tittar vi även på Implicit flow och Bearer token usage)

Take-away: Förstå det grundläggande flödet i Oauth2 och några av tillämpningarna

Målgrupp: Du som behöver få en grundläggande koll på hur OAuth2 fungerar

Jag kan även rekommendera den här blixten

Talare: Jon Mårdsjö

Har du funderat på hur sajter som Amazon vet vad du vill köpa härnäst? I den här blixten tänkte jag prata om hur rekommenderingsmotorer fungerar på moderna webbsajter, och hur du kan implementera det i nästa projekt. Buzzwords: Collaborative filtering.

Take-away: Blixten kommer ge dig koll på vilka sorters rekommenderingsmotorer som finns, vad man kan använda dem till och hur man använder dem.

Hur swishar man hem en TV-apparat?

Talare: Nada Kapidzic Cicovic

Intern pga sekretess, endast öppen för omegapoint-anställda

Hur komplex är min kod? Hur ofta kommer den att ändras? Och vad kan jag göra med den informationen?

Talare: Tomas Karlsson

Hur komplex är min kod? Eller snarare: Hur lång tid skulle det ta för någon med ungefär samma bakgrund som jag att sätta sig in i koden för att kunna göra en icke-trivial förändring? Hur ofta kommer koden att förändras? Eller snarare: Hur ofta tror jag att den kommer att förändras? Genom att titta på dessa två parametrar tycker jag mig kunna förstå hur mycket (eller lite) enhetstester jag ska göra. Jag får också ett underlag för att identifiera kod som kan vara svår att förvalta och kan redan vid utveckling vidta åtgärder för att undvika framtida problem.

Take-away: Nu har jag ett verktyg för att prioritera bland alla enhetstester!

Arbeta effektivare med dina loggar tillsammans med Awk!

Talare: Mattias Österberg

Arbetar du i Linux? Läser du loggar eller annan formaterad text? Vill du bli effektivare på att massera dessa och få fram den, för stunden, viktigaste informationen? Få här en kort introduktion till programmet Awk; ett mycket bra komplement till grep, sort, uniq och andra klassiska kommandon.
När du vill processera din text, men saknar tid att skapa ett dedikerat program för detta. Då skapar du snabbt ett script med bra prestanda i Awk.

Take-away: Använd Awk när du vill processera text, men inte har tid att bygga ett mer avancerat program för detta.

Målgrupp: Utvecklare och testare

Förkunskaper: Vissa förkunskaper krävs

Grundläggande kodkunskap och lite linux commandline-kunskap tror jag krävs. Regexp kan också vara bra att ha baskunskap om - det kan nog dyka upp i något exempel.

Om du tycker detta pass verkar intressant är du kanske också intresserad av

The user is drunk

Talare: Iva Camilovic

En blixtföreläsning om ett annorlunda sätt att utvärdera användarupplevelse och användarvänlighet på webbsidor eller andra produkter. Den handlar om test & UX och vikten av förståelse för användaren.

Take-away: Your website should be so simple, a drunk person could use it.

Målgrupp: Users

Att tänka full stack (hela vägen)

Talare: Nicholas Rydje

Vilka delar av ett mjukvarusystem bör köras på klienten och vilka bör köras på servern?
Finns det generella sanningar som är applicerbara på alla system eller måste man ibland göra avsteg?

Jag kommer kort analysera några väletablerade designmönster- och principer, reflektera över hur väl de har fungerat för mig samt betona det jag tycker är viktigast och vad man ska optimera mot.

Detta är mina personliga reflektioner över hur man får ett klient/server-system att må bra.

Take-away: Ta hänsyn till helheten och optimera rätt

Målgrupp: utvecklare och arkitekter i klient/server-projekt, projektledare

Förkunskaper: Vissa förkunskaper krävs

Förståelse för vanligt förekommande mjukvaruarkitektur

Att starta om (igen) eller GTD revisited

Talare: Nicholas Rydje

Många har kanske precis som jag försökt sig på att bli effektivare med hjälp av nån metod för att öka sin effektivitet. I början kan allt kännas fantastiskt och under kontroll. Sedan vänder situationen till att leverera mer oreda än när man startade och till sist väljer man att kasta sig överbord och överge det sjunkande skeppet.

Jag delar här med mig några reflektioner över vad som (för andra gången) gick snett med mitt ”Getting Things Done""-användande, vad för lärdomar det gav mig och hur jag till sist kom tillbaks nöjdare och mer effektiv än tidigare.

Take-away: Dra lärdom av misstag, adaptera istället för att motarbeta dig själv.

Målgrupp:"Listmänniskor"

Om du tycker detta pass verkar intressant är du kanske också intresserad av

Release eller inte; det är frågan

Talare: Fredrik Stålnacke

Frågan kom ofta; när passar det att vi gör en release? Vi provade en annan fråga; ska vi stoppa dagens release?

Vad hände då?

Take-away: Ett lite nyare tankesätt om deployment


Partial Quicksort for Paging

Talare: Björn Nyberg

Jag berättar om mina experiment som syftar till att undersöka hur tidsåtgången för paginering kan optimeras för stora datamängder som skall sorteras dynamiskt.
Med utgångspunkt i en lösning som baseras på partiell sortering jämför jag med andra alternativ till lösningar samt diskuterar när respektive lösningsförslag passar för att lösa problemet.

Take-away: Optimering

Målgrupp: Utvecklare

Förkunskaper: Vissa förkunskaper krävs

Programmeringskunskaper krävs.

Så gjorde vi för att minska dokumentationen

Talare: Iva Camilovic

Jag kommer att presentera om hur vi gjorde på ett uppdrag för att sluta skapa onödiga dokument och hur vi minskde antalet dokument som ändå ingen läser.

Take-away: Vem behöver det här dokumentet?

Målgrupp: Alla som skriver dokumentation bara för att

Om du tycker detta pass verkar intressant är du kanske också intresserad av

Koddisco med SonicPI

Talare: Mattias Sällström

Jag kommer under denna blixt att gå igenom hur vi med hjälp av Sonci PI och med musiken som fond kan lära ut programmeringens grunder till framförallt barn och ungdomar. Vi programmerar steg för steg en en låt och om viljan finns avslutar vi med allsång eller spontandans!

Take-away: Deltagarna får ytterliggare en lärplattform för programmering

Målgrupp: Kodmentorer och aspirerande DJs


Provable Security

Talare: Hannes Salin

Vad är egentligen säkerhet, och hur definieras detta mer formellt? När man säger att man har implementerat en säker lösning som dessutom är "bevisat" säker, vad menar man egentligen då? Denna presentation kommer att ge en kortare överblick av hur kryptografiska protokoll bevisas säkra och vad det är man egentligen bevisar.

Take-away: att man inte kan bevis all säkerhet utom rimliga tvivel

Målgrupp: Alla


Tredjepartsberoenden

Talare: Johan Ekblad

Ett teoripass från den nya kursen i Säker Applikationsutveckling.

Take-away: Har du koll på dina beroenden?

Målgrupp: Utvecklare

Förkunskaper: Vissa förkunskaper krävs

Det krävs minst intresse och grundläggande kunskaper om både kod och säkerhet.

Let's Encrypt - gratis och enkel SSL

Talare: Samuel Moritz

Varför ska det vara så krångligt att få fram det gröna hänglåset, när det kan vara enkelt? I slutet av 2015 kommer Let's Encrypt, ett verktyg från Mozilla, Cisco, EFF, med flera.
Let's Encrypt skapar automatiskt ett CA-signerat certifikat och konfigurerar upp din webbserver, helt gratis. Jag kommer att provköra verktyget (som det ser ut idag) och visa vad som händer.

Take-away: Att fixa SSL på en webbserver kan vara enkelt.

Målgrupp: Alla som har en webbserver

Om du tycker detta pass verkar intressant är du kanske också intresserad av


Att utveckla en hybrid-iOS-app för SVT Play

Talare: Erik Tjernlund

GNILP om att utveckla SVT Plays senaste iOS-app.
En enkel native-webb-hybrid-app, men skriven från scratch i en helt nytt språk och nedladdad till mer än 2 miljoner enheter.
Lärdomar från tekniska, men också stora politiska utmaningar. Ett projekt som höll på att kantra på grund av en bokstavlig ""nakenchock"".

Take-away: Hybrid-webb-lösningar för en plattform som iOS har stora dolda kostnader.

Målgrupp: Utvecklare

Force-Directed Graphs

Talare: Jonas Holmer

Force-Directed Graph Drawing handlar om hur man med automatik ritar grafer som visualiserar relationer. Det är rätt enkelt och tillämpbart inom ett flertal områden. Presentationen avser att besvara frågorna: Vad är det, vad har man det till och hur gör man?

Take-away: Det här är rätt enkelt att göra och går att tillämpa på ett flertal områden

Målgrupp: De som som jobbar med utveckling eller något i närheten av sånt

Om du tycker detta pass verkar intressant är du kanske också intresserad av


Elixir: Från 0 till multiplayerspel på 15 minuter

Talare: Pia Fåk Sunnanbo

Elixir är det nya, hippa språket som kör på Erlang-motorn. Med hjälp av ett litet litet multiplayerspel upptäcker vi hur Elixir gör det lätt att skriva feltoleranta och höggradigt parallella program.

Take-away: Elixir är bra på parallellism

Målgrupp: Nyfikna utvecklare

Förkunskaper: Vissa förkunskaper krävs

Inga förkunskaper om Elixir krävs! Däremot måste man vara en erfaren utvecklare för att kunna ta till sig koncepten och uppskatta coolheten.

Om du tycker detta pass verkar intressant är du kanske också intresserad av

Gåta

Talare: Ashkan Jahanbakhsh

Testa dina mattekunskaper!

Take-away: Testa dina mattekunskaper!

Målgrupp: Alla som är intresserade av matte

Att skapa en integrationskarta - en gnilP

Föreläsare: Daniel Lindberg

I slutet av 2014 fick jag ett uppdrag av Axstores dåvarande Enterprisearkitekt: "Ta fram en integrationskarta som innehåller alla integrationer för samtliga system och täcker alla bolag". I denna blixt så visar jag den resulterande integrationskartan, går igenom den notation som jag använde mig av och delar med mig av lessons learned.

Takeaway: En integrationskarta är en ögonblicksbild, se till att det finns någon som förvaltar den

Målgrupp:
Alla som någon gång behöver rita en integrationskarta, liten som stor





Därför enhetstestar jag

Föreläsare: Tomas Karlsson


På Kreta fick vi lyssna på ett märkligt och intressant föredrag om ett team som inte enhetstestade, som aktivt hade beslutat att inte göra det och som dessutom argumenterade väl för sin sak. Jag kände sympati för vissa av argumenten och kände mig tvungen att än en gång övertyga mig själv nödvändigheten av enhetstester. Efter att ha värderat olika argument fram och tillbaka, så tycker jag mig ha hittat det avgörande argumentet för att enhetstester är nödvändiga. I den här blixten presenterar jag argumentet och visar vad jag menar med ett enkelt exempel - riktig kod i Java.

Takeaway: Det avgörande argumentet för att enhetstester är nödvändiga.

Målgrupp: Alla, inte minst projektledare och testledare som vill ha bra argument.

Kvalitet = Säkerhet


Föreläsare: Sebastian Åkerman och Magnus Tholén

Beskrivning: Applikationssäkerhet handlar inte bara om hur du skriver säker kod. Alla processer i utvecklingen bidrar till ökad kvalitet och därmed ökad säkerhet: Utvecklingsprocessen, Granskningar, Designprinciper, Kravanalys, Tester, etcetera.

Takeaway: Kvalitet = Säkerhet


Målgrupp: Alla som är intresserade av säker utveckling