-
Notifications
You must be signed in to change notification settings - Fork 2
/
howto.qmd
95 lines (63 loc) · 7.16 KB
/
howto.qmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
# How to X
## Get started
If you are new to computational biology and R programming, join the `#bioinfo-primers` channel. Use the `#help-x` channels to ask for help/answer others' questions on R/Py programming, shell scripting, version controlling, or anything else that's general and not project-specific. Use the corresponding `#proj-x` channels for all project-related questions.
Check out the Slack tips in the pinned posts in [#help-](https://jravilab.slack.com/archives/CATMCKFT9)proj_management to get oriented since you are new to Slack (the channel used to be `#howto-slack`)!
To re-familiarize yourself with R/Python/Unix, check out these two resources in addition to Slack \| [CompBio gists](https://github.com/jananiravi/compbio-gists) and [R-Ladies East Lansing](https://github.com/rladies-eastlansing). If you are new to R-Ladies Aurora, R-Ladies East Lansing, and Women+ Data Science, check them out and join [Meetup-RLA](https://meetup.com/rladies-aurora)/[Meetup-RLEL](https://meetup.com/rladies-eastlansing) and their [Discord](https://bit.ly/rladies-aurora-discord)/[Slack](https://rladies-eastlansing.slack.com/) to remain apprised of upcoming events and to connect with the local R and data science communities.
💡*If you find other useful resources, please add them to [this list](https://github.com/jananiravi/compbio-gists) (or share them with me).*
## Code
- [Write, work with, and manage source code and data](https://github.com/JRaviLab/group/blob/master/docs/howto_write_source_code.md)
- [Prepare for and carry out code review](https://github.com/JRaviLab/group/blob/master/docs/howto_do_code_review.md)
- [Share data](https://github.com/jtleek/datasharing)
- [Write an R package](https://github.com/jtleek/rpackages)
- [DBMI software engineering team tips & tricks blog posts](https://cu-dbmi.github.io/set-website/blog)
### Learn R
To learn R, I would recommend getting started with the pinned posts in [#courses-primers](https://jravilab.slack.com/archives/CARJ72W3U).
A couple of helpful GitHub repositories - <https://github.com/jananiravi/workshop-tidyverse> (Intro to `R's tidyverse package` --- handy to learn right away) - Other R workshop materials from our R-Ladies East Lansing chapter: <https://github.com/rladies-eastlansing> - Interactive tutorials with [learnr](https://rstudio.github.io/learnr/) & [swirl](https://swirlstats.com/). - [R for Genomics from Data Carpentry](https://datacarpentry.org/R-genomics/index.html) - [R on HPC](https://github.com/JRaviLab/group/tree/master/resources-courses/r-on-hpc)
- Coursera
- [Intro to R programming and tidyverse](https://www.coursera.org/learn/r-programming-tidyverse)
- [Data visualization and Dashboarding with R specialization](https://www.coursera.org/specializations/jhu-data-visualization-dashboarding-with-r)
- [Getting Started with Data Visualization in R](https://www.coursera.org/learn/jhu-getting-started-data-viz-r)
- ... and more \| explore by topic, duration, skill-level
📌 Go-to books (also in pinned posts on Slack)
- [R for Data Science](https://r4ds.had.co.nz/) (for tidyverse and such)
- [Hands-On Programming with R](https://rstudio-education.github.io/hopr/) (for base R) Intro to Git, GitHub resources
### Intro to Machine Learning
- YouTube Videos
- [Machine Learning from Scratch by AssemblyAI](https://www.youtube.com/watch?v=p1hGz0w_OCo&list=PLcWfeUsAys2k_xub3mHks85sBHZvg24Jd)
- [MIT Deep Learning Course](http://introtodeeplearning.com/)
- [Deep Learning by Assembly AI](https://www.youtube.com/watch?v=dccdadl90vs&list=PLcWfeUsAys2nPgh-gYRlexc6xvscdvHqX)
- [Understanding Tensors by Dan Fleisch](https://www.youtube.com/watch?v=f5liqUk0ZTw)
- [Understanding Neural Networks](https://www.youtube.com/watch?v=aircAruvnKk)
- [Basic Computer Parts Explained](https://www.youtube.com/watch?v=ExxFxD4OSZ0)
- Articles
- [Transformers](http://jalammar.github.io/illustrated-transformer/)
- Coding Practice Sites
- [LeetCode](https://leetcode.com/)
### Learn Git/GitHub
- <https://happygitwithr.com/> Happy Git and GitHub for the useR (connecting git/GitHub w/ R)
- [Git and GitHub learning resources](https://docs.github.com/en/get-started/quickstart/git-and-github-learning-resources) from GitHub
- [Git 101](https://product.hubspot.com/blog/git-and-github-tutorial-for-beginners)
- [Coursera Intro to Git and GitHub course](https://www.coursera.org/learn/introduction-git-github)
## Access HPC, servers
For computing that requires high performance hardware and computing clusters, we utilize two different remote servers.
### JRaviLab server
- A single high performance machine used only by our group.
- To request access, contact the system administrator `[email protected]` by sending him your CU username (e.g., the CU auto-generated `ravijan` instead of `[email protected]`) and a brief message that you will need access to the server. CC janani.ravi\@cuanschutz.edu, so they can both verify your access.
- If you are new to remote server work, then it maybe helpful to learn about using an [ssh config](https://linuxize.com/post/using-the-ssh-config-file/) for managing your remote hosts.
### Alpine HPC
- Alpine is the HPC cluster for all the University of Colorado campuses, including Anschutz.
- There is extensive [documentation about getting setup](https://curc.readthedocs.io/en/latest/clusters/alpine/index.html)
- At the moment, a [web shell](https://ondemand-rmacc.rc.colorado.edu/pun/sys/shell/ssh/default) is the only access option for Anschutz members. This is different from a typical SSH login, and it is best to follow the official, latest Alpine documentation.
Whenever possible, we highly recommend using the [VSCode extension](https://code.visualstudio.com/docs/remote/ssh) which provides an IDE on the remote host without having to worry about server-side installation of other IDEs like RStudio or Jupyter.
### Use VPN
<https://www.ucdenver.edu/offices/office-of-information-technology/software/how-do-i-use/vpn-and-remote-access>
## Read/write/present
- [Read papers](https://github.com/JRaviLab/readingpapers)
- [Make a poster](https://github.com/JRaviLab/group/blob/master/docs/howto_make_a_poster.md)
- [Write a paper](https://github.com/JRaviLab/group/blob/master/docs/howto_write_a_paper.md)
- [Writing in the Sciences on Coursera](https://www.coursera.org/learn/sciwrite)
## Plan your semester/year
[Templates](https://github.com/JRaviLab/group/tree/master/docs/templates) on yearly/[semester planning](https://github.com/JRaviLab/group/blob/master/docs/Yearly-Planning-Document.pdf) and professional development are available [here](https://github.com/JRaviLab/group/tree/master/docs).
## Others
- [Career development week](https://github.com/JRaviLab/group/blob/master/docs/career_dev_week.md)
- [Remote work](https://github.com/JRaviLab/group/blob/master/docs/howto_work_remotely.md) \| [CU remote work policy](https://www.ucdenver.edu/docs/librariesprovider284/default-document-library/4000-human-resources/4032---alternative-schedules-and-remote-work-arrangements.pdf?sfvrsn=3ee7f3ba_2) \| [CU DBMI remote work agreement](https://app.smartsheet.com/b/form/f5c5dd3f01dc4eefb3711a4fce6955fe)