O'Reilly logo
live online training icon Live Online training

Julia 1.0 Essentials

Learn the basic features of Julia for technical computing and data science

Douglas Eadline

This live training course covers the essential introductory aspects of the Julia Language. As of August 2018, version 1.0 of Julia has been released and provides an easy, high performance, robust, and stable platform for technical computing, data analytics, finance, machine learning, and mathematics. Installation on Windows, Macintosh, and Linux will be provided along with annotated example notes.

What you'll learn-and how you can apply it

  • Understand the need for the Julia language
  • Learn the standout features of Julia—and how you benefit from them
  • Install Julia on Windows, Macintosh, or Linux machines
  • Learn the basics of Julia 1.0 with hands-on demonstrations of the Julia interpreter, iJulia (Jupyter notebook for Julia), and explore essential language features
  • Create standalone programs and use the new Julia 1.0 package manager

This training course is for you because...

  • You're a developer who needs both ease-of-use and fast execution speed in the same language
  • You are a technical computing user who prefers not to learn C or Fortran
  • You're a Python, R, or Matlab programmer who needs better performance
  • You're a domain specialist, data scientist, engineer, mathematician, or scientist who wants an easy-to-use, high-level, portable, and fast programing framework

Prerequisites

  • A basic understanding of computer programming (Types, Variables, and Operations, Flow Control)
  • Some background in Linux shell commands is helpful, but not required

Course Set-up:

Recommended Preparation:

  • These are optional resources that you may find helpful as you brush up on fundamental computer programming and Linux shell commands (instruction will take place on a Linux machine) Bash Scripting (video)

Recommended Follow-up:

About your instructor

  • Douglas Eadline, PhD, began his career as an analytical chemist with an interest in computer methods. Starting with the first Beowulf how-to document, Doug has written instructional documents covering many aspects of Linux HPC (High Performance Computing) and Hadoop computing. Currently, Doug serves as editor of the ClusterMonkey.net website and was previously editor of ClusterWorld Magazine, and senior HPC Editor for Linux Magazine. He is also an active writer and consultant to the HPC/Analytics industry. His recent video tutorials and books include of the Hadoop and Spark Fundamentals LiveLessons (Addison Wesley) video, Hadoop 2 Quick Start Guide (Addison Wesley), High Performance Computing for Dummies (Wiley) and Practical Data Science with Hadoop and Spark (Co-author, Addison Wesley).

Schedule

The timeframes are only estimates and may vary according to how the class is progressing

Segment 1: Introduction and Course Goals (15 mins)

  • Why Julia?

Segment 2: Standout Features of Julia (20 mins)

  • Typeless language with multiple dispatch
  • High performance
  • Simple syntax
  • Direct Fortran/C functions calls
  • Parallelism and distributed computation (multicore and cluster)
  • Extensive and growing packages library

Segment 3: Getting Started: Installing Julia 1.0 (15 mins)

  • Windows
  • OSX
  • Linux

Break (10 mins)

Segment 4: The Basics: Our First Julia Program (25 mins)

  • Using the command line interpreter
  • Using iJulia (Jupyter notebook for Julia)

Segment 5: Exploring Language Features (55 mins)

  • Types, Variables, and Operations
  • Flow Control
  • Input and Output
  • Networking
  • Parallel Computing
  • Julia and GPUs

Break (10 mins)

Segment 6: Stand Alone Programs and Package Management (25 mins)

  • Creating and running stand-alone Julia programs
  • Using the new V1.0 Package manager

Segment 7: More Resources and Course Wrap-up (15 mins)