Hi,<div><br class="webkit-block-placeholder"></div><div>The software will be for model validation and inference.....which I&#39;m not to sure on the details, I m hope to understand the methods when I start.</div><div><br><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">1) APIs: The problem with API&#39;s is that they should not change over<br>the long term. I have seen this affect people with the Linux kernel<br>
and with Numerical Python to mainly a limited degree. One of the many<br></blockquote><div><br class="webkit-block-placeholder"></div><div>Would people suggest that the API should be similar to SciPy/NumPy? Would people suggest this as a good example of a bioinformatics API thats easy to use and learn. I was planning on making the API as Py3K compatible as possible, and conforming to PEP8 as far as I can.&nbsp;</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br>2) Tests: Certain basic tests can be useful while developing if core<br>pieces will get changed. The main use that I really see for tests are<br>
for those rare, special and weird cases that you don&#39;t see everyday as<br>well as porting to other environments (32 vs 64 bit). Also, there is<br>some noise on the SciPy list because of the version of NOSE required<br>
to get those tests to work.</blockquote><div><br class="webkit-block-placeholder"></div><div>Hmm, I didnt think about the bit problem, Thanks. What testing suite would people suggest is the best (no crusade/jihadist/flame comments please)?</div>
<div>&nbsp;</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br>3) Developing software. I found that developing for the web (two<br>bioinformatics examples only for reference Student Interface to the<br>
Biology Workbench and NeuroPred) makes many things easier because you<br>are limited to what can be provided. It does keep it easy to use and<br>stay flexible as the User typically just &#39;points and clicks&#39;. You can<br>
also change the underlying code such as fix bugs without having to<br>make extensive releases because it will exist at a single place. Also,<br>anyone with a web connection can use it wherever and whenever they<br>want (obviously assuming server availability).</blockquote>
<div><br class="webkit-block-placeholder"></div><div>This project is going to be distributed as a package and while I totally agree with your points that having a single place would simplify everything (I think this is the future and maybe if web services were used and maintained better, with a better indexing service, this software model would really take off in bioinformatics). From researching Pyrex, it is sub-optimal so we believe that Ctypes will be better. The plan is to restrict the package to release on *nix machines (Linux, BSD and OS X). One of the major requirements for this project will be speed and extendability and ease of use and unfortunately Python only fullfills 2 of these requirements.&nbsp;</div>
<div><br class="webkit-block-placeholder"></div><div>Thanks</div><div><br class="webkit-block-placeholder"></div><div>Nathan</div><div><br></div></div></div>