Sign up now! · Forgot password?
RSS/Atom feed identi.ca Twitter

Easy access for contributors

This discussion is connected to the gimp-developer-list.gnome.org mailing list which is provided by the GIMP developers and not related to gimpusers.com.

This is a read-only list on gimpusers.com so this discussion thread is read-only, too.

15 of 15 messages available
Toggle history

Please log in to manage your subscriptions.

Easy access for contributors grafxuser 11 Mar 19:19
  Easy access for contributors Alexia Death 11 Mar 19:40
  Easy access for contributors Alexandre Prokoudine 11 Mar 19:44
  Easy access for contributors Aleksandar Kovac 15 Mar 11:08
   Easy access for contributors Alexandre Prokoudine 15 Mar 13:11
    Easy access for contributors Aleksandar Kovač 15 Mar 18:19
     Easy access for contributors gfxuser 15 Mar 19:49
Easy access for contributors grafxuser 12 Mar 17:57
  Easy access for contributors Alexandre Prokoudine 12 Mar 22:38
Easy access for contributors grafxuser 13 Mar 16:20
  Easy access for contributors Alexandre Prokoudine 14 Mar 04:02
Easy access for contributors gfxuser 14 Mar 17:21
Easy access for contributors gfxuser 14 Mar 17:31
Easy access for contributors bootch@nc.rr.com 16 Mar 15:42
  Easy access for contributors gfxuser 19 Mar 06:54
grafxuser
2012-03-11 19:19:22 UTC (almost 3 years ago)

Easy access for contributors

Hi,

it was easier for new developers to contribute, if they had a ready-to-use development environment. Not everybody wanting to help, is a born Linux administrator by himself to setup a suitable programming environment. There are many Windows or Mac users, who'd like to help, but are helpless themselves in setting up the necessary environment and keeping it up to date. How about a pre-built developer virtual machine, created with say SUSE factory and downloadable from the GIMP developers page? I guess, there a projects out there, which already provide the service of building ready-to-use VM's, like Turnkey Linux. Linux distributions nowadays have a package manager to constantly update the VM, so the main effort would be once.

Best regards,

grafxuser

Alexia Death
2012-03-11 19:40:31 UTC (almost 3 years ago)

Easy access for contributors

On Sun, Mar 11, 2012 at 9:19 PM, grafxuser wrote:

it was easier for new developers to contribute, if they had a ready-to-use development environment.

If a developer can't set up his/her own environment, they cant do the job. Period. We don't even accept GSoC students who have not done this before applying. And honestly, its not rocket science. Just stuff you HAVE TO know as a developer. Things gimp depends on etc. There are plenty of advice and scripts for linux and even mac. Build environment on windows is a bit more complex... and is contributing on windows.

Alexandre Prokoudine
2012-03-11 19:44:39 UTC (almost 3 years ago)

Easy access for contributors

On Sun, Mar 11, 2012 at 11:19 PM, grafxuser wrote:

Not everybody wanting to help, is a born Linux administrator by himself to setup a suitable programming environment.

I've yet to hear of a skilled programmer who is not able to setup a build environment.

There are many Windows or Mac
users, who'd like to help, but are helpless themselves in setting up the necessary environment and keeping it up to date. How about a pre-built developer virtual machine, created with say SUSE factory and downloadable from the GIMP developers page?

Sure, make it.

Alexandre Prokoudine http://libregraphicsworld.org

grafxuser
2012-03-12 17:57:18 UTC (almost 3 years ago)

Easy access for contributors

Hi,

thanks for your replies. I'm afraid, I was misunterstood. The point I wanted to outline is not the question, whether a developer can setup his environment. Sure he can, if he/she already has enough knowledge about the underlying operating system and the IDE itself. And I already have seen at least one developer who didn't know much about the IDE and indeed he wasn't a big help.

But my posting was not about developers only. I wrote about people willing to contribute at all, like bug triagers, testers, artists etc. Do they all need to have administrator and developers skills to just start GIMP, try out certain things and tell the results in Bugzilla? - I don't think so. Usually you can't expect them to know what 'Build GIMP' means or even do it.

