subject
Intro

Coursera: Julia Scientific Programming

 with  Juan H Klopper and Henri Laurie
This four-module course introduces users to Julia as a first language. Julia is a high-level, high-performance dynamic programming language developed specifically for scientific computing. This language will be particularly useful for applications in physics, chemistry, astronomy, engineering, data science, bioinformatics and many more. As open source software, you will always have it available throughout your working life. It can also be used from the command line, program files or a new type of interface known as a Jupyter notebook (which is freely available as a service from JuliaBox.com).

Julia is designed to address the requirements of high-performance numerical and scientific computing while also being effective for general-purpose programming. You will be able to access all the available processors and memory, scrape data from anywhere on the web, and have it always accessible through any device you care to use as long as it has a browser. Join us to discover new computing possibilities. Let's get started on learning Julia.

By the end of the course you will be able to:
- Programme using the Julia language by practising through assignments
- Write your own simple Julia programs from scratch
- Understand the advantages and capacities of Julia as a computing language
- Work in Jupyter notebooks using the Julia language
- Use various Julia packages such as Plots, DataFrames and Stats

The course is delivered through video lectures, on-screen demonstrations, quizzes and practical peer-reviewed projects designed to give you an opportunity to work with the packages.

Syllabus

Welcome to the course
A warm welcome to Julia Scientific Programming. Over the next four weeks, we will provide you with an introduction to what Julia can offer. We have created a course which we hope will allow you to learn the basics of the language, and stimulate your imagination about how you can use Julia in your own context. This course is all about you exploring Julia - we can only demonstrate some of the capacity and encourage you to take the first steps. For those of you with a programming background, the course is intended to offer a jumpstart into using this language. If you are a novice or beginner programmer, you should follow along the simple coding but recognising that working through the material will not be sufficient to make you a proficient programmer in four weeks. You could see this as the ‘first date’ at the beginning of a long and beautiful new relationship. There is so much you will need to learn and discover. Good luck and we hope you enjoy the course! Best wishes, Henri and Juan

A context for exploring Julia: Working with data
In our case study we use Julia to store, plot, select and slice data from the Ebola epidemic. Taking real data, we explain how to work in Julia using arrays, and for loops to work with the structures. By the end of this module, you will be able to: create an array from data; learn to use the logical structures IF and FOR ; conduct basic array slicing, getting the incidence data and generating total number of cases; use Plots to generate graphs and plot data; and combine the Ebola data outputs to show a plot of disease incidence in several countries.

Notebooks as Julia Programs
in this week, we demonstrate how it is possible to use Julia in the notebook environment to interpret a model and its fit to the data from the Ebola outbreak. For this, we apply the well-known SIR compartmental model in epidemiology. The SIR model labels three compartments, namely S = number susceptible, I =number infectious, and R =number recovered. By the end of this module, you will be able to: understand the SIR models; describe the basic parameters of an SIR model; plot the model-predicted curve and the data on the same diagram; adjust the parameters of the model so the model-predicted curve is close (or rather as close as you can make it) to the data.

Structuring data and functions in Julia
As a scientific computing language, Julia is well suited to the task of working with data. In this last module, we elaborate on the two most important concepts in Julia, arrays and functions. They are the fundamental building blocks of holding and manipulating data. You should see this week as offering you a chance to further explore concepts introduced in week one and two. You will also be introduced to more efficient ways of managing and visualizing your data. By the end of this module, you will be able to: 1. Apply and understand how to work with arrays 2. Practice Julia functions 3. Explore extension packages 4. be familiar with the Dataframes package 5. Plot a variety of data from the dataset, ready for publication.

8 Student
reviews
Cost Free Online Course (Audit)
Pace Upcoming
Provider Coursera
Language English
Certificates Paid Certificate Available
Calendar 4 weeks long
Sign up for free? Learn how

Disclosure: To support our site, Class Central may be compensated by some course providers.

+ Add to My Courses
FAQ View All
What are MOOCs?
MOOCs stand for Massive Open Online Courses. These are free online courses from universities around the world (eg. Stanford Harvard MIT) offered to anyone with an internet connection.
How do I register?
To register for a course, click on "Go to Class" button on the course page. This will take you to the providers website where you can register for the course.
How do these MOOCs or free online courses work?
MOOCs are designed for an online audience, teaching primarily through short (5-20 min.) pre recorded video lectures, that you watch on weekly schedule when convenient for you.  They also have student discussion forums, homework/assignments, and online quizzes or exams.

