Accepted talks

Go to lightning talks | Go to short talks | All proposals

These are the currently accepted sessions. This list is subject to change.

Workshops

Alexa, teach me Spanish! 🇪🇸

Workshop - Suggested by Olav Gausaker and Alexandra Leisse, 4 months ago.

Amazon's Alexa is built into more and more audio devices. Combine this with cloud functions, and you have a great playground for fun and useful projects.

In this workshop, you will learn how to build an Alexa skill that helps you memorize vocabulary when learning a new language. We're using Spanish because it's what we know, but you'll be able to adapt it to whichever language you want.

Workshop outline

+ Quick introduction to Alexa skills
+ Setting up the dev environment
+ Understanding the serverside components
+ Deploying the function to AWS
+ Writing the Alexa skill
+ Practice Spanish with Alexa

Read more...

An introduction to Reason

Workshop - Suggested by Lars Lønne, 4 months ago.

Reason is a language for JavaScript developers, which brings rock solid typing and type inference to the JavaScript world. It is a new syntax and a new toolchain for the OCaml language, and features easy JavaScript interop, a familiar syntax, and the ability to leverage both the JavaScript and the OCaml ecosystems. With its focus on performance and size, it is a great alternative to JavaScript for writing applications for the web.

In this workshop, we will explore the Reason language, learning the basic syntax and tools, and looking at more advanced features, such as variants and pattern matching. We will then use this new language to build a small web application, demonstrating how we can use existing JavaScript libraries, and familiar tooling from JavaScript projects.

Read more...

Build a Passwordless Authentication Server

Workshop - Suggested by Ado Kukic, 4 months ago.

Passwords are a thing of the past.  They should be avoided at all costs.  All developers know that but still, this is one of the primary mode of authentication used.  In this hands-on workshop, the attendees will see how easy it is to implement an authentication server that uses email links as the primary mode of authentication.  

Read more...

Building your own Serverless Platform with Kubernetes

Workshop - Suggested by Håvar Eggereide and Hans Kristian Flaatten, 4 months ago.

Functions as a Service (FaaS) is reapidly becoming the next evolution of cloud computing after containerization. FaaS is often refered to “serverless” and has been popularized by the public cloud providers that all delivers some type of serverelss functionality such as AWS Lambda, Azure Functions, and Google Cloud Functions.

In any serverless framework there are two core components. The runtime responsible for executing the functions, and the events for invoking them. What makes a good serverelss framework is it's abilitiy to integrate with other systems and services using this event driven model.

In this wokrshop we will be looking at the different possibilities of running serverless worklods on top of Kubernetes and get some hands on experience with popular frameworks built specifically for running serverless functions in Kubernetes. We will set up a complete serverless environment where functions gets triggerede over a message bus when new files are uploaded to a object storage.

Read more...

Coaching superpowers: exquisite discovery and resonating with customer needs

Workshop - Suggested by Richard Cornelius and Martin Burns, 4 months ago.

Summary:

A workshop that is designed to be very hands-on and suitable for anyone and everyone who wants to get answers to problems and not just coaches.

Clean Language sounds easy in theory, but it is hard work to get it working and sounding natural. This workshop uses Mike Burrows 15-Minute FOTO exercise as a basis https://www.agendashift.com/15-minute-foto , enabling participants to take turns and practice in a safe non-live environment.

This is a very practical session enabling participants to discover their own solutions and real options.

 

Detailed description:

A learning workshop that is designed to be heavily hands-on and suitable for anyone and everyone who wants to get answers to problems and not just coaches.

When trying to discover solutions to a client’s needs it’s very easy to go into consultancy or teaching mode. Often these are not necessary or even desirable as the client is likely to have far more context-based knowledge and so it’s important to use this intrinsic knowledge as much as possible. Clean Language (CL) is very good at preventing these personal opinions and ‘helpful’ suggestions and this session aims to provide enough real practice so that participants overcome any initial apprehension, leaving confident and able to use in a work environment.

This workshop uses Mike Burrows 15-Minute FOTO exercise as a basis, enabling participants to take turns and practice in small groups and in a safe non-live environment. It is a very practical session with the expectation that participants will discover their own solutions and real options that they can then explore further and put into practice after they leave.

It is organised around the participants learning for themselves and as such designed to be slide presentation free, instead each person will leave with their own simple reminder.

The primary focus will be to allow participants adequate time to be comfortable using Clean Language and depending on the speed of the participants, we would then like to expand further on their outcomes previously generated. Showing a simple method for prioritisation and discovering how to use these options as a basis for an experiment, taking the hypothetical idea into a real-world solution.

Read more...

Crawling out of the Turing tarpit

Workshop - Suggested by Rolf W. Rasmussen, 4 months ago.

Writing your own CPU emulator to successively run programs of increasing complexity

Alan Perlis warns “Beware of the Turing tar-pit in which everything is possible but nothing of interest is easy”.

During this workshop, we’ll build up a CPU emulator one instruction at a time, designing the Instruction Set Architecture (ISA) as we go along, in order to successively run programs of increasing complexity. We’ll discover how few steps are needed to go from running “Hello World”, to a running an OS image with an embedded development environment.

Our goal is to create a practical Instruction Set Architecture, but we’ll also along the way touch upon some theoretical and historical aspects as well. We’ll see how to use abstraction to build layer upon layer of more complex functionality starting with a few basic building blocks. After measuring the cost of such abstraction, we’ll work on fixing inefficiencies that crop up.

Lastly, we’ll look at the different directions we could evolve the embryonic ISA and emulator we’ve created, how we would go about doing so, and what existing ISAs, software, and projects that occupy these spaces in the real world.

Read more...

Create Your Own Discover Weekly Playlist for Spotify Using Machine Learning

Workshop - Suggested by Malte Loller-Andersen and Joakim Lehn, 5 months ago.

Have you ever wondered how Youtube and Spotify recommends new videos and songs to you? Do you want to know what characterizes the music you listen to? Join us for this workshop where you create your own Spotify playlist based on your own music taste!

 

In this workshop we will give you an introduction of various algorithms used for clustering and classifying data and introduce feature extraction and the Spotify API. Then we will use Spotify's API to gather metrics of songs in your playlists, and visualize the data found. Next on the menu are four assignments including finding similar playlists and recommending new songs for yourself.

 

After this session you will have a greater knowledge of several machine learning algorithms for classifying and clustering data, while exploring your own music taste. You will learn how feature extraction influences the results in machine learning projects, and what you need to take into account when setting up your own projects!

Read more...

Explore the fundamentals of Rust by creating your own synthesizer

Workshop - Suggested by Thomas Tøkje and Sverre Johann Bjørke and John-Olav Storvold, 4 months ago.

Rust is a reliable systems programming language providing bare-metal performance in a modern wrapping. It guarantees memory and thread-safety without garbage collection, offers great tooling and an amazing community — in fact, Rust has been voted the most loved programming language according to the Stack Overflow Developer Survey three years in a row. The language is experiencing rapid adaptation in multiple industries ranging from game development to backend systems.

In this workshop, we will explore Rust and create a simple synthesizer that can be played with your computer keyboard. We will also implement rudimentary sound effects. The goal of this workshop is to learn some of the basics of Rust through a hands-on project, and no prior knowledge of Rust or audio processing is required.

Read more...

Fixing Broken Windows: Dealing with Legacy Systems, Poor Quality and Gaps

Workshop - Suggested by Dmitry Vinnik, 4 months ago.

We all encountered a “Broken Window” theory in practice. The original idea was that if someone breaks a window in a neighbourhood and this window is not repaired right away, the entire area will start getting messier at an accelerated rate.

    The same theory can be applied to Software. How many times have you looked at a legacy system with no tests, and decided not to write any automation for your new features because ‘this is how it has always been“, or “nobody has done this before”? By referring to the bad practices which were established before, the system continues degrading the same way a nice neighborhood can turn into a ghost town.

    This workshop aims to show how these “Broken Window” systems can be tackled, and how such systems can be set on the right track to high quality.

The speaker will demonstrate from his past experiences how technical and testing gaps can be covered and what every team can implement in their process to start improving existing and future products.

Read more...

🎼 Generating sheet music: from one DSL to another

Workshop - Suggested by Peter Hilton, 4 months ago.

Sheet music is perhaps the ultimate domain-specific language, but isn’t really accessible to programmers. It hardly has any curly brackets, and they don't even match! This workshop for non-musicians demystifies musical notation by showing you how to generate it from a Scheme-based DSL, called Lilypond, which looks much more like a 'normal' programming language.

 

During this workshop you will learn the basic Lilypond syntax, starting with note pitches, durations and lyrics. You’ll use this to generate music as PDF that you can print, and MIDI files that you can listen to. This will be based on simple and familiar examples, starting with the world’s most recognisable tune. You’ll also learn how Lilypond separates content from presentation, and how its automatic layout creates professional print-quality results.

Read more...

Get'em while they're young!

Workshop - Suggested by Siv Midtun Hollup, 4 months ago.

How can we bring problem solving and programming concepts to the masses? In this workshop we'll look at ways to demonstrate programming concepts and create games for teaching kids (or anyone, really) about programming and problem solving. Share the tricks you use! Do you have a card game up your sleeve? A game that gets people running around? A way to demonstrate an algorithm or concept that makes people laugh? Can we use music? Share your creativity and join the fun! As an added bonus you'll have to examine your knowledge of programming from a completely different base, maybe you'll learn something about your craft too?

Read more...

How to make everybody heard.

Workshop - Suggested by Dmitry Lebedev, 5 months ago.

Imagine that your org has adopted scrum, all teams are doing retros, some of action points receive management attention, sometimes even got solved. But still there is some feeling that bigger problems, which are holding your company back, cannot either be addressed or even acknowledge, just because these problems are dispersed through the whole organization an in a single team we might see only a fraction of it. So it is important to get the whole group together and get everyone heard.

How to form and get group's opinion? What kind of techniques you can use to organize such sessions in your organization? How the org will benefit from it?

Read more...

Introduction to HoloLens development

Workshop - Suggested by Gry Nagel, 4 months ago.

This workshop will give a hands-on introduction for developing application for HoloLens (Mixed Reality) in Unity. We will set up a Unity project for Mixed Reality and learn how to utilize the Mixed Reality Toolkit to create an application.

Workshop outline:

  • Quick introduction to Mixed Reality
  • Making sure development environment is set up
  • How to use the Mixed Reality Toolkit
  • Setting up a Unity project
  • Creating an application
  • Deploying to the HoloLens/HoloLens emulator