What I wanted to say is: if you want more people to contribute, make the hurdle as low as possible. It's the difference between inviting people and opening the door or keeping it shut. A pre-built VM is a proposal, which can potential contributors help to simply start working. Maybe I can start there, when I have more time and it's still an open task. Another way are the ready-to-use builds at graphicsall.org. They seem to have quite up-to-date builds of GIMP (although I'm surprised to see a built of 2.7.5, while the latest developer version is 2.7.4...). If you can recommend the work there, it was helpful to place a hyperlink there at your 'Links' page and the 'Get involved'-page. It's the simplest and could help a lot.

Also please keep in mind, that I'm honestly not here to nag, but to support GIMP development. I'm not a native English speaker, so if there are doubts about my words, don't hesitate to kindly ask back.

Best regards,

grafxuser

Alexandre Prokoudine
2012-03-12 22:38:30 UTC (almost 3 years ago)

Easy access for contributors

On Mon, Mar 12, 2012 at 9:57 PM, grafxuser wrote:

But my posting was not about developers only. I wrote about people willing to contribute at all, like bug triagers, testers, artists etc. Do they all need to have administrator and developers skills to just start GIMP, try out certain things and tell the results in Bugzilla? - I don't think so. Usually you can't expect them to know what 'Build GIMP' means or even do it.

What I wanted to say is: if you want more people to contribute, make the hurdle as low as possible. It's the difference between inviting people and opening the door or keeping it shut.

Wrong analogy, I'm afraid :) We don't do packaging. We'll be glad to work with people who want to maintain a PPA that isn't broken, up to date DMG's and so on. But we won't do packaging. We have no time for that.

graphicsall.org. They seem to have quite up-to-date builds of GIMP (although I'm surprised to see a built of 2.7.5, while the latest developer version is 2.7.4...).

What's surprising about that? :) As soon as a release is tagged in Git, the code in Git gets a version bump, so if you run GIMP from Git master, it _will_ claim to be 2.7.5. Only now it probably already claims to be 2.7.6 or 2.8rc.

Also please keep in mind, that I'm honestly not here to nag, but to support GIMP development.

On that my only comment is: I wish you spent as much time contributing as you spent proposing :) But that's just my little personal attack :)

Alexandre Prokoudine http://libregraphicsworld.org

grafxuser
2012-03-13 16:20:22 UTC (almost 3 years ago)

Easy access for contributors

> On that my only comment is: I wish you spent as much time contributing > as you spent proposing But that's just my little personal attack.

On that my only answer is: I think, therefore I am - wrong here. Good bye.

Alexandre Prokoudine
2012-03-14 04:02:37 UTC (almost 3 years ago)

Easy access for contributors

On Tue, Mar 13, 2012 at 8:20 PM, grafxuser wrote:

On that my only comment is: I wish you spent as much time contributing as you spent proposing But that's just my little personal attack.

On that my only answer is: I think, therefore I am - wrong here. Good bye.

Hmmm?

Let me explain. Ideas, however clever they are, have to be implemented. But you see, we have no end of ideas. Everybody seems to know what exactly we should do, yet mostly they never go beyond merely telling us. Which is why while I like people who try to think things through, like you, personally I'm still more in favour of people who get things done.

If you are offended by that, I'm not sure there's anything I can do for you. My intention was not to offend, but to explain that we need people who do things, not talk about them.

Alexandre Prokoudine http://libregraphicsworld.org

gimp-developer-list mailing list
gimp-developer-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gimp-developer-list
gfxuser
2012-03-14 17:21:39 UTC (almost 3 years ago)

Easy access for contributors

First of all I apologize for my overreaction.

I misunterstood your lines and a lot of bad memories came up to me. IMHO e-mail has its weaknesses when trying to express emotions and they became to strong here. I didn't think of this.

Best regards,

grafxuser

gfxuser
2012-03-14 17:31:00 UTC (almost 3 years ago)

Easy access for contributors

First of all I apologize for my overreaction.

I misunterstood your lines and a lot of bad memories came up to me. IMHO e-mail has its weaknesses when trying to express emotions and they became to strong here. I didn't think of this.

Best regards,

grafxuser

Aleksandar Kovac
2012-03-15 11:08:22 UTC (almost 3 years ago)

Easy access for contributors

On 12-03-12 4:19 , grafxuser wrote:

Hi,

it was easier for new developers to contribute, if they had a ready-to-use development environment. Not everybody wanting to help, is a born Linux administrator by himself to setup a suitable programming environment. There are many Windows or Mac users, who'd like to help, but are helpless themselves in setting up the necessary environment and keeping it up to date. How about a pre-built developer virtual machine, created with say SUSE factory and downloadable from the GIMP developers page? I guess, there a projects out there, which already provide the service of building ready-to-use VM's, like Turnkey Linux. Linux distributions nowadays have a package manager to constantly update the VM, so the main effort would be once.

Alexia replied:
> If a developer can't set up his/her own environment, they cant do the job. Period. We don't even accept GSoC students who have not done this before applying. And honestly, its not rocket science. Just stuff you HAVE TO know as a developer. Things gimp depends on etc. There are plenty of advice and scripts for linux and even mac. Build environment on windows is a bit more complex... and is contributing on windows.

Alexia, with all possible and imaginable respect I have for you (I truly do) and all other great girls and guys here: '...Just stuff you HAVE TO know...', sounds like an awful thing to say now that you have mastered it. It sounds as if you're burning bridges with an elitist smirk. I haven't seen a person yet born with knowledge of setting up a development environment. Did you forget? I am sure someone taught you how to do it, and someone showed you how to setup your environment. Maybe you learned on your own, but even so, you read stuff that someone wrote, so that you can learn and create and push the whole thing further than that person before you (which you do admirably!). I am sorry if I said it too harshly, I am trying to get my opinion across.

I believe deeply that one key aspect of open/free paradigm is that we don't close any pathways to learning and knowledge. In this respect, grafxuser's suggestion sounds valid and, it is my opinion, could provide a fundamental perspective on approaching GIMP development for the young blood. What could go wrong? (famous last words, I know, but really...) A ready-made environment could only provide a playground for 'younglings'. They can do whatever they want with it and just maybe even submit an awful patch here and there; or even take the environment apart and learn how to setup their environments. One thing is certain. Those awful patches, they will get better and better with time, and they will be awful no more. They just might be brilliant, who knows? And who knows, maybe there would be a new generation of GIMP developers. Maybe not, but then again, maybe yes.

I am not suggesting a 'GIMP dev school' (not now, at least ;). You are right, there are lots and lots of sources online with info. It might not appear so to you, but to an initiate, that info is a loosely connected network of mixed structured info and personal notes, sometimes obsolete... Since you girls and guys are so far ahead in this, it is astonishingly brave for anyone to dedicate time to at least catch up with you. In my opinion, grafxuser's idea would provide a bit of a shortcut there, wouldn't it? And, considering the correspondences on GIMP mailing list, about the lack of developers, I get the impression that it is not the time to be picky.You know a lot more than me on this topic, do you think that a ready-made environment would not be worth the effort?

Alexandre said:
>Sure, make it.
I do agree with this. Being one of the ignorant, I would like to collaborate with others on this idea.

...

Food for thought... It was mentioned before in the context of GIMP users, but maybe it is applicable to developer community, too... (yahvuu provided a great read considering this: http://www.codinghorror.com/blog/2004/10/defending-perpetual-intermediacy.html ) It seems that GIMP community is missing the 'middle' zone. There are masters up there, and there are people down there that try to initiate themselves in (and often loose steam), and then there is a void in the middle. Hope it does not offend anyone, GIMP community resembles an aging nation, in a way. ;)

Cheers!

Alex

Alexandre Prokoudine
2012-03-15 13:11:51 UTC (almost 3 years ago)

Easy access for contributors

On Thu, Mar 15, 2012 at 3:08 PM, Aleksandar Kovac wrote:

If a developer can't set up his/her own environment, they cant do the job. Period. We don't even accept GSoC students who have not done this before applying. And honestly, its not rocket science. Just stuff you HAVE TO know as a developer. Things gimp depends on etc. There are plenty of advice and scripts for linux and even mac. Build environment on windows is a bit more complex... and is contributing on windows.

Alexia, with all possible and imaginable respect I have for you (I truly do) and all other great girls and guys here: '...Just stuff you HAVE TO know...', sounds like an awful thing to say now that you have mastered it. It sounds as if you're burning bridges with an elitist smirk. I haven't seen a person yet born with knowledge of setting up a development environment.

Let me provide you some background.

I'm actively participating at GSoC as primary and backup admin since 2007. What I've seen is that if you don't go a little hard on students in the beginning and demand that they have a build environment ready prior to beginning of the project, chances of a failure are very, very high. This is why after a while the ready build env + the two-patches rule became a usual thing: projects learnt that the hard way, after repeated failures.

GIMP, for instance, wasn't accepted to GSoC in 2006 or 2007 (can't remember exactly) after it failed two projects out of seven. These days quite a lot of new features come from GSoC students, for some projects GSoC brings over 50% of new features. Would you impose the risk of failure by lowering the bar?

I've personally seen two projects badly affected by the lack of a working development environment. One of the projects failed completely, the other was a moderate success, but the student couldn't deliver everything he was going to. Both of them were a _month_ behind the schedule.

I am not suggesting a 'GIMP dev school' (not now, at least ;).

Actually, it's a good idea. We had a hackfest last year in Germany. If the team can agree on a certain date (we are mostly employees rather than employers), it's doable.

Alexandre Prokoudine http://libregraphicsworld.org

Aleksandar Kovač
2012-03-15 18:19:41 UTC (almost 3 years ago)

Easy access for contributors

On 2012-15-03 10:11 PM, Alexandre Prokoudine wrote:

..
GIMP, for instance, wasn't accepted to GSoC in 2006 or 2007 (can't remember exactly) after it failed two projects out of seven. These days quite a lot of new features come from GSoC students, for some projects GSoC brings over 50% of new features. Would you impose the risk of failure by lowering the bar?

