77-Mattias Karlsson.txt

Mattias Karlsson: I think it’s Brilliant
Duke’s Corner Java Podcast
Mattias Karlsson, Guest, Java Champion, Jfokus, Stockholm, Sweden
Jim Grisanzio, Host, Java Developer Relations, Oracle, Osaka, Japan
Monday September 15, 2025

Duke’s Corner Podcast with Mattias Karlsson, Java Champion and prominent developer in the Java community who was also honored with the Java Community Lifetime Achievement recognition at Jfokus in February 2024.

“I was shocked and honored — very humbled!” Mattias said about being recognized for his lifetime of achievements in the Java community by Sharat Chander of Oracle’s Java Developer Relations Team.

Mattias, a Stockholm-based engineer and long-time leader of the Stockholm Java User Group, shares his journey with Java, from its early days to its current role in today’s modern tech ecosystems. He also talks about the evolution of Jfokus, a leading annual Java conference he organizes, which has grown from a small Java user group into a major gathering of over 2,000 developers from diverse backgrounds around the world. Mattias highlights Java’s enduring appeal, driven by its robust JVM, backward compatibility, and vibrant community. He also reflects on the six-month release cycle, calling it “brilliant” for its balance of stability and innovation, and shares insights on mentoring young developers and using AI to stay updated.

When talking about how students learning programming will inevitably encounter Java due to its widespread use in the industry, Mattias said, “Sooner or later they will end up with Java anyway.”

Finally, the episode underscores the unique culture of the Java community and Jfokus as a conference for its blending of culture, professionalism, and a welcoming atmosphere.

https://dukescorner.libsyn.com/site/mattias-karlsson-i-think-its-brilliant

Transcript:

(00:00:00):
Matthias, Matthias Karlsson from Stockholm, Sweden, the land of JFocus.

(00:00:04):
Welcome to Duke’s Corner.

(00:00:06):
Thank you very much.

(00:00:06):
I’m really happy to be here.

(00:00:08):
It’s fabulous to see you here because this is the first appearance that you’re

(00:00:12):
making on Duke’s Corner.

(00:00:13):
And I’ve asked you about 46 times, so I’m very happy you finally consented.

(00:00:18):
And here you are.

(00:00:21):
So I don’t remember why I said no,

(00:00:23):
but I were probably busy doing something,

(00:00:25):
but I’m glad to be here.

(00:00:27):
I mean, we met in Japan a couple of years ago and we have been hanging around for a while.

(00:00:32):
Yes, absolutely.

(00:00:33):
Absolutely.

(00:00:34):
So listen, here’s a deal.

(00:00:35):
Sharath Chander told me that you won recently a Java Community lifetime achievement.

(00:00:41):
He recognized you for your lifetime of achievement.

(00:00:43):
Let’s start there.

(00:00:45):
When and where did you win this award?

(00:00:48):
Well, so I think it’s called Java Community Lifetime Achievements.

(00:00:53):
So my guess is,

(00:00:54):
and part of this is because I’ve been involved in the community for a very,

(00:00:58):
very long time,

(00:00:59):
running the Java User Group in Stockholm and so on.

(00:01:02):
But the award, I was receiving that, is it like two years ago at JFocus 2024?

(00:01:11):
So, you know, I was opening the conference, saying hi to and welcome to everybody.

(00:01:16):
And then,

(00:01:18):
you know,

(00:01:19):
Jordi Saab was having a 10-minute presentation about,

(00:01:23):
you know,

(00:01:23):
news in Java and upcoming releases and,

(00:01:26):
you know,

(00:01:26):
what’s going on.

(00:01:28):
And then suddenly, Char also joined him on stage and a big surprise.

(00:01:35):
So you didn’t know?

(00:01:36):
You had no idea?

(00:01:37):
I didn’t know.

(00:01:38):
So, and apparently I was really touched.

(00:01:40):
So people that were in the audience did see, you know, a little bit of tear of joy or whatever.

(00:01:45):
So I was really touched about it.

(00:01:47):
So Char is always telling these nice things about you and it’s, you know, make you feel good.

(00:01:53):
Make sure that you feel that you’re part of the community, for sure.

(00:01:56):
That’s fantastic.

(00:01:57):
You know,

(00:01:57):
Char is always talking about the community to us internally on various teams,

(00:02:02):
and he’s evangelizing the Java community throughout Oracle.

(00:02:05):
He’s been doing, and at Sun, years ago.

(00:02:07):
It’s just what he does.

(00:02:09):
And so he’s always looking out for you guys.

(00:02:12):
And so I’m interested,

(00:02:13):
what it takes to,

(00:02:14):
because I’ve never won anything in my life,

(00:02:16):
what does it take to win?

(00:02:17):
I’m pretty sure you did.

(00:02:22):
Yeah, because I’m getting old now.

(00:02:24):
But I’m sure I did too.

(00:02:25):
But what does it take to win such an award like this?

(00:02:30):
For this particularly award, this lifetime achievement, I really don’t know.

(00:02:36):
I was actually sending Sharon an email recently since preparing for this interview,

(00:02:43):
and you pretty much asked him if there was any online

(00:02:48):
recognition or online list of people that actually got this award and I haven’t

(00:02:52):
managed to find that yet.

(00:02:55):
So usually used to Google yourself, right?

(00:02:58):
So before this interview,

(00:03:00):
I asked AI,

(00:03:01):
AI said that we have no recollection and no record of Matthias achieving this

(00:03:06):
award.

(00:03:06):
So maybe I didn’t get it.

(00:03:08):
Because A, I don’t know.

(00:03:10):
But I mean, before me, I think it was maybe Bruno Sosa and Venkat that got it before me.

(00:03:17):
So to that extent,

(00:03:18):
I was really honored and I don’t think that I can compare it to those two guys at

(00:03:23):
all.

(00:03:23):
So I was shocked and honored, very humbled.

(00:03:28):
But I mean, I guess it would be easier to have Char on the podcast and ask him,

(00:03:37):
But I guess it’s because I’ve been part of the community for a long time,

(00:03:42):
doing presentation at various conferences.

(00:03:45):
I’ve also been running the Stockholm Java User Group for 25 years or something like that.

