Which programing language better to learn for qiime? Linux or Unix? I have a Mac

I am a novice in programming and working on qiime for my NGS data. Which programming tool would be beneficial to learn? Unix or Linux? Knowing I have a Mac computer. Also, what other skills? I am learning command-line interface, basic python, Spyder IDE. Thanks in advance.

1 Like

I have a Mac too! Both MacOS and Linux are types of Unix operating systems, and you can run the same commands on both like cd, cp, pwd, and mkdir.

Getting experience with unix by using the terminal on your mac is a great place to start. Getting some more experience with python to make graphs is also very good. :snake: :qiime2:



Mac 4 lyfe Mac 4 lyfe


So, I’m with @colinbrislawn about getting experience with your terminal! I think getting comfortable with basic command line is about the best thing you can do. If you’re working on software with a CLI interface, you need to know how to function in the command line. You don’t have to be able ot like, have a conversation or write a for-loop, but you need the bash equivalent of basic manners (Hello, Good Bye, Yes, No, Please, Thank you, excuse me, sorry), which are things like pwd, ls, cd, mkdir, cp, mv, echo, and half a dozen other things that are covered in a good CLI intro.
Here is a cheatsheet from some of the QIIME workshops. There are a couple of good tutorials here and here as well.

But, to me, the three biggest skills you need to get good at bioinformatics aren’t actually programming skills. These are the skills i remind my PhD students about all the time.

  1. Reading error messages. Seriously, this was the thing that took me from novice to at least journeyman (journeywoman? journey person?) programer. If you can read your error message, you can decide if the error was between computer and chair (frequent in my case), if its an issue in your data, or something else. And it lets you work through trouble shoot for yourself and others.

  2. Searching for answers from published resources (stackoverflow, QIIME2 forum, tutorials, etc) because there’s a 95% chance that someone has already had a very similar problem and then applying those results to your problem.

  3. Taking time to look at your data and understand the structure and what it represents. Im a pretty firm believer in working in languages that let your programatically interograte your data and do things like summarize, but if that doesn’t work for you, know how to get your data back out.

Beyond that, I, like Colin, prefer to do some of my more complex things in R or Python. (Python is my first choice, and when I cant get the exact model I need I will then whine, moan, and pay my swear jar before switching to R). I do most of my plotting in python because I like a lot of control.
…But, if you’re careful, I know people who get similar levels of control for many of hte plots they want ot make in things like Tableau or even Excel.


Oh and @ben, PS: Im a Mac person too.


Sorry Ben Do you mean Mac for life?


Ever since working in bioinformatics, the MacOSX and Linux platform have honestly made work so much easier. Some of the same programs have been ported or natively supported in Windows (such as Mothur), but most of the people I know work in Linux or OSX and makes working with these files much easier. Ben