WEBVTT
Kind: captions
Language: en

00:00:00.020 --> 00:00:01.500
All right, so I have Jos here

00:00:01.500 --> 00:00:02.760
with me from Nextcloud.

00:00:02.760 --> 00:00:03.760
I wanted to ask you,

00:00:03.760 --> 00:00:05.280
if I was a contributor and wanted

00:00:05.280 --> 00:00:06.860
to contribute to Nextcloud, what are kind

00:00:06.860 --> 00:00:08.860
of the main places that you'd have people

00:00:08.860 --> 00:00:10.960
start if they're not technical whatsoever?

00:00:11.300 --> 00:00:12.120
Yeah, there's a lot

00:00:12.120 --> 00:00:13.270
of ways you can get involved.

00:00:13.270 --> 00:00:14.400
I mean, we have a big translation

00:00:14.400 --> 00:00:15.350
community, of course,

00:00:15.350 --> 00:00:17.080
if you're an English native speaker,

00:00:17.080 --> 00:00:19.080
we do pretty much everything in English,

00:00:19.080 --> 00:00:19.920
so that doesn't help.

00:00:19.920 --> 00:00:21.200
But we could definitely use help

00:00:21.200 --> 00:00:22.460
with Spanish, for example,

00:00:22.460 --> 00:00:23.850
or other languages, of course.

00:00:23.850 --> 00:00:25.100
And we have a lot of people, of course,

00:00:25.100 --> 00:00:26.510
just finding issues on GitHub

00:00:26.510 --> 00:00:28.420
and reporting various problems.

00:00:28.420 --> 00:00:30.580
Of course, in these days with AI,

00:00:30.580 --> 00:00:32.430
like if you want to learn to program,

00:00:32.430 --> 00:00:34.500
it is actually easier to do that, I think,

00:00:34.500 --> 00:00:35.900
than ever before, especially

00:00:35.900 --> 00:00:37.620
for small things and to get into it.

00:00:37.620 --> 00:00:38.420
I think this is also

00:00:38.420 --> 00:00:39.660
where we really see that a lot

00:00:39.660 --> 00:00:41.260
more people are getting involved.

00:00:41.260 --> 00:00:43.210
And I think a contribution maybe people

00:00:43.210 --> 00:00:45.300
really underestimate is to, you know,

00:00:45.300 --> 00:00:46.500
kind of spread the word.

00:00:46.500 --> 00:00:48.050
You know, earlier we were talking

00:00:48.050 --> 00:00:50.150
about how it's sometimes mind blowing

00:00:50.150 --> 00:00:52.320
how many people that you think

00:00:52.320 --> 00:00:54.790
should know that there is an alternative,

00:00:54.790 --> 00:00:56.550
that there are other solutions, right?

00:00:56.550 --> 00:00:58.480
People who are sometimes even aware

00:00:58.480 --> 00:01:00.580
of the problems with the solutions they're

00:01:00.580 --> 00:01:02.680
using, that they are dependent on a single

00:01:02.680 --> 00:01:04.800
big tech player, then it stops because

00:01:04.800 --> 00:01:06.800
they don't know that actually they could

00:01:06.800 --> 00:01:08.890
do something, that there is another way.

00:01:08.890 --> 00:01:10.700
And so telling other people

00:01:10.700 --> 00:01:12.620
about that or even teaching them

00:01:12.620 --> 00:01:14.520
to use it, like there are really quite

00:01:14.520 --> 00:01:17.000
a few people who have a real impact

00:01:17.000 --> 00:01:19.280
by just helping other people, training

00:01:19.280 --> 00:01:21.580
them, showing them there's a different way

00:01:21.580 --> 00:01:23.110
and explaining the problems.

00:01:23.110 --> 00:01:24.760
I think this is actually a really

00:01:24.760 --> 00:01:27.580
undervalued contribution in a way.

00:01:27.580 --> 00:01:29.960
Like it's really impactful because well

00:01:29.960 --> 00:01:31.960
what you don't know you can't do, right?

00:01:31.960 --> 00:01:33.960
And a lot of people these days are aware

