# Julia kernel & Jupyter notebook in VSCode

**URL:** <https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709>\
**Category:** General Usage\
**Created:** [August 11, 2023, 9:21am UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709 "2023-08-11T09:21:31Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![BLI](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bli/32/37206_2.png) [@BLI](https://discourse.julialang.org/u/BLI)\
**Post date:** [August 11, 2023, 9:21am UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709/1 "2023-08-11T09:21:31Z")

</div>

I try to run a Jupyter notebook in VSCode (v.1.81.1) with Julia 1.9.2 installed.

Problems:

- Julia 1.9.2 is not available when I try to choose kernel for the Jupyter notebook [there is a Julia release channel, though – is that what I should choose?]

---

<div class="post-metadata">

**Author:** ![Maucejo](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/maucejo/32/39090_2.png) [@Maucejo](https://discourse.julialang.org/u/Maucejo)\
**Post date:** [August 11, 2023, 10:22am UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709/2 "2023-08-11T10:22:38Z")

</div>

Did you install `IJulia.jl`. If so, type the command `Pkg.build("IJulia")`. I do this everytime I update Julia and it works smoothly.

---

<div class="post-metadata">

**Author:** ![Paul\_Soderlind](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/paul_soderlind/32/1753_2.png) [@Paul\_Soderlind](https://discourse.julialang.org/u/Paul_Soderlind)\
**Post date:** [August 11, 2023, 10:51am UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709/3 "2023-08-11T10:51:35Z")

</div>

I don’t think IJulia.jl is needed for vscode, but others might know better. Rather, I would guess that VScode simply cannot find you Julia installation.

You could test that my just creating a small script in vscode, like a file with the command `println(3.1)` and then try to run it by `ctrl-shift-p` and then look for `Julia: execute active fil REPL`. If this indeed fails, then you need to tell vscode where Julia is. There’s an option for that (settings…)

---

<div class="post-metadata">

**Author:** ![BLI](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bli/32/37206_2.png) [@BLI](https://discourse.julialang.org/u/BLI)\
**Post date:** [August 11, 2023, 11:04am UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709/4 "2023-08-11T11:04:00Z")

</div>

`IJulia.jl` is not needed when running Jupyter notebooks in VSCode.

---

<div class="post-metadata">

**Author:** ![BLI](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bli/32/37206_2.png) [@BLI](https://discourse.julialang.org/u/BLI)\
**Post date:** [August 11, 2023, 11:06am UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709/5 "2023-08-11T11:06:23Z")

</div>

After I chose to use the “Julia release channel” instead of looking for a specific version number, it seems like it uses Julia v. 1.9. Perhaps this is related to the fact that I use the Juliaup system for upgrading Julia? (The Julia app in Windows Store is developed (?) by the same group at Stanford that works with the Julia support in VSCode, I think).

---

<div class="post-metadata">

**Author:** ![Paul\_Soderlind](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/paul_soderlind/32/1753_2.png) [@Paul\_Soderlind](https://discourse.julialang.org/u/Paul_Soderlind)\
**Post date:** [August 11, 2023, 11:38am UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709/6 "2023-08-11T11:38:58Z")

</div>

Sorry, I don’t know much about the juliaup thing.

---

<div class="post-metadata">

**Author:** ![Maucejo](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/maucejo/32/39090_2.png) [@Maucejo](https://discourse.julialang.org/u/Maucejo)\
**Post date:** [August 11, 2023, 12:33pm UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709/7 "2023-08-11T12:33:35Z")

</div>

I never paid attention to this, because I use Ijulia in both VSCode and web browser. Thanks for the tip.

---

<div class="post-metadata">

**Author:** ![GenerallyClueless](https://avatars.discourse-cdn.com/v4/letter/g/c37758/32.png) [@GenerallyClueless](https://discourse.julialang.org/u/GenerallyClueless)\
**Post date:** [August 11, 2023, 1:23pm UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709/8 "2023-08-11T13:23:28Z")

</div>

I tried running jupyter notebooks in VSCode but it was significantly slower than running notebooks in Jupyter or JupyterLab. The difference in performance was very significant, and it actually frustrated me. 😭

If you want to run notebooks with Julia, I really feel that Pluto is the best way to go. I have been taking many courses on JuliaAcademy, most of which use Jupyter Notebooks… and I find that I have to update a lot of the code. The course(s) that provide Pluto Notebooks are much easier because they keep the package versions used when they were created. Also, they feel at least as fast as Jupyter notebooks and are reactive.

---

<div class="post-metadata">

**Author:** ![BLI](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bli/32/37206_2.png) [@BLI](https://discourse.julialang.org/u/BLI)\
**Post date:** [August 14, 2023, 6:16am UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709/9 "2023-08-14T06:16:14Z")

</div>

Thanks for insight. I never noticed a difference when running Jupyter notebooks in VSCode vs. in a browser via IJulia. But perhaps I combined the switch with changing computer… I do find running notebooks in VSCode superior to using a browser from the convenience side, though: in VSCode, it is straightforward to do search and replace, etc.

I’m certainly interested in Pluto for 3 reasons: (i) it is Julia based, (ii) I assume it is faster, and (iii) it has useful widgets. A few things has held me back… (a) lazyness, (b) the reactiveness – which makes it difficult to re-use the same variable name several places (maybe that is lazyness, too), (c) I find it counter-intuitive that cell responses show up _above_ the cells… since I’m used to the Western writing system with information flow left-to-right and top-to-bottom. But perhaps I should instead think of the cell content as caption, and the response as “figure” – captions are often placed below figures. And (d) with reactive programming, I’m uncertain as to how large Pluto notebooks can be. But I may start to use it.

---

<div class="post-metadata">

**Author:** ![xgdgsc](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/xgdgsc/32/608_2.png) [@xgdgsc](https://discourse.julialang.org/u/xgdgsc)\
**Post date:** [August 14, 2023, 7:27am UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709/10 "2023-08-14T07:27:57Z")

</div>

The Pluto devs seems pretty ignorant to user demands like: [Why is cell output above code? · Issue #205 · fonsp/Pluto.jl · GitHub](https://github.com/fonsp/Pluto.jl/issues/205)[https://github.com/fonsp/Pluto.jl/issues/65](https://github.com/fonsp/Pluto.jl/issues/65) so I woudn’ t use it either.

---

<div class="post-metadata">

**Author:** ![BLI](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bli/32/37206_2.png) [@BLI](https://discourse.julialang.org/u/BLI)\
**Post date:** [August 14, 2023, 7:40am UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709/11 "2023-08-14T07:40:35Z")

</div>

I don’t like to describe others as “ignorant”. An alternative interpretation is that they have a strong/well thought out idea of what Pluto should be like, and that they stick to this. There are a lot of things to like about Pluto.

---

<div class="post-metadata">

**Author:** ![GenerallyClueless](https://avatars.discourse-cdn.com/v4/letter/g/c37758/32.png) [@GenerallyClueless](https://discourse.julialang.org/u/GenerallyClueless)\
**Post date:** [August 14, 2023, 12:39pm UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709/12 "2023-08-14T12:39:29Z")

</div>

There is no need to demean the Pluto devs. That’s totally uncalled for. They take their time to develop a FREE tool that is really amazing, and this is what you have to say?

If you don’t like it… fork it and change the things that you don’t like.

---

<div class="post-metadata">

**Author:** ![xgdgsc](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/xgdgsc/32/608_2.png) [@xgdgsc](https://discourse.julialang.org/u/xgdgsc)\
**Post date:** [August 14, 2023, 1:46pm UTC](https://discourse.julialang.org/t/julia-kernel-jupyter-notebook-in-vscode/102709/13 "2023-08-14T13:46:14Z")

</div>

And end up like [GitHub - compleathorseplayer/Neptune.jl: Simple (Pluto-based) non-reactive notebooks for Julia](https://github.com/compleathorseplayer/Neptune.jl) ?
