[Bf-committers] New Developer Meeting Minutes

Roger Wickes rogerwickes at yahoo.com
Sun Dec 6 17:34:51 CET 2009

New Developer Meeting Summary
Dec 06 2009

1. 2.5 codebase. No one really interested in doing any patches to 2.49.

2. C or Python coders?

Dec 06 09:07:42 <ideasman42>    (relying on tight python integration for tools useful within a month or so 2.5 is no way up to this)
Dec 06 09:07:46 *    dmbasso votes for C
Dec 06 09:07:57 <amennelet>    I'm more C codebase, specially windows manager
Dec 06 09:08:05 <xla>    my vote for C base
Dec 06 09:08:19 <kattkieru>    I'm more interested in Python, for exporters and custom UIs.  Need those things for work.
Dec 06 09:08:25 <nfz>    c, python
Dec 06 09:08:54 <matd>    same as amennelet
Dec 06 09:10:55 <kattkieru>    Well, if we go with C I'd like to hear about the armature and constraints systems.
Dec 06 09:11:35 *    dmbasso has a good experience with both C and Python
Dec 06 09:12:36 <yoff>    python and c both
Dec 06 09:13:16 <matd>    i know py and have basic c knowledge

3. Functional areas of interest

Dec 06 09:10:55 <djaddison>    I am new to blender developement. I have a list of ideas and interests. For the time being, two questions. Is there a supporting role for people that don't have time to invest in code development. Example a research team. Secondly, who would be a good person to talk to about low level event handling?
Dec 06 09:10:59 <ideasman42>    but I would like to know if the new devs here are more experienced with C or python
Dec 06 09:10:59 <theeth>    tools developed in python are as integrated in the UI as C tools
Dec 06 09:11:29 <kh_pylon>    I need to come back up-to-speed on the C code, so I can be useful in helping wrap things for Python
Dec 06 09:11:37 <theeth>    djaddison: for the second one, it depends if you mean handling events at the OS queue level or the internal blender queue
Dec 06 09:12:37 <djaddison>    theeth. not sure were the division is yet. I'd like to interface hardware control surfaces
Dec 06 09:12:53 <theeth>    both then
Dec 06 09:13:34 <PapaSmurf>    amennelet would like to work on windows manager, Kattkeiru would like Python import/expoorter. Are there other new devs that are interested in a specific functional area?
Dec 06 09:14:01 <yoff>    I would like ton understand how much would be involved in getting a muscle system working
Dec 06 09:14:09 <kattkieru>    PapaSmurf, if we're sticking with C I'd rather work on the armature and constraints.  We can do importi / export another day. :)
Dec 06 09:14:47 *    dmbasso is interested in physics simulation, specifically muscle simulation
Dec 06 09:15:47 *    DingTo considers himself a new dev too, if no one complains about that ;-)
Dec 06 09:16:40 <nfz>    I'm interested in helping with 2.5 todo list and bug squashing.
Dec 06 09:27:33 <yoff>    more into animation, rigging..
Dec 06 09:35:15 <dmbasso>    what I want to do... learn the area of Bullet integration ;)

4. 2.5 Structural overview

Dec 06 09:17:37 <PapaSmurf>    theeth and ideasman, could you please help the new devs point them where to get started plz?
Dec 06 09:16:35     http://www.blender.org/development/architecture/
Dec 06 09:16:47 <theeth>    this page is a good starting point for blender architecture

Dec 06 09:18:22 <KAHR-Alpha>    theeth: is that page still relevant for Blender 2.5?
Dec 06 09:18:27     http://wiki.blender.org/index.php/BlenderDev/Blender2.5#Implementation
Dec 06 09:18:50 <theeth>    KAHR-Alpha: mostly yes, the internal data structures haven't change that much
Dec 06 09:19:16 <theeth>    that last link lists architecture details for the 2.5 system
Dec 06 09:19:22 <theeth>    window manager, event system, operators
Dec 06 09:19:35 <theeth>    it's helpful for learning the basis of the new system
Dec 06 09:19:59 <theeth>    evidently, implementation differs a bit from design (ha!), but nothing too big
Dec 06 09:22:06 <theeth>    unless someone has a specific question they want answered, I can do that in the mean time

