Suggestions related to DevCon 2022
#1
Hope you all hade a blast at DevCon!

Just some suggestions regarding the points "C++ 20" and "GSoC 2021+2022" (Ref: https://kodi.tv/article/devcon-2022-molt...-catalunya)

Please don't consider the statements below as a provocative attempt to start a quarrel but rather a suggestion to try to improve things in general regarding Kodi.

1. I'm sorry to say but Kodi has become (or rather has been for a while now) a huge software kludge with plenty of undocumented workarounds, quick-and-dirty fixes that is clumsy, inelegant, inefficient, difficult to extend and hard to maintain. 

To make it more attractive to new devs and maintainers and also make Kodi actually survive in the long run (yes I'm serious) please consider the possibility to start a documentation subproject. The objective is the overall architecture as well as how all subsystem are connected aimed specifically to developers. Also, please try to convince all devs to actually invest some time to write brief but descriptive code comments.

I've been hacking xbmc from the early days but still struggle a lot with completely unnecessarily hassles and spend a lot of time when I need to make changes to the code base, all due to the lack of adequate documentation. Then try to imagine a person who has never seen the code for Kodi before. Now it's just trail-n-error that eventually make you succeed at the end but this process is completely counterproductive. Due to these important factors, projects like Kodi risk eventually dying due to a brain drain, which you probably been noticing the recent years. 

2. The same as above goes for documentation of the build platforms that needs to be updated in general.

3. Be aware of Possible Security Breaches (considering the times we are living in now). Mitigate to ability for third party to inject malware like virus and spy trojans by for example get rid of code dependencies from untrusted states, tighten up access and secure the whole build platform in general (automatic malware checks with public status, code and exec checksums, etc) perform a code analys of dependent libraries and so forth. You really don't want to be known and accused of Kodi distributing a malware platform used by malicious states and criminal organisations.

4. Consider the possibility to have someone that might want to act as a UX dev ie have an overall knowledge of the whole user experience from a non technical point of view. When family and friends are unable to manage Kodi without your assistance, it might be an indication to start reflecting on possible improvements.

5. Freshen up the Android and Windows build platforms like upgrade the libraries as well as the dependencies, docs etc.
--

There are a lot of other areas that may need improvements but these were essentially the most important ones IMHO.

Just my two cents..
Reply
#2
While I understand the main ideas don't forget team Kodi is small, rotating by nature and also have lost a bunch of people during recent years. People get old, get jobs, kids and time gets too limited to dedicate to the project.

New blood is always required but Kodi tech stack/development requirements are really hard and not easy to find or replace. Kodi architecture (or lack of) usually implies that a new feature requires you have to address large parts of the codebase so the project tends to move slowly even if in every new version you have hundreds of code changes and it looks nothing new/shiny has been included. Sometimes you even break features you didn't even know they existed (but it seems there's always some remote user who's live depended on them despite they are documented anywhere Smile ). For instance I didn't even know mixed playlists were a thing a few months ago. Not to talk about stacked files, dvd folder namings, etc..

Plus, as a 100% Opensource project without company(s) development behind, future is always at the mercy of volunteering and free work.
Personally, my feeling is that even though the world has more and more people getting into technology and IT backgrounds in general and open-source is at the spotlight my impression is that we have lesser and lesser young people interested in contributing or learning from opensource - the time in life where time is cheap. Or at least interested in spending time in projects like Kodi.

This all to say that user documentation is pretty much something that should be delegated to the community and where every user can help. We have people in the team who maintain the wiki and update pages with new releases, but again, resources are scarce and the beauty of projects like Kodi is the community. So, if you feel the documentation needs improvement please go ahead and help us. I think everyone would like to have better docs.

Technical documentation is something team Kodi has tried to improve and keep consistent and always updated with the code for the past few years. We have docs.kodi.tv, a doxygen project that is generated with every change in the Kodi codebase. It is not a user manual but tries to document the building blocks, external APIs, add-on building, skinning manuals, info/actions etc. It's work in progress and help is also appreciated. A lot of stuff in the wiki should be moved there (e.g. the skinning manual).

The default theme of docs.kodi.tv is not really user friendly nor pretty. I always had the intention to improve this but then you find bugs and limitations in the doxygen framework which you either have to wait to get fixed/improved or try to debug and fix yourself. If you go the second route you waste any free time you had that could dedicate to Kodi...

For instance I tried to improve this a while ago, trying to reuse the same pages we have in the repo and structure it a bit more:

https://enen92.github.io/docs.kodi.tv.te...index.html

While it looks great it just relies on too many hacks...then you get a pretty docs project no one will be able to maintain...

I'd say this is on the radar but just like Kodi...tends to move slowly due to the lack of people and time.

Cheers
Reply
#3
Perhaps in future we should participate in https://opensource.googleblog.com/2022/0...2.html?m=1
Reply
#4
I'll just comment on 5. Android is EXTREMELY up to date in every dependency used (except curl, samba). I have spent a ridiculous amount of time making that a reality.

Windows on the other hand, where the windows devs at? I've provided info to people on how to assist with the current windows build system, but dependencies aren't a thing many people want to dive into. So it is what it is. We've made call outs in the past asking for Devs from the community to help, but we've never had ANYONE come from them.

As always it's an open source project, and it's only as good as the community who steps up to participate. Plenty of people want, not many people are interested in the giving
Reply

Logout Mark Read Team Forum Stats Members Help
Suggestions related to DevCon 20220