You want to line up wherever you want to line up, so more than the front where people in the room can see us in the more clear fashion.
We are.
Good morning folks.
I name screen, I'm more and this is a panel session.
So I missed a meeting this week and I got our Tributed panel session.
So the lesson is don't miss meetings please.
So yeah, essentially what we want to do is talk a little bit about building communities or community around the AOSP.
And later in general, if somebody could get the door that would be great.
And I have a sort of sort of a number of questions that I sort of put together to help move things along.
But I thought I'd open it up by sort of giving a bit of a historical sort of a reminder.
If I remember correctly, there was a sort of panel discussion with Andrew Rubin at a conference in around 2007 and 2008.
And he was asked about open source and Android.
And if I recall correctly, he said open source is two things.
It's a licensing model and a community development model.
He said we're very strong in the licensing side, not so much on the community side.
And that has stayed true until very much today.
If you talk to old timers, people that were there in very early days of Android, they'll tell you that the Android team was very welcoming of questions and helping and everything.
But over the years, that has been more and more shut down.
And these days, it's really hard to get a hold of some of these folks.
I mean, if on a one on one basis, these are awesome people.
I've had the chance and the opportunity to work with some of these guys, they're awesome, they're very generous.
And I think that individually, as geeks, they wish us all well.
But as a corporate entity, Google's not so much on the community side of things with Android, and there's a number of different issues with that.
So I guess the idea here is to just gather a bit of common wisdom of some folks that've been doing a lot of the stuff.
And of course, you guys as well.
And so my first question really is to the panel is, what is the closest project in open source that you can think of?
That might resemble the development model that Android has, because it's pretty unique.
I mean, I come from the Linux kernel background, what I used to go to the kernel mailing list and you know, flame whoever I didn't like.
You can't so much do that in the AOSP community.
I mean, there's the people who are behind the development of the code are just not there, you know, in terms of being able to talk to them one on one.
So who wants to take that one first?
All right, how what can we relate this to or compare it to?
You want to go?
I just want to say I don't know if any other project, which is the same, which is similar to AOSP.
It seems to be kind of unique in the the disjoint between the developers and the developers who write the code at Google and the people use that code.
I can't think of another project that works quite in this way.
Anybody have anything?
So I think there are two parts of this, right?
One is the system developers and the application developers, right?
So what we are talking about are the system developers and we think that okay there is no saying colonization between the developers with the core platform developers or the AOSP folks.
But if you look at the application side, right, they're more organized.
I mean, they know what to look what and where to look for.
And I think that's what the even Google is target even from the Google point of view, if you think, then they might, I mean, and write applications, I think they would value more than anyone playing with the systems.
I mean, just my opinion on that.
And sorry for sort of walking this around, it's just that they didn't give us any of the mic.
I guess my two cents are that Android is such a vast code base that actually it's kind of difficult to look at it as like one unit and extrapolate from from that.
There's a big difference between code that is being extended by the Android team, where the internal teams are actually quite keen on upstreaming their changes.
And there's this, there's this internal culture of, you know, upstreaming like Chris was saying is a way how to reduce your maintenance burden, right, so even even Google thinks about that and they try to reduce their maintenance burden.
But then you have this vast code base of code is was developed specifically for Android, all framework and so on, and the culture really isn't the same there.
So yeah, I would encourage you to kind of think about this in two different ways maybe.
Right, so I guess the distinction being made there is that there are, you know, there's the frameworks world, which is not as open and then there's a lot of other stuff that where people are more eager to upstream and interface.
And I think to an extent that's very true, I mean, if you look at the contributions of the error team to something like Lynn's powers.
I mean, they're very active and very, and you know, they show up and have very conservative conversations, so that to that to an extent that is true, but it still remains that, you know, as it is not a generally a project where you can just go in and contribute stuff as easily.
The best I could think of closest to this is SQLite.
We're a century, it's just completely closed and they're like, you know, yeah, we love it that you guys are using this, but we're not actually looking at some sort of external contributions.
And so I just the, the follow up question to that is, is who else is existing in that ecosystem apart from Google was, I mean, it is huge code base, but you can't really use that code base as is there are other players that you've got to work with.
You know, of course, the first that comes to mind is a silicon vendor.
And I was wondering, you know, what is it that you guys think, or maybe folks like Lynn are, right?
And just wondering, what are the other sort of juncture points where there are people that are doing similar work that we can interface with,
understanding, of course, that in some cases, in the case of silicon vendors, the knowledge they have is sometimes sort of seen as, you know, kind of like,
secret sauce and stuff like that, right?
But yeah, so anybody want to take that?
Other parties who are sort of passively helpful in building a general sense of community.
Yeah, you want to try?
I just have a context sample of how hard is this to build a community, not at my example.
Out of motive vendors and not yet not see as a consumer or the motive vendors, but also they have a culture of not showing the code and not contributing or talking to us.
So all the teams there, yeah, they work on the AOSP, they're built products with the AOSP, they're car infotainment systems, but they are not in conferences.
So not in conferences, giving a talk, it's not upstreaming.
But also says, I think it's a cultural issue of these companies that open sources not seen as a value.
And therefore, we don't have a good AOSP community, but we want to talk about how to improve it.
Yeah.
And without sort of pointing fingers here or sort of having a Leonardo talk a bit more, I mean, what can, as Leonardo do or what can we do to help Leonardo build what, you know, support you guys have got for some of the boards that you do,
which is already something a great reverse, I think, for most people.
So, immediately one example that comes from my mind is, I was looking at optimizations doing,
profile guided optimizations and trying to improve overall how devices, the boards and form factor devices, they can use it.
The challenge I've been facing is that we don't have access to ATM enabled devices.
And so there is no easy way to collect those profile data and share.
Now while doing that interaction actually, I connected with the folks at Google who are doing the same thing.
And even they face the same handicap, which is to say that they have access to stuff that pixel devices can give them.
And so the profile data for that is available in AOSP, but no one knows about it.
That's one. The other aspect is that, so there are multiple spaces of collaboration and I think there are anchor points inside of Google Android teams also that we, that can be connected with.
Just that there's no, I fully agree with the feeling that there's no easy way to connect with them.
And yeah.
All right, thank you.
Okay, so maybe another angle at this is to see existing successful communities around Android.
I mean, there's Lineage OS, for example, which is a prime example.
And I was wondering if the other sort of examples that people might say, we're just talking about the work that Laura was doing and wondering if,
or what can we learn from those communities like for example, what makes Lineage OS so successful for instance?
Yeah, go ahead.
Yeah.
Do you want to?
No.
Anybody from the crowd is welcome to participate as well.
Yeah.
Yeah, there we go.
So the question is why Lineage OS is so successful in the community?
It's been a long time.
So I'm a woman and I'm walking at Mirina.
So the company behind EOS, which is itself based on Lineage OS.
Why Lineage OS is so successful?
I feel it's because it's quite open and don't try to promote something.
They just try to make AOS feed compatible with as many devices as possible.
They don't try to promote anything.
These are quite basic on what AOSP is.
So I think that's why it's quite popular because anyone feels okay.
I can bring my device on it.
And they're quite popular also on each day for them.
I think that's another place where there is a large AOSP community.
And yet that's my feeling for Lineage OS.
And they're also old.
They're here with synergy nodes.
They're here since the very long time.
So that's why we're so there are bringing AOSP on so many devices today.
Hello.
Yeah.
I'm Nikita Ocrankov.
I currently work for Yola, but I also work with open service projects for like,
Linux on mobile distress.
And we kind of use AOSP as well.
But only as a core for hardware adaptation.
Because we want to reuse drivers from AOSP.
And then we'll run our own UI on top of that.
But what I wanted to say about Lineage OS is that maybe it isn't so popular.
It's because it's like accessible to you know people.
Like you don't need a special dev board like with Leonardo,
but you can try to install it on the general population device I would say.
But it would be really nice to see,
also broader like kind of collaboration type of ASP.
Yeah.
Nice to see people trying to talk about this.
Yeah.
So if I could just kind of summarize this a little bit.
It seems to me that there are communities around individual ASP
distros.
So Lineage would be one.
EOS would be another.
And also around the various dev boards.
So glow droid as some it just mentioned.
Has a community around the dev boards they provide.
Likewise there's Raspberry Pi.
Android Raspberry Pi.
And various things around Raspberry Pi.
So each one of these has its own community.
But there isn't much communication between them.
So kind of what we need in my opinion is some mechanism to kind of bridge between all of these.
So that the people from lineage can talk to the people from Raspberry Pi.
You can talk to the people from whoever.
And kind of have a forum where they can communicate together.
So yeah.
We need to bridge the islands together basically.
And speaking which I'm bridging sort of like the gap between all these communities.
I think one of the issues that everybody faces is kind of like getting around and knowing around and getting stuff done.
I think I'm at sort of was doing when he was doing his presentation.
He was mentioning that you know, oh, we found this out by doing gripping in the code.
And yeah.
Okay guilty of that.
Everybody does that.
You know, we're like just gripping the codes.
Like what's this new flag?
I've never seen this anywhere.
And I think this isn't issue that everybody in this community is facing.
You know, there's sort of an era come, but yeah, you know, there's always some stuff that's just not there.
And it was wondering if there's something we could do around that.
I mean, is there.
And then if nothing else, you know, you just go around the code and you got these, you know,
this is to fix B slash blah.
And you can't click on those because it's an internal bug repository from Google.
And there's just, you know, we don't really know what they're fixing.
When they're adding this feature of that feature.
And it was wondering if I just get a word from the folks on the panel here on that.
So we could possibly sort of provide a resource where we have these facilities of or come, you know,
group wisdom or, you know, just community wisdom of the ways to get around and fix stuff around.
Yeah, all right.
So first of all, I should say that even if you have access through those bugs, you would go to those bugs
and be like, I hit now from those bugs, I need to figure out where's the design document and then figure out where the PRD is and stuff like that.
So even the Google could be difficult to do that sometimes.
But I'd say that maybe that's something that we could help you folks with the newsletter.
I mean, the whole purpose of this community is to be helpful.
So the more folks we have discussing topics on discord, the more we figure out what are the pain points and
between our shared knowledge, we can figure out who are the right folks at Google to help us with that,
or maybe we can figure it out myself or ourselves.
And yeah, I think it's it's a little bit of archeology, right?
Like it's code search.android.com.
It's the commit messages is figuring out how it works and figuring out how it doesn't work.
And I would say it's not the different at Google, right?
Because it's a big, big community, even inside Google, it takes a little bit of time to figure out who's the right person.
But yeah, I didn't quite enjoy us to just list those questions and then the more we have listed, the more we'll answer.
And I think I want to say another thing, I'll talk about this a little bit in my presentation,
but in the past Android didn't really have a need to update, right?
Like you have these devices that could run like super old code bases and then you'd continue modifying that code base and
not ever have to deal with upstream over again.
I think that's going to change significantly in the coming years.
Like it's going to change for tablets and phones, it's going to change for cards, it's going to change for everything else.
So you're going to have to interact with upstream and this is probably the best way to do that.
You're going to have to engage with a community somewhat.
Hopefully we can facilitate with some of those weeks.
So can you many ask the question immediately, something that came to my mind was,
it feels like there's space for something like a shared dictionary or VK or a space where people can go collect.
Contribute and say, hey, I found this flag does blah, blah, blah, and I'm just documenting it here.
The format could be something that we can talk about, but it feels like there's space for something like that.
It could be on a speed of start or it could be elsewhere.
I think I can.
Yeah, for sure.
Yeah, go ahead, Chris.
It's way bigger than we've been ever.
Oh, I thought you were there.
Yeah, I mean, it would be great to have a shared resource and this is one of the ambitions I have.
So ASP Devs.org is that we would have some kind of shared documentation resources where people can document.
As I'm it showed in his presentation just now, we set this flag to do this thing.
We set this flag to do it.
So the thing, oh, when we grab the code we found another flag, which nobody knew about,
but it does it reduces boot time by by half.
It will be great if we could have some kind of shared documentation area,
but we can just simply put these things in.
Now, the problem with this is maintenance because once you've done that, then a couple of releases later,
this is all changed and somebody needs to go through it from time to time and kick out the bad stuff.
But it is my ambition that we would do that somehow in ASP Devs.org.
And I'm wondering, you know, sort of speaking of sort of community readers like this,
how much something like ELINX.org can also be a sort of similar repository or because I mean,
they've been around for a long time and the site does get some usage.
I mean, if nothing else, one thing that would be interesting to see on ASP Devs is just a list of all the projects that are sort of interesting for people to look at.
Like, you know, lineage and Lord Roy and whatever else that is there.
And so I guess one of the things that I'd be interesting to hear about from the panel,
because we're also doing this work is what is missing from source.nr.com.
That just, you can't find when you go there.
I've got my own ideas, but before I sort of spell those out, I was wondering if somebody wants to take that.
Yep.
Just stuff on code 2, like on the Milton Media stack.
Okay.
There's a lot, I mean, it's quite complex and code is, in my opinion, not too good.
And if you need to add your own, like, hard-ready coding support, it's not easy.
Anybody else wants to chime in?
Radio interface there.
Okay.
So, yeah, again, just one quick thing.
It might be one of the greatest things that would benefit source Android.com would be to version the documentation,
because when you look at a page on source Android.com, you'd know real idea which version of Android it relates to.
And quite often there's old stuff in there, which hasn't been cleaned out.
And also, you know, these things change quite significantly between Android version.
So, yeah, they could do is the version control of their documentation.
Yeah, I think I don't know if that there is or is not, but is this in the Git repository somewhere?
Because I'd like to just do Git diff sometimes on it.
It is?
Okay.
Oh, it's a problem.
Boo.
This is just a tiny data point, but one thing that's been happening a bit is that teams are adding
Readmees into the Git repository trace.
Sometimes you can find documentation and version documentation right next to the code.
It tends to be more to the point than source Android.com, because that's supposed to be like a overview of the basic concepts.
Like, might be where for looking at the particular Git repo, which has a readme or not.
Yes, so one of the things that I usually tell people that my feeling about source.nr.com is,
So they tell you essentially how the stuff sort of runs on the Google side of it,
but then there's these versions and well, the hardware does X.
And it's like, okay, there's this whole missing part from the SOC vendor.
This is not being documented here.
And if you try to go walk to this SOC vendor, it's like, oh, look, here's the NDA.
Because otherwise, you know, you can't get the information as to, how do you actually do the hoverback storage?
Well, okay, that's not part of the actual specification.
This is just for you to actually determine.
So yeah, actually, so maybe I've done enough sort of talking to these folks here.
So what is it that you guys mean people in the community who are actually sort of participating this would like to see that is not there.
Anybody want to chime in here?
We have 10 minutes right, thank you.
Oh, we're all set then.
We don't need nothing, do we?
So one of the things that, you know, the work that Chris has been doing over the past two years,
I think it's awesome with the ASP meetups and the ASM meetups.
And I was wondering, you know, from your point of view, what is it that you feel is is maybe missing that that that we would need.
Okay, so yeah, about three years ago I started the ASP and A-A-A-O-S meetup group.
And that was the result. So over the years I've done a lot of training sessions with people throughout the world, but particularly in Android and automotive areas.
And I just wanted to kind of keep the conversation going a little bit.
So this has been quite successful from my point of view. There's a lot of people signed up to the meetup group.
We have meetups every two months and we have a bunch of people turn up. It's really good.
The problem is that that is kind of stuck at that point. I really wanted to get to the point where there's more collaboration going on.
And that's the idea of behind ASP Devs.org is to have a more interactive forum where people can communicate more.
And I think together they work really well. So the regular meetups, they give a focus and it's a place where people can turn up and there's a whole, you know, we have like 40 or 50 videos now from over the years on whole range of subjects.
So there's a whole kind of repository of valuable information there.
So yeah, the thing that we need next and the thing that we're kind of here to talk about this today is how to take this to the next day, how to get more collaboration going, how to keep the conversation going.
So that's yeah, that's where we're at I think.
So one of the things that I've been sort of wondering here is who are the stakeholders and what are the incentives actually creating any sort of community.
We can discuss from Google's perspective, they have the model that they have, then you've got the silicon vendors that have the model that they have and then you got the device vendors.
And I guess it's sort of unfortunately what I see is is you get the foot soldiers that are sort of underneath all these layers that are actually trying to get the stuff done and they're the ones that were actually struggling.
So it's not the actual sort of big conglomerates or big companies or whatever, they don't necessarily have an incentive of actually sort of sharing or building communities, but the foot soldiers do.
So I was wondering how we could sort of help this happen.
So I mean, yeah, ASP devs and the discord channel that we've found in place is good.
And we were talking about some sort of wiki and there's these presentations that are made every so often, but all sorts of people.
Is there anything else that we could do in addition to that or how do we sort of help people around.
Maybe find their way and find solutions and sort of like for example, you know, like the stuff you mentioned, she's just gripping the code.
And looking for stuff is there anything else that we could sort of additionally do either, you know, from the panel here or anybody in the crowd.
Hopefully, this is not difficult to implement, but I based on your collective wisdom and discussions on discord.
We could actually contribute some of those red means that they've been mentioned where they don't exist.
I don't think Google would be opposed to it, they don't usually code in any sort of way.
And then that's maybe good practice for others to keep those red means up to date.
What make your life easier, because then in the future when Google would make a change, someone at Google would be like, go change to read me as well.
And that's probably something that we could do that don't think Google would be necessarily opposed to, especially if just read me.
Thank you.
Actually, this is a brilliant idea. I like this very much, because I mean, you know, there is a Garrett site where you can actually go and try to contribute code to the AOSP.
Most of the contributions are made by Google people or companies that are close to Google.
But to Sherwin's point, I think that if people took it upon themselves, just contribute readmees, or even just the paths, the readmees that are there, I think that there's no sort of conflict in this far as I can see from
Google's site from taking those sorts of things, I think that would definitely be something that would be welcome, especially if it's a community contributing stuff.
So maybe this is an open invitation for people to sort of look at the different things that's a good idea.
There we go.
So there's a lot of people in the Android community large, just called them putsholders or whatever, who are actually doing this stuff and they're figuring this stuff out, but it just goes nowhere.
So maybe those readmees would be a great thing if we all sort of try to push in that direction.
Thank you for that.
Yeah, for sure. I mean, we got like three minutes or something left. Anybody else want to add anything here?
Yeah, quick.
All right, time to next the drink.
Now, all right. So yeah, go ahead.
Just want to say that if the readmees start to show up, I could take it upon myself to negotiate with Google to get those in.
I'll volunteer for that.
Thank you.
Yeah.
I'll volunteer.
Yeah, so I mean, the readmees are very, very, very well in the in their quality and their depth and whatever, but if we sort of start seeing them collectively as a sort of a thing that we can contribute to, I think that would be a good, very good philosophy.
Just one comment. I think I totally agree with Serban.
If we can figure out a set of folks that can interface with Google as well and figure out how can the rest of the larger community contribute.
Back to ASP, readmees, of course, the first start.
But we can go ahead with for those things after that.
Sure.
I think the next step is to just to find ourselves the first guinea pig who will take upon themselves or herself or their self sort of contributing a re-me.
All right, so thank you very much folks.
I will leave it off to the next presentation.
Thank you.
You're presenting next?
Yep.
Okay.
What are you?
You just need to take the mic.
Yes.
I think that's it.
We'll have to come this way.
Thank you.
Thank you for coming in.
So, let's do a shift.
Thank you.