(00:03:55):
And also this one-time event, the conference called JFocus.

(00:03:58):
We’re actually doing that for the 20th anniversary.

(00:04:01):
So I guess just hanging in there for a long time.

(00:04:05):
Might be enough.

(00:04:07):
I don’t know.

(00:04:09):
Well, I’ve been to JFocus a few times.

(00:04:12):
It’s a fantastic event.

(00:04:14):
Everybody loves it.

(00:04:15):
It’s very impressive on a number of levels.

(00:04:18):
From a technology point of view,

(00:04:20):
you have great content,

(00:04:21):
great speakers,

(00:04:22):
but there’s a real culture there.

(00:04:25):
and so there’s a real culture where people come back year after year after year and

(00:04:29):
i was sitting in for a little bit of your session at java one in march in

(00:04:34):
california where you know where you talked about the user group and you talked

(00:04:38):
about the evolution of jfocus and it was really fascinating it was really

(00:04:41):
interesting for me because i didn’t know the details of all the challenges you

(00:04:45):
overcome you know yeah power goes out you lose your video all these different

(00:04:49):
things that

(00:04:50):
Organizers have to deal with.

(00:04:51):
But in the end, it’s grown into a premier conference.

(00:04:55):
You know, it’s really, really fabulous.

(00:04:57):
And the food is awesome.

(00:04:58):
I remember I says,

(00:04:59):
wow,

(00:04:59):
I’ve been to this conference here actually serves you fantastic food,

(00:05:04):
you know,

(00:05:05):
and the sessions are really cool and the venue is interesting.

(00:05:08):
Of course, the city is historic as well.

(00:05:11):
Yeah.

(00:05:12):
But like I said, the conference is great.

(00:05:14):
And I guess it’s what you have seen mostly because it’s when you come to Stockholm.

(00:05:19):
But we’re also running, I mean, when we started up, they have a user group.

(00:05:24):
We were doing these evening meetings for…

(00:05:28):
number of years before we started the conference in 2007 and we continue to do that

(00:05:33):
so so we run these free events uh in the beginning we were doing them pretty much

(00:05:39):
monthly but uh after uh after a couple of years we were you know spreading them out

(00:05:45):
a little bit and i guess our energy

(00:05:48):
maybe become a little bit lower so we’re doing it maybe four to six times per year

(00:05:53):
right now and we will also keep we also kept that going during during the pandemic

(00:05:58):
and then we did like a virtual lunch and learns every week for not the entire

(00:06:04):
pandemic but for a good number of weeks with a

(00:06:07):
be able to keep the community alive.

(00:06:09):
So that’s fun.

(00:06:11):
Yeah, it was fantastic.

(00:06:12):
I remember that pandemic session that you guys ran.

(00:06:15):
You had live music and everything there.

(00:06:17):
You had a studio.

(00:06:19):
And the thing that was interesting is that was early on.

(00:06:21):
You guys were very innovative with actually what you did.

(00:06:25):
because most of the stuff was just zoom right yeah yeah you guys are very

(00:06:30):
innovative with that yeah we were actually trying to do something a little bit

(00:06:34):
different because it’s so hard to replicate you know the all of the bus going on in

(00:06:38):
the conference so we did it a little bit more like a tv show thing with a house

(00:06:43):
band and so on and a winter studio yeah it was awesome i remember the music guys

(00:06:48):
this guy has class really nice really nice a touch of class there

(00:06:54):
Well, again, congratulations.

(00:06:56):
It was well-deserved.

(00:06:57):
You’re certainly one of the premier leaders in the community.

(00:07:00):
And so you should honor it like an example for a lot of other people.

(00:07:07):
And that’s really cool.

(00:07:09):
So let’s shift gears a little bit here and talk about Java.

(00:07:12):
You know,

(00:07:12):
I’ve always one of the things I always ask everybody that comes on this podcast is

(00:07:16):
why Java?

(00:07:17):
You know, what makes Java so special?

(00:07:19):
Obviously,

(00:07:20):
the technology has been around for a long time,

(00:07:22):
but it’s as fresh now as it was the day it was born.

(00:07:25):
I mean, there’s new people, young people all over the place.

(00:07:28):
And you have this great history of the older guys mixing with the younger guys.

(00:07:33):
And so that’s really cool.

(00:07:34):
So let’s talk about what makes Java special,

(00:07:37):
especially,

(00:07:38):
actually,

(00:07:38):
since Java 25 is set to be released mid-September.

(00:07:43):
So we get another release of Java.

(00:07:45):
They come every six months now, literally like clockwork.

(00:07:48):
And so why?

(00:07:49):
Why is this technology so special?

(00:07:52):
For me,

(00:07:52):
I mean,

(00:07:53):
there has to be a reason why this technology has been thriving for so long and

(00:07:58):
still up to date.

(00:07:59):
I mean,

(00:07:59):
if you look at,

(00:08:00):
I would say,

(00:08:01):
like any larger corporation that is successful will eventually run things on the

(00:08:08):
JVM.

(00:08:10):
So, I mean, we have a number of those companies back in the day.

(00:08:12):
So we’re trying to do, I mean,

(00:08:14):
Twitter these days is maybe something different,

(00:08:17):
but I remember clearly when they were doing backend stuff in another language,

(00:08:21):
I think they were running Ruby and Ruby on Rails,

(00:08:23):
and at some point through the load and so on,

(00:08:27):
and performance reasons,

(00:08:28):
and I don’t know what the reason they had,

(00:08:30):
but as far as I know,

(00:08:32):
they at some point changed to the JVM.

(00:08:36):
All of the bigger companies are running Java and JVM these days, so…

(00:08:40):
or at least many of them.

(00:08:42):
I guess the company that we are working with, right?

(00:08:45):
That is why I think that everybody’s using it.

(00:08:47):
What are some of the reasons why?

(00:08:48):
So I think many of the reasons is maybe not the,

(00:08:53):
I mean,

(00:08:53):
the language,

(00:08:54):
I love the language,

(00:08:55):
but it also the platform,

(00:08:57):
the JVM.

(00:08:59):
So,

(00:08:59):
I mean,

(00:08:59):
the JVM does quite a lot of magic tricks that is technically really hard to

