Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hbarquanta/julia
Julia Programming Language - Tutorial
https://github.com/hbarquanta/julia
efficient-programing julia-language linear-algebra pluto-notebooks science scientific-computing
Last synced: about 1 month ago
JSON representation
Julia Programming Language - Tutorial
- Host: GitHub
- URL: https://github.com/hbarquanta/julia
- Owner: hbarquanta
- License: mit
- Created: 2024-06-01T15:35:38.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-06-03T06:28:38.000Z (7 months ago)
- Last Synced: 2024-11-20T01:17:29.554Z (about 1 month ago)
- Topics: efficient-programing, julia-language, linear-algebra, pluto-notebooks, science, scientific-computing
- Language: Jupyter Notebook
- Homepage:
- Size: 3.8 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Julia Tutorials Repository
## Overview
Welcome to the Julia Tutorials Repository! This repository contains a comprehensive collection of tutorials designed to help you master the Julia programming language. The tutorials are divided into three levels: Basics, Intermediate, and Expert. Each level is available in both Jupyter Notebook and Pluto.jl formats, providing you with flexible learning options.
## Table of Contents
- [Getting Started](#getting-started)
- [Repository Structure](#repository-structure)
- [Tutorial Descriptions](#tutorial-descriptions)
- [Julia Basics](#julia-basics)
- [Julia Intermediate](#julia-intermediate)
- [Julia Expert](#julia-expert)
- [Installation and Usage](#installation-and-usage)
- [Jupyter Notebooks](#jupyter-notebooks)
- [Pluto.jl Notebooks](#plutojl-notebooks)
- [Contributing](#contributing)
- [License](#license)## Getting Started
If you are new to Julia, we recommend starting with the Julia Basics tutorial. For those who are already familiar with the basics, you can dive into the Intermediate and Expert tutorials. Each tutorial is designed to build upon the previous one, progressively introducing more advanced concepts and techniques.
## Repository Structure
The repository is structured as follows:
```
/Julia-Tutorials
│
├── notebooks
│ ├── Julia01_Basics.ipynb
│ ├── Julia02_Intermediate.ipynb
│ └── Julia03_Expert.ipynb
│
├── pluto_notebooks
│ ├── Julia01_Basics.jl
│ ├── Julia02_Intermediate.jl
│ └── Julia03_Expert.jl
│
└── README.md
```- `notebooks`: Contains the Jupyter Notebook files for each tutorial level.
- `pluto_notebooks`: Contains the Pluto.jl Notebook files for each tutorial level.## Tutorial Descriptions
### Julia Basics
**File:** `Julia01_Basics.ipynb` | `Julia01_Basics.jl`
This tutorial introduces the fundamentals of Julia, including:
- Julia setup and environment
- Basic syntax and data types
- Control flow (loops, conditionals)
- Functions and scope
- Basic plotting### Julia Intermediate
**File:** `Julia02_Intermediate.ipynb` | `Julia02_Intermediate.jl`
This tutorial dives deeper into more advanced Julia concepts, such as:
- Advanced data structures
- File I/O operations
- Error handling
- Module creation and usage
- Broadcasting functions
- Intermediate plotting techniques### Julia Expert
**File:** `Julia03_Expert.ipynb` | `Julia03_Expert.jl`
This tutorial covers expert-level topics and advanced numerical techniques, including:
- Advanced numerical linear algebra
- Eigenvalue and eigenvector computations
- Optimization techniques
- GPU computing with CUDA.jl
- Parallel and distributed computing
- Advanced plotting with Makie.jl## Installation and Usage
### Jupyter Notebooks
1. **Clone the repository:**
```sh
git clone https://github.com/your-username/Julia-Tutorials.git
cd Julia-Tutorials/notebooks
```2. **Install Jupyter and IJulia:**
```sh
julia -e 'using Pkg; Pkg.add("IJulia")'
```3. **Open Jupyter Notebook:**
```sh
jupyter notebook
```4. **Navigate to the desired notebook and start learning!**
### Pluto.jl Notebooks
1. **Clone the repository:**
```sh
git clone https://github.com/your-username/Julia-Tutorials.git
cd Julia-Tutorials/pluto_notebooks
```2. **Install Pluto.jl:**
```sh
julia -e 'using Pkg; Pkg.add("Pluto")'
```3. **Run Pluto.jl:**
```sh
julia -e 'using Pluto; Pluto.run()'
```4. **Open the desired notebook file (`.jl`) in Pluto.jl and start learning!**
## Contributing
We welcome contributions from the community! If you would like to contribute to this repository, please follow these steps:
1. Fork the repository.
2. Create a new branch for your feature or bugfix.
3. Commit your changes and push to your fork.
4. Submit a pull request with a detailed description of your changes.Please make sure your contributions adhere to our coding standards and include relevant tests.
## License
This repository is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.