Board index FlightGear The FlightGear project

Contributing to core development

Questions about the FlightGear organisation, website, wiki etc.

Contributing to core development

Postby themadgreek » Wed May 06, 2015 11:02 pm

Hello,

Mods - not sure if this is the right place in the forum to post this, so feel free to move it to a more appropriate location.

I've been a part of FlightGear since 2010 and the forum since 2013. Over the past few months I have made the leap of faith from being an end-user (with a few liveries produced here and there) to a more active content contributor (working on a few planes, openradar routes, airport layouts, etc).

However, I'd like to get involved (or at least try to) with core development and I'm not sure where to begin. I've signed up to the developer mailing list for a start. Is this the main/only channel of communication for core devs, or is there perhaps an IRC channel / mumble server in addition to it?

I would appreciate if someone could point me in the right direction to where I can "learn the ropes"... or perhaps there is someone who could introduce me to the system used by core developers, provide a basic outline of the code base, or anything else that could help me get started. I understand that it's not going to be easy to contribute from the start and that it may take several months to understand a significant amount of the codebase before I understand it enough to contribute.

My background, if it helps: While I am only a few years older than the FlightGear project itself, I have been programming in Java for 7+ years a web/mobile development related languages and frameworks for almost 3 years now. I currently am studying computer science at university and am working 2 professional software jobs (to pay for the ridiculous uni fees). My experience with C++ is limited, and I understand that this is the main language used for the project (correct me if I'm wrong), but I am more than willing to invest more time into improving my knowledge of the language.

I am also happy to help with any web-related dev requirements.

Best,
Phil
(MD-GRK)
themadgreek
 
Posts: 156
Joined: Sun Jun 23, 2013 3:43 am
Callsign: MD-GRK

Re: Contributing to core development

Postby KL-666 » Wed May 06, 2015 11:06 pm

C++ is nothing to be scared of. It is just Java without garbage collection. :-)

Or has that been introduced in C++ in recent years?

Kind regards, Vincent
KL-666
 
Posts: 784
Joined: Sat Jan 19, 2013 1:32 pm

Re: Contributing to core development

Postby Hooray » Thu May 07, 2015 12:53 am

The devel list is the right place for anything involving core development.

That said, it isn't necessarily the best place for people wanting to get started or even looking for "mentoring".

For starters, I'd suggest to check out a few wiki articles, namely: http://wiki.flightgear.org/Howto:Start_core_development

This should already contains tons of pointers for people wanting to get started, you can basically "pick your poison" - or at least come back and ask more detailed question, either on the devel list or the forum.

Usually, it is also a good idea to start out by looking at the issue tracker and get involved by reviewing bug reports and providing patches.

For additional pointers, you can refer to this wiki category: http://wiki.flightgear.org/Category:Cor ... umentation

To get started navigating the code base, you'll first of all want to set up a working build environment using git/cmake (e.g. the superbuild) probably: http://wiki.flightgear.org/Superbuild

How to proceed with these pointers, mainly depends on your motivation/interests and mid-term goals - for instance, there are many self-contained areas/components where it's relatively easy to add new functionality, without having to understand much else about the project.

You also mentioned "web development" - that is something that isn't directly core related, but Torsten "recently" started the Phi effort, based on his mongoose integration - and he's regularly asking for people to get involved - if you're interested in this specifically, I'd suggest to search the forum/devel list archives for the terms "mongoose" and "phi", or directly get in touch with Torsten.
Please don't send support requests by PM, instead post your questions on the forum so that all users can contribute and benefit
Thanks & all the best,
Hooray
Help write next month's newsletter !
pui2canvas | MapStructure | Canvas Development | Programming resources
Hooray
 
Posts: 11475
Joined: Tue Mar 25, 2008 8:40 am

Re: Contributing to core development

Postby Thorsten » Thu May 07, 2015 4:53 am

I would appreciate if someone could point me in the right direction to where I can "learn the ropes"... or perhaps there is someone who could introduce me to the system used by core developers, provide a basic outline of the code base, or anything else that could help me get started.


I'd do it the other way round. What are you interested in? What bothers you in the current FG?

Then ask specifically for the code containing that, and try to understand it till you can fix your issue. Submit a patch, correct it if needed. Repeat until you know all the areas of FG you want to understand. That way, you'll always have a feeling of success which you won't have if you try to understand all the code at once (not sure if anyone really does that...)

(In case you need a simple problem to work on as a starter: We have a simulation of the moon in the sky. We also have rendering of moonlight in the scene based on a property. Make the two systems talk to each other such that the illumination of the scene corresponds to the actual phase of the moon. )
Thorsten
 
Posts: 11375
Joined: Mon Nov 02, 2009 8:33 am

Re: Contributing to core development

Postby curt » Thu May 07, 2015 1:27 pm

Hi Phil,

The developer mailing list is the best place to ask questions and discuss the code. I've always supported the idea that "necessity is the mother of invention." A lot of people get started by diving into the code to try to figure out and fix something that bugs them. Many new features come from people who are passionate about an idea they'd like to explore. I won't stress too much about C++ ... the basics are pretty easy to learn, especially if you have experience with java or other similar languages and you can pick fancier tricks as you go and as you need to. We don't generally maintain a todo list or an assignment list since this is a 100% volunteer effort. It just seems to work better when people are pursing their interests. And then of course people will pitch in and pick up some of the more difficult, less fun jobs for the sake of keeping the project running smoothly.

Best regards,

Curt.
curt
Administrator
 
Posts: 1174
Joined: Thu Jan 01, 1970 12:00 am
Location: Minneapolis, MN

Re: Contributing to core development

Postby themadgreek » Fri May 08, 2015 5:23 pm

Dear All,

Thank you for your comments and encouragement. I will keep you updated of what I'm up to, and if I find a bug or feature to work on.
I'm sure I'll be posting soon again with questions :D

Speaking of which... one quick question:
After a quick google, I couldn't find the FG bug/issue tracker... could you please point me to it?

Thanks,
Phil
themadgreek
 
Posts: 156
Joined: Sun Jun 23, 2013 3:43 am
Callsign: MD-GRK

Re: Contributing to core development

Postby clrCoda » Fri May 08, 2015 5:24 pm

bug tracker link at the top of this forum page.

https://sourceforge.net/p/flightgear/codetickets/

--Ray
Ray St. Marie
clrCoda
 
Posts: 1228
Joined: Wed Apr 07, 2010 11:04 am

Re: Contributing to core development

Postby themadgreek » Fri May 08, 2015 5:26 pm

Thanks Ray, I had a feeling it was in sourceforge.
themadgreek
 
Posts: 156
Joined: Sun Jun 23, 2013 3:43 am
Callsign: MD-GRK


Return to The FlightGear project

Who is online

Users browsing this forum: No registered users and 1 guest