(00:09:05):
understand how it works.

(00:09:07):
I mean, I guess, I mean, if you go way back,

(00:09:10):
Just the fact that we had a proper garbage collection was, you know, a big thing.

(00:09:14):
And I mean, the language itself has, you know, inheritance from C and C++.

(00:09:21):
So, I mean, that is why the syntax started out the way it does, right?

(00:09:25):
Also the fact that even if there has always been a leading vendor or whatever,

(00:09:34):
there are still multiple companies that are supporting this and they are competing

(00:09:41):
Java virtual machines out there.

(00:09:42):
So I mean, that is a big difference from some of the other competitors.

(00:09:47):
So I think that is, and also technically that is the case.

(00:09:50):
And on the other hand,

(00:09:52):
We were talking a little bit about the community.

(00:09:55):
I also think that is a big part of Java success and how that has evolved from start

(00:10:02):
and the way that,

(00:10:03):
you know,

(00:10:03):
back in the days when Sun was building up this as a community thing.

(00:10:07):
I think that there is a couple of reasons for sure.

(00:10:11):
That’s really cool.

(00:10:12):
When I ask the question,

(00:10:14):
what makes Java special,

(00:10:16):
and I specifically ask about the technology,

(00:10:18):
the person will usually answer like you did,

(00:10:20):
a little bit of technology,

(00:10:21):
but they always bridge over to the community.

(00:10:25):
And it’s fascinating to me because nobody sees it as just a community or just a technology.

(00:10:32):
It’s simultaneously both.

(00:10:34):
Yeah, exactly, for sure.

(00:10:35):
But it’s also like the core of this is like the JVM,

(00:10:39):
the language and also like the stability of it.

(00:10:42):
It’s like both backwards and forward compatible in the sense that,

(00:10:46):
I mean,

(00:10:46):
you can have if I did write a Java program 10 years ago,

(00:10:51):
I can just fire it up on the latest version of the JVM.

(00:10:56):
best case and like it will it will probably work fine and on top of that it will be

(00:11:02):
like faster and more performant than it was 10 years ago so even if I didn’t do

(00:11:08):
anything so I mean with the with the release of virtual threads we had a you know

(00:11:15):
some performance increases directly without doing anything with your own program

(00:11:20):
code so I mean that is just I don’t know

(00:11:23):
Maybe that is for other communities and language as well,

(00:11:25):
but I think that this is very special for the Java runtime and the technology of

(00:11:31):
it.

(00:11:31):
So it seems like the technology and the core technology itself really helps to

(00:11:36):
liberate the developer.

(00:11:37):
I mean,

(00:11:37):
it sounds like,

(00:11:39):
because I ask these questions a lot,

(00:11:41):
and a lot of these answers are similar.

(00:11:43):
If I can classify them,

(00:11:45):
these developers feel empowered to do so much more because the base is already

(00:11:49):
there doing that magic under the hood.

(00:11:51):
Yeah, and it scales so well.

(00:11:54):
So I used to work for a company called King,

(00:11:57):
King that makes a very famous game called Candy Crush.

(00:12:02):
And I mean,

(00:12:03):
we were running the backend servers there on the JVM and Java,

(00:12:07):
and that helped us scale up when that game became successful.

(00:12:12):
So what do you do now and how do you use Java in your day to day?

(00:12:17):
Around the community, a big part of my time is preparing and running JFocus.

(00:12:25):
And we also do a couple of other events as well.

(00:12:27):
So we did an AI Focus for the first time this spring.

(00:12:31):
For that, as any proper community conference organizer, we had to run our own.

(00:12:38):
I mean, we have created our own system, right?

(00:12:41):
So one of the things that we do on a daily basis is fix and tricks and build our

(00:12:46):
own system to handle these different events.

(00:12:49):
So I do that.

(00:12:50):
And then I also do a little bit of consulting.

(00:12:54):
So I typically help startup companies with more of a technology coaching perspective.

(00:13:00):
So I’m supporting the CTO or the architect or developers in different smaller

(00:13:06):
organizations these days to make technology choices,

(00:13:10):
support them

(00:13:11):
It could be performance problems or something like that,

(00:13:14):
but I don’t write code for customers or other companies these days,

(00:13:19):
but I write code for myself and for our conference platform.

(00:13:24):
I see.

(00:13:24):
That’s cool.

(00:13:25):
So I’m sure that you know many technologies you have to,

(00:13:29):
especially with the work that you do,

(00:13:31):
but is Java your primary focus?

(00:13:33):
Is that your primary technology that you use?

(00:13:36):
yeah for sure we have a i would say a pretty typical setup these days so we are

(00:13:42):
running mysql and then we have java 21 i think these days and we had an old admin

(00:13:52):
application that was actually was running java server pages up till a couple of

(00:13:57):
years ago when we decided to make it more modern

(00:14:01):
So these days we have moved everything over to Vadin.

(00:14:05):
I don’t know if you know that web framework.

(00:14:08):
So we’re using that for backend stuff these days.

(00:14:12):
And then we have a REST interface serving a React website,

(00:14:16):
but that will probably change to something else this year,

(00:14:20):
I think.

(00:14:21):
So we’ll probably go to more play in HTML or something else for the website.

(00:14:26):
I see.

(00:14:26):
Gotcha.

(00:14:27):
So let’s stick on Java for a little bit longer and tell me a little bit about the release cycle.

(00:14:32):
I have a six-month release cycle.

(00:14:35):
So talk a little bit about what it was like in the olden days when releases would

(00:14:40):
come more infrequently.

(00:14:41):
They would be much larger.

(00:14:43):
And now where it’s six months, you get…

(00:14:46):
smaller releases of actual technology, but more regular.

(00:14:49):
And you can see things in early release and things like that.

(00:14:54):
Has that affected you as a developer?

(00:14:56):
Yes, I think so.

(00:14:57):
But we had a period where Java was going strong.

(00:15:01):
But I don’t know really what happens, financial problems or whatever.

(00:15:06):
But the development of Java was slowing down.

(00:15:09):
I mean, the pace picked up again after Oracle’s acquisition of Sun.

(00:15:15):
And I clearly remember the discussion.

