Ok putting it out there...
In order to encourage community members to participate in the Arducopter, Ardupilot, AP Planner project code base ,I think it would be a great idea for a series of live recorded online presentations to be conducted by those actively involved in the code base. I envisage this to be similar to online corporate seminars where the audience can ask questions etc. The idea here is to provide a quick start and less daunting way to enable and engage community members that would like to be involved in code development to further the Arducopter project. The recorded presentations can then be viewed at a later date.
This will be an opportunity for the wider community to see how the 'big boys/girls' cut and roll code, learn the gottchas and peculiarities of the Arduino environment and promote the widening of the number of people engaged in the code base.
Some presentation ideas that come to mind are:
1. Overview of code architecture. What parts do what e.g. global constants, classes, variables, methods/functions timers etc.
2. Devleopment environment requirements. Live demonstration of tool chains and code development, e.g. bug diagnostic and general code development workflows.
3. Use of HIL simulator for development.
What are your thoughts?
I love this idea. It takes quite a bit of work to bootstrap a development environment and the code is... well 100,000 lines of code.
Monroe is doing some great work with the Learning to program the Ardupilot Mega group. I think video presentations would be a great way to help people get started.
I will add my vote on this idea. I've done a whole bunch of webinars, so I will volunteer to deliver one. I will need some help in level-setting for the right amount of information and expectations.
I have access to webinar stuff. That's the easy part.
The harder part is scheduling and surveying what platforms people use
I am waiting for this ever since i bought my AMP1 and read the forum every day (a few month now).
This idea can develop in a huge jump for a lot of us and also for the whole project.
Until now I see this comunity a littlebit divided. I meen is a too big "distance" between developers/contributors and the rest of us.
Sometimes I wanted to add replies just saying "english please..."
There is a lot of people here at a beginner level in C++ but with good intentions and maybe with some interesting ideas. Unfortunatelly not everithing we want we can... but with a littlebit of help everithing is possible.
I see in this comunity a huge potential but until now only a part of this is exploited for the benefit of all of us.
The first and most important step in my opinion is your idea #1. "Overview of code architecture. What parts do what..."
LET'S DO IT!
Im interested too
It's a great idea!
I'm interested too
Great idea, there are probably some really imaginative and well wired up brains out there, if they understood the code to a high standard, then this project would certainly benefit...
The more brainpower put into something the easier things become and everyone develops their knowledge
You have one of the best graphics explaining miscellaneous connections (btw, what program was used to make them? would love to see more such wiring diagrams of multiple configurations and addons. I find them most helpful at the beginning of the RC journey) although it would be great to show even more. Show the possibilities of APM, how to get started with development is one of the possible directions of having more users involved in the development of the whole ecosystem.
Excellent idea! I'm in!
Could you please assign some homework so I'm up to speed and have my dev environment ready to play along in the webinar? (dead serious)
I hear you, good idea.
We will likely need 2-3 sessions, with an intro (how to setup a dev environment), a guided tour, and a "fix a bug and make a patch" workshop.
The "homework" will include executing some of the wiki instructions to setup a dev environment. I'm hoping Monroe can help me on that too.
Each session should include a 30 min demo/tour/preso, followed by 30 min of group Q&A, then 30 min optional individual hands-on to help with setup or specific problems. Have to keep the group time from deteriorating into bugfix and individual troubleshooting but also need that part at the end...
How does that sound?
Let's see what comes back on the survey, for the OS choice. The rest we will see... not sure yet
Do what you use, as a dev, first. If you find time after, show how it can also be done in (pick your OS)
If the audience cannot figure out how to adapt what you are showing to their platform of choice, then they are a secondary audience, and they also might not be the most ideal candidate for doing embedded coding for flying objects. Personally, if a person cannot figure out how to use their own toolchain to copy what you're doing in a video, I'm not completely comfortable using a code base that includes a patch they've submitted for my aircraft...