00:01:33.960 --> 00:01:35.820
of the problems with like for example

00:01:35.820 --> 00:01:37.840
social media and if you tell them

00:01:37.840 --> 00:01:39.660
about Mastodon that's super helpful

00:01:39.660 --> 00:01:41.300
because there is a way out

00:01:41.300 --> 00:01:43.400
and not knowing that is really a shame

00:01:43.400 --> 00:01:45.500
and the same as for Nextcloud.

00:01:45.500 --> 00:01:47.940
You don't have to keep using it and have

00:01:47.940 --> 00:01:50.920
to keep reliant on Google or Microsoft

00:01:50.920 --> 00:01:52.960
or all the other big tech players.

00:01:53.500 --> 00:01:57.020
And even when you have heard of Nextcloud

00:01:57.020 --> 00:01:59.200
and you think it is only usable if you

00:01:59.200 --> 00:02:01.150
self-host, well that's not true, right?

00:02:01.150 --> 00:02:03.360
There are lots of hosting providers,

00:02:03.360 --> 00:02:05.580
companies that offer you a Nextcloud

00:02:05.580 --> 00:02:08.420
solution for private use for a charitable

00:02:08.420 --> 00:02:11.330
organization or a soccer club,

00:02:11.330 --> 00:02:13.720
you know, or a sports organization

00:02:13.720 --> 00:02:16.800
or a church, etc. And again,

00:02:17.040 --> 00:02:18.860
people should know about that, you know.

00:02:18.860 --> 00:02:19.910
I think that's really

00:02:19.910 --> 00:02:21.170
a thing people can do.

00:02:21.170 --> 00:02:23.340
Yeah, something that I know it was a very,

00:02:23.340 --> 00:02:25.210
very short part of the conversation,

00:02:25.210 --> 00:02:26.610
but there was a little thing

00:02:26.610 --> 00:02:28.060
about AI code of conduct.

00:02:28.319 --> 00:02:30.640
So do you mind maybe adding a little bit

00:02:30.640 --> 00:02:32.740
of nuance that you might someone,

00:02:33.140 --> 00:02:35.140
you might want people to hear if they're

00:02:35.140 --> 00:02:36.940
going to start doing AI contributions

00:02:36.940 --> 00:02:38.710
and your guys' kind of policy on that?

00:02:38.710 --> 00:02:40.600
Yeah, I already said, you know, AI

00:02:40.600 --> 00:02:42.810
can lower the barrier and help you learn.

00:02:42.810 --> 00:02:45.080
I mean, what was also said, right?

00:02:45.080 --> 00:02:47.510
Like, ideas have always been cheap,

00:02:47.510 --> 00:02:48.990
we say in open source often.

00:02:48.990 --> 00:02:50.500
Like, ideas are cheap.

00:02:50.870 --> 00:02:53.210
The ability to do it is the hard part,

00:02:53.210 --> 00:02:54.160
the expensive part.

00:02:54.160 --> 00:02:55.520
We have lots of ideas how we

00:02:55.520 --> 00:02:56.620
can improve Nextcloud.

00:02:56.620 --> 00:02:58.180
It's just, do you have time

00:02:58.180 --> 00:02:59.160
to actually do it?

00:02:59.160 --> 00:03:00.880
That's often a limiting factor.

00:03:00.880 --> 00:03:02.380
It's in life with many things.

00:03:02.380 --> 00:03:03.830
With AI, some of these things

00:03:03.830 --> 00:03:06.620
become easier in a way.

00:03:06.860 --> 00:03:09.380
But of course, there is a quality impact.

00:03:09.380 --> 00:03:11.710
And what was said on the stage also,

00:03:11.710 --> 00:03:13.260
we want to maintain, of course,

00:03:13.260 --> 00:03:14.500
quality of Nextcloud.

00:03:14.860 --> 00:03:16.760
And so for us on one hand, we don't want

00:03:16.760 --> 00:03:18.540
to close the door on AI contributions

00:03:18.540 --> 00:03:19.580
because again, it genuinely

00:03:19.580 --> 00:03:21.180
can lower the barrier for people