(00:15:18):
I mean,

(00:15:18):
we were debating this cadence thing,

(00:15:22):
you know,

(00:15:22):
in different forums,

(00:15:23):
on email threads,

(00:15:24):
on conferences,

(00:15:25):
on birds of a feather sessions.

(00:15:27):
And there were, you know, people that were hesitant, a little bit conservative on this.

(00:15:34):
But, you know, I never doubted it.

(00:15:37):
So I was on the barricade for, you know, the faster cadence release.

(00:15:42):
I’ve been doing agile development for a long time.

(00:15:45):
We have been doing release trains in smaller systems with releases bi-weekly or

(00:15:52):
monthly or quarterly.

(00:15:55):
So I felt that six months was not often enough.

(00:15:59):
Oh, really?

(00:16:01):
Yeah, so I think we could, but it’s different because Java and JVM is a big platform.

(00:16:06):
So maybe this is a good compromise, but I remember how hard it was to get here.

(00:16:14):
And I’m so glad that you guys decided to give it a shot and try it out.

(00:16:20):
you get the stable releases,

(00:16:23):
you get the immediate releases,

(00:16:25):
but you also get the experiment releases and features.

(00:16:30):
And even if things are not coming with this release because of the cadence,

(00:16:35):
everybody can look ahead and see what’s in the plans for coming.

(00:16:38):
So I think it’s brilliant.

(00:16:41):
So I really hope that the

(00:16:45):
You guys and the architects and the responsible persons also agree that this is a good choice.

(00:16:52):
I think from things that I hear inside the company and just at conferences with the

(00:16:56):
senior engineers,

(00:16:57):
I mean,

(00:16:58):
I haven’t heard anything negative about everyone loves it,

(00:17:01):
but I am interested in how complex it was to make that change.

(00:17:04):
because it’s a big code base and you’re changing many, many things to change that.

(00:17:10):
It’s also a mentality of the engineers because you’re used to working on three,

(00:17:14):
four,

(00:17:14):
five-year releases or whatever it was,

(00:17:17):
certainly multiple years to now every six months.

(00:17:20):
But even if it’s six months these days, you guys rarely releases breaking stuff, right?

(00:17:27):
So even if it’s a six-month cadence, it’s never like breaking releases.

(00:17:32):
So, I mean, people’s softwares continue to work even when you move forward.

(00:17:38):
Right, right.

(00:17:40):
It could be differently if,

(00:17:41):
you know,

(00:17:42):
all of the new releases were breaking all of the old stuff all the time,

(00:17:46):
then it would be something else.

(00:17:49):
Indeed.

(00:17:49):
I think it would be like the web framework stuff.

(00:17:56):
Exactly.

(00:17:57):
Okay, let’s go back in time here.

(00:17:58):
Take me back to when you learned Java,

(00:18:01):
why you learned Java,

(00:18:03):
you know,

(00:18:03):
even just actually even go back further than that.

(00:18:06):
Why did you become a developer?

(00:18:08):
Yeah, so it’s kind of interesting.

(00:18:10):
So maybe I was a little bit late to the game, but I have a clear memory from my cousin.

(00:18:17):
He got his first computer and he got this Sinclair Spectrum, I think.

(00:18:22):
So we were playing along with that.

(00:18:25):
That was fun.

(00:18:26):
But I never got the Commodore 64, so I was late.

(00:18:29):
I got the Commodore 128 instead.

(00:18:33):
But even back then,

(00:18:34):
you know,

(00:18:36):
I was studying to be,

(00:18:37):
what do you call that in English,

(00:18:39):
like electronic engineer.

(00:18:40):
So I was studying at the Royal Institute of Technology in Stockholm.

(00:18:48):
But like electro engineering instead.

(00:18:52):
So I was supposed to, you know, work with Ericsson Telecom stuff.

(00:18:55):
But I felt that I didn’t enjoy that so much.

(00:18:58):
But all of the computer sessions and everything we were doing with that, I really loved that.

(00:19:04):
So, I mean, my first job was as a developer when I was hired.

(00:19:09):
My first job was as a developer.

(00:19:10):
And then I kept on that track.

(00:19:12):
but when i started technically java was around but we were not using that so i mean

(00:19:18):
it was uh oh i don’t know we were doing c c plus plus and then some things in

(00:19:25):
visual basic it was a lot of

(00:19:30):
SQL,

(00:19:31):
we were doing…

(00:19:33):
And then I had a short period in time when we were…

(00:19:38):
Do you remember those 4GL languages,

(00:19:41):
like Power Builder and stuff?

(00:19:43):
No.

(00:19:44):
They were pretty cool, actually, and you managed to develop stuff pretty fast.

(00:19:50):
But then I think around 98,

(00:19:53):
99,

(00:19:53):
I was moving into Java,

(00:19:55):
and I was,

(00:19:57):
like many,

(00:19:57):
started with the web.

(00:19:59):
Right.

(00:20:00):
We were doing something at Ericsson and some kind of a web interface for legacy systems.

(00:20:08):
And that was built with Java server pages.

(00:20:11):
I remember we started with like 0.8 or something like that before even the 1.0 release.

(00:20:19):
And then I was doing everything after that with the entire G2EE stack and EGBs and

(00:20:27):
message driven and all of that,

(00:20:29):
that maybe was a little bit immature in hindsight,

(00:20:34):
but maybe we needed to go through that.

(00:20:37):
And I also clearly remember when Spring came around and how that kind of pushed us

(00:20:43):
all forward in a good way and how Java Enterprise Edition then,

(00:20:47):
you know,

(00:20:48):
tagged along and also became more modern.

(00:20:50):
So you’ve got 25, 26 years in this little gig here.

(00:20:52):
Yeah, still looking young, right?

(00:20:53):
Yeah.

(00:20:59):
But I have gray hair.

(00:21:01):
Well, don’t we all?

(00:21:03):
But when you were first starting to use Java,

(00:21:06):
did it strike you as something that,

(00:21:09):
in other words,

(00:21:10):
was it distinctive from the other things that we were using at the time?

(00:21:12):
Did you think, hey, I can actually spend some time here.

(00:21:16):
There’s a future with this.

(00:21:18):
Well,

