Bioinformatics, computational biology, and coding are skills that you can learn and hone through regular practice. There are many online resources, tutorials, and learning platforms that can help you develop these skills independently. This page collects some of those resources together as a place for you to begin exploring this area.
1 Bioinformatics
- Rosalind - A gamified series of structured problems that become progressively more difficult, and a good way to learn coding as well as bioinformatics - LP
- EMBL-EBI - Introductory bioinformatics material offered by the main European bioinformatics research centre - LP
- Galaxy - Training materials curated by the international Galaxy community - LP
- IBioIC Introduction to Bioinformatics - Materials for a course I presented in 2017-2018 - LP
- Coursera - Online courses in bioinformatics, collated by Coursera - LP
- EdX - Online courses in bioinformatics, collated by EdX - LP
2 Programming
2.1 General
- Software Carpentry - “Software Carpentry has been teaching researchers the computing skills they need to get more done in less time and with less pain,” as the site says. I’m a fully-qualified SWC instructor with ten years’ experience, and it’s a great introduction to key concepts, covering Python and R - LP
- Advent of Code - Yearly Christmas-themed puzzles that you can solve in any way you like - LP
- Free Code Camp - Free training in a number of areas - LP
- Codecademy - A range of free online training courses - LP
- SpaceTraders - Gamified learning through a web API - LP
- CodinGame - A gamified platform that supports learning to code in over 20 languages - LP
- CheckIO - Another gamified way to practice coding - LP
- CodeCombat - Another game-based way to learn and practice coding - LP
2.2 Python
- RealPython - Many tutorials and other learning paths for Python - LP
- PyBites - Python coding challenges, and there are accompanying coaching and podcast materials - LP
- The Flask Megatutorial - A thorough and well-paced Flask tutorial - LP
- [Python Programming and Numerical Methods] - Computers don’t always deal with numbers the way you might expect, and understanding what they actually do will help avoid problems = LP
2.3 R
- What They Forgot to Teach You About R - Assuming they taught you anything about R at all, this is not a bad place to go next - LP
2.4 SQL
- SQL Murder Mystery - Knowing SQL can be incredibly helpful in managing your data in bioinformatics (or any other field), and this is a fun way to learn new things - LP
2.5 CSS
- CSS Grid Garden - CSS comes up an awful lot when developing applications or websites (as it did building this site!), and this is a nice way to understand how the grid layout works - LP
- Flexbox Froggy - Another CSS layout tool practice game, this time for the flexbox - LP
- Flexbox Zombies - As above but with added undead - LP
- Coding Fantasy - Learn Flexbox and Grid at the same time! - LP
- CSS Diner - Gamified CSS selector practice - LP
2.6 JavaScript
- React Megatutorial - A thorough introduction to the React framework - LP
3 Data Analysis and Data Science
- Data Carpentry - A companion programme to Software Capentry (and I am also a fully-qualified DC instructor). Again, it’s a great introduction to key concepts in Python and R - LP
- Kaggle - Online data science courses - LP
- Data Camp - A wide range of data science courses - LP
- DataQuest - Learn data science through a series of challenges - LP
- Coursera - Data science courses available through Coursera - LP
- EdX - A collection of online data science courses - LP
4 Other Computing Skills
- Principles for Writing Clean Code - However you choose to learn to code, in whatever language, encountering and using these principles will make your life so much easier - LP
- How Much Can Your Computer Do In A Second - Some things that seem like they might be hard on a computer are quite easy; some things that seems like they should be easy are actually hard. It’s worth gaining an intuition about the difference - LP
- CryptoHack - Learn modern cryptography while playing games - LP
- Project Euler - A series of mathematical problems to test your coding skills - LP
4.1 Git
- Oh My Git! - Gamified introduction to
git
- LP - GitHub Minesweeper - Learn collaborative
git
project management with a bot - LP - Bitbucket
git
Tutorial - An introduction togit
provided by Bitbucket - LP - Learn
git
Branching - Interactive introduction togit
branching - LP