Leverage the power of Julia to design and develop high performing programs
About This Book
- Get to know the best techniques to create blazingly fast programs with Julia
- Stand out from the crowd by developing code that runs faster than your peers' code
- Complete an extensive data science project through the entire cycle from ETL to analytics and data visualization
Who This Book Is For
This learning path is for data scientists and for all those who work in technical and scientific computation projects. It will be great for Julia developers who are interested in high-performance technical computing.
This learning path assumes that you already have some basic working knowledge of Julia's syntax and high-level dynamic languages such as MATLAB, R, Python, or Ruby.
What You Will Learn
- Set up your Julia environment to achieve the highest productivity
- Solve your tasks in a high-level dynamic language and use types for your data only when needed
- Apply Julia to tackle problems concurrently and in a distributed environment
- Get a sense of the possibilities and limitations of Julia's performance
- Use Julia arrays to write high performance code
- Build a data science project through the entire cycle of ETL, analytics, and data visualization
- Display graphics and visualizations to carry out modeling and simulation in Julia
- Develop your own packages and contribute to the Julia Community
In this learning path, you will learn to use an interesting and dynamic programming language—Julia! You will get a chance to tackle your numerical and data problems with Julia. You'll begin the journey by setting up a running Julia platform before exploring its various built-in types. We'll then move on to the various functions and constructs in Julia. We'll walk through the two important collection types—arrays and matrices in Julia.
You will dive into how Julia uses type information to achieve its performance goals, and how to use multiple dispatch to help the compiler emit high performance machine code. You will see how Julia's design makes code fast, and you'll see its distributed computing capabilities.
By the end of this learning path, you will see how data works using simple statistics and analytics, and you'll discover its high and dynamic performance—its real strength, which makes it particularly useful in highly intensive computing tasks.
This learning path combines some of the best that Packt has to offer in one complete, curated package. It includes content from the following Packt products:
- Getting Started with Julia by Ivo Balvaert
- Julia High Performance by Avik Sengupta
- Mastering Julia by Malcolm Sherrington
Style and approach
This hands-on manual will give you great explanations of the important concepts related to Julia programming.
Table of Contents
Chapter 1. Installing the Julia Platform
Chapter 2. Variables, Types, and Operations
Chapter 3. Functions
Chapter 4. Control Flow
Chapter 5. Collection Types
Chapter 6. More on Types, Methods, and Modules
Chapter 7. Metaprogramming in Julia
Chapter 8. I/O, Networking, and Parallel Computing
Chapter 9. Running External Programs
Chapter 10. The Standard Library and Packages