(00:21:19):
again,

(00:21:19):
I think that,

(00:21:19):
you know,

(00:21:20):
back in the days and maybe,

(00:21:22):
I mean,

(00:21:23):
early days,

(00:21:24):
I wasn’t that impressed,

(00:21:26):
actually.

(00:21:26):
There were a few things that really stuck.

(00:21:28):
So one is that it worked.

(00:21:31):
It was stable and continued to work.

(00:21:33):
But it was also, you know, remember, it was slow, it had slow startup times.

(00:21:38):
But it was, you know, nice to be able to have the garbage collection.

(00:21:42):
And then at some point, it became also become a pretty good trend.

(00:21:49):
So Sun was doing quite a lot of, you know, marketing activities.

(00:21:55):
And I mean, the

(00:21:56):
The Java Juicy Group in Stockholm kind of started out as a marketing event from Sun.

(00:22:02):
And I remember that we were,

(00:22:04):
many of us went there because it was free beer and good food and a great party,

(00:22:09):
right?

(00:22:11):
Oh, I can assure you, I was at Sun, right?

(00:22:14):
I joined Sun in 2000.

(00:22:16):
And once Java sort of reached even a slight threshold,

(00:22:21):
you know,

(00:22:21):
with Moscone,

(00:22:23):
actually with Java 1 and Moscone,

(00:22:25):
Sun’s investments were just massive.

(00:22:27):
In fact,

(00:22:27):
if you were on other teams,

(00:22:29):
you were really jealous of the Java team because they just sucked all the cash out

(00:22:33):
of everything,

(00:22:34):
you know?

(00:22:35):
And I remember when I was on the Open Solaris project, I said, man, every

(00:22:38):
We weren’t spending this money on Java.

(00:22:40):
What about us, you know?

(00:22:41):
So, yeah, they did make a massive investment, which was probably unique at the time.

(00:22:46):
Well, I guess Microsoft obviously made massive.

(00:22:50):
I think that my guess is that I was probably at Java 1.

(00:22:55):
It has to be before the millennium because,

(00:22:58):
you know,

(00:22:59):
because we had an economic downturn after 99,

(00:23:02):
2000.

(00:23:03):
So I think maybe I was at Java 1 the first time in 99.

(00:23:07):
Or maybe 98.

(00:23:07):
And it was fun, right?

(00:23:10):
Moscone Center, both of the venues, both North and West, and a lot of people.

(00:23:15):
Big, big, big room.

(00:23:16):
Big, big room.

(00:23:17):
Yeah, yeah.

(00:23:18):
But, you know, I also enjoyed the other ones.

(00:23:20):
When we were doing it together with Oracle and the Duke, what was it?

(00:23:24):
The Duke Cafe?

(00:23:25):
The Hilton Street, whatever.

(00:23:28):
Duke Street Cafe?

(00:23:29):
What was its name?

(00:23:31):
I don’t remember.

(00:23:31):
We started a null pointer band and everything.

(00:23:33):
So that was much better after Oracle.

(00:23:37):
Yeah.

(00:23:37):
Okay.

(00:23:38):
Yeah.

(00:23:39):
No, things have changed.

(00:23:40):
And now Java 1 is still around, obviously, but there’s many other conferences around the world.

(00:23:47):
And Java 1 is back as a solitary event, right?

(00:23:50):
Yes, absolutely.

(00:23:51):
And we just announced for 26th next March.

(00:23:54):
So hopefully, you’ll be there for that.

(00:23:56):
Yeah.

(00:23:57):
So OK.

(00:23:57):
So you got involved with Java in school.

(00:24:00):
And so in your jobs, you became a developer.

(00:24:03):
And you basically stuck with the technology.

(00:24:06):
And it evolved.

(00:24:07):
You evolved.

(00:24:08):
And we’re here now.

(00:24:10):
What was it like for you trying to learn then versus what you think now younger

(00:24:15):
people are learning Java now?

(00:24:18):
The reason this is an important question for you is you run a conference.

(00:24:22):
And so you’re bringing in speakers and you’re having sessions.

(00:24:25):
There are labs.

(00:24:26):
There are all kinds of things that are around this conference.

(00:24:29):
And you have to consider this because a lot of people are young.

(00:24:33):
And so what’s it like now for students?

(00:24:36):
Any advice for them?

(00:24:37):
I’m not sure about that, but I think that many of them still learn Java in school.

(00:24:44):
I don’t really think it’s that important.

(00:24:45):
As long as people start doing programming,

(00:24:49):
as we talked about earlier,

(00:24:51):
sooner or later they will end up with Java anyway.

(00:24:54):
But I actually have that now.

(00:24:56):
I had a career, so I was doing development and then a typical career like that.

(00:25:03):
I went into architecture.

(00:25:05):
Typically, going up the ladder, more or less just doing PowerPoints.

(00:25:12):
And then I went into management and had my own group and team.

(00:25:16):
And then it’s mostly meetings, very little programming at all.

(00:25:22):
But a couple of years back,

(00:25:24):
pretty much maybe when I left King,

(00:25:27):
I became tired a little bit,

(00:25:29):
I would say,

(00:25:30):
about the corporate way of doing things and management.

(00:25:36):
I mean, there is a set of challenges there that people…

(00:25:40):
maybe really enjoy solving those kinds of problems.

(00:25:43):
But I was trying to get back to more technical stuff again.

(00:25:49):
So that meant that I was not up to date with newer technologies.

(00:25:55):
I usually say that I still program in Java like I did 15 years ago.

(00:26:01):
but these days i’m using quite a lot of ai so what happens is that i’m writing my

(00:26:09):
code a little bit old style and then i get tips and tricks from from my ai agents

(00:26:15):
and in in cursor for instance that is an ide and then it kind of maybe you know

(00:26:21):
maybe you can try to do this use this feature in java 21 instead

(00:26:26):
So I’m using AI as a learning tool now.

(00:26:29):
So it both helped me write code,

(00:26:31):
but it also helped me to learn functional ways of doing stuff that I have not been

(00:26:36):
so good at before.

(00:26:37):
So I mean,

(00:26:38):
even if student is not doing that,

(00:26:40):
I think that you can have AI supported learning for new frameworks,

