 Thank you. Thank you. Thank you all for coming here. It's nice to have some people in the room at least So yeah, I'm here to talk to you about the concept of developer portals and Tell you how not just this community, but every free and open source Software community can benefit from having one now the problem is that I could talk about this for days But we only have a very short time here So I'm gonna have to fly through it on a very basic level But if you would like to discuss details with me, you can always just contact me on Twitter Or I'm in KDPromo channels every day. I try to be online most of the time. So yeah, you can Find me there. So so this whole talk was actually inspired by developers by you by people I work with at this company versus labs where I work as a technical writer by my friends who are developers By developers I talk to online in different contexts. So in in these talks with the developers I realized that they often feel like they're taking for granted Especially by managers They're quite a few managers who treat their developers as cold monkeys and are not really aware of their needs and issues And it's true that you developers are very smart and self-reliant But sometimes you also need help and this type of help that you need is very different from the help that our end-users need and As a community that wants to grow and that wants to attract new developers It's it's very important for us to accommodate that. So luckily In recent years even some big software companies have started realizing this, you know That developers actually matter and that they need help so you can see initiatives like developer relations or their role for short So that's basically a technical community management It kind of boils down to building a community around a software product and Trying to give those developers use that product as many resources as they need so that they can be productive and successful So it's a basically a two-way relationship between the developers who give feedback To the company and the company who tries to make their product better based on that feedback So developer experience is analogous to user experience because as we know developers Are also users they just use software in a different way So the things that matter to developers are different than those matter to to the end users So in different studies of developer behavior and expectations the results show that Documentation influences developer experience a lot more than many of you may think For example poor navigation Insufficient or completely lacking information no working code samples Those are all things that make a bad developer experience and this is where developer portal step in as a potential solution So what is a developer portal? It's a self-service hub that contains all the resources that developers might need to understand and work with a product You can also extend this concept to include end user documentation such as user guides You know your regular user manuals and then you can just call it a documentation portal But the basic idea is the same. It's the landing page It's a complete information architecture that's designed to support your documentation and then by extension your product and your whole community So when you're building a developer portal, you're gathering all this shared knowledge in one place and This is this is important because it becomes a place where developers start to build their own things based on your technology It's also important because it's a place where businesses and our corporations start to see how they can make use of your technology and if we want to be successful and work with You know big businesses We should start building a developer portal because it has a major influence on people who interact with your With your products. It's very important to get it right. So how do we get it right? these will be some essentials that Every developer portal should should have so it's search we have a search function basically you're telling developers Here's how you can find whatever you need You need working code examples obviously so that they can start working with your Software with your technology immediately. So you're telling them here's how you can start building your own thing You also need full references if have API's always have a full API reference on your developer portal So that's like telling them here's everything we have and You need some kind of human contact information Whether it's a link to a mailing list or Telegram group or whatever just to show them here's how you can find help if you get stuck It's also extremely important to have different types of documentation to accommodate Developers on different parts of the developer journey. So for example, there's a saying that a getting started doc Should get you from negative 10 to 100 where negative 10 is a person who doesn't know anything about your code or your product but if you have only those guides and you don't have anything for people who are for example at 8 or 80 out of 100 so they know a lot of things but there's some key missing parts if you don't have Resources to support them. You're losing quite a bit of a chunk of your potential developer community so Obviously when you try to build something like this, you want to know what's in it for you So what do you get from it? So some things that this could help with our on-boarding? For example, we talk a lot about on-boarding in this community and it's obviously very important So this could make it easier we could have you know instead of digging through code and sending people thousands of links you just send them one link to this developer portal where they can find everything and When documentation is scattered around it causes confusion for people who are new obviously So you can always tell them to just Google it But when you say something like this to a person who is new to a community, it doesn't really leave a nice impression. So You know better to avoid it. It also reduces Time to hello world, which is an actual metric that is used to measure efficiency of documentation So how fast can a person start building their own hello world application immediately after reading your docs? When people read the docs they usually do it because they have some kind of a problem or they're frustrated They are trying to solve it quickly So they don't really have time to read through very long detailed Explanations so, you know, we have to accommodate for this They also scan instead of reading so the layout of your portal should accommodate scanning first, right? So, um, what else the existence of a developer portal is actually a major trust signal in itself and The more information you add to it The stronger your trust signals are so what this means it means that you're sending a message to Potential new developers that this project, you know, it's growing code is being maintained. There are licenses in place All developer journey stages are addressed whether you're a beginner or someone who's already experienced You always have a place to start working on something and you know, there's there's enough contact information on the portal So they know that there's actually live people who are currently working on this. It's not a dead project or anything like this You also target very different audiences when you have such such a variety of content and it helps also to To optimize for search engines for example when you have all the documentation in one place It's easier to optimize this one page in three different pages in three different places So you can also target developers from other communities or as we said from businesses Who want to integrate with your with your technology? It also increases visibility among members of other Communities and it's it's an opportunity to showcase your software projects in a different way than you would usually do So you can say we usually promote software to users as you know This is dolphin our file manager. You can share files here, but on the developer portal. You can give more prominence to some developer related features You can tell them how to build integrations with different for example file sharing services or stuff like that So you can also use this portal as a whole to improve the image of your community as one That's very easy to work with because you have all these resources in one place and they're they're easy to find because in promo We see people online all the time They're asking how do we start contributing to Katie where do we start? So if we have a good answer to this it will be a lot easier to convince those people to actually join us so Let's look at a few examples of developer portals that actually exist in other freedom of source Software communities. So this is fedora. So as you can see they have actually some really nice Calls to action immediately on this page. They give you links to tools and Resource that will help you help you start Developing basically immediately. So they're they're aiming to reduce this time to hello word that we mentioned You know has a very simple one But again also has all the essential information on it. It has some useful links It has the link to the full API reference which we said was very important and they also have an interesting thing Right at the top. It's not very visible, but they let you switch contacts quickly So you can switch between developer and user documentation on the same page Which can be a helpful actually and then this is a snap craft I'm not sure if you can see that snap craft.io for building snaps, right? They have this really really cool thing that developers I've heard appreciate a lot Which is co-examples in a bunch of different programming languages So this can be extremely helpful and if it applies to your technology or to your project It's really good to have this. So what do we have in KDE? So how does it look like when someone joins and These documentation well our problem from the way I see it is that it's all scattered everywhere It's very decentralized. It's not a huge problem, but it's still something that we could maybe optimize and do better And a developer portal could be a way to solve this. It's not the only solution, but it's it's a good start This is how people feel when you tell them things like this when you give them a bunch of links and then they don't know where start So how do we fix this? Well, we could have an Approach that combines a centralized and decentralized Approaches to develop a portal. So if our documentation is already decentralized We don't have to move it all to one place immediately. We can just build one landing page that will connect them all So in this way, we'll kind of mask the complexity that we have and We will still have this one central place that we can use for search and for highlighting Different types of documentation. So yes, we have this docs.kd.org Which has some problems for example search. Can you find a search on this page? It's very small It's very like up in the corner and it should be front and center and also when you have to explain the navigation On the page that means the navigation is not really that great, is it? So yeah, this is something that we could improve and I already know that there are projects working on this I think Carl Sean who maybe not here not sure. Yeah, you're dead. So he has plans for improving this. So that's great We have this also which is kind of better than the previous one This is wiki.kd.org. So it has like some Semblance of what a developer portal could be but it has this weird mission statement thing at the top Which is like weird flex, but okay It's yeah, so we could we definitely could work on this to make it better So it's yeah, it's not great. It's not terrible. There's always room for improvement So how to fix any documentation you have any documentation? This is how you can fix it which should basically repeat what I said at the beginning So you need a better search you need better navigation always need code examples when you're writing for developers The first thing they want is always code examples and yeah, definitely make it look modern when I say that I mean don't leave pages outdated the same way they looked You know in the beginning of the 2000s because that kind of sends a bad trust signal it doesn't It makes the site look untrustworthy basically because it's not immediately obvious to the person who is Visiting it for the first time that it's actually being developed developed and maintained so try to work on that So yeah, I think I'm almost out of time So if you think that the KD community needs A developer portal here are some things that you could do or you could start doing so we could build a centralized index or a catalog or however you want to call it of all KD documentation And we could have a search that will use whatever Back end we want to use in in in the background to to actually search through everything or we could start small You could take your own project whichever one that is and you know motivate people to actually start improving the docs based on some of the Things we mentioned before so more code samples different types of documentation Different types of guides right once forgetting starter once for doing more if you don't have a detailed API reference do include it Definitely keep working on documentation I think now is kind of the right time to do it in this community because There's already been so much work done on it as you've probably heard in previous talks today during the goals discussion Good thing about documentation is that it fits into every goal because you know better documentation is always a good thing to have So whichever goal you're working on or trying to contribute to documentation will always fit into it So try to do that. It's also cool to think about options Such as documentation sprints or hackathons where people get together and instead of coding as you do They would actually work just on documentation or you could maybe have something like an indexing police I couldn't think of a better name for this, but it would be a group of contributors who don't even have to be They don't have to need have some special technical knowledge They just need to be able to observe links that are broken or things that are not indexed properly And they would just report a list of things that are not linked or things that are missing from documentation They would report this to you and then you can start working on it in more detail and if you want to see some really good examples of Developer portals if you go to the portals of the world or the org That's a site that every year. Well, I think since last year they nominate and award Different developer portals in different categories. You could get a lot of inspiration from there And yeah, definitely keep working on docs and if you want to talk more about this Reach out to me. Thank you for listening. I don't know if we have time for questions probably not Yeah, maybe Ray is the next speaker so you can set up and maybe if there's a question You can answer this while Ray connects his computer. Yeah There are some questions. Okay Hi, Vana. Thanks for a great suggestion Justice suggestion. Are you tracking this effort somewhere? Maybe start a fabricator task or something so people could join in and Haven't started anything yet. This was just an idea, but if you think it's worth of Starting an initiative. I think we could do it. I think it's definitely the worth it. So yeah, go for it so one of the four basic principles of agile development is quote the value working code over documentation in Other words the best code documents itself. So what's your take on that? Oh, I heard that I've heard that a lot and in my workplace a lot of people like You advocate entirely different approach I'm not sell you like which of those approaches I like based but like how how does it square? Is it like entirely orthogonal to this like working working code over documentation or can those two principles somehow complement each other? Well, I think you need some kind of documentation for people who are starting at least So you need to know how to start to work with something and then you can only start understanding the code I think do you expect? Newcomers to start reading the code immediately and not the dogs. I'm not sure if I get your quiz. I Don't think I don't think the the thing you mentioned is completely completely at odds Aha true. Yeah, that's true. That's true. But then again, there's a lot who don't so I guess it depends on the industry or your approach I personally think that you always need some kind of documentation at least something basic And then it all depends on what you're aiming for you don't really need a developer portal if you don't want to attract developers It's like as simple as that But if we do want to grow as a community and there's already so much invested in this I think this could be a way forward, but it doesn't have to be right