--- tags: BMSIS --- # YSP 2021 Unix Introduction!! [TOC] --- >**NOTE** >No installations or prior experience are required. --- ## Meeting times and links | Date | Time | Connect | Video | | -------- | -------- | -------- | -------- | | 14 June | [9:00โ€“11:00am PT](https://www.thetimezoneconverter.com/?t=9%3A00%20am&tz=PDT%20(Pacific%20Daylight%20Time)&) | - | [https://youtu.be/f5stqHzwFHY](https://youtu.be/f5stqHzwFHY) | | 18 June | [9:00โ€“11:00am PT](https://www.thetimezoneconverter.com/?t=9%3A00%20am&tz=PDT%20(Pacific%20Daylight%20Time)&) | [Zoom link](https://us02web.zoom.us/j/83964228911) | - | --- ## Who am I? - [Mike Lee](https://astrobiomike.github.io/research/) - Bioinformatician focusing on microbes - "Non-traditional" academic path - 18-25 years old -> wannabe musician - went to college at 25 - Formal Education - A.S. General Science (Ocean County College, NJ, USA, 2011) - B.S. Biology (Kean University, NJ, USA, 2013) - Ph.D. Biology (University of Southern California, CA, USA, 2018) - Transitioned to exclusively bioinformatics during grad school - Post-doc with NASA Ames doing genomics with microbial isolates recovered from the ISS (2018-2020) - Joined BMSIS and NASA GeneLab in 2019 - I currently work as researcher and GeneLab bioinformatician out of NASA Ames in northern CA ### Feel free to reach out to me anytime ๐Ÿ™‚ * Email: MikeLee@bmsis.org * Twitter: [@AstrobioMike](https://twitter.com/AstrobioMike) * Message or tag me in the BMS slack group --- ## Why learn Unix? Getting familiar with working at a "Unix-like command-lineโ€ is one of the most fundamental skillsets we can develop for bioinformatics, but also much, much more. As Brian Kerrigan (a team member of the original Unix team) puts it in his 2020 book [*Unix: A history and a memoir*](https://www.cs.princeton.edu/~bwk/memoir.html): > "*Unix and its derivatives aren't widely known outside a particular technical community, but they are at the heart of any number of systems that are part of everyone's world. Google, Facebook, Amazon, and plenty of other services are powered by Unix-like operating systems. If you have a cell phone or a Mac, it runs on some version of Unix. If you have gadgets like Alexa at home or navigation software in your car, they're powered by Unix-like systems too.*" Being the framework for so much of our world, learning to speak its language also gives us access to things like remote servers and cloud-computing. It can allow us to access and manipulate large datasets we otherwise couldn't, and use programs we otherwise couldn't. Which brings us back to it being foundational to bioinformatics. Many of the most common and powerful bioinformatics approaches happen in this text-based environment, and having a solid foundation here can make everything weโ€™re trying to learn and do *much* easier. --- **Summary of why it's worth it to learn Unix** - itโ€™s the foundation for most of bioinformatics (and much more) - enables the use of non-GUI (Graphical User Interface) tools - improves reproducibility (GUI's are super-convenient for lots of things, but they are not ideal when it comes to reproducibility) - enables things like quickly performing operations on large files (without needing to read them into memory) - can allow us to programmatically access data - helps automate repetitive tasks (need to rename 1,000 files?) - enables use of higher-powered computers elsewhere (servers/cloud-computing) --- ## An introduction to Unix ### Quick terminology sidebar Here are some terms that are often used interchangeably โ€“ **not** because it's important to remember them or any differences (it's not for most of us). But just to look them over and explicitly note they are often used interchangeably. | Term | What it is | |:-------------:|------------------| | **`shell`** | what we use to talk to the computer; anything where we are pointing and clicking with a mouse is a **G**raphical **U**ser **I**nterface (**GUI**) shell; something with text only is a **C**ommand **L**ine **I**nterface (**CLI**) shell | | **`command line`** | a text-based environment capable of taking input and providing output | | **`Unix`** | a family of operating systems (we also use the term "Unix-like" because one of the most popular operating systems derived from Unix is specifically named as [*not* being Unix](https://en.wikipedia.org/wiki/GNU) ยฏ\\\_(ใƒ„)\_/ยฏ) | | **`bash`** | the most common programming language used at a Unix-like command-line | --- ### Crash course All the material we're going to cover and more can be found at [Happy Belly Bioinformatics](https://astrobiomike.github.io/) ๐Ÿ™‚ - [Unix crash course](https://astrobiomike.github.io/unix/unix-intro) - [Part 1: Getting started](https://astrobiomike.github.io/unix/getting-started) - [Part 2: Working with files and directories](https://astrobiomike.github.io/unix/working-with-files-and-dirs) - [Part 3: Redirectors and wildcards](https://astrobiomike.github.io/unix/wild-redirectors) - [Part 4: Six glorious commands](https://astrobiomike.github.io/unix/six-glorious-commands) - [Part 5: Variables and For loops](https://astrobiomike.github.io/unix/for-loops) --- ## Time permitting (or to visit on our own whenever ๐Ÿ™‚ ) * [An introduction to Scripting](https://astrobiomike.github.io/unix/scripting) * [5 things I wish I knew when I started getting into bioinformatics](https://astrobiomike.github.io/about/) ---