Seeking suggestion/guideline for being a jitsi developer

Hi beloved jitsi developers,
I have been working with jitsi meet for few days… I am just crossing the beginning of my professional life after completing B.Sc. in CSE and it has been great to use jitsi for our purpose… It has fascinated me a lot and where I suffered most is the documentation and guideline…specially for beginner as a jitsi developer… It has really a great future…!

So, I would love to have suggestions/guideline from webRTC+Jitsi experts here that what should I do or which courses/books/sites should I follow to enrich me as a core jitsi developer step by step for a longterm plan…, I am asking because I already tried and it becomes really messy when it comes to webRTC and XMPP and jitsi too.
The last book is from 2015 which isn’t working anymore…! That’s why I am asking you people who are currently taking part in this sector that what is the best thing to do for me now ? as I wanna know more about Jitsi, webRTC, XMPP and others I need so that I will be able to call myself a jitsi developer/webrtc expert and able to develop video conferencing/realtime solutions for my own purposes after understanding the whole basics…!
Thanx a lot in advance :heart: and apology for any mistakes…
@saghul @damencho

1 Like

@damencho @saghul @Boris_Grozev
did I ask anything wrong? :frowning_face: I just wanted to have a good guideline…! Thanx

I just don’t have anything to recommend …

is there any ways to follow ? I know u are highly experienced and had to pass a long way to come this far… I am just in the beginning and while diving I am just getting stuck in many places and getting confused where to look at… thats why I am asking about this … :frowning_face:
Thanx in advance for any kind of help…! @saghul

Sorry @Fuji we are extremely busy right now and I have no time to give you a proper and comprehensive answer.

I’ll try to, as soon as I possibly can, but it may take weeks, sorry.

thanx a lot @saghul for the reply
It will give me a great confidence if I get something valuable from u people… waiting for ur reply :heart:

Excellent question.
I am very interested in becoming a Jitsi developer as well.
It would be great if someone of the Jitsi crew could guide us… :slightly_smiling_face:

1 Like

I hate to be blunt, but if you’re asking this question (“Please teach me how to be a developer on this!”), you’re not going to get far in software, and especially in the open source world.

Jitsi is based around open and well-ish documented technologies and systems. The web interface is React and NodeJS, the videobridge is… well, complex, at a minimum. The XMPP/etc gateways are their own thing.

There are a lot of moving parts, a lot of technologies, and if you wait around for someone to give you full guidance, you won’t get far.

The right answer, if you want to “be a Jitsi developer,” is to… start being a Jitsi developer. Set it up based on the documentation. Fix the documentation - I know for a fact there’s an error in the setup docs, because I’ve worked around it. Submit a pull request to fix that as you find the problem. Then start diving into an issue, learn what you need, and go from there. There’s no need to learn the entire stack up front - if you want to fix a UI quirk, you just need to know the web frontend technologies. If you want to fix a codec issue, it’s a lot more complex, but you have to know that stuff and can probably ignore, say, CSS tweaks.

Set up a public instance. Then figure out how to do the same from source. Then tweak it and make sure your changes apply. Then tackle some issue that looks minor and has been ignored for 6 months - it’s unlikely to get taken out from under you.

The open source world rewards self starters who are willing to start from nowhere, fix the road as they go, and make themselves useful. I assure you, you don’t have to know the whole stack to fix some documentation issues or improve translations (if you happen to know a language lacking full translations). Get good at that, you’ll go far. Whine about someone not holding your hand, you don’t have a promising future in open source.

The Jitsi developers are swamped. The project has gone from “An interesting self hosted option with steady development” to “an insane number of users” practically overnight. That shakes out all sorts of issues, and if you look at the trackers, you’ll see it.

So dive in, figure it out. Don’t be afraid to ask questions along the way, but make it clear you’ve tried first. http://www.catb.org/~esr/faqs/smart-questions.html is relevant.

I’d suggest a couple of VMs for development. Jitsi does like to have the whole system… that might be a place to do some configuration tweaking!

5 Likes

@Syonyk Thanx a lot for the reply…