00:03:21.180 --> 00:03:23.460
to contribute to make a difference.

00:03:23.910 --> 00:03:25.960
But on the other hand, what does not work

00:03:25.960 --> 00:03:29.060
is if we have to, you know, we get

00:03:29.060 --> 00:03:32.840
like a 5,000 line of code AI slop change

00:03:32.840 --> 00:03:34.790
that changes things all over the place.

00:03:34.790 --> 00:03:36.290
And like, who can review that?

00:03:36.290 --> 00:03:38.510
Who can check that for quality?

00:03:38.510 --> 00:03:40.670
You know, it's not fair also

00:03:40.670 --> 00:03:41.920
to the developers, right?

00:03:41.920 --> 00:03:42.970
Because of the people

00:03:42.970 --> 00:03:44.040
who contribute to Nextcloud,

00:03:44.040 --> 00:03:45.460
a lot of them do it in the free time.

00:03:45.460 --> 00:03:46.550
It's not like they're paid

00:03:46.550 --> 00:03:49.280
to review 5,000 lines of code either.

00:03:49.280 --> 00:03:50.690
It's not fun for everyone.

00:03:50.690 --> 00:03:52.640
And if you then ask follow-up questions

00:03:52.640 --> 00:03:55.640
and the answer is basically copy-paste it

00:03:55.640 --> 00:03:58.380
from ChatGPT, that's not cool.

00:03:58.380 --> 00:03:59.500
You know what I mean?

00:03:59.500 --> 00:04:01.340
We should have a human touch.

00:04:01.340 --> 00:04:04.180
So it's really important that the human

00:04:04.180 --> 00:04:06.600
is in charge, that you understand the code

00:04:06.600 --> 00:04:08.500
that was written, that you contribute,

00:04:08.500 --> 00:04:10.700
that you have thought about it,

00:04:10.700 --> 00:04:12.720
where it fits, how it should fit.

00:04:12.720 --> 00:04:14.320
And of course, you don't

00:04:14.320 --> 00:04:16.380
know the architecture. I get that.

00:04:16.380 --> 00:04:17.930
But at least you should have done

00:04:17.930 --> 00:04:21.019
an effort to find it out or maybe ask

00:04:21.019 --> 00:04:23.420
in advance where and how to do something.

00:04:23.740 --> 00:04:25.240
Even if you use AI for coding,

00:04:25.240 --> 00:04:26.840
you know what I mean? It's a tool.

00:04:27.200 --> 00:04:29.060
It's not the thing that you use

00:04:29.060 --> 00:04:30.580
so you can stop thinking.

00:04:30.580 --> 00:04:31.930
That's not what AI is for.

00:04:31.930 --> 00:04:33.580
AI aside, I think what it made me

00:04:33.580 --> 00:04:35.130
appreciate, and it's not something I think

00:04:35.130 --> 00:04:37.170
about from my end, right?

00:04:37.170 --> 00:04:39.030
As someone who's a little less technical,

00:04:39.030 --> 00:04:40.980
I'm not contributing to Nextcloud code,

00:04:40.980 --> 00:04:41.890
but I'm like, why don't

00:04:41.890 --> 00:04:43.210
they just do this thing?

00:04:43.210 --> 00:04:45.060
But what I'm not appreciating is even

00:04:45.060 --> 00:04:46.820
if AI does the thing perfectly,

00:04:46.820 --> 00:04:48.220
it doesn't take into account

00:04:48.220 --> 00:04:49.910
the maintenance that you're talking about.

00:04:49.910 --> 00:04:51.580
If you just have 10 new features,

00:04:51.940 --> 00:04:52.760
but they're not maintained,

00:04:52.760 --> 00:04:54.350
it doesn't really matter long term.

00:04:54.350 --> 00:04:56.830
So AI won't solve, I guess, every problem.

00:04:56.830 --> 00:04:58.280
It can help with some things.

00:04:58.280 --> 00:04:59.940
Like it's very good, for example,

00:04:59.940 --> 00:05:01.740
certain bugs, you know, like there's

00:05:01.740 --> 00:05:03.640
a race condition and it's caused

