|
Hey there, I’m still glowing from the positive feedback to restarting the YouTube channel. Thank you for all the warm fuzzies and encouragement :) In case you missed it, I’m going to be developing an R package over the coming weeks to teach myself how to build an R package, but to also teach people how a commonly used algorithm in microbial data analysis works and to give more exposure to programming with R. In last week’s newsletter I mentioned need to develop a sense of “taste” when we look at code. Even if we don’t know how to code, I believe there are things you can see in code that tells you there might be problems. The technical jargon for these problems are “code smells”. This week, the code smell I want to share with you is the use of the There are at least three problems I’ve seen with using The first problem with
What happens if you need to run your script on a high performance computer (HPC) cluster? What happens if you give your script to a colleague and encourage them to run it on their computer? So many error messages… Why would this cause problems? An HPC is very unlikely to have a The second problem with A related problem with using What is the alternative? I would strongly encourage housing all of your code, data, and outputs within a single directory that I call the “project root directory”. Within the project root directory you would then have separate directories for code, data, and outputs. All R code would be run from the project root directory. Using a project directory like this you will need to include the path to the data and code relative to the project root directory. If you ever see a path start with a
No need to move in and out of directories. You can read from But how do we get to Brilliant, eh? If you ever wonder where you are you can either use Working relative to your project root directory is a very different way of approaching data analysis. But, it is tremendously powerful. Furthermore, each of the problem cases I described above vanish by viewing your entire project as coming from a single working directory. This week, look at your code. Can you find a script that has multiple WorkshopsI'm pleased to be able to offer you one of three recent workshops! With each you'll get access to 18 hours of video content, my code, and other materials. Click the buttons below to learn more
In case you missed it…I’m in the process of building an R package to implement the Naive Bayesian Classifier that used to be found at the Ribosomal Database Project. This week we got started on the package. Finally, if you would like to support the Riffomonas project financially, please consider becoming a patron through Patreon! There are multiple tiers and fun gifts for each. By no means do I expect people to become patrons, but if you need to be asked, there you go :) I’ll talk to you more next week! Pat |
Hey folks, What a year! This will be the last newsletter of 2025 and so it’s a natural break point to think back on the year and to look forward to the next. Some highlights for me have been recreating a number of panels from the collection of WEB DuBois visualizations on YouTube, recreating plots from the popular media, and modifying and recreating figures from the scientific literature. I guess you could say 2025 was a year of “recreating”! I have found this approach to making...
Hey folks, As 2025 is winding down, I want to encourage you to think about your goals for 2026! For many people designing an effective visualization and then implementing it with the tool of their choice is too much to take on at once. I think this is why many researchers recycle approaches that they see in the literature or that their mentors insist they use. Of course, this perpetuates problematic design practices. What if you could break out of these practices? What if you could tell your...
Hey folks, Did you miss me last week? Friday was the day after the US Thanksgiving holiday and I just couldn’t get everything done that I needed to. The result was an extra livestream on the figure I shared in the previous newsletter. If you haven’t had a chance to watch the three videos (one critique, a livestream, and another livestream) from that figure, I really encourage you to. In the first livestream I made an effort to simplify the panels as a set of facets. Towards the end a viewer...