Certainly not. By all means, GSoC should be done to the best judgement of mentors and those who have the experience, of course.

Based on the thread title "[Gimp-developer] Easy access for contributors" and the initial message I was under the impression that we are talking about an idea of offering a /"pre-built developer virtual machine, created with say SUSE factory and downloadable from the GIMP developers page"/ or similarly fashioned dev 'shortcut' and not GSoC. Did I get the context wrong? (wouldn't be the first time) If i did, please excuse me.

If not... With that context in mind, it seemed like a worthy idea to provide such a thing to the public.
Let the people download it, tinker with it in the privacy of their homes, let them play with it on their own and who knows... The ratio of failures would not matter to GIMP at all, but the successes would. It seemed to me that with a solid starting environment + the source (btw, is it open/free already? ;)).... the chances could be more in favor of reinforcements in the dev ranks. Additionally, in this scenario, I can see a lot of beginners asking a lot of beginner's questions and that might be annoying, but on the other hand, it would be easier to spot the promising ones...

Now that I think of it... It's not unlike Apple or other 'entities' offering their dev packages, kits, etc. Out of the multitudes of failures there will be a success. Especially in the case of Apple, you can find a lot of personal blogs and tiny communities all over internet where learners are exchanging info and knowledge about stuff they find fascinating and 'cool' and amazing in toying with Xcode. Stuff that masters might find basic, or perhaps trivial. but still, it is important stuff. When learning, learners will hit the same obstacles the learners before have hit. While solving the problems, they will search the web and correlate easier with the info and explanations by those who are only one step ahead than with the wisdom of the experienced masters and sages... The (social) Force is strong with them younglings.

