5 tips for better bioinformatics software
Ғылым және технология
What I learned from my own mistakes and what I do now to create better bioinformatics software.
1. Use git and GitHub, even for your pile of scripts
2. Dogfood it
3. Employ unit tests and test-driven development
4. Make it modular and usable in more ways
5. Recruit your peers for code and design reviews
Bonus tip: Leave breadcrumbs in your file folders
Пікірлер: 33
I remember you creating a thread on Twitter about projects undergrad and early grad students can do, can you please make a video with a brief explanation of some of the project ideas. Highly appreciate the resources on bioinformatics you have been releasing on this channel.
@souvadrahati
3 жыл бұрын
Love you Bissu :))
Welcome back! It's pleasure to see you uploading videos in 2021!
PhD student studying DNA replication and chromosome dynamics in E.coli here, I remember watching your videos before I even started my PhD and you have really helped me when I started learning R. So a big thank you from me!
Thanks for uploading, Really happy to watch this video!
Really nice video, good tips overall. Indeed unit testing is a must this days :D Thanks!
I’m a master student in Istanbul/ Turkey I’m thinking to apply for bioinformatics phd I did some bioinformatics in my thesis Also I enjoy your videos keep going Waiting for you to post about project ideas for phd
Love this channel and I'm just thankful I found this! You are doing an amazing job, and the information you are giving out like this, it's simply amazing. Thank you :)
Is really one of my interested field I like on bioinformatics Software Project Management Thanks a lot for that .
Hi just found this channel, just wanted to say this video has been really helpful and looking forward to more content! :)
Very glad to see again your videos
Thank you for this video!
This channel has the best name I ever see!
Thank you very much!
I loved the video!, One day I'd love to code with you!
Awesome video, thanks for these tips. I'm still entering into the field of bioinformatics, but I've picked up on some of these through the courses I've finished, while some of them have been kind of intuitive (because I've made mistakes previously by not doing them). E.g. GitHub definitely proved to be helpful and makes life easier (although it required the initial effort to just start using it), Tests were highly emphasized by the professors, while breadcrumbs turned out to be huge timesavers once I return to old code after some time (I generally implement them as additional comments explaining a bit more in details what to do, etc., with supporting files if necessary). I haven't thought about dogfooding before - it is logical but also leaves me a bit confused - what is the alternative? Writing software that I am not planning to use? Recruiting peers for code/design review - I generally bother my cousins who are much more experienced coders than I am, but they are not from the field of bioinformatics, so I would probably want to improve on this point :)
Thanks mam😊🙏❤️
Hello Maria, I'm a sophomore currently pursuing undergrad in Bioinformatics along with a minor in Computer Science. I've a great passion for Software development and I'd like to combine it with my major... Could you please share a complete roadmap for Bioinformatics software development?? Since I've researched a lot regarding it still couldnt find a proper roadmap
@24:50 -> workflow managment e.g. Nextflow, Snakemake
@smllmp
3 жыл бұрын
Or SciPipe :)
@brucemoran1063
3 жыл бұрын
@@smllmp as long as it's re-entrant ;o)
@smllmp
3 жыл бұрын
@@brucemoran1063 If what you mean is that workflows can be re-run without re-executing already finished tasks, then YES, definitely! :) Also, full control over how filenames are produced based on input filenames, parameters etc, meaning you can adapt it to your favourite folder organisation, and that it is easy to manually dig around and inspect intermediate output (while at the same time not *scheduling* based on file names, which easily can get really complex). Also with a complete hierarchical audit log in JSON format for every file produced by the workflow, which can be converted to HTML, or a bash script to reproduce the corresponding file. Etc etc.
Thanks for the video. I have moved from doing a PhD in organic chemistry to building software tools for my current field (not sure if I should call myself a bioinformatician as yet or not). TDD is really intimidating as a beginner but I definitely see the value. Any advice in whether you should start with unit tests or end-to-end tests first? I feel end-to-end tests replicate more of how I currently test my applications i.e. manually checking them in a browser. Also it is so difficult to have peers give feedback in academia for your tool itself let alone the code. If you could possibly share your experience/tips on overcoming this?
Nice video. Question: do you invest in genomics stocks? thoughts?
Hey Maria, I was wondering if it is a good idea to pursue a MSc. in Bioinformatics as a graduate in Chemical Engineering (B.Eng.)? I love biotechnology / gene editing / plant DNA replications.. but I am not sure about Bioinformatics specifically.
Could you please suggest some good resources to learn genomics(Computational Genomics)
Oh, I'm definitely going to use that history > README.txt trick :0 Thank you! As a corollary to your point on unit testing and test-driven development: functional programming! (Where possible, of course) You make a very good point for unit testing regarding catching edge cases in your data, but I would consider it almost as important to design the program to eliminate as much referential ambiguity as possible. Of course it's not like we're all using haskell here, and I'm not suggesting we do, but referential transparency has gone a LONG way towards keeping my code easy to understand, even as it grows in complexity. Love your videos, Maria! Keep up the great work! :)
Hi Maria. Do you know biostatisticians or how do they fare? I really do love statistics and biology so I think that'd be the right option for me
How do you handle these complicated web-deployments? As a bioinformatician, I am cool to write backend functions, but web deployment drives me crazy (docker, https, amazon aws etc...).
what is the best country, or university, to study master in bioinformatics from it
I want mam phd in Bioinformatics give me some suggestion , what is career after bioinformatic
Is it possible to be a self taught bioinformatician?
Hi mam, I'm studying B.tech in Biotechnology, with Python programming knowledge. Can I get a job as a Bioinformatician?