# Julia as first language

**URL:** <https://discourse.julialang.org/t/julia-as-first-language/104383>\
**Category:** New to Julia\
**Created:** [September 29, 2023, 9:04am UTC](https://discourse.julialang.org/t/julia-as-first-language/104383 "2023-09-29T09:04:44Z")\
**Posts on this page:** 1\
**Showing post:** 56

<div class="post-metadata">

**Author:** ![Nathan\_Boyer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nathan_boyer/32/14825_2.png) [@Nathan\_Boyer](https://discourse.julialang.org/u/Nathan_Boyer)\
**Post date:** [September 29, 2023, 6:26pm UTC](https://discourse.julialang.org/t/julia-as-first-language/104383/56 "2023-09-29T18:26:44Z")

</div>

I love the Julia language and find the syntax very beginner friendly. I simultaneously think it needs a tremendous amount of work toward better tooling and documentation to be remotely as user-friendly as the Matlab I came from. To that end, I have been (slowly) pointing out documentation deficiencies and writing documentation where I can. For tooling improvements, [guides are being written](https://modernjuliaworkflows.github.io/), but the packages themselves also need improvements:

> [@Write documentation PRs not blog posts](https://discourse.julialang.org/t/write-documentation-prs-not-blog-posts/100942/1):
>
> It is well known (based on questions that come up on this forum) that documentation for even some of our most fundamental packages is not sufficient to get a new user comfortable using Julia efficiently: [Pkg](https://pkgdocs.julialang.org/dev/environments/), [VSCode](https://www.julia-vscode.org/docs/latest/userguide/runningcode/), [JuliaUp](https://github.com/JuliaLang/juliaup), [Revise](https://timholy.github.io/Revise.jl/stable/), [Debugger](https://github.com/JuliaDebug/Debugger.jl), [workflow](https://docs.julialang.org/en/v1/manual/workflow-tips/), [reading errors](https://docs.julialang.org/en/v1/manual/stacktraces/), etc. To me, writing Julia is easy, but [running](https://discourse.julialang.org/t/how-to-use-vscode-and-repl-to-write-and-test-a-package/78818) and [engineering](https://discourse.julialang.org/t/julia-for-prototyping-compared-to-matlab/33900/45) Julia is hard. Even after 3 years of casual Julia use, I don’t really understand these fundamentals.

These beginner-friendly factors are especially important while we don’t have small binary executables, because even users of your code will need a basic understanding of how to get Julia running in an environment. Since this is open-source, the real question is how to get more qualified people interested in tackling the many hundreds of existing Github issues without paying them. ([Pkg.](https://github.com/JuliaLang/Pkg.jl/issues) [VSCode.](https://github.com/julia-vscode/julia-vscode/issues) [Documenter.](https://github.com/JuliaDocs/Documenter.jl/issues)) I think most of the common pain points are known at this point, but to my knowledge many of these critical packages are maintained by less than three people.

(Some relevant discussion was had in [this thread](https://discourse.julialang.org/t/we-as-a-community-should-be-more-understanding-of-julias-flaws/86030) on Julia’s flaws and over-promising Julia performance.)

---

_[View the full topic](https://discourse.julialang.org/t/julia-as-first-language/104383)._
