<function>
or <operator>
).
This is just notation, and the symbols <
and >
should not be misconstrued as Julia's syntax.
Action | Keyboard Shortcut |
---|---|
Previous Section | Ctrl + 🠘 |
Next Section | Ctrl + 🠚 |
List of Sections | Ctrl + z |
List of Subsections | Ctrl + x |
Close Any Popped Up Window (like this one) | Esc |
Open All Codes and Outputs in a Post | Alt + 🠛 |
Close All Codes and Outputs in a Post | Alt + 🠙 |
Unit | Acronym | Measure in Seconds |
---|---|---|
Seconds | s | 1 |
Milliseconds | ms | 10-3 |
Microseconds | μs | 10-6 |
Nanoseconds | ns | 10-9 |
The website is still work in progress in terms of writing, content, and subjects covered.
The chapters included so far can be found here and a pdf version here. I'll continue adding new content as I go.
If you find any mistakes, typos, or have any suggestions, please open an issue on the book's GitHub page. Your feedback is greatly appreciated!
Scientific computing demands both an intuitive design and execution speed. Julia is built to deliver both.
SIMPLE AND EXPRESSIVE: Julia’s syntax is concise and close to mathematical notation, so you can translate models into readable code that's easy to maintain.
INTERACTIVE PROTOTYPING: rapidly build and explore models in real-time, enabling quick iteration and immediate result inspection.
HIGH PERFORMANCE: Julia is engineered for speed. It's capable of achieving speeds comparable to C or Fortran, without forcing you to rewrite performance-critical parts in another language. Moreover, it offers seamless support for parallel computing, including native multithreading and GPU acceleration.
A UNIFIED COMPUTATIONAL PLATFORM: No need to switch between multiple languages. In Julia, you can preprocess data, perform statistical analysis, generate graphical representations, and implement numerical models. Furthermore, Julia interoperates with other languages and tools, allowing you to leverage the strengths of Python, R, C. Its ecosystem includes mature packages for data analysis, plotting, and computational modeling.
AUDIENCE: The book is intended for an audience with little or no background in programming. This doesn't mean that we solely cover basic topics. Rather, it defines the book's approach of starting from elementary concepts, gradually introducing more advanced concepts as we progress.
APPROACH: Throughout the book, I've made a conscious effort to distinguish between what's essential and what's ancillary, with the latter clearly labelled as optional. My goal is that you don't become bogged down in particular details, while still having the possibility of exploring topics further if you wish.
TOPICS: The book focuses on the foundational concepts of the language, without pursuing an exhaustive examination of all its features. My philosophy is that you can easily incorporate additional features if you grasp the logic of the language.
The following are the tools I used for building the Website.
https://franklinjl.org/: Franklin is a static site generator for Julia, developed by Thibaut Lienart. It allows for a smooth integration between Julia, LaTex, HTML/CSS/JavaScript. It also facilitates typing as you can add apply functions created in Julia for the website creation.
The following are websites on Julia that I've read for the book preparation. The list is not exhaustive, and its main purpose is to thank the authors for their contributions.
https://bkamins.github.io/: Blog by Bogumił Kamiński. He's probably the person from whom I've learned the most about Julia (and programming in general!). The link is for his blog, but he also has tutorials for the package DataFrames (he's one of the developers) and a book titled "Julia for Data Analysis". He actively answers questions in Discourse and StackOverFlow.
https://benlauwens.github.io/ThinkJulia.jl/latest/book.html. This is a book about Julia by Ben Lauwens and Allen Downey. It's a very good introduction to Julia, and it's free.
https://www.matecdev.com/posts/julia-tutorial-science-engineering.html: Julia tutorial by Martin D. Maas. It's also a very good introduction to Julia.
https://techytok.com/from-zero-to-julia/: Julia tutorial by Aurelio Amerio. It's a very good introduction to Julia.
https://m3g.github.io/JuliaNotes.jl/stable/: Some notes by Leandro MartÃnez, an active user in Julia's Discourse. The notes are cleaned versions of discussions and lessons learned from posts in Discourse.
https://medium.com/@emmaccode/: Blog by Emma Boudreau, with some interesting comparisons between Julia and other languages.
The following are websites about Julia in Economics, which is my area of specialization.
https://julia.quantecon.org/intro.html: QuantEcon is a website oriented to economic modeling, founded by Thomas Sargent and John Stachursky. It focuses on the use of Julia for Macroeconomics, although it also provides several chapters about Julia basics.
https://floswald.github.io/NumericalMethods/: Website created by Florian Oswald. He also has several tutorials for R.