WEBVTT 00:00.000 --> 00:14.200 Okay, so first presentation, I want to talk about finding an ASP developer community, which 00:14.200 --> 00:18.160 is essentially you guys here. 00:18.160 --> 00:28.400 You people here should say, I should not be gender-specific, so yeah, let's begin with 00:28.400 --> 00:30.040 the lack of community. 00:30.040 --> 00:36.680 So this is what I started talking about, well, this has been something that's been 00:36.680 --> 00:39.040 in my mind for a long, long time. 00:39.040 --> 00:41.640 So what's the problem? 00:41.640 --> 00:45.520 ASP is an open source project. 00:45.520 --> 00:51.200 There are thousands of developers, maybe tens or even hundreds of thousands of people 00:51.200 --> 00:54.880 developing using ASP. 00:54.880 --> 00:59.600 They are widely dispersed because it's open source and they're in different companies 00:59.600 --> 01:02.400 in different places. 01:02.400 --> 01:08.520 But even so, when you're working with a project, with a corpus of software, you need 01:08.520 --> 01:13.920 a way to communicate about it, you need to ask questions, you need to share, you need to help. 01:13.920 --> 01:20.240 ASP has been kind of an outlier in that it doesn't really have any kind of community behind 01:20.240 --> 01:21.240 it. 01:21.240 --> 01:25.560 Really, a place you can come together. 01:25.560 --> 01:27.560 Why so? 01:27.560 --> 01:39.880 Well, essentially, the issue is that the ASP developers, Google, and I guess Google themselves, 01:39.880 --> 01:44.960 have never really seen the value of a community, so they've never done anything to promote 01:44.960 --> 01:49.000 a community for ASP for the platform. 01:49.000 --> 01:57.720 So it has always been a dispersed bunch of people working on this stuff. 01:57.720 --> 02:00.720 Google is not going to change, so that's not the issue here. 02:00.720 --> 02:03.800 The issue then is what do we do about it? 02:03.800 --> 02:12.120 So what we're looking to do is to create an organic community from the developers themselves, 02:12.120 --> 02:20.920 which is what we're trying to do with ASP devs. 02:20.920 --> 02:23.320 What about community then? 02:23.320 --> 02:27.520 What do I mean by this? 02:27.520 --> 02:36.040 So having a community means sharing information about the software base we're working 02:36.040 --> 02:43.160 with, to ask questions, to reply to questions, share information. 02:43.160 --> 02:49.800 And when you have a community, everything works much more fluidly. 02:49.800 --> 03:01.200 People can get their jobs done more easily, the whole thing just becomes much more pleasant. 03:01.200 --> 03:03.400 Why is community a good idea? 03:03.400 --> 03:07.400 So a lot of people kind of ignore this bit when it comes to open source. 03:07.400 --> 03:11.280 A lot of people think that open source is just free software. 03:11.280 --> 03:13.560 And it is free software. 03:13.560 --> 03:16.520 You can download the code where you go. 03:16.520 --> 03:21.720 But it works better if you consider open source to be a two-way street. 03:21.720 --> 03:25.920 So not only do you download, you can also upstream stuff. 03:25.920 --> 03:31.440 You can upstream patches, maybe, share experiences and forums. 03:32.440 --> 03:35.480 Yeah, just make life easier. 03:35.480 --> 03:39.160 I just want to say, particularly in corporate environments, 03:39.160 --> 03:43.120 a corporate's often don't really get this. 03:43.120 --> 03:48.560 They say, why should we spend money taking our code and pushing it upstream? 03:48.560 --> 03:50.880 Isn't that a complete waste of time? 03:50.880 --> 03:53.360 Well, it isn't. 03:53.360 --> 03:57.200 So community and sharing is a win-win situation. 03:57.280 --> 04:00.240 It's a win for the individual developer, 04:00.240 --> 04:04.000 because it means you get some degree of recognition 04:04.000 --> 04:06.160 and satisfaction from having some changes. 04:06.160 --> 04:08.880 Hey, I upstream some changes the other day. 04:08.880 --> 04:13.440 And if you do this more than several times over, 04:13.440 --> 04:18.400 people will begin to realize that you have skills in a particular area. 04:18.400 --> 04:21.520 So it's great for the individual. 04:21.520 --> 04:25.520 Next, it's great for the team. 04:25.600 --> 04:30.960 So project managers should encourage people to share stuff. 04:33.360 --> 04:37.360 For one thing, it reduces the maintenance burden. 04:37.360 --> 04:39.680 Once you have upstream something, 04:39.680 --> 04:42.000 it becomes kind of part of the code base. 04:42.000 --> 04:46.320 And there is less problems in merging that code in later on. 04:46.320 --> 04:49.600 You don't have to merge that same bit of code in every single time. 04:49.600 --> 04:50.960 There's a release. 04:50.960 --> 04:53.600 So it reduces costs. 04:54.560 --> 04:57.760 And then, looking at it from a wider perspective, 04:57.760 --> 04:59.920 looking at the whole company, it's good for the company. 04:59.920 --> 05:04.160 All companies should encourage their engineers 05:04.160 --> 05:07.200 to participate and upstream stuff. 05:07.200 --> 05:08.800 Why? 05:08.800 --> 05:11.680 Well, if you do it enough, you get to a point 05:11.680 --> 05:14.960 where you can actually influence the project. 05:14.960 --> 05:18.720 So this is why, for example, Intel and Qualcomm 05:19.040 --> 05:24.480 whoever were very closely with the Linux kernel developers. 05:24.480 --> 05:27.280 Because by working with kernel developers, 05:27.280 --> 05:29.280 they can get their changes merged. 05:29.280 --> 05:30.640 They can get their ideas. 05:30.640 --> 05:33.760 They can kind of influence the way Linux works. 05:33.760 --> 05:36.720 And this is the same potentially with AUSP. 05:36.720 --> 05:40.880 If you have a bunch of changes, merge them in, 05:40.880 --> 05:44.800 people will then do things your way. 05:44.800 --> 05:48.240 And you kind of get a little bit of control over that aspect of it. 05:48.720 --> 05:56.000 Plus, you get the benefits of happier developers 05:56.000 --> 05:59.200 and more efficient teams. 05:59.200 --> 06:03.840 So community grid idea is a win-win on three different levels. 06:07.040 --> 06:10.960 OK, so what about AUSP? 06:10.960 --> 06:18.320 So September last year, I gave a talk at Linux Plummers, 06:18.320 --> 06:21.600 called Search for an AUSP community. 06:21.600 --> 06:28.800 And it was an interesting experience. 06:28.800 --> 06:33.840 And really, pretty much directly after that, a bunch of us 06:33.840 --> 06:38.240 who are in the room, and some of them are in this room as well, 06:38.240 --> 06:40.080 kind of came together and said, well, what can we do? 06:40.080 --> 06:44.720 Why don't we just make a community? 06:44.720 --> 06:46.080 So we did. 06:46.160 --> 06:53.920 So we created AUSP Devs.org, and we set up the basics of sharing. 06:53.920 --> 06:57.680 So right now, most of what we do at AUSP Devs.org 06:57.680 --> 07:00.000 is about the chat channel. 07:00.000 --> 07:03.600 So we have a Discord server, the currently 300, 07:03.600 --> 07:06.160 and something uses registered on that. 07:06.160 --> 07:10.800 Typically, there's 40 or 50 people online at any one time. 07:10.800 --> 07:14.480 We have created chat channels for specific areas of Android. 07:14.480 --> 07:18.640 So we have Android TV, we have automotive. 07:18.640 --> 07:21.200 We have a general channel for everything else. 07:21.200 --> 07:25.280 There's a jobs channel for people who want jobs. 07:25.280 --> 07:28.560 Kind of, and a few others as well. 07:28.560 --> 07:31.760 So that is going really well, in my opinion. 07:31.760 --> 07:33.040 Really, please, with that. 07:33.040 --> 07:36.960 We also have some meetings, again, sharing. 07:36.960 --> 07:39.520 So we have this meeting here, which is actually 07:39.520 --> 07:46.400 a very first in-person meeting for ASP Devs. 07:46.400 --> 07:48.560 We have ongoing online meetings. 07:48.560 --> 07:51.840 So I've been running the AUSP and AUSMeta group 07:51.840 --> 07:54.080 for three years almost now. 07:54.080 --> 07:55.840 It's going quite nicely. 07:55.840 --> 08:00.320 And late break and news, we have a newsletter. 08:00.320 --> 08:05.680 So we have the first edition of the newsletter was published, 08:05.680 --> 08:11.840 actually yesterday, as we were all driving to Fazden. 08:11.840 --> 08:12.960 Well, next. 08:12.960 --> 08:17.040 So basically, we aim to continue doing the same thing. 08:17.040 --> 08:22.240 So continue continue continue to develop ASP Devs.org. 08:22.240 --> 08:27.520 We aim to support existing and new open source projects. 08:27.520 --> 08:31.040 And we'll talk about some of these as we go through 08:31.040 --> 08:35.520 the rest of this presentations in this dev room. 08:35.520 --> 08:39.600 And of course, we want to continue in-person meetings 08:39.600 --> 08:40.800 and also online meetings. 08:40.800 --> 08:49.760 I feel this is a way of creating a feeling of being part of a group. 08:49.760 --> 08:54.400 So right now, the things I can point to is there will be another online 08:54.400 --> 08:59.360 meet-up group, 19th of March, hope to see you all logged in there. 08:59.360 --> 09:02.720 And we have opportunities for in-person meetings at both embedded 09:02.800 --> 09:05.520 recipes and Leonardo Connect. 09:05.520 --> 09:11.360 The only snack is, on the same days. 09:11.360 --> 09:14.400 So you, well, it was a chance, basically. 09:14.400 --> 09:24.000 So you can see a subset of us either in East or in Lisbon or whatever. 09:24.000 --> 09:24.880 So yeah. 09:24.880 --> 09:30.960 So in another show then, as we aim to do, we want to carry on making ASP Devs 09:30.960 --> 09:32.080 better. 09:32.080 --> 09:34.480 We'd like to start sponsoring some coding. 09:34.480 --> 09:40.320 And we've got some ideas to do that as time goes on. 09:40.320 --> 09:41.680 How can you help? 09:41.680 --> 09:43.200 Well, join in. 09:43.200 --> 09:48.560 So join ASP Devs, join the Discord server, 09:48.560 --> 09:55.280 look at the chat, spread the word, tell people that you know in the 09:55.280 --> 10:03.920 industry that we exist and that we would value your input. 10:03.920 --> 10:11.280 And in about 15 minutes, we're going to have a little time to talk about this. 10:11.280 --> 10:17.440 So Karim is going to lead us a session on how to improve ASP community. 10:17.440 --> 10:23.440 And I hope you all get a chance to respond to that. 10:23.520 --> 10:24.080 And this is it. 10:24.080 --> 10:26.400 So thank you all very much. 10:26.400 --> 10:30.240 I'm going to hand over straight away to the next presenter. 10:30.240 --> 10:34.480 And then, like I say, Karim will do the panel session. 10:34.480 --> 10:36.800 And we'll take it from there.