(00:26:45):
new languages,

(00:26:47):
newer versions of Java or any other like framework or tools.

(00:26:50):
So and that

(00:26:51):
That works out pretty well for me, at least.

(00:26:53):
I don’t know how many else people are doing that,

(00:26:55):
but that could be a way of,

(00:26:58):
even for younger students,

(00:27:00):
if they want to get into a new technology or learn something new to get AI

(00:27:05):
assistant learning.

(00:27:06):
I think that’s really great advice.

(00:27:08):
And I’m also real interested in what you said just a little earlier,

(00:27:11):
that just learn programming,

(00:27:12):
you eventually yell,

(00:27:13):
use Java.

(00:27:14):
It’s like what you mentioned earlier before we started recording.

(00:27:17):
Every company is using Java, or most companies are.

(00:27:21):
And if they don’t, they will be in the future.

(00:27:23):
And I think that is a really interesting comment because it speaks to the fact that

(00:27:29):
it might not matter to a student where you start as long as you learn the

(00:27:33):
fundamental processes of

(00:27:36):
of solving problems with code and becoming an engineer,

(00:27:40):
a software engineer,

(00:27:41):
you’re going to have to learn multiple technologies.

(00:27:44):
And once you discover Java, which you certainly will, then Java speaks for itself.

(00:27:48):
Yes, but we will see.

(00:27:50):
It will be interesting to see how the near future is changing this.

(00:27:57):
You know, there’s a lot of this trend with vibe coding these days, and you get maybe more.

(00:28:03):
What is vibe coding?

(00:28:04):
More than you need.

(00:28:05):
Vibe coding is basically you don’t really write the code.

(00:28:08):
So basically,

(00:28:09):
with this kind of tools,

(00:28:11):
even if you are not a developer or no programming,

(00:28:15):
you’re supposed to be able to create an app or a system just based on normal chat

(00:28:23):
with an AI bot to create that system.

(00:28:26):
And it’s supposed to create the database and everything like that.

(00:28:29):
And there is a Swedish company now that is all over the news called Lovable that is supposed to

(00:28:35):
solve this and they get,

(00:28:37):
you know,

(00:28:38):
they tend to get the venture capital’s money at least right now.

(00:28:44):
So we see how that unfolds.

(00:28:46):
Are a lot of developers that you hang out with talking about this?

(00:28:49):
Yeah, for sure.

(00:28:50):
There is a, I mean, this was part of the AI focus event we had and there is a

(00:28:58):
A lot of people have strong opinions about this right now.

(00:29:01):
So I mean,

(00:29:02):
one one strong opinion is that this new technology,

(00:29:05):
a way of working will replace developers.

(00:29:08):
And then there’s, of course, another side that is no way.

(00:29:11):
You know, we have tried this and it just produces not working software.

(00:29:16):
It’s not secure.

(00:29:17):
It’s not stable.

(00:29:18):
You know, there are a lot of

(00:29:20):
valid arguments on that side as well.

(00:29:23):
And then there are sessions at conference talking about how about writing a complete test spec.

(00:29:31):
So if you’re using like test driven development,

(00:29:34):
then you’re writing the tests for yourself and then you have AI generate the code.

(00:29:40):
And as long as the code,

(00:29:43):
actually,

(00:29:44):
all of the tests are green,

(00:29:45):
then it’s supposed to be working,

(00:29:47):
right?

(00:29:47):
According to the specification or the test-driven development promise.

(00:29:53):
So if you have 100% test coverage,

(00:29:56):
and then you have somebody,

(00:29:57):
an AI,

(00:29:58):
just create the code,

(00:29:59):
then it should be okay,

(00:30:00):
right?

(00:30:00):
Yeah.

(00:30:01):
I don’t know yet.

(00:30:02):
I think it’s very interesting times.

(00:30:04):
Well, okay.

(00:30:05):
A few years ago, it was all cloud, right?

(00:30:08):
And now it’s all AI.

(00:30:10):
But I also heard similar conversations.

(00:30:13):
Back then,

(00:30:15):
when everybody moves their systems into the cloud,

(00:30:18):
it’s going to reduce the number of developers that we need.

(00:30:21):
because you’re not going to have as many things on-prem and things like this.

(00:30:24):
But I haven’t seen that materialize in any way.

(00:30:28):
I think it’s going to change things, certainly, but that’s just the history of technology.

(00:30:32):
You can go back from the Romans on up,

(00:30:34):
you know,

(00:30:35):
in terms of all technologies,

(00:30:38):
it changes things.

(00:30:39):
Look at the printing press, right?

(00:30:41):
Exactly.

(00:30:42):
I mean,

(00:30:42):
one way of looking at that is if every developer using these tools is 10x

(00:30:47):
productive,

(00:30:48):
right?

(00:30:48):
then 90 percent of all the developers will lose their job or we will do 10 times

(00:30:54):
more creative valuable stuff that people would like to use or since we are

(00:31:00):
producing 10 times more crap then we would need more developers to take care of all

(00:31:06):
the stuff that we created that doesn’t really work exactly exactly oh

(00:31:12):
Okay.

(00:31:12):
Well, all righty.

(00:31:13):
So is there anything else here in this conversation that we need to talk about?

(00:31:17):
Did I leave anything out?

(00:31:18):
Do you have any final comments?

(00:31:19):
Is there anything that we should be talking about that we haven’t?

(00:31:23):
I don’t know.

(00:31:25):
I mean, we could mention that JFocus is having its 20th anniversary.

(00:31:33):
Okay, excellent.

(00:31:34):
February 2026.

(00:31:35):
So it’d be fun.

(00:31:37):
And we just opened our call for speakers.

(00:31:41):
So I don’t know when this will be aired, but hopefully the call for speakers will be open.

(00:31:46):
Yeah.

(00:31:46):
Well, I’m going to put this out probably in a week or so.

(00:31:49):
So let’s talk about JFocus for a little bit and then we’ll end there.

(00:31:54):
So what’s the scale of JFocus these days?

(00:31:57):
What’s the size?

(00:31:57):
What’s the mix?

(00:31:58):
I’m interested in the mix of developers,

(00:32:00):
old,

