<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 14 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Mark,<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>While the items that you list below seem reasonable we simply do not have the resources to spend to create and maintain this kind of system. In fact the VM was originally created because we could not maintain this sort of information and most of our users wanted to just run the system, not modify it. The system consists of close to a dozen types of dependent data stores and it is quite complicated to get it going.  <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>While our current documentation is limited, we do have examples of people going in and creating significant additions to the system already with what we have. Our bias is that the number of people who really want to do so is limited, though. <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Of course we do not know for sure that more people really want to contribute and would do so if it were easier. We certainly have not been overwhelmed with requests and complaints in this area. <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>To summarize, though our external developer documentation is limited, it is unlikely to become more extensive in the near future.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Ray <o:p></o:p></span></p><p class=MsoNormal><a name="_MailEndCompose"><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></a></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> bioontology-support [mailto:bioontology-support-bounces@lists.stanford.edu] <b>On Behalf Of </b>Mark Gerard<br><b>Sent:</b> Monday, November 17, 2014 5:03 AM<br><b>To:</b> support@bioontology.org<br><b>Subject:</b> Re: [bioontology-support] Bootstrapping the dev environment from scratch<o:p></o:p></span></p></div></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Ray,<o:p></o:p></p><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Thank you for the reply -<o:p></o:p></p><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>In my opinion, if an FOSS project is to attract contributions from external developers, it should (at-least) have three things in place to facilitate contributions and the integration of (those) contributions into the repository.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>1. An <i>externally</i> accessible *up to date* issue tracker<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>The reason you want this to be externally accessible is to allow anyone with interest in the project to take a peek at the available issues and gauge how much they can contribute. This also has the added advantage of improving project visibility, in that interested parties can quickly discover what to work on in the project, without having to ask the current maintainers -<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>The absence of an issue tracker poses some challenges:<o:p></o:p></p></div><div><p class=MsoNormal>- Interested contributors have to track down issues all by themselves (like you asked me to “clicked around” - too much work if you ask me)<o:p></o:p></p></div><div><p class=MsoNormal>- Heightens the possibility of collisions (different developers working on the same issues) due to lack of visibility<o:p></o:p></p></div><div><p class=MsoNormal>- Harms project visibility (the project is opaque from my POV)<o:p></o:p></p></div><div><p class=MsoNormal>- A lot of emails and questions about project status, documentation, how-to etc (because the available documentation is fragmented and not consolidated in one place).<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>An issue tracker also helps with scoping of milestones, tracking of issue progress and references (when was a given bug fixed or feature implemented). This subsequently makes planning/tracking releases easier in the long run.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>2. Quick installation/start up guide<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>This is to enable developers quickly check out the project and try it to see if it is worth contributing to. The Java community nailed this with maven’s convention over configuration approach in that some FOSS projects take 3 steps, for the dev to get started:<o:p></o:p></p></div><div><p class=MsoNormal>- checkout the code base<o:p></o:p></p></div><div><p class=MsoNormal>- mvn clean install<o:p></o:p></p></div><div><p class=MsoNormal>- mvn deploy<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>I personally prefer to set up the project, because then I know what I am dealing with as opposed to downloading a pre-configured VM!<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>3. A transparent process of integrating external contributions<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>This is key because you do not want anyone submitting code to the repository but you want to foster a contribution based model loosely modelled after <i>meritocracy</i>. This means that the most active and interested people in the project are recognized and entrusted with custody of the code base, so that they can <i>review</i> and <i>integrate</i> contributions from new members and/or external contributors.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>The advantages of this are:<o:p></o:p></p></div><div><p class=MsoNormal>- The project can manage code quality easily (not everyone commits)<o:p></o:p></p></div><div><p class=MsoNormal>- Recognizes top contributors based on merit<o:p></o:p></p></div><div><p class=MsoNormal>- Implicitly sets in a motion a training scheme based off a patch submission system<o:p></o:p></p></div><div><p class=MsoNormal>- Anyone can submit a patch (but not all patches will be committed).<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>I might be mistaken or I might not be looking in the right places, but I don’t see these in place. I believe the absence of a contribution infrastructure is a major put off for individual contributors to the project. <o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>It would be nice to have these three things set up because as bio-portal gains more attention, you are going to get more contributors asking the same questions as I am doing. I am willing to spend time helping to set these up, if I can get help from the existing developers.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Mark<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p><div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal>On Nov 14, 2014, at 1:59 AM, Ray Fergerson <<a href="mailto:ray.fergerson@stanford.edu">ray.fergerson@stanford.edu</a>> wrote:<o:p></o:p></p></div><p class=MsoNormal><o:p> </o:p></p><div><p class=MsoNormal style='margin-bottom:12.0pt'>Mark,<br><br>Paul has put together some documentation to get you up and going. We had<br>some laying around but it wasn't really useful for external folks. The new<br>documentation can be found off of:<br><br><a href="https://github.com/ncbo/ontologies_api">https://github.com/ncbo/ontologies_api</a><br><br>We don't make our issue tracker system open but, even if we opened it, it<br>probably would not help too much. Few items are described in enough detail<br>for anyone else to actually understand what is needed.<br><br>Here are two idea for coming up with something to do:<br><br>- Monitor the mailing lists for requests. For example, just this morning<br>someone asked about a third party plugin for MS word that allows people to<br>insert a reference to a BioPortal class into a word document. This plugin<br>is broken because it uses an old version of the API. Revising this to use<br>the new API would be a straightforward task that would be very useful.<br>This would be a great first think to work on.<br><br>- Play with BioPortal. I am sure that if you clicked around in BioPortal<br>for an hour you could come up with a half a dozen ideas for things that<br>would make it better, at least for some users. I suggest only that you<br>contact us to find out if your ideas are already being worked on. For<br>example, we have a revision of the ontology browse page underway already<br>and this should be out in a month or so.<br><br>Ray<br><br>-----Original Message-----<br>From: bioontology-support<br>[<a href="mailto:bioontology-support-bounces@lists.stanford.edu">mailto:bioontology-support-bounces@lists.stanford.edu</a>] On Behalf Of Mark<br>Gerard<br>Sent: Friday, November 7, 2014 1:27 AM<br>To: <a href="mailto:support@bioontology.org">support@bioontology.org</a><br>Subject: [bioontology-support] Bootstrapping the dev environment from<br>scratch<br><br>Hei folks,<br><br>I am interested in contributing to bio-portal in individual capacity. I<br>have been talking with Ray about this and he has signed me up with the<br>various services where I can get started with setting up the dev<br>environments.<br><br>I have two questions:<br>1. Is there a ticket list I can look at to get acquainted with the<br>roadmap?<br>2. Is there documentation explaining how I can set up the dev environment<br>from scratch apart from the VM? I am using a mac running OS Yosemite.<br><br>Thank you<br><br>Mark<br>_______________________________________________<br>bioontology-support mailing list<br><a href="mailto:bioontology-support@lists.stanford.edu">bioontology-support@lists.stanford.edu</a><br><a href="https://mailman.stanford.edu/mailman/listinfo/bioontology-support">https://mailman.stanford.edu/mailman/listinfo/bioontology-support</a><o:p></o:p></p></div></blockquote></div><p class=MsoNormal><o:p> </o:p></p></div></div></div></body></html>