Showing: 1 - 10 of 16 RESULTS

AI in the service of democracy

The Swedish Security Service has been scaling up the data and AI efforts in recent years, but why and how can AI be used by the service? Many organizations want to scale their digitalization and AI capabilities, but how can these capabilities ”scale with style?” AI has been around for over 70 years, but why is it accelerating at an exponential rate today? How are investments in AI being made in different parts of the World, and how do the Swedish and European investments compare? These are some of the questions that will be addressed in this talk, in the context of using AI in the service of democracy.

The Rise and Fall and Rise of Artificial Intelligence

Speaking remote

It is perhaps in the very nature of our humanity that we seek to build machines in our own image. The history of computing is filled with attempts to do so, and even today, fueled by a perfect storm of an abundance of data, access to extraordinary amounts of computational power, and advances in neural algorithms, we see such efforts renewed. In this presentation, I’ll look at AI through the lens of software architecture: how it has evolved, what has worked and what has not, and what remains to be done.

Barry O'Reilly

Architecture as Difference and Repetition

It turns out that the never-ending discussion on ”What is architecture?” is almost 3000 years old. This session will use aspects of 20th century continental philosophy to explain why traditional architectural approaches should never work, why they sometimes do despite themselves, and what we should be doing instead.

Data Science as Software Engineering

Data science has been booming! ChatGPT fills your feeds and there are self-proclaimed ’AI experts’ everywhere. But does data science actually add value for companies?

In this talk we’ll take a look at how we got to this point, share experiences of implementing data science projects at companies and discuss how software engineering will play a key role in its future.


The Lost Art of Software Modelling

”Big design up front is dumb. Doing no design up front is even dumber.” This quote epitomises what I’ve seen during our journey from ”big design up front” in the 20th century, to ”emergent design” and ”evolutionary architecture” in the 21st. In their desire to become ”agile”, many teams seem to have abandoned architectural thinking, up front design, documentation, diagramming, and modelling. In many cases this is a knee-jerk reaction to the heavy bloated processes of times past, and in others it’s a misinterpretation and misapplication of the agile manifesto.

As a result, many of the software design activities I witness these days are very high-level and superficial in nature. The resulting output, typically an ad hoc sketch on a whiteboard, is usually ambiguous and open to interpretation, leading to a situation where the underlying solution can’t be communicated, assessed, or reviewed. The same is true of long-lived documentation, which is typically a collection of disconnected diagrams that are out of sync, and out of date. Modelling can help resolve many of these problems, but that’s a tough thing to sell to mainstream developer audiences these days – teams are either not aware of modelling, or they associate it with bad experiences using complicated CASE tools from the past. Join me for a discussion about the lost art of software architecture modelling, and my experiences of how it can be reintroduced to the agile generation.

Evolution, Order and Emergence: Self-Organisation in Nature

No one can predict the future, least of all software engineers. As our society bears witness to an age of increasing complexity, how does one even begin to judge the validity of today’s KPI/OKR/KRA/TLA against the backdrop of the unpredictable?

Mother Nature takes a simpler approach: do what you can and try not to die. While the rest of the cosmos marches down the inevitable path towards maximum disorder, Nature seemingly never stops creating expansive islands of ever-increasing order. By exploring the boundaries of mathematics and chaos, structure and self-organisation can be found everywhere from economics and social networks, to chemistry and biology. But how is this possible?

This talk highlights several key ideas that have emerged over the past century, and tells the story of how Nature evolves, reacts and experiments to create amazing structures, limited only by the universe itself. On our journey, we will explore the awesome power of weather systems, the elegance of the human brain, the unfair reputation of waterfalls, and the reasons why pandas are pointless.

Modernization of Enterprise Architecture for Future Fit

Most of the big size companies are becoming more globally distributed, decentralized and autonomous. The talk will focus on addressing challenges with current way of working with enterprise architecture and what adaptations are highly needed to work effectively with modern organization, and drive them to be more architecture driven.

Programs and Programmers in Time

The world around us constantly changes. Our programs are unable to respond and adapt to those changes by themselves. They are, after all, mere code. They are dead and have no agency. It falls on us, the programmers, to run around modifying the code as appropriate in response to the changes that occur in the world. Unfortunately, since this is a manual process and we are bound by time and economic constraints, our response is bound to be partial and imperfect. We might not immediately be aware of all the changes that we need to respond to. Sometimes we don’t know exactly how to respond. Maybe we don’t consider it worthwhile to respond to the change. The change might be incompatible with previous choices or assumptions we have made. It might take a lot of time to make the necessary changes. When there are many changes, we might lag behind. Over time, this causes problems. This isn’t just a matter of so-called technical debt. It is much more fundamental.

In this talk, we’ll take a deeper look at change and inertia in the socio-technical symbiosis of programs and programmers.