# Switching from Jupyter to a proper IDE

**URL:** <https://discourse.julialang.org/t/switching-from-jupyter-to-a-proper-ide/31648>\
**Category:** General Usage\
**Created:** [November 29, 2019, 9:43am UTC](https://discourse.julialang.org/t/switching-from-jupyter-to-a-proper-ide/31648 "2019-11-29T09:43:02Z")\
**Posts on this page:** 5\
**Page:** 2

<div class="post-metadata">

**Author:** ![aplavin](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/aplavin/32/222056_2.png) [@aplavin](https://discourse.julialang.org/u/aplavin)\
**Post date:** [December 5, 2019, 4:06pm UTC](https://discourse.julialang.org/t/switching-from-jupyter-to-a-proper-ide/31648/21 "2019-12-05T16:06:52Z")

</div>

Actually, before jupyter I used a similar workflow (for python, but it doesn’t matter here). And when jupyter (especially jupyterlab) appeared, it was like fresh air after that.

> [@ExpandingMan](#):
>
> - For vim and emacs at least, it is trivial to reproduce a setup, see for example [my nvim setup file](https://github.com/ExpandingMan/dotfiles/blob/master/.config/nvim/init.vim). I’d imagine that any IDE’s that are any good have a similarly easy to reproduce setup.

I think there is some misunderstanding here - by “same layout between different computers” I meant the same files open in the same way, not just having the same editor settings.

> [@ExpandingMan](#):
>
> - REPL output doesn’t disappear and even stores a history between sessions in `.julia/logs/repl_history.jl` .

This file contains inputs only, no outputs (at least for me). And of course there are no plots.

> [@ExpandingMan](#):
>
> - Nothing is stopping you from running arbitrarily many instances of Julia.

Sure, but you always need to manually choose which instance to use. While in jupyter there is a clear correspondence between notebook and backend instance, so they cannot be mixed up.

---

<div class="post-metadata">

**Author:** ![aplavin](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/aplavin/32/222056_2.png) [@aplavin](https://discourse.julialang.org/u/aplavin)\
**Post date:** [December 5, 2019, 4:08pm UTC](https://discourse.julialang.org/t/switching-from-jupyter-to-a-proper-ide/31648/22 "2019-12-05T16:08:15Z")

</div>

Indeed this looks pretty close to what I imagined, closer than any other solutions I saw. Maybe at some point I will seriously try emacs 🙂

---

<div class="post-metadata">

**Author:** ![ExpandingMan](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/expandingman/32/866_2.png) [@ExpandingMan](https://discourse.julialang.org/u/ExpandingMan)\
**Post date:** [December 5, 2019, 4:24pm UTC](https://discourse.julialang.org/t/switching-from-jupyter-to-a-proper-ide/31648/23 "2019-12-05T16:24:19Z")

</div>

It sounds to me like the core issue is that with JupyterLab you are doing everything from a single server, and when you are using IDE’s you are doing it from multiple different servers. You can have the same reproducability with most IDE’s if you just did that from a single server as well.

Granted, if you’re connectivity is not good enough for an `ssh` session, that’s definitely an issue I don’t know how to overcome. If this really is a persistent issue for you you may have no choice but to stick with JupyterLab.

---

<div class="post-metadata">

**Author:** ![orialb](https://avatars.discourse-cdn.com/v4/letter/o/65b543/32.png) [@orialb](https://discourse.julialang.org/u/orialb)\
**Post date:** [December 5, 2019, 4:46pm UTC](https://discourse.julialang.org/t/switching-from-jupyter-to-a-proper-ide/31648/24 "2019-12-05T16:46:23Z")

</div>

Is there a simple way to reproduce the exact window layout and list of open buffers between different machines? This seems to be also something OP wishes for.  
I’m aware of save-desktop mode (or something like this) to reproduce the state when restarting emacs on the same machine, could one somehow share this between machines?

---

<div class="post-metadata">

**Author:** ![non-Jedi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/non-jedi/32/3645_2.png) [@non-Jedi](https://discourse.julialang.org/u/non-Jedi)\
**Post date:** [December 5, 2019, 5:00pm UTC](https://discourse.julialang.org/t/switching-from-jupyter-to-a-proper-ide/31648/25 "2019-12-05T17:00:41Z")

</div>

I haven’t tried it my self, but I think saving a [perspective](https://github.com/nex3/perspective-el) file on a remote machine should “just work”. There would probably be an issue if you access files by different paths on different machines, though (`/ssh:user@myurl#20:/path/to/file.org` vs `smb:user%domain@myurli:/path/to/file.org` or something like that).

EDIT: just tested this setup quickly, and it seems to work as expected.

[Previous page](https://discourse.julialang.org/t/switching-from-jupyter-to-a-proper-ide/31648.md?page=1)