8 reviews for Coursera's Julia Scientific Programming

Write a review
1 out of 1 people found the following review useful
a year ago
profile picture
Anonymous completed this course.
The course was a good overview of Julia, starting from the very basics. This makes it relevant for programming beginners at the start. As the course builds up, it nicely introduces Julia's complexity in the assignments, and introduced many of Julia's must-know features such as multiple dispatch and user defined types, Read More
The course was a good overview of Julia, starting from the very basics. This makes it relevant for programming beginners at the start. As the course builds up, it nicely introduces Julia's complexity in the assignments, and introduced many of Julia's must-know features such as multiple dispatch and user defined types, without getting too daunting. The explanation was clear and crisp at all times. More content could be covered for data analysis and perhaps more forum discussion could be encouraged. The course didn't take a great deal of time to complete. I would recommend this course for those who want to get to know Julia and many key libraries in it for data analysis and visualization.
Was this review helpful to you? YES | NO
1 out of 1 people found the following review useful
a year ago
profile picture
Anonymous completed this course.
This is a very nice introduction to Julia that should be accessible even for people for no background in programming. Honors track gives an opportunity to get acquainted with Julia's great type system. In the beginning it seemed that the course would be too basic and simple, but after the second week it gets more invo Read More
This is a very nice introduction to Julia that should be accessible even for people for no background in programming. Honors track gives an opportunity to get acquainted with Julia's great type system.

In the beginning it seemed that the course would be too basic and simple, but after the second week it gets more involved, so these first two week are perhaps meant to give a gentle introduction before the harder part.

It would be really nice if the authors launched a more advanced course for Julia, preferably with some applied examples from data science, data visualization and/or numerical computing.
Was this review helpful to you? YES | NO
a year ago
profile picture
Anonymous completed this course.
I do a lot of courses and this is one of the courses I enjoyed most. I am a data scientist using Python currently, but I did this course to learn more about Julia. I found the content to be well presented and well-structured. The lectures were easy to follow and just about the right length. Both presenters are eng Read More
I do a lot of courses and this is one of the courses I enjoyed most.

I am a data scientist using Python currently, but I did this course to learn more about Julia. I found the content to be well presented and well-structured. The lectures were easy to follow and just about the right length. Both presenters are engaging.

For anybody starting out on Julia, this is a great course to get you going.
Was this review helpful to you? YES | NO
a year ago
Daniel Duplessis completed this course, spending 3 hours a week on it and found the course difficulty to be medium.
I do a lot of courses and this is one of the courses I enjoyed most. I am a data scientist using Python currently, but I did this course to learn more about Julia. I found the content to be well presented and well-structured. The lectures were easy to follow and just about the right length. Both presenters are eng Read More
I do a lot of courses and this is one of the courses I enjoyed most.

I am a data scientist using Python currently, but I did this course to learn more about Julia. I found the content to be well presented and well-structured. The lectures were easy to follow and just about the right length. Both presenters are engaging.

For anybody starting out on Julia, this is a great course to get you going.
Was this review helpful to you? YES | NO
a year ago
profile picture
Anonymous completed this course.
finished this course from Coursera and I really enjoyed this one. They provided an interesting analytical programming language that I belived most people haven't heard nor used it. I really recommended everyone to give it a try, because Julia provided a unique environment for analyze data. And this course provides us a fundamental knowledge of Julia.
Was this review helpful to you? YES | NO
7 months ago
profile picture
Anonymous completed this course.
It is a very good introduction to Julia. I really like the most the text and details which were provided as notebook which you can refer anytime.

However, some part particularly the part talking about the SIR model is confusing and I suggest use another practical example.
Was this review helpful to you? YES | NO
2 months ago
Mark Straughan completed this course.
This is an excellent and enjoyable course. It's well presented, the resources provided are good and the assignments are manageable. If you don't have a programming background or some coding experience leave yourself a bit of extra time to get the peer graded assignments done.
Was this review helpful to you? YES | NO
11 months ago
Brian Page completed this course.
Was this review helpful to you? YES | NO

Class Central

Get personalized course recommendations, track subjects and courses with reminders, and more.

Sign up for free