Sure, a learner could pick an easier target first. GIMP is a fairly big bite, but still, them kids today sure are smart...

So, this downloadable dev environment sounded really fine to me. I don't know whether it would be worth the effort. i.e. I am ignorant on how much effort it requires.

Alex

gfxuser
2012-03-15 19:49:25 UTC (almost 3 years ago)

Easy access for contributors

Hi,

Based on the thread title "[Gimp-developer] Easy access for contributors" and the initial message I was under the impression that we are talking about an idea of offering a /"pre-built developer virtual machine, created with say SUSE factory and downloadable from the GIMP developers page"/ or similarly fashioned dev 'shortcut' and not GSoC. Did I get the context wrong?

No, you just got it right. My initial posting did not address developers only, but also other potential contributors, like testers, bug reporters, artists etc. IMO it's not their business to first learn Linux, to package, to set up an environment, meanwhile see gray hair growing on their heads and - weeks or months later - eventually start trying out Gimp. Judging from my own painful experiences when making my first steps with Linux I see very few chances, that they will be still in the biz then.

If not... With that context in mind, it seemed like a worthy idea to provide such a thing to the public.

I'm glad that somebody else sees these chances. As Alexandre stated here, Gimp developers currently have no capacities for packaging. Presently I'm also not able to do it, but if the idea is good, don't get it lost! Maybe I can return in a few months and see this idea has matured and put more energy into it.