Read more...

Intro to 3D visualization and three.js

Workshop - Suggested by Stian Veum Møllersen and Holger Ludvigsen, 4 months ago.

Learn the basics of 3D visualization in the browser with WebGL and Three.js. You will make a nice sound visualizer, a starry sky, a strange furry-looking ball and some cool particle effects. We will teach you the core concepts of WebGL and basic shader programming, so you can feel empowered to be creative in three dimensions.

Read more...

JSR 385: Learning from the 125 Million Dollar Mars Climate Orbiter Mistake

Workshop - Suggested by Filip Van Laenen, 4 months ago.

In 1999, NASA lost the $125 million Mars Climate Orbiter as it went into orbital insertion. Due to a mismatch between US customary and SI units of measurements in one of the APIs, the spacecraft came to close to the planet, passed through the upper atmosphere and disintegrated. Sadly, this hasn’t been the only instance where a mismatch between units of measurements had catastrophic consequences, but it’s certainly one of the most spectacular and expensive ones.

How could this happen? The bad news is: if you use primitive types to handle quantities in your code, due to that very same practice. At best, you’ve codified the unit in the name of the variable or the database field, e.g. calling it lengthInMetres. Otherwise, you’re only relying on convention, just like Lockheed Martin and NASA did.

Join this workshop to learn how JSR 385 can help you avoid $125 million mistakes, and discover the immeasurable world of dimensions, units and quantities.

Read more...

Learning by failing to grow quality - Root Cause Analysis in practice.

Workshop - Suggested by Kate Balcerzak and Bart Szulc, 4 months ago.

Do you have this feeling certain features will yet again start failing in upcoming release? When you catch a bug, does it seem like a deja vu? Incidents happen. Most of us think of them as materialised risks, but they also can be considered as opportunity. Opportunity to learn and improve. Would you be interested to learn how to draw conclusions from failures, propose corrective and preventive actions, and with them improve your development process and grow quality mindset in your team? This is a workshop for you.

 

We are all agile nowadays, thus we all strive to self improve iteration over iteration. Regular retrospectives help flush out issues with delivery process, compare current iteration with previous, identify things need addressing, areas worth investing in to increase velocity.

 

However, what happens when we catch a bug? Do we sit together as a team to identify what went wrong as we would normally do seeing a drop in our velocity in current sprint? I don’t think so. Most likely team will fix the bug and move on with feature development. Probably new regression tests will be added to prevent the bug from happening in future.

 

Regression doesn’t prevent bugs from happening. It helps with catching recurring symptoms of deeper problems, before they reach our customer and our users. Tests alone don’t address root causes. We’re like doctors prescribing yet another drugs. Not spending enough time on doing patient interview to find problems with lifestyle. Missing nutrients in our team diet.

 

You will learn how to spot and prevent sources of bugs. We’ll walk you through Root Cause Analysis process on a real life incident you can relate to. Help you understand all vital parts of such analysis, and show you how you can conduct similar process next time you catch a bug.

 

During workshop you will learn:

  • techniques helping build context in which incident happened,
  • how to build timeline and why it’s important to have one,
  • how to identify causal factors and how they differ from root cause,
  • techniques helping figure out root cause,
  • what are preventive and corrective actions,
  • how root cause analysis can not only help prevent bugs from recurring but improve your testing skills.

 

Key takeaways:

- what is root cause analysis

- what are causal factors and how they are different from root causes

- techniques helping identify root cause, propose preventive and corrective actions

- how being better in identifying root causes can help you become better tester by focusing your attention on most likely broken parts of your system

Read more...

Micro My Java (μμJ)

Workshop - Suggested by Sigmund Hansen, 4 months ago.

We all know the world has gone crazy for μ. μ this and μ that. Java is often used for microservices. Quite a few of them use Spring Boot, which I think is overkill for simpler services. The Eclipse Foundation has worked quite a bit on the Java EE Microprofile, which is another option, where you use Java EE features and small containers. Another popular approach is the use of the many micro frameworks that have flourished, e.g. Spark, Javalin, Ktor and the up and coming Micronaut.

Let's build a small microservice application with Micronaut, Graal, Substrate (ahead of time compiler that's part of Graal) and Docker containers. The service will be your standard, wonderfully CURLable To Do list RESTful JSON API, and we will see just how small we can get this service, and how fast we can make it start up. This will give you a quick and dirty introduction to the spanking new Micronaut microframework, that released version 1.0 in late October. It will also be an intro to very basic use of Graal and Substrate. You are expected to know Java and very basic use of Docker (although the application(s) will be possible to run without containers).

After this workshop, you should hopefully feel like running back to your hotel room, start building Java microservices and throw them at the clouds in the sky. Or at least inspired to experiment further with Java microframeworks and GraalVM.

Read more...

Moving team focus from output to outcome

Workshop - Suggested by Vidar Berg Tilrem and Kristin Wulff, 4 months ago.

Some of our teams work with a focus on output (producing features) today, because of habits, customer constraints and probably several other reasons. To move the focus to outcome (the effect our solutions have), we are using several models and facilitate workshops to help the teams and our customers change. In this workshop the participants will try out a "greatest hits" of the models and techniques we have used. 

Read more...

Planet of the APIs

