<div dir="ltr">I think Jmol commands are already sufficiently documented at <a href="http://chemapps.stolaf.edu/jmol/docs/">http://chemapps.stolaf.edu/jmol/docs/</a>. I would suggest something more specific to BioJava.<div><br></div><div>I usually point to our <a href="https://github.com/biojava/biojava/issues?q=is%3Aopen+is%3Aissue+label%3A%22Ideas+for+Student+Projects%22">Ideas for Student Projects</a> list for new contributors, although they do require some bioinformatics knowledge. If you are looking for something less technical, <a href="https://github.com/biojava/biojava/issues/438">438</a> might be reasonable. We also could use some documentation improvements at either the <a href="https://github.com/biojava/biojava.github.io">website</a> or <a href="https://github.com/biojava/biojava-tutorial">tutorial</a>, if any parts of your project would be helpful for a broader audience.<br></div><div><br></div><div>-Spencer</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Dec 5, 2016 at 12:44 PM, bio12058 <span dir="ltr"><<a href="mailto:bio12058@fe.up.pt" target="_blank">bio12058@fe.up.pt</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br>
<br>
Thank you so much for your reply! Meanwhile, we did a pull request about a bug that we tried to solve.<br>
<br>
We have to do a last study on this project. It is about the enhancement of a feature and since we are Java beginners we are trying to find one simple feature that can be improved. We are thinking about putting an information about all the possible Jmol commands that user can write on the structure GUI. What do you think?<br>
<br>
Best regards and thank you for your attention,<br>
<br>
Sofia Silveira<br>
Cristina Martins<br>
José Alves<br>
Margarida Viterbo<span class=""><br>
<br>
Em 21.11.2016 11:10, Spencer Bliven escreveu:<br>
</span><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
• Mode-view-controller (MVC) (For interactive processing)<br>
</blockquote>
<br>
Biojava focuses mostly on providing models. However, the<br>
biojava-structure-gui package has some visualization tools using<br>
Swing. As a library, it's important for BioJava to have strong<br>
encapsulation between the MVC components, since downstream users might<br>
be using a different visualization package. There are a few places<br>
where MVC encapsulation is poor, but these are important issues to fix<br></span>
(e.g. #396 [1])<span class=""><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
• Pipes and filters (or data flow) (For batch processing) - I<br>
think you follow this one!<br>
</blockquote>
<br>
BioJava 4 provided this through IO streams for parsers and writers.<br>
With the move to Java 8, many of the newer APIs in BioJava 5 will<br>
support java.util.stream, which provides filtering and parallelization<br>
explicitly. BioJava is also compatible with Apache Spark, which<br>
enables scaling map/reduce style processing across clusters.<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
• Layered architecture (For complex systems with functionalities<br>
at different levels of abstraction)<br>
</blockquote>
<br>
Supported to some extent by the modular architecture of BioJava.<br>
BioJava is designed to function as a library, so you could view it as<br>
a data modelling layer embedded in some larger application by<br>
downstream users.<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
• Repositories (data centric) (For accessing & manipulating shared<br>
data by multiple subsystems)<br>
</blockquote>
<br>
One of the core goals of Biojava is to provide access to popular<br>
webservices (e.g. NCBI, EMBL, PDB).<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
• Client-server and N-tier systems (For accessing shared data and<br>
resources from multiple locations)<br>
</blockquote>
<br>
This is more provided by downstream systems. For instance, the RCSB<br>
has used a client-server setup for large-scale structural alignments.<br>
The clients perform alignments using biojava, and then report results<br>
back to a central server for aggregation (Prlic et al (2010)<br></span>
Bioinformatics. 26(23): 2983-2985 [2]).<br>
<br>
-Spencer<br>
<br>
Links:<br>
------<br>
[1] <a href="https://github.com/biojava/biojava/issues/396" rel="noreferrer" target="_blank">https://github.com/biojava/bio<wbr>java/issues/396</a><br>
[2] <a href="https://doi.org/10.1093/bioinformatics/btq572" rel="noreferrer" target="_blank">https://doi.org/10.1093/bioinf<wbr>ormatics/btq572</a><br>
</blockquote>
<br>
</blockquote></div><br></div>