NDC { Oslo } 2024 was an awesome conference! I'm happy with all of my agenda selections. I met and talked to many developers from my past and some new ones, and I got to experience this with several of my colleagues. I had a lot of fun and I feel very inspired; there are several things from the conference that I want to follow up to learn more about and possibly apply to our work.
The two main topics from the conference agenda were event-driven architecture (and related architectural topics) and AI, but it also had a lot of great (softer) content about Life as a Developer.
Before the conference proper I attended a two-day workshop with Udi Dahan about Event-driven architecture (EDA), Service-oriented architecture, CQRS, DDD, etc.
I want to experiment more with service- and event-driven architecture. I want to build a message broker from scratch
(for fun and to understand). Then use this to set up demo systems with cloud-native best practices.
This could possibly become a good learning tool for others.
Sidenote 1: Check out PitStop (Github repository) for inspiration.
Sidenote 2: Check out the cloudevents specification for a standard on how to construct messages.
Also, I need to remember that EDA etc. are architectural styles, not all-or-nothing decissions. Quoting Barry O'Reilly:
Be responsible for your own philosophy of architecture. You control the model, it doesn't control you.
Aspire is simple cloud native out-of-the-box. I think we can and should rewrite some of our hosting of Common Library1 to take advantage. Probably not use Aspire directly, but do many of the same things, but in steps. Azure and .NET have changed a lot in six years, and I think it's time to move our solution closer to current practices.
I want to use Roslyn to diagram the hidden parts of our solution. The talk about Living Documentation had some nice building blocks to get started (see her and her), and it should be possible to extract a lot of value from our source code. Like to document our release workflow (as one example).
Sidenote: Check out AsciiDoc (markdown with more features).
I want to try Semantic Kernel (the open source foundation of Copilot). I have an idea for Common Library1 where we could use a Copilot to turn data questions into SQL. Also look into Hugging Face (seems like a great site for AI resources).
I need to try the PICO-8 fantasy console. This is just for fun and enjoyment though.
- Lateral thinking by Edward de Bono
- Software Architecture: The Hard Parts: Modern Trade-Off Analyses for Distributed Architectures
- Living Documentation: Continuous Knowledge Sharing by Design
- Design Patterns for Cloud Native Applications: Patterns in Practice Using APIs, Data, Events, and Streams
The talks should be available on YouTube in a month or so.
- Keynote: Introducing .NET Aspire by Scott Hunter
- 11 insights after 11 years with the functional database Datomic. It's interesting to review this in an RDF context. Could Datomic be a better and more mature triplestore?
- Locknote: The Albatross Project by Mark Rendel
- Underwhelming game development with PICO-8 by Jonas Winje
- Cursed C# by Nick Chapsas
- Being Staff Plus by Ian Cooper
- EventSource: The under appreciated sibling of WebSockets
I used to be part of the agenda committee for NDC several years ago. They have now asked me to consider re-joining. I think it would be nice, but have to think about it.