Workshop - Suggested by Isabel Maldonado and Catharina Hansen Berge, 4 months ago.

New to API testing with Postman? Continue reading.

Is your team building application program interfaces (RESTful APIs)  faster than you can say “Ready for deployment” ?
Are you being asked to test them, or are you simply curious about how you can test APIs?

More and more APIs are made available, makes it possible for applications to share and correlate data in with ease. Services provided by the likes of Google, Yelp, Instagram and more gives us the opportunity to create user experiences limited only by the imagination. And coming soon is a real game-changer: PSD2, the EU directive driving banks to make their customer's financial data available to them through third-party applications.

Whether you are building an API or consuming it, more knowledge around API testing will be needed.  

Of the many different tools available out there that can be used to test APIs, we wish to focus on Postman. This lets you test APIs in a simple way and it is used by many developers. So why not learn what it is and how to use Postman?

In this workshop we will start from scratch going through what is HTTP response codes, JSON, API, etc. before we start playing around with Postman.

Read more...

Playing Lean 2

Workshop - Suggested by Olav Loen, 4 months ago.

The board game Playing Lean was launched after a Kickstarter campaing in 2015 as a flight simulator for innovation and Lean Startup. In 2018 a new Kickstarter campain was launched to improve the game with bigger game board, new company building mechanincs and a new scenario (hospitality like AirBnB) based on Alexander Osterwalder's Value Proposition Design.

Join this workshop to play the new scenario with the new company building mechanics and learn more about Value Proposition Canvas.

Read more...

Prototyping Accessibility

Workshop - Suggested by Adrian Roselli, 4 months ago.

Learn some fundamentals of accessibility and how it can benefit you (whether future you from aging or you after something else limits your abilities). We’ll review differing abilities, generate (minimal) user stories and personas, discuss best practices for design and development, prototype some ideas (on paper), and discuss where to get help. This isn’t intended to be a deep dive into technologies, but more of an overall primer for those who aren’t sure where to start with accessibility nor how it helps them.

Read more...

Secure your application with OpenID Connect

Workshop - Suggested by Johannes Brodwall, 4 months ago.

If we can trust the user we can do anything. If we can't trust our user, we can do nothing.

Almost all applications need to know who the user is. You could establish a user database with a password, but what prevents any random user to register as Donald Duck or Barack Obama? How do you find out who to trust?

Modern identity systems like Azure Active Directory, ID-porten (for Norway) as well as less secured ones use a standard to establish the user identity with your application. In this workshop we will build from stratch the parts of a JavaScript application that are needed to make it work with leading OpenID Connect providers together.

Read more...

The actor factor

Workshop - Suggested by Heidi Mork, 4 months ago.

The actor model is a great programming model for building concurrent and distributed systems - in other words, most systems we build today! An actor is an entity with its own private state, and it can only respond to messages it receives by sending new messages, creating new actors, or changing its own behaviour. You could say that an actor is an object that takes encapsulation and independence seriously.

In this workshop we will explore the basic concepts of the actor model, by implementing a game similar to the classic game of space invaders. We will explore how this game domain can be modelled within an actor system, and learn the actor concepts like actor hierarchy, mailboxes, the actor life cycle, and common message patterns for actor systems. All while we are gradually building the game, from the laser canon controlled by the player to the army of attacking aliens, and everything else that is needed for a fully functional game.

Read more...

The Universal Serial Web

Workshop - Suggested by Sebastian Golasch, 5 months ago.

As a web developer it´s easy to feel intimidated by the world of hardware hacking and the physical web, we have to leave our comfort zone and need to get familiar with a completely new development environment. But not anymore, thanks to wonderful possibilities that the WebUSB Api brings to our browsers.

In this talk I will give an intro to the endless wonders we can encounter in the hardware world through our browser windows. Aside from leaerning the basics of USB and serial port communication, we´ll paint on USB displays, live tweet to receipt printers, control an Arduino, steal data from Android phones and many more... The only limit is your imagination.

Read more...

Transforming Culture with DevOps Principles

Workshop - Suggested by Lisa Crispin and Ashley Hunsberger, 4 months ago.

Have you ever found the need for change, but had no idea how to move forward? Without a clear path or the support necessary to succeed, change - especially cultural change - can be daunting. Transformation can be scary and faced with resistance, but it doesn’t have to be.

At the heart of DevOps is the idea that teams work together to innovate faster, reducing the length of feedback loops and delivering value. Applying principles of collaborative practices, continuous improvements, incremental testing, and continuous learning can transform culture - not only within development teams, but also in some less obvious places.

Join me as we go through some real-world examples of applying principles that can lead to real change! We will draw analogies from the automotive safety industry - and show that these principles don't have to be used just in the context of a DevOps organization. 

We'll take a look at ways to get organized and find your team's purpose, identify and prioritize work, learn and define iterative feedback loops, and design experiments for continuous learning! 

Read more...

Understand phishing and create your own campaign

Workshop - Suggested by Erik Vetle Larsen, 5 months ago.

Everyone has received a spam or phishing mail before, but have you ever wondered how the mechanics behind a phishing campaign works? When can you consider your account compromised, from clicking a link or submitting your credentials?

In this workshop we start off by quickly talking about the motivations behind phishing and how an effective scam is created, applying elements from psychology and social engineering.  Afterwards we take what we have learned and start designing our own simple phishing scam, from credential harvesting web page to sneaky phishing mails