(00:32:01):
young,

(00:32:01):
from different countries,

(00:32:03):
the different technologies,

(00:32:04):
the different trends.

(00:32:05):
Obviously, you’ll probably have a few AI sessions there.

(00:32:08):
What’s the mix look like these days?

(00:32:10):
yeah so i mean the quick backstory kind of interesting so we were running the java

(00:32:14):
user group and then we decided so maybe we should do a one day event and just to

(00:32:20):
see how that works out and then that was back in 2007 and we were like expecting

(00:32:25):
200 people and we had a venue for 200 people ish and then suddenly we have 500 plus

(00:32:31):
signed up so that was a little bit of a mess the first year

(00:32:35):
But then we have continued to grow steadily.

(00:32:38):
And now we are running a three day event.

(00:32:41):
First week of February, always.

(00:32:44):
We try to put it in there so we get early in the year.

(00:32:47):
So it means we get quite many new sessions.

(00:32:51):
We max out around 2000 attendees.

(00:32:55):
I would say that it typically, I mean, it’s very mixed.

(00:32:59):
I mean, the conference is not per like branch or company thing.

(00:33:04):
It’s like a technology conference.

(00:33:06):
I mean,

(00:33:06):
we have people coming from the banking industry,

(00:33:08):
from the contractors,

(00:33:10):
from all of the startups in Sweden are coming.

(00:33:14):
So we have senior, we have juniors, and we have people from all over the world.

(00:33:22):
I mean, mostly from Europe, but we…

(00:33:25):
We actually usually get a small group coming in from Japan.

(00:33:28):
Yes, exactly.

(00:33:31):
You know, you’ve seen them, you have met them, it’s kind of fun.

(00:33:33):
I always tell them that J sounds for Japan, right?

(00:33:39):
Tell me about how you consider the culture of JFocus.

(00:33:43):
Because when you go to three,

(00:33:44):
four conferences in Europe,

(00:33:46):
JavaZone,

(00:33:47):
I’ve been to JavaZone,

(00:33:47):
I’ve been to JFocus,

(00:33:48):
a couple of others,

(00:33:50):
I notice a distinct culture.

(00:33:52):
Now, obviously, it’s different countries and stuff like that.

(00:33:56):
But do you sit around and say, okay, what’s the theme for this year?

(00:34:00):
What’s the culture?

(00:34:01):
What’s the message we want to deliver underneath the technology?

(00:34:04):
Yeah.

(00:34:05):
I’m more interested in hearing your experience now.

(00:34:09):
If you notice a big difference in culture, I’m really curious.

(00:34:14):
Oh, well, yeah.

(00:34:15):
I mean, it’s very, very clear to me.

(00:34:17):
I mean,

(00:34:18):
when I go to a conference,

(00:34:19):
say,

(00:34:20):
in India or Korea or China or Europe or the United States,

(00:34:26):
I usually walk away trying to figure out what the organizer’s intent was because

(00:34:32):
there’s always an effort over things like the schedule or the food or the lighting.

(00:34:40):
Things like the lighting.

(00:34:41):
I noticed because I’m a photographer.

(00:34:42):
You’re taking photos, right?

(00:34:45):
music you guys use music instead of like a recording or like corporate style music

(00:34:51):
you guys use classy music you know there’s jazz it was it was very jazzy at

(00:34:58):
actually the theme i think at java zone in oslo uh last year was like you know like

(00:35:03):
a big band 1920s kind of a feel and i just said man that’s just that’s just

(00:35:07):
beautiful no keynote at java zone the sessions just

(00:35:11):
Start.

(00:35:11):
Again, that required us to sit around and say, we’re not going to do a keynote.

(00:35:15):
A lot of technology conferences have keynote.

(00:35:17):
The Japanese won’t have a keynote.

(00:35:19):
They just start the sessions.

(00:35:20):
But they have a party at night with sushi and drinking.

(00:35:23):
And also,

(00:35:25):
a lot of conferences will make a real specific decision about how they run their –

(00:35:31):
like an unconference or like the short talks,

(00:35:34):
like the fire talks.

(00:35:36):
What are they called?

(00:35:36):
Fire.

(00:35:37):
I think talks or talks.

(00:35:39):
Yeah.

(00:35:39):
Like the Japanese will do it at night while they’re drinking.

(00:35:42):
So everyone is sloshed,

(00:35:44):
you know,

(00:35:44):
doing these little five minute sessions and they’re hysterical.

(00:35:47):
They’re really funny.

(00:35:49):
And so, you know.

(00:35:52):
So what I would say then for JFocus is that and then you can tell me if I’m succeeding or not.

(00:35:56):
So the basically idea is that we.

(00:35:59):
I look at this as an extended of a user group or like extended community event.

(00:36:05):
So we really try to we try to mix the community feeling.

(00:36:09):
Everybody should feel really welcome.

(00:36:11):
Everybody should be open and transparent.

(00:36:13):
Talk to each other.

(00:36:14):
It should be a nice mingle.

(00:36:16):
I mean,

(00:36:17):
the best ever feedback I got at some point was like,

(00:36:22):
Mattias,

(00:36:23):
it feels like we’re coming home to you.

(00:36:25):
We are sitting down with you in your living room, just like friends.

(00:36:29):
And that is, you know, so that’s part of it.

(00:36:31):
And on the other hand, I want to run it like super professionally, super slick.

(00:36:36):
I want all the speakers to feel that they are really welcome, get everything they need.

(00:36:41):
Also with like exhibiting partners, they should have like a flawless session.

(00:36:47):
They,

(00:36:48):
you know,

(00:36:48):
they should get information when they need information and all of the information

(00:36:52):
that they need.

(00:36:53):
Yes,

(00:36:53):
I’m trying to keep the community feel,

(00:36:56):
keep the friendly feeling,

(00:36:59):
but still make sure that it’s just not like fall apart and be unprofessional.

(00:37:06):
Absolutely.

(00:37:07):
That comes through.

(00:37:08):
When I was at JFocus, I’ve been there twice.

(00:37:10):
And the feeling I had, definitely professional.

(00:37:13):
You had high-end kit, all the cameras and everything.

(00:37:16):
You had great lighting.

