Skip to content

Introduction to Coding

gabiherman edited this page Apr 24, 2020 · 7 revisions

Who this page is for:

- Lab members about to start writing code for themselves or the lab
- New and new-ish programmers

This page describes some of tools and practices you can use when writing any kind of code.

Certainly check out the Software Carpentry Lessons for more advice and options.

Also check out the lab cookie cutter for a template to create coding projects.

Version Control

You need to track your changes as you hack, keep a record of what you did and why, and share your code with others. You need a version control system. I recommend you learn Git and learn how to use github to host your code repository online. You can check out our wiki page Using Git for an overview of a basic workflow and some tips.

Editors / Integrated Development Environments (IDEs)

Learning a fully-featured editor or development environment can be daunting, but I promise you'll thank yourself for it (and so will your hands and wrists). These are tools designed to make writing code easier, and with fewer errors.

  • nano or vi (aka vim). Both are terminal based text editors. Nano is super simple and low tech and will do everything you need, highly recommended if you're just starting out. Vi is general purpose text-editor with a steep learning curve, but a big payoff. Type vimtutor at the command line to start learning. Trust me: it gets better.
  • For general purpose, non-command line, editing Atom is the text editor we have installed on all our workstations and is user friendly.
  • R: RStudio

Shell

R

Python

Clone this wiki locally