After this workshop you will know the basic set of tools and techniques attackers use when phishing us, and that will better equip us in learning how to defend against them.

Read more...

Short talks

Amygdala’en min liker appen din!

Short talk (30 mins) - Suggested by Morten Rosenlund, 4 months ago.

I denne «talken» vil jeg snakke om hvorfor det er viktig at softwaren din kommuniserer med den mest primitive delen av hjernen til brukerne dine.

Den rasjonelle delen av hjernen din er fremdeles ute i betaversjon, og den har kun vært testet og utviklet i 200 000 år. Hvis du vil ha noe gjort på ordentlig, må du henvende deg til brukernes primitive del av hjernen. Urhjernen.

Urhjernen er nemlig blitt refaktorert og oppdatert i 100 millioner år, og den styrer emosjonene og dermed følelseslivet ditt.

Hvis ambisjonen din er å revolusjonere hvordan folk betaler, reiser eller identifiserer seg på nettet, må du sørge for å vekke til live noen følelser som gjør at folk bli glade i løsningen din. De må bli berørt personlig, og de må føle det på ordentlig. Helt inne i det limbiske systemet.

Vi må levere på mer enn funksjonalitet, pålitelighet og brukervennlighet. Både mobilen, internett og kjøkkenbenken fylles opp av nyttige og brukervennlige ting. Skal våre løsninger havne der, må vi i tillegg dekke brukernes følelsesmessige og sosiale behov.

Derfor skal vi snakke om hvordan du kan gjøre dine løsninger til noe som kunden både kan le, smile og gråte sammen med.

Read more...

Building a proof of concept of intelligent search for the The Norwegian Courts Administration

Short talk (30 mins) - Suggested by David Skålid Amundsen, 4 months ago.

How can you succeed with integrating machine learning in your solution? How do you get the customer on board? How do you build a team with the right skill set that can deliver? In this talk we want to tell you the story about how we did this and the challenges we had to overcome on the way so that you can do it too.

We built a proof of concept (PoC) of intelligent search for The Norwegian Courts Administration (Domstoladministrasjonen), where we use machine learning to personalise the search results. We will present how we worked internally, putting together people with different backgrounds and skill sets, and with the customer. We will also discuss our solution and the technology behind it, show a live demo, and talk about things we learned that can be useful for others making PoCs.

Read more...

Death of a Craftsman

Lightning talk (10 min) - Suggested by Einar Høst, 5 months ago.

What does it mean to be a good software developer? What story can I tell myself that gives me direction and confidence that I am doing a good job? The narrative offered by the software craftsman metaphor is one such story - by far the most prevalent one in today's industry - but could there be others? What are the implications of the craftsman narrative? Does it have any short-comings or things that it fails to mention? Could it be misleading or even harmful? And most importantly: if I don't feel at home in the craftsmanship narrative, am I still allowed to think of myself as a good developer? Is there life beyond craftsmanship?

Read more...

Disruption from within: Trial & error when creating digital products for a publishing house

Short talk (30 mins) - Suggested by Tone Nordbø, 4 months ago.

Gyldendal is one of Norway's biggest publishers, and they have a centennial success with creating text books. But now, students are being handed tablets or laptops on their first day of school, and being good at making books is no longer sufficient for a publisher. Since the summer of 2017, we have been working towards making Gyldendal into a digital service provider. We will go through our trials & errors, our ups and downs, what we have learned the past year. Design lead Tone and project manager Eivind will give insight into what works and what doesn't when helping a successfull company reinvent themselves in a digital transformation.

Read more...

Domain driven design in the real world

Short talk (30 mins) - Suggested by Mads Opheim, 5 months ago.

We dreamed about using Domain driven design, but were stuck in the complex legacy monolith of a case management system.

While all examples and tutorials we found were for trivial domains, we had a lot of domain logic as well as years of inherited corner cases and brain overloads camouflaged as code. That obviously didn't stop us from giving DDD a try.

We have tried DDD in a real world legacy monolith and survived. Now we're here to tell the tale.

In this talk, we share our own experiences from using DDD inside a monolith, as well as lack of DDD, and you will learn to avoid the mistakes we made and how to repeat our success factors.

How do you use DDD in your highly complex legacy project? How do you even get started? We'll help you!

Read more...

How NSD and immutability enabled microdata.no - a revolutionary platform for research on register data

Short talk (30 mins) - Suggested by Ørnulf Risnes, 4 months ago.

Norway has a large number of registers on individuals that have been established for administrative and statistical purposes. These registers represent a unique and valuable resource for research on welfare and society.

Traditionally, getting approvals to do research on these data has been complicated and time-consuming.

The new platform microdata.no reduces approval time from 9 months to 0 days, and makes these valuable data available for a much wider community of researchers.

Microdata.no was released in 2018 after a 5 year collaboration project between NSD and Statistics Norway (SSB). Researchers analyze data through a privacy-preserving web-IDE inspired by Jupyter notebooks and other widely used statistical tools.

The platform is built with ClojureScript, Clojure, Node, Python, Go and Datomic - and immutability is the cornerstone of the architecture.

In this short talk, we will demonstrate how NSD designed microdata.no around immutable data structures, and how this design decision enabled the development of a novel and globally unique platform for safe research on personal data.

