Get started on Julia Programming!

  • What is Julia Programming?

    Prepared by core Julia developers in collaboration with Julia Computing, Julia is a high-level, high-performance, dynamic programming language. While it is a general-purpose language and can be used to write any application, many of its features are well suited for numerical analysis and computational science.

  • Learning Outcomes

    The course covers the Julia core basics with an overview into the larger Julia ecosystem with the goal of helping programmers leverage their existing programming skills and knowledge seamlessly into the Julia environment. The course also provides a basic overview of the advanced features for high performance computing and the libraries available to the Julia developer as a preparation for more advanced work.

  • Have questions?

    HTML Hyperlinks

    Have questions as you go through the course? The best place to ask is here .

    Include a link back to the lecture you are referring to so folks know what materials you are referencing.

    Learn more about Julia at

Course curriculum

  • 1


    • Introduction

    • How To Install Julia and Jupyter Notebooks

  • 2


    • Variables and Printing

    • Strings

    • Data Structures

  • 3

    Control Flow

    • Tuples

    • Arrays

    • Loops

    • Conditionals

    • Functions

    • Functions Declarations

    • Function Duck Typing

    • Mutating vs Non-Mutating Function

    • Broadcasting

  • 4

    Packages and Plotting

    • Packages

    • Plotting

  • 5

    Advanced Topics

    • Multiple Dispatch

    • Julia is Fast!

    • Basic Linear Algebra

    • Factorizations


Dr. Jane Herriman

Jane Herriman is Director of Diversity and Outreach at Julia Computing and a PhD student at Caltech. She is a Julia, dance, and strength training enthusiast.

Learning Outcomes

Upon completion of the Introductory Julia Course (for Programmers), you'll be able to:

  • The design goals and overall structure of the Julia language.

  • Basic control structures, error and exception handing.

  • Overview of advanced networking and advanced Julia features.

Sign up for 7-days trial.

Interested in learning beyond Julia Programming? Sign up now!