May be the way of my asking wasn’t that good to understand to some pro like u as I am really Noob.
This jitsi implementation (lib-jitsi-meet) for our production purposes is the first Industry level work I am doing and when I started, it was really messy to dive in open source world. I felt it really hard for a fresh comer to cope up fast but yeah it became gradually clear in the high level and then some part of low level with the consistent support from this forum.

but for production level work u have to have some basic understanding in what u r working or what u r gonna do so that u can be sure that u can handle this, not that u have to learn all the stack with depth knowledge - from my point of view, take pardon if I am wrong. And this jitsi things, real time communication area are not so easy to learn all in depth for the lack of good resources - not that I have to learn whole webrtc things but I have to have the understanding atleast the basics of all (main things) and some depth knowledge in some specific areas. That’s why I asked for a guideline or suggession ( like some articles or couple of books) from the real developers of jitsi so that I will atleast have the knowledge what must be learned or I will need eventually. yeah, I know I will figure out somehow someday but it worth asking as I am already on and they are here. And the video server implementation and some high level topic wasn’t that hard to learn but thats not all,isn’t it?.
And we already have launched a production docker video server where we can create room with one to many conferences through custom layered lib-jitsi-meet api call from custom angular UI (with springboot backend - that project is running by other team for another purpose, we are adding video service to that)

Actually, the main goal of the question wasn’t being a jitsi developer which I won’t be in anyway or other. I actually tried to ask for the name/resource of some study area I must or partially will need eventually if I am gonna use this jitsi for the backend of my production service as there is not so many experienced webrtc experts and guideline out there.

And really thanx for the excellent and detailed explanatory ans of my ques from ur point of view :heart:
.
@saghul, I am still waiting for some of ur words too and hope u will be able to manage some time soon…
Thanx
Fuji

I haven’t touched public open source web stuff in a decade. React and Node are quite fresh to me. I’ve just spent the past few weeks reading everything I can in the evenings, trying stuff out, and diving in. Web is far from my area of expertise these days. But I’m also old enough to know that the right answer is to jump in and write some code. Which I have been. You can find my forks on Github and probably figure out what I’m working on.

If you want to learn Jitsi, the code and this forum are your best sources. There are plenty of “articles” on WebRTC, for varying values of accurate. Books, I doubt. By the time you could write one and publish it, the spec would have moved on. Go read the RFCs, if you want book length material, though they’re not that long.

You initially asked how to be a developer. Now, you’re talking about knowing what you need to know to run production services. Pick one - they’re not the same knowledge set. It is entirely possible to run production services you can’t code for, and to write software you don’t know how to scale in production.

And get a keyboard. You’ll need one for coding or proper management of production services. It’s painful to read things that are long form text with SMS shortcuts.

I sincerely doubt you will hear much from the developers unless you are actively filing bugs and submitting PRs.

@Syonyk, you are way too too much senior and experienced in software industry to doubt your knowledges or learning speed in any area and I didn’t and I know my lackings as fresher.

yeah, but I wasn’t and am not. But I am getting it

yeah, that was a mistake not expressing the correct words with poor choice of words but if you would read my ques description properly, may be you would understand what I really wanted to know.

actually, when I started, I didn’t even understand what should I go for first to fulfil my requirements which is normal for open source project. But this is the only place where I can ask anything which concerns me about jitsi implementation and I think I am getting it but I also need more.

Screenshot of my current screen

unfortunately I am not in that level till now…but there are many. so as a fresh comer I wanted their valuable words for me as I was just facing hard problems in simple facts and also wanted to learn/understand more in a systematic way to fulfill my purpose. And I am really grateful to this forum for helping me out all the time.

And you also should keep in mind that there are some real fresher mean who has no professional experience with little/no knowledge in real software industry are coming here to take jitsi for their purpose and this is also one of the main target of jitsi meet, isn’t it?. So, while answering you can’t just always expect bugs report/PR or knowledged questions. there also can be some really simple question which can seem shitty/stupid to any experienced one but they also should encourage/help/guide them in a right way. Thanx for your time.

1 Like