We will discuss how we designed and implemented a new domain specific language (DSL) for analyses of temporal register data, how we execute the DSL with functional reactive programming, and how we use immutable data structures and databases to enforce complete statelessness and simplicity throughout the platform.

Read more...

How to not be the smartest person in the room and still be respected

Short talk (30 mins) - Suggested by Lauren Goldstein, 4 months ago.

As designers, especially in the enterprise software field, it’s common for us to start on new projects with no prior domain knowledge. Working in a highly technical field, it is almost a guarantee that learning a new domain is going to be extremely complicated with a steep learning curve. Not only do we need to start designing for this project immediately, but as part of our jobs we need to coordinate on the project and discuss our work with a myriad of people, such as developers and project managers. A lot of the time, these people hold more subject knowledge than we may have, and this often results in designers feeling scared to speak up in group discussions, thinking we might embarrass ourselves or sound stupid by saying the wrong thing. In this talk, I will discuss how instead of being intimidated by subject matter experts in this situation, designers can re-position their own idea of how to feel like a smart and qualified person in the room. By coming to the table ready to ask questions and not being afraid to share our own point of view, we can show that we are just as able to as anyone to provide great contributions, regardless of our experience in a specific technical domain. Designers may feel like they’re not the “smartest”, or most knowledgeable person in the room, but we still play a vital role on our team and business. By learning how to navigate these types of uncomfortable situations, designers can be stronger contributors than ever.

Read more...

Understanding other peoples systems

Short talk (30 mins) - Suggested by Espen Dalløkken, 5 months ago.

In a world where green field projects are far and few between our job very often consists of understanding a system someone else has written. Getting thrown into a large system with a complex architecture can be a daunting task. Usually there are developers to talk to or documentation to read, but sometimes none of those exist. Where do you begin when trying to learn about a new system? Which activities can provide valuable insights that you otherwise won’t discover until much later.

This talk will outline some concrete practical strategies I have found useful when being thrown into different systems built by others. 

Read more...

When the going gets tough - should I start running?

Short talk (30 mins) - Suggested by Merete Munch Lange, 4 months ago.

This presentation is a story from my own work life. Had I known what I later learned, I would have tackled the situation better.

Therefore, I want to share my knowledge with the audience; sharing is caring.

My topic is about power abuse and politics,

I believe that the audience can identify with my story, that they will want to explore and discuss it with me and I hope some will share stories of their own. I would like the session to be interactive. This topic is relevant for everybody working in the project world where the core of our work is cooperation I believe the topic to be both relevant and international, and I believe the different strategy solutions can be applied cross professions and across country borders.

Read more...

Lightning talks

A Rough Guide to Cloning a Person

Lightning talk (10 min) - Suggested by Anders Grini Hamre, 4 months ago.

  • Would you like your person to be of any particular age or gender?
  • Would you like an address with that?
  • How about an income and employment record?
  • That will be eight clicks, thank you very much.

 

  • You killed your person, you say? No worries, three clicks and you have yourself a clone.

 

Test data, or rather the quest for these, can steal time, ruin your day, and delay deploys. At the Norwegian Welfare and Labour Administration our teams need coherent data across a multitude of systems and test environments. Nobody can wait for days or weeks. We need thousands of people, of all sorts and with various backgrounds. And they all have to be synthetic, of course.

 

Therefore, we have built a tool for creating synthetic and coherent data on demand. When you have a working test data set, it can easily be recreated or cloned. Dolly, named after what might be the world’s most famous sheep, give the testers and developers test data without delays. On top of that it saves the tax payers vast sums.

 

In this talk I will explain the concept, how we create coherent and synthetic data across our many (legacy) systems, and how we work to improve our beloved Dolly. You may not be able to steal Dolly, but you may clone the idea.

 

Takeaways

How to make test data coherent across a multitude of systems?

How to cut time and cost of test data?

How to have a bit of fun whilst managing your test data?

Read more...

Clear communication with data visualisation

Lightning talk (10 min) - Suggested by Megan Thorsen, 4 months ago.

Get some pointers on optimising your visualisations for your data, your audience, and your objective. Most importantly and most forgotten: what should you think about before you start, and what should you check after you’re done?

Read more...

Collaboration across organizational silos

Lightning talk (10 min) - Suggested by Hilde Bakkeli, 4 months ago.

As a product development team in a large organization you may need to collaborate with other parts of the organization to deliver value to the end users. Your colleagues may have different professions and work culture than your own. Starting off without a shared language, understanding of the goals, process or roles, the collaboration might turn more difficult than expected.

Our team in Oslo kommune work on a mobile app to enable simpler access to buildings, services and events for the inhabitants of Oslo. In order for the product to succeed, it requires close collaboration with people and departments spread across a large organizational map.

What are the factors to make cross-organizational collaboration succeed? In this lightning talk I will share four relevant factors from organizational psychology as foundation for successful collaboration between groups, as well as experiences from Oslo kommune and previous projects.

Read more...

Design thinking and service design as change management techniques

Lightning talk (10 min) - Suggested by Synnøve Kleive, 5 months ago.

Heard the words design thinking and service design thrown around? Wondering whether this is something you should spend any time understanding or are you inherently skeptical to it? The mindset and techniques used in design thinking and service design provides you with a great deal of great change management. This short talk, breaks it down to help you understand how.