Secondly, in Gimps download area I saw binaries only for the stable branch, if current at all. For version 2.7.5. there are only sources available. The aforementioned people need something do start and go. So I made the proposal (oh no, a proposal... ;-) ) to put a link to graphicall.org at the links page (http://graphicall.org/?keywords=gimp). They have pre-built Gimp packages (without dev environment I suppose, but this would be enough). This seems do be doable and Gimps website maintainers are currently working on a site redesign. It could bring more supporting people into this project without much effort. Maybe you have capabilities to support the team there.

Best regards,

grafxuser

bootch@nc.rr.com
2012-03-16 15:42:21 UTC (almost 3 years ago)

Easy access for contributors

grafxuser:

Could you please expound on your idea? (I don't know much about virtual machines.) What would a "middle level" developer do to get the environment and what would they have to learn about virtual machines and about GIMP development? It sounds like magic to me. I assume that you mean something like: a user downloads and installs one package. The package does not do any building at installation time, all libraries and programs (GEGL, GIMP, etc) are already built in the virtual environment? After that, they can enter a virtual environment where they can hack on GIMP without fear of destroying their production environment. Or do they first need to download the virtual machine package that supports virtual machines? They can destroy and refresh the virtual environment whenever they want, but it may take a few hours to download it again?

Do you have a link to another project that offers a virtual development environment?

gfxuser
2012-03-19 06:54:53 UTC (almost 3 years ago)

Easy access for contributors

At 16.03.12 16:42, bootch nc.rr.com wrote:

grafxuser:

Could you please expound on your idea? (I don't know much about virtual machines.) What would a "middle level" developer do to get the environment and what would they have to learn about virtual machines and about GIMP development? It sounds like magic to me. I assume that you mean something like: a user downloads and installs one package. The package does not do any building at installation time, all libraries and programs (GEGL, GIMP, etc) are already built in the virtual environment? After that, they can enter a virtual environment where they can hack on GIMP without fear of destroying their production environment. Or do they first need to download the virtual machine package that supports virtual machines? They can destroy and refresh the virtual environment whenever they want, but it may take a few hours to download it again?

Do you have a link to another project that offers a virtual development environment?

You can think of a virtual machine (VM) as a 'computer in your computer'. It's a software which emulates a computer. In a VM (the 'guest' computer) you can run programs like on a physical computer. It's a common technique to test programs safely. Your physical computer (the 'host'), which runs the VM, is not touched by the processes in the VM. So you can safely test or modify developer versions of GIMP in the VM without disturbing your productive GIMP version on the host. Even if you destroyed the whole system within the VM, it would have no bearing on the host computer. It's a sandbox. This works vice versa - installing software on your host computer usually doesn't affect the guest environment.

Modern VM software uses savepoints (like in computer games): if you came to a dead end in your VM, you can recover a stable state in a very short time. Depending on the power of your physical computer it's only a matter of up to a few minutes. You wouldn't neither have to download the virtual environment for hours again nor wouldn't you need to sit a whole weekend to recover a broken physical environment in this case.

Also a VM can be used to compare two different GIMP versions, like a developer version and a stable version. This can be useful to check whether open bugs are already fixed. It also has the benefit of a defined environment for contributors. They could help each other easier and in shorter time, no matter which physical environment they own.

To be fair it should be mentioned, that final product tests must still be done in the target environment. So a VM running Linux cannot be used for final tests of GIMPs Windows or Mac versions. Also a VM can do no magic if the host operating system doesn't recognize particular hardware. If some hardware is not recognized by the host operating system at all, the VM wouldn't also be able to use it.

From a technical point of view the VM consists of two parts: the emulator software (the 'hypervisor') and a big data file (the 'appliance'). For a more detailed description see http://en.wikipedia.org/wiki/Virtual_machine, especially the chapter 'Emulation of the underlying raw hardware (native execution)'.

A GIMP specific VM could look like this: Due to license issues the guest operating system needs to be Linux. This also has the advantage to receive distro software updates constantly without much effort.
For testers, bug triagers or people who just want to play with a current GIMP: a pre-built, fully operative GIMP with documentation. For developers, authors, translators: a ready-to-use development environment with the GIMP sources und developer documentation. For all: an IRC software and a browser with bookmarks to important GIMP sites: GIMP.org, GIMPs G*+-site, Bugzilla etc. To be independent from specific hypervisor products, the VM should be in an open file format, like OVF
(http://en.wikipedia.org/wiki/Open_Virtualization_Format) This is a first proposal. Detail questions need to be discussed separately.

A user would 1. download and install the hypervisor software 2. download the GIMP appliance and import it into the hypervisor 3. boot the GIMP-VM and start playing or working

Well-known hypervisor products are Virtualbox, VMWare or Virtual PC. There are already some projects offering appliances, for instance the VMWare Marketplace, Turnkey Linux, Suse Studio Gallery or the Oracle Developer VMs. Using these keywords a search engine will show the right addresses among the first results. Maybe there is already something that can be used out-of-the-box or with minor modifications.

Greetings,

grafxuser