(00:37:17):
So someone had to think about that.

(00:37:19):
You had a presence, a lot of people who were helping other people.

(00:37:24):
So it was the community actually running the event.

(00:37:27):
It didn’t feel like a corporate event at all.

(00:37:29):
But you’re absolutely right.

(00:37:30):
It did feel a bit posh, a bit professional.

(00:37:33):
It’s like you put a lot of thought into this.

(00:37:36):
And it also felt, Jay Focus, to me, felt advanced.

(00:37:40):
Future.

(00:37:41):
I had this feeling of future and other conferences might focus,

(00:37:47):
you know,

(00:37:47):
something else,

(00:37:48):
you know,

(00:37:48):
might be their specialty.

(00:37:50):
But I had this feeling that you guys sat around and said,

(00:37:53):
we want to talk about stuff now,

(00:37:56):
but also future.

(00:37:58):
And that’s what I walked away with.

(00:38:00):
I think that is also one of the feedback that we get from speakers,

(00:38:04):
that the audience is professional.

(00:38:07):
They get good questions.

(00:38:09):
And I think that Sweden has a really good tech community.

(00:38:13):
We have… You mean…

(00:38:15):
Oracle have a JVM office in Stockholm.

(00:38:17):
People may not know about that.

(00:38:19):
And we have Klarna.

(00:38:20):
We have Spotify.

(00:38:21):
We have a number of technology companies that have been brought up in Sweden.

(00:38:26):
So I think that we are, as an engineering country, pretty well advanced.

(00:38:31):
And we have had Ericsson and a number of engineering companies for a long time.

(00:38:36):
So I think we have a good culture.

(00:38:38):
We have really good developers and engineers and so on in Sweden.

(00:38:44):
Well, I think it really shows.

(00:38:45):
But also, probably the most important that I can see is the community.

(00:38:50):
Multiple conferences in Europe, these conferences grew from user groups years and years ago.

(00:38:56):
And so you had many,

(00:38:57):
many years to develop a community environment at the base level of people who were

(00:39:03):
essentially volunteering.

(00:39:04):
In their time, that’s a huge contribution that they were offering over the years.

(00:39:09):
But that dynamic filtered up, and it’s just simply scaled.

(00:39:12):
And it became a conference.

(00:39:14):
But it didn’t start as a conference.

(00:39:15):
It started as a user group at a coffee shop or a pizza place or something like that.

(00:39:20):
And so that, to me, is the untold story of a lot of these events.

(00:39:25):
And when I do a little community session,

(00:39:28):
I often say,

(00:39:29):
start a user group because you never know where it’s going to go in the future,

(00:39:33):
for sure.

(00:39:33):
Yeah.

(00:39:34):
As we talked about, I mean, the community itself is so great.

(00:39:37):
So I think you had Nate Schuta at your podcast a couple of weeks ago.

(00:39:42):
So I remember he was doing the ending keynote of JFocus a couple of years back,

(00:39:47):
and it was his first time at the conference.

(00:39:50):
And, you know, you get a little bit stressed when you don’t see them up early to be an SOS.

(00:39:55):
So I basically called him 15 minutes before the ending keynote.

(00:39:59):
He said, no, no worries.

(00:40:00):
You know, I’m just outside grabbing a coffee and I’m on my way.

(00:40:05):
And by the way, do you want me to buy you a coffee?

(00:40:08):
And I said, yeah, sure.

(00:40:09):
I would like to have a coffee.

(00:40:11):
So, I mean, Nate Schurda, the ending keynote, big superstar out at the street in Stockholm.

(00:40:17):
And then he asked me if I want a coffee.

(00:40:19):
I mean, that is just brilliant.

(00:40:20):
That’s just presence.

(00:40:22):
He’s in the moment, he’s handling it, and he’s a professional.

(00:40:27):
And everybody is so nice.

(00:40:28):
I mean, everybody in this community is so nice.

(00:40:31):
Yeah, I hear that over and over again.

(00:40:33):
It’s not just in JFocus or Stockholm, it’s globally.

(00:40:37):
Because a lot of the people I talk to speak at multiple conferences,

(00:40:41):
and they also describe very different cultures,

(00:40:44):
very different events.

(00:40:45):
They all love them for their uniqueness.

(00:40:48):
And they also say that everyone’s nice.

(00:40:51):
Everyone’s cool in the community.

(00:40:53):
And that’s really interesting to see.

(00:40:56):
And I think that’s a testament to the early engineers going way back with Gosling

(00:41:01):
and his buddies.

(00:41:01):
They created this code, and Sun evolved it, and Oracle is evolving it.

(00:41:05):
And now it’s not just those.

(00:41:07):
It’s a large number of people, new people.

(00:41:10):
But that ethic of the community has remained strong for all these years.

(00:41:15):
Sure.

(00:41:16):
That’s really incredible to me.

(00:41:18):
Some people, some of that you can build intentionally, but some of it is also just natural.

(00:41:24):
It has to occur naturally.

(00:41:25):
Yeah.

(00:41:26):
All right, Matthias, I think we’re done.

(00:41:28):
I’m going to go to bed.

(00:41:29):
It’s 1 o’clock in the morning here, and hopefully I’ll get to JFocus again someday.

(00:41:33):
Yes.

(00:41:36):
I hope you can make it this year.

(00:41:37):
Yes, I will try.

(00:41:38):
I will try.

(00:41:39):
I haven’t spoken there yet.

(00:41:41):
I spoke at JavaZone.

(00:41:42):
That was really cool.

(00:41:44):
Oh, wow.

(00:41:45):
I thoroughly enjoyed it.

(00:41:46):
I was probably looking at the schedule and just remembering I was probably the only

(00:41:51):
non-technical community talk at the whole event.

(00:41:53):
And so, but it was cool.

(00:41:55):
It was really great.

(00:41:56):
So anyway, congratulations again for the Java Community Lifetime Achievement.

(00:41:59):
I’m sure we’ll be a lot more in the future and pleasure talking to you.

(00:42:04):
And thanks again for coming on the podcast after saying no about 10 times.

(00:42:08):
It’s okay.

(00:42:10):
Super.

(00:42:11):
Thank you very much, Jim.