Read more...

Diversity makes a difference

Lightning talk (10 min) - Suggested by Tannaz Navaie Roshandel and Line Moseng, 4 months ago.

We live in a deeply connected world. Technology impacts our everyday life in many ways. However, the solutions we create do not always reflect our society and the world we live in. We have problems in the tech industry. Let’s take a look at the lack of diversity in our communities and how diversity will help us to solve our problems and meet the needs of our society

Read more...

Do we have to be passionate at work?

Lightning talk (10 min) - Suggested by Erik Assum, 5 months ago.

If we look at job ads for our industry, quite a few of them are looking for stuff like "a passionate developers who loves <a programming language>". In this lightening talk, I'll examine if we really need to be all that passionate and also if passion is such a desirable emotion after all.

Read more...

Elm i Rust med WebAssembly

Lightning talk (10 min) - Suggested by Sindre Johansen, 4 months ago.

Elm er et revelusjonerende språk og rammeverk som kompilerer til JavaScript. Det er på mange måter en erstatning for både React og JavaScript. De sier om seg selv "A delightful language for reliable webapps."

Rust er et revelusjonerende språk som er imponerende raskt og sikkert. Det kompilerer vanligvis til maskinkode, men har i det siste fått veldig god støtte for WebAssembly. Dermed får man tilgang til et veldig bra programmeringsspråk med gode biblioteker i browseren. Men Rust mangler et godt bibliotek som erstatter React.

Elm og Rust er tross sine forskjeller egentlig ganske like språk. Det slo meg en dag, ville det vært mulig å lage arkitekturen til Elm i Rust, og hvordan ville det sett ut? Vil det bli like gøy å bruke som Elm? Mister man noe på veien? Støtter typesystemet i Rust det i det hele tatt? Svarene får du i denne talken.

Read more...

Fail fast and fail safe - Gevinster av PoC arbeid

Lightning talk (10 min) - Suggested by Elin Langholm, 4 months ago.

Hvis vi ikke feiler så blir vi fattig på læring. For at feiling ikke skal være så kostbart, men nyttig så er fast og safe stikkord som gjerne knyttes til fail.

Vi ser på hvilke gevinster arbeid med Proof of Concepts kan gi deg - mulighet til å feile raskt og uten store kostnader er en av dem.

 

Read more...

How interfaces invites to bad password practices

Lightning talk (10 min) - Suggested by Cecilie Wian, 4 months ago.

Password policies try to force users to make more secure passwords, but instead of making passwords difficult for computers, policies leads to difficult passwords for users. Users struggle to remember passwords, leading them to use common phrases, shorten passwords, and reuse passwords. Making passwords even more insecure.

We know what people are bad at, but what are they good at?

In my presentation i will discuss why user interfaces invites to bad password practices, before moving on to talk about human skills that can be used to shape users actions into more secure behavior.

Key audience:

UX, security professionals, developers, testers

Take aways from the talk: 

Be aware of the weaknesses of current practices for password policies. 

Knowledge about how software interact with human skills

Knowledge about human traits that can be used to improve Human-Computer-Interactions, like registration forms

Read more...

How not to screw up

Lightning talk (10 min) - Suggested by Lubaba Farin Tanisha, 4 months ago.

Have you ever felt that you are falling into a rabbit hole? Have you seen yourself screwing up with a deadline, or a project or just found yourself dealing with an unhappy customer? Have you noticed the stakeholders falling into a response pattern including words like sh*t, wt* or similar? Well, then welcome to my party of salvage! I will walk you through a path showing you why we fall in to the trap over and over again and how we can make better decisions and manage our products better.

Read more...

How to get away with writing great code as an IT-consultant

Lightning talk (10 min) - Suggested by Nils Norman Haukås, 4 months ago.

For over two years now I've been juggling clients and codebases as an IT-consultant at a digital agency named Netlife Design.

I've been yelled at, I've been on projects that have overrun their budgets and I've endured difficult project talks. It hurts but you learn to fix it, or you burn out and switch jobs. At its best this type of consulting work provide a thrillingly varied work week, at its worst you feel that you never get enough time to make the code right and the clients happy.

To help you survive as a developer IT-consultant I'll share advice on:

1. Disappointing the client early and frequently to ensure project success.

2. Deprecating status meetings by wrangling private messages into public channels.

3. Writing future-compatible code and harnessing a spider sense for failure.

With this, I aim to help you to achieve smooth(er) projects and maybe even get away with writing great code.

Read more...

I created a programming language, and so can you

Lightning talk (10 min) - Suggested by Daan van Berkel, 4 months ago.

Inspired by the Booster Conference and the city of Bergen I created a language called bergen. It is a dialect of brainf*ck, a tiny Turing complete language, that uses mountain ranges to describe programs.

In this lightning talk we will show how one can create their own language, create a compiler for it, and see it being executed on an abstract machine. We will demystify the shroud of reverence surrounded by programming languages and their creators.

You will walk away with a better grounded understanding of how programming languages work, and how you can create one on your own.

Read more...

Ikke la brukertesting ødelegge løsningen din

Lightning talk (10 min) - Suggested by Anne Landro, 4 months ago.

Brukertesting er enkelt å gjennomføre og gir masse insikt på kort tid. Men det er fort gjort å gå i noen feller som gjør at designet ditt faktisk blir DÅRLIGERE av brukertestingen.

 

