Re: [Gimp-developer] Developer Boot Camp?
2011/1/28 Alexia Death alexiade...@gmail.com 2011/1/28 Łukasz Czerwiński lc277...@students.mimuw.edu.pl: I'd like to write a little bit on some of the topics. QA I think that for a start a Wiki with QA edited by everyone could be a good solution. If it gets too complicated, it can be split in sections, pages, categories and so on. Such a wiki has been started. Its hosted by me at http://gimp-wiki.who.ee and has been devised as unformal developer space. What it lacks is contributors. Joining easy. A request to me with desired wiki name and email and that's it. If you want to maintain the developer FAQ, please step up. Oh, that's great that something already exists :) Some time ago I've posted a list of silly questions that maybe raised by newbie developers. Why not place it there as a FAQ? IDE The wiki pointed out above already contains a howto for netbeans. Netbeans is the only ide Ive gotten to actually code-complete for me and allows me to navigate project in the manner I like. And before netbeans Ive used pretty much anything:P Maybe Eclipse then? Anyone uses Eclipse to develop GIMP? From time to time I can see emails Hey, I'd like to help you, but don't know where to start. Some people will get this knowledge on their own (or will try to get it from IRC channels), but some won't and aren't brave enough to spam all developers on a Gimp list with his/her newbie questions. People who do this Hi, im bored, give me something to hack usually lack the commitment it takes to get into a large code base like GIMP. People who stick around and evolve into developers come to us with an issue or a plan. something they want to fix. And then they read the code and slowly get good enough. Thats the only way I know, that works. Have an idea what you want to change and then do it by asking questions. We like sensible questions. In fact, not asking questions is IMHO a good reason to flunk a student at GSoC mid-term :P If you want answers, join IRC. And stay connected long enough to answer. the last guy who did that(IRC name Acumen) had so bad connection that in the 10 minutes it took for me to see the question his link had already dropped and I had nobody to answer. Well, I don't agree. There are (many!) people that don't know how developing an open-source program looks like and what can work on at start. So they just ask for some guidance. Maybe there should be a section on Wiki How to become a developer? or Your first steps or similar. And there: an information about IRC channel, this mailing list, how bug tracking works and that one can find some easy bugs and try to patch them. Łukasz Czerwiński ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
Von: Stephen Greenwalt stephengreenw...@gmail.com * It seems to work best to put the entire project (all source, and all build product) under a project folder in the Home directory. * If possible, that should include a *copy *of any external dependencies with environment variables (etc) adjusted accordingly * The project ought to be able to exist in a *bubble* . . . so as to avoid confusion . . . regarding copies of dependencies that might exist in the OS. * Multiple different project versions ought to be able to exist on the same machine without stepping over each other. Martin has covered that in http://www.chromecode.com/2009/12/best-way-to-keep-up-with-gimp-from-git_26.html That's rather easy to follow, shouldn't take more take more than an hour*, even when running into each problem that's commonly encountered on a default Ubuntu install (i.e. no compilers, no developer files, ...) deliberately. *assuming a broadband connection and something around a 2GHz system, otherwise add some buffer for download and compile times * If we do it right, compiling for Linux vs. Windows vs. OSx ought require no more than the flip of a switch. If you've got a build environment set up, it builds with the exact same commands. * Shouldn't we standardize on a common development IDE (like Eclipse)? Shouldn't be necessary - if you make sure that the IDE doesn't interfere with the autotools build setup and/or introduces its own project files, then you may choose any IDE you like. Regards, Michael -- GMX DSL Doppel-Flat ab 19,99 Euro/mtl.! Jetzt mit gratis Handy-Flat! http://portal.gmx.net/de/go/dsl ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On 1/28/11, Kevin Cozens wrote: Eric Grivel wrote: Which is where my thought of a boot camp came in. What if there was a group of potential new developers all struggling with the same learning curve? Wouldn't it be great if an experienced Gimp developer could lead the whole group through a series of exercises, designed to gain experience and understanding of the Gimp and Gegl internals. The new people getting an education on GIMP from some sort of boot camp or QA with the developers should write down the information they learn in a public document. Exactly. Write down the question, write down the answers. When the mass of 'write-downs reaches a particular point, all the notes can be transformed into docs for beginners. Alexandre Prokoudine http://libregraphicsworld.org ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On 01/27/2011 03:56 PM, Stephen Greenwalt wrote: Boot Camp . . . good idea. Docs . . . good idea. Let the newbie's like me (coming out of boot camp) write some of the Docs. Presently I have everything compiled and running under Ubuntu, and I am just reviewing the code to get some sort of context. It is huge. Incredible, actually. Who wrote all of this? Wow. A few comments: * It seems to work best to put the entire project (all source, and all build product) under a project folder in the Home directory. For me, not at all. I put the gimp trunk, the babl trunk, and the gegl trunk under /usr/local and they install into /usr/local/lib, /usr/local/include, and /usr/local/bin. Since I have /usr/local/bin in my path first they're found first. I have my ld.so.conf.d contain a file that puts /usr/local/lib into the ld.so configuration. * If possible, that should include a copy of any external dependencies . . . with environment variables (etc) adjusted accordingly * The project ought to be able to exist in a "bubble" . . . so as to avoid confusion . . . regarding copies of dependencies that might exist in the OS. For me that bubble, is /usr/local * Multiple different project versions ought to be able to exist on the same machine without stepping over each other. I just use the trunk. Note: I wrote a minimal bash script that duplicates (automates) the steps I took to get to the present state. Maybe we could expand on that idea. I just pull the sources down from git, configure and make babl, configure and make gegl, configure and make gimp. All easy and automatic. No script needed. * If we do it right, compiling for Linux vs. Windows vs. OSx ought require no more than the flip of a switch. The Blender folks, and others, are moving in that direction. * Shouldn't we standardize on a common development IDE (like Eclipse)? If I am missing something in that area . . . let me know. I, and a lot of other geeks like me don't use IDEs. Patrick ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
I'd like to write a little bit on some of the topics. *QA* * * As a beginner developer, I'd like to know the place where answers to all my stupid questions are answered. In one place. E.g.: - How to commit to git tree? - What's the best way to submit a patch? When I asked this question on this list, I got several different answers - post to mailing list, add new bug and post a patch, do both, commit to git tree. Of course some of responders wrote that previous responders are wrong and it should be done in other way and they do it so... and so on. - How to download and compile the source without mixing it with normal Gimp installation? - Who is planning Gimp's development? - How do I know what should be done in Gimp? - What are planned deadlines for next edititons of Gimp? Are there any? - an many many many other. I think that for a start a Wiki with QA edited by everyone could be a good solution. If it gets too complicated, it can be split in sections, pages, categories and so on. *Scripts* I think that a good idea is also to include in such Wiki scripts for automated downloading sources and dependencies, updating git tree etc. Maybe not one official script, but several alternatives - each of you writing about his own script says that it does something different than others'. I imagine that such a page with scripts could look similar to a Wiki page with scripts to compile your own PHP source on Dreamhost: http://wiki.dreamhost.com/Installing_PHP5. There is one Main PHP 5 install script http://wiki.dreamhost.com/Installing_PHP5#Main_PHP_5_install_script - just for a newbie, but also several alternative scripts. *IDE* * * Beginner developers that aren't independent and need some support from more experienced developers probably aren't at all used to working on an open source projects, reading through thousands of lines of new code, hundreds of files and directories. Therefore all their experience is working on some projects in Eclipse or other IDEs. I'm one a such person :) And although I tried to use kate, gedit and vim to edit code, it would be much easier for me to setup and use an Eclipse project. If some of you use IDEs, couldn't you just write on the Wiki how to setup a project in a few easy steps? Some of you will write about Eclipse, some about Qt Creator, maybe NetBeans and other. * * *Tutor / supervisor* (an experienced developer) It's a good idea to choose one or two developers responsible for the whole Newbie Developers Boot Camp. Of course the work on QA, submitting scripts, guides for IDEs and maybe some other tips should be done by many developers, but someone should supervise it and make sure that these guides are really helpful for people. From time to time I can see emails Hey, I'd like to help you, but don't know where to start. Some people will get this knowledge on their own (or will try to get it from IRC channels), but some won't and aren't brave enough to spam all developers on a Gimp list with his/her newbie questions. Łukasz Czerwiński ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On Fri, 2011-01-28 at 08:39 +0100, Martin Nordholts wrote: Hmm I don't understand your reasoning. So you rather waste time manually refactoring Java code than using Eclipse' excellent integrated reafactoring features? Yes, though your evaluation of excellent could be argued as subjective. From my perspective, it's a better waste of time than wondering though the plethora of useless features of most IDEs. The best Unix developer I ever met (Ken Witte, Dell Computer) bounced around code 10 times faster than I've ever seen anyone with an IDE. Any tool will do if you know how to use it. It's what you do with it that's important. That's what I mean by don't get bogged down by the tools. -- Michael J. HammelPrincipal Software Engineer mjham...@graphics-muse.org http://graphics-muse.org -- Pessimism: Every dark cloud has a silver lining, but lightning kills hundreds of people each year who are trying to find it. ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On 28 January 2011 17:58, Michael J. Hammel mjham...@graphics-muse.org wrote: On Fri, 2011-01-28 at 08:39 +0100, Martin Nordholts wrote: Hmm I don't understand your reasoning. So you rather waste time manually refactoring Java code than using Eclipse' excellent integrated reafactoring features? Yes, though your evaluation of excellent could be argued as subjective. From my perspective, it's a better waste of time than wondering though the plethora of useless features of most IDEs. The best Unix developer I ever met (Ken Witte, Dell Computer) bounced around code 10 times faster than I've ever seen anyone with an IDE. Any tool will do if you know how to use it. It's what you do with it that's important. That's what I mean by don't get bogged down by the tools. You mean he could compile and edit different with the press of a single button instead of going to console typing make, shifting editors around etc? I use IDE's too and I find them extremely helpful. Using an IDE where everything is accesible from a single program does not seem counterproductive to me. Now if people like to do it the hard way, it's up to them, but trying to force your way to others, because you think it makes you...I don't know, a better programmer(which obviously isn't the case, this guy you mention would FLY if he used an IDE)?It makes me think of an elitist attitude that frankly, is not compatible with me. 'If you can't do it the hard way you're not good enough to be bothered with'. Don't forget that most people do development in their free time and having to learn all these tools just to do something they are already good at(coding) is very annoying. That -is- getting bogged down by the tools. Having people telling them that they are not good enough if they can't do it, is even more annoying. Personally I'm still struggling with git right now and it would be great if I didn't have to surf around for information/tutorials. I have spent a couple of hours trying out things that could have been spent coding. Not everyone has this kind of patience I'm afraid..Take Blender for example. In their development pages they have extremely clear, newbie-oriented instructions on how to download the repository, compile on a platform-by-platform basis etc. Noone there said to people that the best programmers around know how to use svn and and we are not going to bother with you. It's marketing I'm afraid(because I don't like marketing): make it easy for people to come and they'll come. Lucasz, +1 for everything you've written! ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
I'd just settle for good step by step instruction on getting a windows cross compile working. I've had no problem getting from git and compiling for Ububtu in a Ubuntu VM, but whenever I ask how to set up the tools for windows cross-compile I get hand-waving and oh just redefine your compiler environment variables but have never had luck. A few people have posted that they'll put up steps, but Ive not seen anything, yet :( (Still hoping though) -Rob A ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
2011/1/28 Łukasz Czerwiński lc277...@students.mimuw.edu.pl: I'd like to write a little bit on some of the topics. QA I think that for a start a Wiki with QA edited by everyone could be a good solution. If it gets too complicated, it can be split in sections, pages, categories and so on. Such a wiki has been started. Its hosted by me at http://gimp-wiki.who.ee and has been devised as unformal developer space. What it lacks is contributors. Joining easy. A request to me with desired wiki name and email and that's it. If you want to maintain the developer FAQ, please step up. IDE The wiki pointed out above already contains a howto for netbeans. Netbeans is the only ide Ive gotten to actually code-complete for me and allows me to navigate project in the manner I like. And before netbeans Ive used pretty much anything:P Tutor / supervisor (an experienced developer) It's a good idea to choose one or two developers responsible for the whole Newbie Developers Boot Camp. We currently have exactly 2 active developers, me and mitch. And we do try to help out noobs as much as we can at #gimp. This is where the noob bootcamp happened at least for me. And when I joined #gimp for the first time with a bug on my mind my experience with C was very much limited. It has taken over 4 years to get into the codebase and develop a clue and I still have a long way to go. From time to time I can see emails Hey, I'd like to help you, but don't know where to start. Some people will get this knowledge on their own (or will try to get it from IRC channels), but some won't and aren't brave enough to spam all developers on a Gimp list with his/her newbie questions. People who do this Hi, im bored, give me something to hack usually lack the commitment it takes to get into a large code base like GIMP. People who stick around and evolve into developers come to us with an issue or a plan. something they want to fix. And then they read the code and slowly get good enough. Thats the only way I know, that works. Have an idea what you want to change and then do it by asking questions. We like sensible questions. In fact, not asking questions is IMHO a good reason to flunk a student at GSoC mid-term :P If you want answers, join IRC. And stay connected long enough to answer. the last guy who did that(IRC name Acumen) had so bad connection that in the 10 minutes it took for me to see the question his link had already dropped and I had nobody to answer. -- --Alexia PS. Sorry for spam Łukasz, to was meant for the list. ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On Friday, January 28, 2011, 19:08:43, Rob Antonishen wrote: I'd just settle for good step by step instruction on getting a windows cross compile working. I posted the instructions to the list some time ago: http://thread.gmane.org/gmane.comp.video.gimp.devel/19202/focus=19203 -- Jernej Simončič http://eternallybored.org/ Never play Poker with a player named Doc or Ace. -- Stein's Law of Cards ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On 01/28/11 11:22, Patrick Horgan wrote: * Shouldn't we standardize on a common development IDE (like Eclipse)? If I am missing something in that area . . . let me know. I think the only thing you're missing is that there is no need for we to standardise. If you want to use an IDE that does not really affect how others work. I did manage to import gimp as a project into kdevelop at one stage, though later I could repeat the excersize and since I was then less active in coding gimp I did not spend time trying to fix it. /gg/ ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
Hi, why don't put those instractions on the site? Can be a good start point. Massimo Il 28/01/2011 19.20, Jernej Simončič ha scritto: On Friday, January 28, 2011, 19:08:43, Rob Antonishen wrote: I'd just settle for good step by step instruction on getting a windows cross compile working. I posted the instructions to the list some time ago: http://thread.gmane.org/gmane.comp.video.gimp.devel/19202/focus=19203 ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
?ukasz Czerwin'ski wrote: Maybe just a good documentation for GIMP source is needed? Once I tried to patch TinyScheme interpreter to make it work faster. In files I was working on was almost no comments. TinyScheme is another project with little to no documentation. I would be interested to hear about your work on TinyScheme and what documentation would have helped you. Feel free to e-mail me privately or send a message to the tinyscheme-issues mailing list (on SourceForge). Just remove [Gimp-developer] from the subject line. ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On Thu, Jan 27, 2011 at 3:43 PM, Eric Grivel g...@lumenssolutions.com wrote: I am getting the impression that the Gimp project is trapped in a chicken-and-egg problem with regard to attracting new contributors, where the few core developers are too busy maintaining the product to spend a lot of time helping new developers come on board. Gimp is an extremely large and complex system. I am a fairly experienced coder myself, and have recently submitted patches for two open bugs. But ... At this point, knowing how busy the core Gimp developers are, and recognizing that it will take more time for them to walk me through a problem and a solution than it would take them to just fix the issue themselves, I am hesitant to ask for a lot of help. On the other hand, the idea of just delving in and figuring it out myself is quite daunting. Which is where my thought of a boot camp came in. What if there was a group of potential new developers all struggling with the same learning ... This would require some serious commitment of time by one or more of the Gimp developers, and would mean other work wouldn't get done. The potential payoff however in the form of bringing one or more additional Gimp developers up to speed could be significant. I find myself in the same situation. I popped up in late December with an interest in getting GEGL more fully integrated into GIMP (I'd like to see 8+ bpc support), and Øyvind gave me some pointers and partial code for what he wants to happen next (so I'm one of the time sinks he referred to a couple of days ago). I'm still working to figure out the seemingly recursive concepts. Thanks, Pete ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On 01/27/2011 04:43 PM, Eric Grivel wrote: I am getting the impression that the Gimp project is trapped in a chicken-and-egg problem with regard to attracting new contributors, where the few core developers are too busy maintaining the product to spend a lot of time helping new developers come on board. Gimp is an extremely large and complex system. I am a fairly experienced coder myself, and have recently submitted patches for two open bugs. But those were easy ones, not really related to any Gimp structures but basic C bug fixing. I have looked at some of the other outstanding bugs and for most don't have a clue where to start, or how to make sure that my fix fits in the vision, or that it doesn't break something else. At this point, knowing how busy the core Gimp developers are, and recognizing that it will take more time for them to walk me through a problem and a solution than it would take them to just fix the issue themselves, I am hesitant to ask for a lot of help. On the other hand, the idea of just delving in and figuring it out myself is quite daunting. Which is where my thought of a boot camp came in. What if there was a group of potential new developers all struggling with the same learning curve? Wouldn't it be great if an experienced Gimp developer could lead the whole group through a series of exercises, designed to gain experience and understanding of the Gimp and Gegl internals. This would require some serious commitment of time by one or more of the Gimp developers, and would mean other work wouldn't get done. The potential payoff however in the form of bringing one or more additional Gimp developers up to speed could be significant. Eric I think there are some good points in Eric's comments. I don't know quite how to describe it, but if the boot camp were virtual in some manner that others coming along in the future could learn from, but not be buried and obsolete issues a few years from now, that would seem to be the best of all worlds. Perhaps something along the line of a highly structured web-based (not particularly email) discussion forum approach (using out-of-the box forum software) wherein each issue/subject/lesson was a tightly managed thread that allowed on-subject question/answer, but then the net of each answer gets integrated back into the initial lesson, making the lessons stronger over time. And if a thread becomes obsolete due to advances in Gimp, etc., the thread can be archived. Unlike a normal discussion forum, the managers would edit, amplify, rearrange or remove both questions and answers as appropriate to strengthen the lesson. After all, the intent is not a real discussion with expression of opinion, etc., the intent is a directed learning experience in which the teachers and students interact to hone the usability of the lesson. Anything that will help to capture the knowledge and experience of the core developers can only help to keep Gimp vital in the coming years. We never know when any individual will no longer be available in Gimp's future, thus capturing that knowledge is really important. Jay ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On Thu, Jan 27, 2011 at 10:02 PM, Pete Bergstrom petebergst...@gmail.com wrote: On Thu, Jan 27, 2011 at 3:43 PM, Eric Grivel g...@lumenssolutions.com wrote: I am getting the impression that the Gimp project is trapped in a chicken-and-egg problem with regard to attracting new contributors, where the few core developers are too busy maintaining the product to spend a lot of time helping new developers come on board. Gimp is an extremely large and complex system. I am a fairly experienced coder myself, and have recently submitted patches for two open bugs. But ... At this point, knowing how busy the core Gimp developers are, and recognizing that it will take more time for them to walk me through a problem and a solution than it would take them to just fix the issue themselves, I am hesitant to ask for a lot of help. On the other hand, the idea of just delving in and figuring it out myself is quite daunting. Which is where my thought of a boot camp came in. What if there was a group of potential new developers all struggling with the same learning ... This would require some serious commitment of time by one or more of the Gimp developers, and would mean other work wouldn't get done. The potential payoff however in the form of bringing one or more additional Gimp developers up to speed could be significant. I find myself in the same situation. I popped up in late December with an interest in getting GEGL more fully integrated into GIMP (I'd like to see 8+ bpc support), and Øyvind gave me some pointers and partial code for what he wants to happen next (so I'm one of the time sinks he referred to a couple of days ago). I'm still working to figure out the seemingly recursive concepts. Feel free to drop by the #gimp and #gegl IRC channels to ask directed smart questions for understanding the code. Also be aware that some of the existing core contributors both dislike email in the first place, and are cursed by knowledge thus not the best people to write introductions to how things work; new-comers are in a better situation to do this. For the last few years GIMP (and GEGL) have been involved in Google Summer of Code which can be considered some form of such a boot camp - some of the students have also stuck around after their last money from google arrived, the common practice in the last years has also been that the domain experts have not neccesarily been direct mentors for students but meta-mentors, giving guidance on irc in the public channels for any problems that might crop up. /Øyvind Kolås -- «The future is already here. It's just not very evenly distributed» -- William Gibson http://pippin.gimp.org/ http://ffii.org/ ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
Maybe just a good documentation for GIMP source is needed? Once I tried to patch TinyScheme interpreter to make it work faster. In files I was working on was almost no comments. Łukasz Czerwiński ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
Boot Camp . . . good idea. Docs . . . good idea. Let the newbie's like me (coming out of boot camp) write some of the Docs. Presently I have everything compiled and running under Ubuntu, and I am just reviewing the code to get some sort of context. It is huge. Incredible, actually. Who wrote all of this? Wow. A few comments: * It seems to work best to put the entire project (all source, and all build product) under a project folder in the Home directory. * If possible, that should include a *copy *of any external dependencies . . . with environment variables (etc) adjusted accordingly * The project ought to be able to exist in a *bubble* . . . so as to avoid confusion . . . regarding copies of dependencies that might exist in the OS. * Multiple different project versions ought to be able to exist on the same machine without stepping over each other. Note: I wrote a minimal bash script that duplicates (automates) the steps I took to get to the present state. Maybe we could expand on that idea. * If we do it right, compiling for Linux vs. Windows vs. OSx ought require no more than the flip of a switch. The Blender folks, and others, are moving in that direction. * Shouldn't we standardize on a common development IDE (like Eclipse)? If I am missing something in that area . . . let me know. Thanks, Steve Greenwalt (a.k.a. Acumen) 2011/1/27 Łukasz Czerwiński lc277...@students.mimuw.edu.pl Maybe just a good documentation for GIMP source is needed? Once I tried to patch TinyScheme interpreter to make it work faster. In files I was working on was almost no comments. Łukasz Czerwiński ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On 01/27/2011 05:29 PM, Øyvind Kolås wrote: Feel free to drop by the #gimp and #gegl IRC channels to ask directed smart questions for understanding the code. Also be aware that some of the existing core contributors both dislike email in the first place, and are cursed by knowledge thus not the best people to write introductions to how things work; new-comers are in a better situation to do this. For the last few years GIMP (and GEGL) have been involved in Google Summer of Code which can be considered some form of such a boot camp - some of the students have also stuck around after their last money from google arrived, the common practice in the last years has also been that the domain experts have not neccesarily been direct mentors for students but meta-mentors, giving guidance on irc in the public channels for any problems that might crop up. I've tried asking questions in the #gimp channel, but rarely get an answer. I guess the right people would have to be on-line for that to work. I'm thinking that maybe most contributors are in Europe or on the US West Coast. By the time I get off work (US East Coast), it's past midnight in Europe... I'm not saying that the boot camp idea is the best solution. But I do have the impression there is a bit of a problem. I've noticed a lot of complaining about there not being enough people to contribute, and about it taking too much effort to bring new contributors up to speed... Another thought: I do have some technical writing skills (although it is not my profession). If there are areas where I could write documentation, having support from the experts on my many questions, and have it end up on the developer.gimp.org, maybe that would help. Eric ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
Eric Grivel wrote: Which is where my thought of a boot camp came in. What if there was a group of potential new developers all struggling with the same learning curve? Wouldn't it be great if an experienced Gimp developer could lead the whole group through a series of exercises, designed to gain experience and understanding of the Gimp and Gegl internals. The new people getting an education on GIMP from some sort of boot camp or QA with the developers should write down the information they learn in a public document. It will help others that are starting out. The information will be spotty at first but will gradually be filled in to cover most (all?) areas of GIMP over time as more questions are asked and answered. ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On Thu, 2011-01-27 at 16:56 -0700, Stephen Greenwalt wrote: * The project ought to be able to exist in a bubble . . . so as to avoid confusion . . . regarding copies of dependencies that might exist in the OS. Automated builds are typically used to verify dependency issues on multiple platforms and I believe there is work being done on automated builds. However, building from GIT does require building within a sandbox (a local directory tree) where you can build all the required pieces you don't already have or for which you need more recent versions. I talk a little about this on my book's blog: http://www.graphics-muse.org/artistsguide/?p=247 I added some scripts I use to keep my GIT tree build up to date on Fedora to the end of that entry today. * Multiple different project versions ought to be able to exist on the same machine without stepping over each other. There is little to prevent this now. When you build with autoconf you pass --prefix to the configure script for all the prerequisites up to and including GIMP. That gives you the sort of bubble you were talking about, to the extent it covers direct prerequisites for GIMP. If you do this, then running GIMP is just a matter of setting the LD_LIBRARY_PATH and PATH to point to the installation directory (re: what you passed with --prefix). In this way, you can run many different versions of GIMP though not at the same time. The only place they overlap is the .gimp-x.y user directories. This can also be handled with a shell script that points .gimp-x.y to another directory with a symlink before it starts a particular installed development version. * Shouldn't we standardize on a common development IDE (like Eclipse)? If I am missing something in that area . . . let me know. IDE's are crutches. Based on the source tree I don't think the developers use them but I could be wrong. I don't even use IDEs for Java programming. Unless you include cscope as an IDE. Don't bog down in the tools. Open the file and read it. That's how you learn code. -- Michael J. Hammel mjham...@graphics-muse.org / http://www.graphics-muse.org -- Burnout: Attitudes are contagious. Mine could kill you. ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On 01/27/2011 10:43 PM, Eric Grivel wrote: I am getting the impression that the Gimp project is trapped in a chicken-and-egg problem with regard to attracting new contributors, where the few core developers are too busy maintaining the product to spend a lot of time helping new developers come on board. To be honest, I don't recall a single instance of when a question about the code has not been answered (when developers have been around). If you are unable to get in touch with core developers on IRC, feel free to use our mailing list instead. It's just that it has to be new contributors driving the core developers, not the other way around. Gimp is an extremely large and complex system. I am a fairly experienced coder myself, and have recently submitted patches for two open bugs. But those were easy ones, not really related to any Gimp structures but basic C bug fixing. I have looked at some of the other outstanding bugs and for most don't have a clue where to start, or how to make sure that my fix fits in the vision, or that it doesn't break something else. This is exactly why I have been setting up a nightly builder and trying to get everyone to write more regression tests: to make GIMP a less scary project to work on. If people can be confident that if they break something, our nightly builder will discover that, then people wouldn't be so afraid. I believe our biggest development-technical mistake right now is that people don't write regression tests for new functionality they add. It is kind of boring and sometimes hard, but the long term effects of consistently doing this is priceless. Our nightly builder is found at http://gimptest.flamingtext.com:8012/waterfall which curiously enough failed this night to my changes yesterday, but I fixed that already... At this point, knowing how busy the core Gimp developers are, and recognizing that it will take more time for them to walk me through a problem and a solution than it would take them to just fix the issue themselves, I am hesitant to ask for a lot of help. On the other hand, the idea of just delving in and figuring it out myself is quite daunting. Please please please don't hesitate asking for help, the worst thing that can happen is that you are ignored ;) But don't underestimate the value of being able to understand code all by yourself. It takes some practice, but that skill is generic and will make you a better programmer in general. Regards, Martin -- My GIMP Blog: http://www.chromecode.com/ Nightly GIMP, GEGL, babl tarball builds ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On 01/28/2011 12:56 AM, Stephen Greenwalt wrote: It is huge. Incredible, actually. Who wrote all of this? Wow. To see who wrote all this, visit https://www.ohloh.net/p/gimp/contributors A few comments: * It seems to work best to put the entire project (all source, and all build product) under a project folder in the Home directory. * If possible, that should include a /copy /of any external dependencies . . . with environment variables (etc) adjusted accordingly * The project ought to be able to exist in a *bubble* . . . so as to avoid confusion . . . regarding copies of dependencies that might exist in the OS. I've tried quite a few different setups, and I find this to be the best: http://www.chromecode.com/2009/12/best-way-to-keep-up-with-gimp-from-git_26.html * Multiple different project versions ought to be able to exist on the same machine without stepping over each other. As have already been pointed out, you can already do that, just use different --prefix:es * If we do it right, compiling for Linux vs. Windows vs. OSx ought require no more than the flip of a switch. The Blender folks, and others, are moving in that direction. I agree, we should make nightly .rpm, .deb, .exe and .dmg builds. Quite a bit of work left to get there though. * Shouldn't we standardize on a common development IDE (like Eclipse)? If I am missing something in that area . . . let me know. If you want a good IDE I recommend Qt Creator. If I were to start fresh today, I would probably use Qt Creator instead of Emacs. Regards, Martin -- My GIMP Blog: http://www.chromecode.com/ Nightly GIMP, GEGL, babl tarball builds ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On 01/28/2011 05:22 PM, Martin Nordholts wrote: Our nightly builder is found at http://gimptest.flamingtext.com:8012/waterfall which curiously enough failed this night to my changes yesterday, but I fixed that already... It's not curious, it's the beauty of the nightly build. It breaks while it's fresh in your mind, and so more easily fixed. Cameron ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Developer Boot Camp?
On 01/28/2011 05:01 AM, Michael J. Hammel wrote: * Shouldn't we standardize on a common development IDE (like Eclipse)? If I am missing something in that area . . . let me know. IDE's are crutches. Based on the source tree I don't think the developers use them but I could be wrong. I don't even use IDEs for Java programming. Unless you include cscope as an IDE. Don't bog down in the tools. Open the file and read it. That's how you learn code. Hi Hmm I don't understand your reasoning. So you rather waste time manually refactoring Java code than using Eclipse' excellent integrated reafactoring features? Regards, Martin -- My GIMP Blog: http://www.chromecode.com/ Nightly GIMP, GEGL, babl tarball builds ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer