Introduction to Julia

Why Julia?

Julia is an open-source programming language that combines the interactivity of Python, R and Matlab, with the speed of C. Read more about its design principles and why it is good for scienticific applications, including computational biology here:

Interestingly, despite not (yet!) being as popular as Python, ChatGPT performs better on Julia than Python (and R) for Large Language Model (LLM) code generation. Using AskAI, an interface to ChatGPT tailored specifically for Julia-related questions, should make Julia code generation even better.

Software installation

Follow the instructions on the MIT Introduction to Computational Thinking course to install Julia and Pluto.

Create an account on JuliaHub.

To run notebooks locally, fork the BINF301-code repository and follow the installation instructions. Make sure to sync your fork regularly to make sure it remains up-to-date!

Do I have to use Julia?

No.

Assignments can be submitted in any programming language.

The example notebooks are all in Julia, but their combination of text and code should (hopefully) make it easy to translate them to Jupyter, R markdown, or any other notebook/language combination of your choice. Likewise, it should not be too hard to replace JuliaHub by another cloud computing platform. If you do decide to reproduce the course notebooks in another language and/or on another platform, please share your results!