Great advice! -- John
> On 23 Apr 2014, at 15:49, Tilman Hausherr <thaush...@t-online.de> wrote: > > Although I'm only mentoring Shaola, maybe some of it is useful for Dimuthu as > well: > > From the mentors list: > === > We now are in the community bonding period [1] which lasts until May 19. > During this period students should learn about your project, your release > processes, the Apache Way, how we do things around here, interact with the > community and close any knowledge gaps they might have. [1] > http://googlesummerofcode.blogspot.com/2007/04/so-what-is-this-community-bonding-all.html > === > Here's a FAQ about Apache: > https://www.apache.org/foundation/faq.html > IMHO most important are "What is Apache about?" and "What is Apache not > about?". (My personal addendum to that is "Apache is not like Wikipedia". If > you've ever edited in wikipedia, you'll notice the difference after a few > days) > > https://www.apache.org/foundation/how-it-works.html > The roles are simpler than in that text, all committers here are PMC members, > and the PMC chair (Andreas) is also ASF member. > > Only committers and above have write access to the official PDFBOX > repository. So the best would be to set up a copy on an open source > repository. > https://en.wikipedia.org/wiki/Comparison_of_open-source_software_hosting_facilities > > We're trying to be transparent. So stuff that deals with the implementation > of the project should probably be in the ticket. To see what I mean, have a > look at https://issues.apache.org/jira/browse/PDFBOX-615 and the related > issues. PDFBOX-615 started with "I will be trying to add this functionality > this week" but it became a huge effort by several people that ended 4 years > later :-) See also John's remarks about my code. It annoyed me somewhat at > the beginning, but at the end it resulted in much better code. > > Note that you can edit in JIRA. See an example here > https://issues.apache.org/jira/browse/PDFBOX-2039 > i.e. you can modify previous posts. > > Stuff that deals with PDFBOX in general is best in this (publicly readable) > mailing list. The advantage is that others might answer you (if they want) > when I'm working, sleeping, or not on the internet for whatever reason. Stuff > that deals with java, svn and maven - e-mail me if you don't get the answer > within a few minutes from google or from stackoverflow, i.e. don't waste time > searching. > > Using other libraries: this is OK as long as they have an Apache license or a > compatible license (GPL is not). However we don't use many libraries, > everything is already big, so if you want, ask first. (Sorry if you already > mentioned a library, will reread your proposal again later) Of course it is > always OK to temporary use whatever you want to just test a theory / strategy > / algorithm. > Using other code: the code should rather be your own, but you can use small > excerpts from stackoverflow.com etc but indicate it in your code with a link. > Always comment in the code if you were "inspired" by other peoples code or > algorithms or research papers, just look at the existing shading code for how > I did it. > > Don't forget the Apache header in new modules. > > Your code should work on JDK5, so that we can use it in the 1.8 version too. > So don't use diamond operators, lambda expressions or even String.isEmpty(). > > IDE: I recommend netbeans but you're free to use your own. Just make sure > that svn (and whatever the hoster will use) and maven are integrated in it, > this will make your life easier. > > A personal recommendation from my student days in the 80ies: don't work all > night. Such code was usually found to be poor/worthless after I had the much > needed sleep. > > Andreas: correct me if I forgot something. > > Tilman >