00:05:03.640 --> 00:05:06.370
by a piece really deep down the tree here,

00:05:06.370 --> 00:05:07.560
interacting with something

00:05:07.560 --> 00:05:09.160
really deep down the tree there.

00:05:09.160 --> 00:05:11.210
And as a human, that's very hard to find.

00:05:11.210 --> 00:05:12.160
And these AI models

00:05:12.160 --> 00:05:13.790
can be very good at finding it.

00:05:13.790 --> 00:05:15.140
So there are certain things

00:05:15.140 --> 00:05:16.880
where AI is incredibly helpful.

00:05:17.120 --> 00:05:20.200
But then often when you ask it

00:05:20.200 --> 00:05:21.980
to build indeed a whole feature,

00:05:22.180 --> 00:05:23.980
it architects it in a way

00:05:23.980 --> 00:05:27.040
that just ignores coding conventions,

00:05:27.040 --> 00:05:29.260
ignores the architecture of the app,

00:05:30.039 --> 00:05:31.640
yes, exactly the future.

00:05:31.640 --> 00:05:33.740
And if you build on a couple of these

00:05:33.740 --> 00:05:35.540
things, yes, each of them looks good

00:05:35.540 --> 00:05:37.940
at first sight, seems to work fine

00:05:37.940 --> 00:05:40.090
at first sight, but as soon as you add two

00:05:40.090 --> 00:05:41.990
more things or you have this like yeah

00:05:41.990 --> 00:05:43.760
but did you think of that thing?

00:05:44.090 --> 00:05:45.680
Oh this completely falls apart

00:05:45.680 --> 00:05:47.760
and this is a challenge because often

00:05:47.760 --> 00:05:50.540
people have big ideas and I get

00:05:50.540 --> 00:05:53.860
that but there is often many more aspects

00:05:54.350 --> 00:05:55.700
to you know to each feature

00:05:55.700 --> 00:05:57.200
and to each improvement right?

00:05:57.200 --> 00:05:58.740
Most people look at a problem

00:05:59.220 --> 00:06:00.880
from their specific perspective

00:06:00.880 --> 00:06:02.680
but when you build software it has

00:06:02.680 --> 00:06:03.780
to work for everyone,

00:06:03.780 --> 00:06:06.040
not just for one single person.

00:06:06.240 --> 00:06:07.390
And this is much harder

00:06:07.390 --> 00:06:09.000
than it seems at first sight.

00:06:09.000 --> 00:06:10.820
I've once did a poll about that on

00:06:10.820 --> 00:06:13.660
Mastodon asking like, in terms of effort,

00:06:13.660 --> 00:06:15.760
how much more work it is to make a feature

00:06:15.760 --> 00:06:18.640
that works for one organization, one use

00:06:18.640 --> 00:06:21.890
case versus making that same feature,

00:06:21.890 --> 00:06:23.640
but so that it kind of is a generic

00:06:23.640 --> 00:06:25.840
solution for other organizations.

00:06:26.360 --> 00:06:27.970
And the replies were really like five

00:06:27.970 --> 00:06:29.880
times, six times, seven times as much.

00:06:30.160 --> 00:06:31.100
So that's significant.

00:06:31.100 --> 00:06:33.000
You have an idea for your specific use

00:06:33.000 --> 00:06:35.440
case, but we can't build Nextcloud

00:06:35.440 --> 00:06:37.140
for each individual user.

00:06:37.140 --> 00:06:38.540
It has to work for everyone.

00:06:38.800 --> 00:06:40.650
And that just requires more thinking,

00:06:40.650 --> 00:06:41.540
more discussion.

00:06:41.800 --> 00:06:43.620
And if you just throw AI

00:06:43.620 --> 00:06:46.720
at that, that does not solve it.

00:06:46.720 --> 00:06:47.980
It solves your problem,

00:06:47.980 --> 00:06:50.020
but doesn't help everyone. Right.

00:06:50.020 --> 00:06:51.360
Well, thank you so much, Jos.

00:06:51.360 --> 00:06:52.780
You're welcome. Always a pleasure.

00:06:53.120 --> 00:06:53.920
Likewise.

