## Julia tips This page is best viewed with a [markdown viewer](https://chrome.google.com/webstore/detail/markdown-viewer/ckkdlimhmcjmikdlpkmbgfkaikojcbjk?hl=en) * [Julia release notes](https://docs.julialang.org/en/v1/NEWS/) * [Julia performance tips](https://docs.julialang.org/en/stable/manual/performance-tips) * [Julia Plot attributes/keys](http://docs.juliaplots.org/latest/attributes) * [Chrome plug-in for viewing .ipynb files (Jupyter notebooks)](https://chrome.google.com/webstore/detail/open-in-nbviewer/ihlhlehlibooakiicbiakgojckpnlali) that is based on http://nbviewer.jupyter.org * In the shell use `setenv JULIA_NUM_THREADS 4` before starting Julia, because [the default is 1](https://docs.julialang.org/en/latest/manual/environment-variables/#JULIA_NUM_THREADS-1) * Use `Threads.nthreads()` to see how many CPU threads Julia is using. * You can [customize your Julia prompt](https://en.wikibooks.org/wiki/Introducing_Julia/The_REPL#Changing_the_prompt_and_customising_your_Julia_session) * My Julia prompt shows the version and the number of threads: ``` using REPL function myrepl(repl) repl.interface = REPL.setup_interface(repl) nt = Threads.nthreads() repl.interface.modes[1].prompt = "julia-$(string(VERSION))κ$nt> " return end atreplinit(myrepl) ``` * Use package `Revise` for development * [Browser shortcut for searching Julia manual](https://discourse.julialang.org/t/how-to-search-the-manual-more-efficiently/19314) * [juypytext](https://github.com/mwouts/jupytext) is useful for converting between jupyter notebooks and julia scripts * To use `Interact` package in Jupyter with Julia 1.2 I did ``` ]add WebIO ]build WebIO import WebIO WebIO.install_jupyter_nbextension() ``` per advice at https://juliagizmos.github.io/WebIO.jl/latest/troubleshooting/not-detected/ https://juliagizmos.github.io/WebIO.jl/latest/providers/ijulia/#IJulia-1