I denne lyntalen deler jeg noen skrekkhistorier hvor brukertesting førte til at løsningene våre ble dårligere, heller enn bedre. I tillegg deler jeg enkle løsninger som gjør at andre slipper å gjøre de samme feilene som vi har gjort.

Read more...

Issues and strategies related to joining a programming team

Lightning talk (10 min) - Suggested by Ami Ahalpara, 4 months ago.

Joining a new programming team to work on an existing product is a situation programmers often find themselves in. In such a situation, becoming productive and delivering business value quickly is a formidable task due to lack of adequate domain knowledge to begin with, exposure to a new code base, getting tuned to a possibly new framework and perhaps to a new programming methodology. Some of the top priorities of a new team member are getting the necessary domain understanding, getting a grasp of the architecture and the reasoning behind the applied methodologies. As vital as all of this is, it cannot be reverse engineered solely by reading the code or the documentation. Based on my experiences gained through working with software companies in two countries and over a decade, I would like to present some of the relevant techniques to quickly arrive at a stage where the new recruit can make a meaningful contribution towards the evolution of the software.

Read more...

Jorden rundt uten en plan?

Lightning talk (10 min) - Suggested by Christina Seime, 4 months ago.

Gjelder smidige prinsipper kun på jobb eller kan vi bruke disse prinsippene også på privaten? Som Agile coach er jeg over middels glad i smidig og under middels glad i å planlegge i detalj lang tid før en hendelse inntreffer. Da vi reiste jorden rundt på 10 måneder med våre to barn, hadde vi samme innstilling til planlegging av reisen som for produktutvikling. Var det en god ide å ha en smidig tilnærming til planlegging når man skulle reise til ukjente land med to små barn? Kom på denne lyntalen for å høre mine erfaringer med planlegging, på jobb og på reise.

Read more...

Killing your last monolith: Micro Frontends

Lightning talk (10 min) - Suggested by Torjus Eidet, 4 months ago.

When your front-end starts getting too big, you might want to split it into smaller parts. Micro Frontends extends the concepts of micro services to the frontend world. The idea behind Micro Frontends is to think about a website as a composition of features. Different features are owned by independent cross functional teams. These teams have distinct areas of business they care about and specialize in. Torjus will present Sbankens practical approach to Micro Frontends.

Read more...

Live demonstration of Heroku Pipelines

Lightning talk (10 min) - Suggested by Ove Gram Nipen, 4 months ago.

Create a github pull request, and a new app is automatically created and deployed. Review both the code and the running app, merge the pull request, and the pull request app is destroyed and the development app is redeployed. Promote the changes to staging, run the user acceptance tests and promote to production. We'll show how to setup and do all of this live, in ten minutes, with Heroku Pipelines.

Read more...

Splunk for fun and profit - hvordan finne 36 000 timer og ca 148 milliarder

Lightning talk (10 min) - Suggested by Øyvind Kvangardsnes, 4 months ago.

Hørt om Splunk? Om du bruker det til å søke i logger, så er det sånn ca uendelig nyttig.

Men Splunk eller lignende i et autonomt og tverrfaglig team, det er dynamitt.

I denne lyntalen skal jeg fortelle hvorfor slike verktøy er et av de helt essensielle når man jobber med smidig produktutvikling. Jeg kommer til å vise eksempler på hvordan man ved hjelp av disse kan ta bedre beslutninger rundt forretning, ux, oppsider, nedsider, feilsituasjoner og anna morro.

Og til slutt skal jeg skal fortelle hvordan vi fant ca 36 000 timer.

 

Read more...

Thermal predictions - an environmental ML success story

Lightning talk (10 min) - Suggested by Christian Sloper, 4 months ago.

Using deep learning and weather data we have succeeded in calculating the power need of the thermal power plant days ahead.  This has allowed calculating and optimizing the use of supplementary fuel leading to a reduction in overall use of expensive oil burners.

Explaining the core challenges in the project and the positive results.

Read more...

Useful dashboards with Grafana

Lightning talk (10 min) - Suggested by Jarl Totland, 4 months ago.

Modern cloud and container orchestration makes it super easy to collect tons of metrics for your infrastructure and applications. Unfortunately it is not always obvious how to reduce the information flow, and visualize it.

Let's look at some good practices for creating effective dashboards for high level overviews and day to day devops activities. 

Based on real life experience using Grafana with Telegraf and Influxdb for managing 500+ servers whilst migrating from on prem to AWS. 

Read more...

Using game AIs for Business Logic

Lightning talk (10 min) - Suggested by Anders Norås, 5 months ago.

Artificial Intelligence is a huge thing at the moment, even in enterprise IT. Game developers have been making artificially intelligent software for eons and they have a few tricks up their sleeves to make things "smart" without jumping the machine learning shark.
We'll look at how a very common game AI technique works and learn how we can use it for everyday business logic.

Read more...

Why startups are more efficient organizations

Lightning talk (10 min) - Suggested by Karianne Berg, 4 months ago.

Startups are blowing established organizations out of the water on a regular basis. How on earth can small companies of 1-30 people beat multi-million companies with a lot of money, existing customers and experience? Karianne Berg, who have experience from several startups, will share some simple (but not easy!) tricks of the trade.

Read more...