# Learning material for experienced programmers

**URL:** <https://discourse.julialang.org/t/learning-material-for-experienced-programmers/126189>\
**Category:** New to Julia\
**Tags:** question\
**Created:** [February 22, 2025, 3:55pm UTC](https://discourse.julialang.org/t/learning-material-for-experienced-programmers/126189 "2025-02-22T15:55:27Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![chenzhekl](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chenzhekl/32/215399_2.png) [@chenzhekl](https://discourse.julialang.org/u/chenzhekl)\
**Post date:** [February 22, 2025, 3:55pm UTC](https://discourse.julialang.org/t/learning-material-for-experienced-programmers/126189/1 "2025-02-22T15:55:27Z")

</div>

Hello, I’m a professional machine learning engineer with extensive experience in Rust, C++, and Python. I’ve noticed that many Julia books are aimed either at complete beginners or are tailored to niche areas like optimization, rather than catering to experienced programmers. I really appreciate resources such as the Rust Book and Go By Example, which enable users to quickly learn a language. Are there any similar learning materials available for Julia? Thank you in advance for your assistance!

---

<div class="post-metadata">

**Author:** ![GHTaarn](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ghtaarn/32/216007_2.png) [@GHTaarn](https://discourse.julialang.org/u/GHTaarn)\
**Post date:** [February 22, 2025, 6:00pm UTC](https://discourse.julialang.org/t/learning-material-for-experienced-programmers/126189/2 "2025-02-22T18:00:16Z")

</div>

I have never read any of the books on Julia, so I don’t know much about what is available. I could imagine that for experienced programmers, what you need depends a bit on what language you come from. The manual has a section on migrating from other languages [Noteworthy Differences from other Languages · The Julia Language](https://docs.julialang.org/en/v1/manual/noteworthy-differences/) to help in such cases, it covers both Python and C++.

---

<div class="post-metadata">

**Author:** ![MilesCranmer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/milescranmer/32/21070_2.png) [@MilesCranmer](https://discourse.julialang.org/u/MilesCranmer)\
**Post date:** [February 22, 2025, 6:20pm UTC](https://discourse.julialang.org/t/learning-material-for-experienced-programmers/126189/3 "2025-02-22T18:20:15Z")

</div>

I recommend checking out [https://modernjuliaworkflows.org/](https://modernjuliaworkflows.org/) too

---

<div class="post-metadata">

**Author:** ![TheCedarPrince](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/thecedarprince/32/17323_2.png) [@TheCedarPrince](https://discourse.julialang.org/u/TheCedarPrince)\
**Post date:** [February 22, 2025, 6:27pm UTC](https://discourse.julialang.org/t/learning-material-for-experienced-programmers/126189/4 "2025-02-22T18:27:59Z")

</div>

In my opinion, these are resources I quite like:

- I think @jakobnissen is the Julia blogger’s blogger; his blog posts are absolutely fantastic and go into great depth on so so many topics. Here are some choice blog posts:
  - [How to optimise Julia code: A practical guide](https://viralinstruction.com/posts/optimise/)
  - [https://viralinstruction.com/posts/hardware/](https://viralinstruction.com/posts/hardware/)
  - [What's bad about Julia?](https://viralinstruction.com/posts/badjulia/)
  - [What's great about Julia?](https://viralinstruction.com/posts/goodjulia/)

- @Wikunia has a lot of great Julia blog posts too that I learned a ton from in my early Julia days:
  - [https://opensourc.es](https://opensourc.es)

- I would say the Julia Documentation is always a great place to look: [Julia Documentation · The Julia Language](https://docs.julialang.org/en/v1/)
- @bkamins blog is fantastic as well but a bit more niche towards data science however it does include a number of inspections and investigations of the language itself: [https://bkamins.github.io](https://bkamins.github.io)

Hope this is a bit useful/helpful!

---

<div class="post-metadata">

**Author:** ![lmiq](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lmiq/32/18314_2.png) [@lmiq](https://discourse.julialang.org/u/lmiq)\
**Post date:** [February 22, 2025, 8:42pm UTC](https://discourse.julialang.org/t/learning-material-for-experienced-programmers/126189/5 "2025-02-22T20:42:35Z")

</div>

Of course that varies from person to person, but I think the [Julia manual](https://docs.julialang.org/en/v1/manual/getting-started/) is a great resource for people that are already familiar with programming. The fact that it has to be very precise is bad for beginners, but experienced programmers tend to understand the subtleties behind the text.

---

<div class="post-metadata">

**Author:** ![ufechner7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ufechner7/32/51363_2.png) [@ufechner7](https://discourse.julialang.org/u/ufechner7)\
**Post date:** [February 22, 2025, 8:47pm UTC](https://discourse.julialang.org/t/learning-material-for-experienced-programmers/126189/6 "2025-02-22T20:47:55Z")

</div>

I would suggest: [Hands-On Design Patterns and Best Practices with Julia | Programming | eBook](https://www.packtpub.com/en-us/product/hands-on-design-patterns-and-best-practices-with-julia-9781838646615)
