I think this is where we differ about validation. What you and Ann describe is "testing" or "debugging". For me, that is not validation, and it is definitely part of the coding process and needs to be learned and practiced. But without a formal mathematical proof, the validation tends to be data and use case specific.
So taking a piece of code "validated" in the manner and then applying to a completely different type of data and/or use cases is not a good thing (an example would be trying to use UMAP instead of PCA in a morphospace reconstruction. it is valid, but incorrect). That's why I said the onus is on the user. On Sunday, January 5, 2025 at 8:19:45 PM UTC-8 Soda, Kenneth Prof. wrote: > Hello Everyone, > > As someone who spends a lot of time thinking about scientific programming, > both as a researcher and an educator, I think you are all correct. > Programming is a valuable skill set that does empower researchers to have > greater flexibility in how they analyze their data and that can contribute > to greater transparency in the scientific process. > > However, my two cents is that a strong scientific *programmer* should also > be a strong scientific *validator*. I encourage my students to have a > healthy skepticism towards the code that they write and to independently > validate that the code is operating as it was intended to operate (e.g., > through simple test cases that the coder completes using pen-and-paper). > Actually, I would say more of my research time is spent validating my code > than actually writing it. Some research institutions have entire teams > fully devoted to code validation, and some journals, such as the Journal of > Statistical Computing, ask their reviewers to review not only the written > manuscript but also whether the code is correct (i.e., to validate the > code). > > Even if you do not know how to code, validation is something that you can > consider looking for when deciding whether to use software, be that > software open-source code or a GUI. Does the author or company show that > the code has gone through the validation process? Did the author submit a > peer-reviewed publication where the software's correctness was validated? > Consider putting the software that you use through the same thought process > as you would an article that you read because software, like an article, is > a scientific contribution. > > In the end, I think we all want the same thing, that our programs provide > reliable research results, just as we would want reliable researcher > results from a wet lab or field experiment. > > That's how I see it anyway, > > K. James Soda (He/Him/His) > ############################################## > Assistant Professor of Mathematics and Data Science > Department of Mathematics and Statistics > Quinnipiac University > Hamden, CT > ############################################## > ------------------------------ > *From:* [email protected] <[email protected]> on behalf of > Murat Maga <[email protected]> > *Sent:* Sunday, January 5, 2025 10:04 PM > > *To:* Morphmet <[email protected]> > *Subject:* Re: [MORPHMET2] MorphoJ ProcrustesANOVA > > CAUTION: This email originated from outside of the organization. Do not > follow guidance, click links, or open attachments unless you recognize the > sender and know the content is safe. > > Dear Ann, > Not sure what you mean by not validated? What is the validation of a > t-test function in R or any other software library? Validation is the > responsibility of the person using the tools, not the developers. > Open-source tools make this validation for more simple, since if you have > any concern you can look under the hood. Evaluate the code line by line and > then if you find an issue you can easily take it up with the developers. > > In closed-source software this is almost near impossible. I would argue > this is a far more superior method of "validation" then to appeal to the > authority. > > On Sunday, January 5, 2025 at 6:46:15 PM UTC-8 Ann Ross wrote: > > Hi All, > The one thing to keep in mind that all this coding is important but not > validated. One needs to trust the results and if not validated leaves a lot > of questions. This is from a forensic perspective. > Ann > Ann H. Ross, Ph.D., D-ABFA > Ann H. Ross, Ph.D., D-ABFA > > > On Jan 5, 2025, at 7:48 PM, 'Adams, Dean [EEOB]' via Morphmet < > [email protected]> wrote: > > > > Marianna, > > > > I completely understand that R and other coding approaches can seem > daunting. But I agree 100% with Murat, and encourage you and others to > steer into the wind! Coding is empowering! > > > > First, a bit of R-coding allows you to improve your data manipulation and > curation. This helps with scientific repeatability, compliance with journal > requirements (which increasingly require one to submit curated data and > scripts to a public repository), and basically enhances and encourages > open-source science. > > > > But more importantly, coding empowers you as a scientist. By moving to R, > you remove yourself from the restraints that exist with canned software, > whose options are necessarily limited by the buttons and options that the > user has available to point-and-click. In essence, while prepackaged > software is easy to use, it limits thinking and creativity by restricting > > one’s analysis to those options that the software happens to have. > > > > The unfortunate outcome of such canned software is that our GM literature > becomes filled with many studies of similar analyses: not because those > biological topics are inherently interesting per se, but because that is > what the software happens to allow. This is the analytical version of what > one of my mentors (Larry Slobodkin) once called ‘intellectual painting by > numbers.’ I seriously hope that our field can do better now in the 21st > century. > > > > My message: learning a bit of code breaks this cycle, and frees one to > investigate the questions that one actually wishes to explore, not just > those for which canned software has already provided. I strongly encourage > you (and others) to learn a bit of R, Python, or some other language so > that your creative science is not restricted! > > > > Best of luck in your journey. > > > > Dean > > > > Dr. Dean C. Adams > > Distinguished Professor of Evolutionary Biology > > Department of Ecology, Evolution, and Organismal Biology > > Iowa State University > > https://faculty.sites.iastate.edu/dcadams/ > > phone: 515-294-3834 <(515)%20294-3834> > > > > *From:* [email protected] <[email protected]> *On Behalf Of > *Murat Maga > *Sent:* Sunday, January 5, 2025 12:29 PM > *To:* Morphmet <[email protected]> > *Subject:* Re: [MORPHMET2] MorphoJ ProcrustesANOVA > > > > Dear Marianna, > > > > A quick comment: Instead of trying to work this with PAST, I highly > encourage you to spend that time trying to do the same in R using geomorph, > or other shape analysis libraries. Yes, it will probably take longer, yes > it will be somewhat bumpy road initially. But you will be much better set > for the next challenge. Graphical user interface applications are good up > to a point (for common tasks). And I am telling you as someone who is > developing UI based morphometrics analysis. > > > > Most often in biology, you will have to customize your analysis to the > specific question you are trying to answer. This is best done via scripting > in a flexible programming environment (whether that's R or Python or some > other language is irrelevant). There are tons of resources and a very > supportive community to help you with your challenges. Going forward, all > fields of biology will be more computational not less, and the sooner you > start warming up to the idea it will be better for your career. > > > > Your future self will thank you for that decision. > > > > M > > > > On Sunday, January 5, 2025 at 5:05:47 AM UTC-8 [email protected] wrote: > > Thanks everyone... I suspected this was the case but wanted to be sure I > wasn't missing anything. I'm going to look into using PAST first, since I'm > not the most comfortable in R. > > On Saturday, January 4, 2025 at 5:34:57 AM UTC-8 Adams, Dean [EEOB] wrote: > > In R use geomorph. > > > > Dean > > > > Get Outlook for Android <https://aka.ms/AAb9ysg> > ------------------------------ > > *From:* [email protected] <[email protected]> on behalf of > alcardini <[email protected]> > *Sent:* Friday, January 3, 2025 11:56:13 PM > *To:* [email protected] <[email protected]>; morphmet2 < > [email protected]> > *Subject:* Re: [MORPHMET2] MorphoJ ProcrustesANOVA > > > > Dear Marianna, > > the tests are parametric in MorphoJ as far as I know. > > One can do the permutations in R. If you have also a main factor, however, > it is a bit convoluted to design it (or at least I found only a convoluted > way of doing it). You'll find a description in a footnote in Table 1 of > https://europeanjournaloftaxonomy.eu/index.php/ejt/article/view/2527 > > If you're analyzing symmetry/asymmetry, the 'trick' I used needs to be > reworked and may not work but it should be possible to do an equivalent > analysis in one of the morphometric packages (morpho, geomorph, not sure > about momocs). > > I am sure a skilled R coder will be able to suggest better ways. > > Good luck. > > Cheers > > > > Andrea > > > > On Sat, 4 Jan 2025 at 04:37, [email protected] <[email protected]> > wrote: > > Dear morphmet members, > > I expect this will be a relatively easy question. > > Does the Procrustes ANOVA in MorphoJ use permutations? I don't see it as > an option, though I see it in regression and in Matrix correlation. > I expect that since there isn't an option for it, then it is not a > permutation-based test, but it seems so odd that it wouldn't be. > > I can't find it in the documentation, and I'm convinced it must be there > and I'm missing it. If there is something that discusses this, could you > kindly point me to it. > > Thanks in advance, > > Marianna C. > > -- > You received this message because you are subscribed to the Google Groups > "Morphmet" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion visit > https://groups.google.com/d/msgid/morphmet2/549e6df3-2eaf-46cc-9b34-f30f5caf2777n%40googlegroups.com > > <https://groups.google.com/d/msgid/morphmet2/549e6df3-2eaf-46cc-9b34-f30f5caf2777n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > > -- > > E-mail address: [email protected], [email protected] > WEBPAGE: https://sites.google.com/view/alcardini2/ > or https://tinyurl.com/andreacardini > > -- > You received this message because you are subscribed to the Google Groups > "Morphmet" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > > To view this discussion visit > https://groups.google.com/d/msgid/morphmet2/CAJ__j7O9uG-7sAMvKFZVmm3EgojQU-o-Hs_oZSbVMhTE9zLsQw%40mail.gmail.com > > <https://groups.google.com/d/msgid/morphmet2/CAJ__j7O9uG-7sAMvKFZVmm3EgojQU-o-Hs_oZSbVMhTE9zLsQw%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > > -- > You received this message because you are subscribed to the Google Groups > "Morphmet" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion visit > https://groups.google.com/d/msgid/morphmet2/5a1598a7-96b9-4cd4-9a1e-ec45c61fcc64n%40googlegroups.com > > <https://groups.google.com/d/msgid/morphmet2/5a1598a7-96b9-4cd4-9a1e-ec45c61fcc64n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > -- > You received this message because you are subscribed to the Google Groups > "Morphmet" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > > To view this discussion visit > https://groups.google.com/d/msgid/morphmet2/CO6PR04MB84274559E14A8D833235AD6FA2102%40CO6PR04MB8427.namprd04.prod.outlook.com > > <https://groups.google.com/d/msgid/morphmet2/CO6PR04MB84274559E14A8D833235AD6FA2102%40CO6PR04MB8427.namprd04.prod.outlook.com?utm_medium=email&utm_source=footer> > . > > -- > You received this message because you are subscribed to the Google Groups > "Morphmet" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion visit > https://groups.google.com/d/msgid/morphmet2/27206e9b-5373-4c01-8a80-99a007c8e8c4n%40googlegroups.com > > <https://groups.google.com/d/msgid/morphmet2/27206e9b-5373-4c01-8a80-99a007c8e8c4n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "Morphmet" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/morphmet2/75903bc0-fb1c-4752-82db-9eef850aea18n%40googlegroups.com.
