Skip to content
AgileLogics
Advanced 5 min read

Advanced Projects

Prerequisites: Level 3 — Advanced

Build these using performance techniques, metaprogramming, parallelism, and the scientific ecosystem from Level 3.

1. N-Body Simulation

Simulate planets or particles under gravity with a type-stable, allocation- free inner loop. Benchmark it with BenchmarkTools, speed it up with StaticArrays and threads, and animate the result with Makie.

2. Epidemic Model

Model an SIR epidemic as a system of differential equations with DifferentialEquations.jl, fit its parameters to data with an optimizer, and plot the fitted curves against the observations.

3. Neural Network From Scratch — Then With Flux

Implement a small multilayer perceptron by hand (matrix multiplies, activation functions, gradient descent), train it on a simple dataset, then rebuild it with Flux.jl and compare code size, speed, and accuracy.

4. A Domain-Specific Language

Write macros that turn a compact notation — for example, chemical reactions or unit-annotated formulas — into ordinary Julia code, with tests, error messages that point to the user's code, and documentation.