Note: Mindrones is going to summarize the next 20 minutes into a wiki in the Developer's Documentation section. 
Some hightlights for reference:

Dec 06 09:25:48     http://www.blender.org/community/get-involved/
Dec 06 09:25:57 <DingTo>    I would say the best start is to refresh some wiki pages so new devs can see who is responsible in what area in Blender
Dec 06 09:26:05 <DingTo>    ^Maintainer List
Dec 06 09:26:29 <theeth>    in 2.5, most of the code is neatly layed out by "topics" in /source/blender/editors/
Dec 06 09:27:44 <theeth>    if you want to work on one particular tool, the easiest way it to track it down from the operator, which is usually added and mapped in files ending in _ops.c
Dec 06 09:27:53 <mindrones>    would be cool if we layout folders and explain in wiki what's for a certain folder
Dec 06 09:27:59 <PapaSmurf>    theeth, half of this might be stuff that experienced devs need to do to create an environment/doco where new devs can come on board
Dec 06 09:29:43 <ideasman42>    Is everyone here used to searching the source and finding code they need to edit, just not sure at what point you guys are with blenders source
Dec 06 09:29:45 <matd>    theeth: wiki is the wrong place ihmo. the code should be commented in place.
Dec 06 09:31:02 <ideasman42>    is the dir structure really a problem? - I normally grep the source for keywords, then learn the structire as I go
Dec 06 09:31:09 <PapaSmurf>    a _readme in each folder explaining the purpose fo the contents of that folder is very helpful
Dec 06 09:31:22 <DingTo>    ideasman42: i fin dblender/editors clear
Dec 06 09:31:44 <theeth>    ideasman42: having a basic idea of where things are can be useful, especially if you're looking for a function that's used a lot
Dec 06 09:31:45 <amennelet>    ideasman42: the difficulty is to understand the code philosophy (excuse me, I'm french)
Dec 06 09:31:50 <mindrones>    ideasman42 true but as a start it could serve as a mental index?
Dec 06 09:31:56 <ideasman42>    ok, its just often I need to edit code in BKE/rna/editors/python api etc
Dec 06 09:32:21 <mindrones>    I use kscope too
Dec 06 09:32:43 <ideasman42>    amennelet, yes, I can understand that, getting the 'big picture' is harder
Dec 06 09:32:44 *    nfz uses code::blocks to search source
Dec 06 09:33:01 <ideasman42>    but finding the code for an operator say - should not be hard
Dec 06 09:33:07     amennelet, http://lists.blender.org/mailman/listinfo
Dec 06 09:33:12 <mindrones>    another thing I need as a newcomer is some form of dependencies graph, even if I know this can be complicated to get
Dec 06 09:33:16 <amennelet>    ideasman42: yep, that why I'm trying to fix bug to learn peace by peace
Dec 06 09:35:00 <theeth>    like I said earlier, starting from an operator is very easy in 2.5
Dec 06 09:35:10 <theeth>    or UI scripts

Dec 06 09:35:46 <theeth>    DingTo: the problem with RNA is that if people don't know the api well, they can shoot themselves in the leg fast
Dec 06 09:35:50 *    nfz started with ui scripts
Dec 06 09:36:00 <ideasman42>    yoff, BGE, nodes, compo, py api, rendering... blah blah, each is a fairly involved area

Dec 06 09:36:07 <mindrones>    for example maybe ideasman42 and theeth can explain code wise the diff between operators and rna?

5 Experienced Mentors
Dec 06 09:36:08 <PapaSmurf>    I would like to hear from experienced developers as to whether they would like to mentor a new developer. Like we did with GSOC.
Dec 06 09:36:38 <theeth>    PapaSmurf: I'm always willing to do that
Dec 06 10:3x:xx <joeedh>    hopefully I can mentor them and get them contributing bunches of code :)

6. Next meeting Jan 3 2010 1500h Amsterdam time (0900 EST)

Action Items:

Roger: Summarize, ml minutes
Mindrones: wikify theeth's brain dump
Roger, anyone: Review information gathered, consult with ideasman and theeth, determine how best to proceed. 


More information about the Bf-committers mailing list