
Developers from all over the world gathered last month in Oslo. The place to be was NDC, the leading Norway Developers Conference. More than twenty colleagues from Teal Partners went there to learn about the latest trends in IT. What did they learn?
“The idea to go to NDC together grew in our Teal Academy,” explains Tom Van Haver. “Our Academy consists of 8 colleagues who are committed to growing knowledge within Teal Partners. The aim is to identify which know-how or skills we lack and with which workshops, training sessions, or conferences we can address that.”
The choice to go to Oslo together was obvious, according to Tom. “NDC has a good reputation. The conference focuses on developers. No less than 3000 visitors participated. With more than 150 speakers, everyone found something of interest. The topics were broad, ranging from deep technical sessions to talks on soft skills. The trip helps us stay up to date with the latest developments, and of course, it's good for team spirit.”
“What I liked about this talk was that it provided a clear overview of the options you have to configure a .NET app — especially the do’s and don’ts. It's one of those components you rarely look at once the application is set up. For example, at Buddy, it's something you occasionally need to adjust. It's helpful to have a clear understanding of how the entire system works.
The speaker clearly explained how the configuration pipeline is structured: how .NET retrieves settings step by step from JSON files, environment variables, secrets, and so on. And also how to keep everything manageable and secure, especially towards production with things like Azure Key Vault and managed identities. The explanation of the Options pattern was also enlightening — it really helps to keep everything structured and type-safe. Next time I'm working on configuration, I'll know better what to pay attention to.”
“The speaker showed how even in a stable language like C#, strange things can happen. Simple code examples produced bizarre but valid results. Cleverly constructed, with traps that triggered unexpected behavior. He had the audience laughing.
For example: if (true == false) still gets executed. Or a switch statement where the order of cases, combined with missing break or goto case, led to surprising behavior — without the compiler protesting.
The talk was mainly entertainment. Chapsas himself said: ‘You mainly learn what not to do, or how to play pranks on colleagues.’ But there was a message: you can tweak all sorts of things under the hood, but good code remains clear and predictable instead of over-engineered. A fun and educational reminder.”
“Due to the growth of our payroll project, which involves more than 60 people, efficient teamwork has become crucial. Tobias Mende critically examines scrum. He posed simple yet sharp questions about things we sometimes take for granted. He specifically pointed out what goes wrong in classic scrum settings: too many fixed rhythms, too little real interaction.
For example, his point about daily stand-ups is interesting. If we were to eliminate them, we would save 2.5 hours per week. With Slack, we already have excellent direct communication channels. The time saved can be invested in real collaboration: coding together, solving problems together. Mende also provided concrete suggestions, such as the idea that seniors should speak last in a meeting. This gives younger team members the chance to contribute and learn. Perfectly applicable. Small behavioral changes can truly make teams more performant. The session is thought-provoking.”
“An extremely interesting and familiar session was OpenID Connect Architectural Patterns by Anders Abel. It wasn't about the basic flows of OpenID Connect, but about the more advanced applications — exactly the situations we often encounter at Teal.
For example: how to support multiple identity providers (IDPs) in one application. Think of a client who needs to log in via their own IDP, and another client who works through a different provider. Single sign-on and especially single logout were extensively covered. This is directly from our daily practice.
The talk addressed the typical pitfalls of single logout and explained the difference between front-channel and back-channel logout — something we haven't implemented ourselves yet. The first part of the session felt familiar: the problems he described matched what we had already seen. The section on single logout provided new insights. In short: a talk that both confirmed we are on the right track and offered new ideas to further refine our implementation.”
“CSS is an enormously extensive language, and this talk covered various small, surprising features that developers often overlook. For example: with light-dark(), you can automatically respond to the browser's light or dark mode and adjust your styling accordingly — something I had never heard of before. Or the ::first-letter pseudo-element: it allows you to easily style just the first letter of a text without complex workarounds.
A light-hearted but enjoyable session. The talk wasn't a deep technical dive, but rather a playful introduction to new and lesser-known CSS possibilities. It immediately makes you want to try out some CSS again — and make your code just that little bit more refined.”
“This talk was about how to make AI systems more secure — and especially to prevent them from returning sensitive information to users who do not have the rights to access it.
The speaker started from the model of Relation-Based Access Control (ReBAC), which originally comes from a Google whitepaper. Unlike classic RBAC, where you determine what someone can see based on their role, ReBAC works based on relationships between objects. There are now tools available for this, so you can easily integrate it into your AI pipeline.
A concrete example: suppose you ask the AI in an application what the CEO of a certain company earns. Without proper filtering, you could easily get an answer — even if you don't have the rights to it. The idea is to filter which data can be provided as context before the AI prompt is composed. This is done via a vector database where only authorized data is queried.
What I mainly take away is that security in AI projects is often a forgotten aspect. But it should actually be part of the functional requirements by default. Especially if we do something with it ourselves in the future at Teal, this is something to keep a close eye on.”
Colleague Rik made a podcast on the spot. He interviewed, among others, speaker Laila Bougriâ about her keynote ‘CTRL+SHIFT+ (BUILD) PAUSE’ in which she calls for reflection on the use of copilots in software development. Listen along.
