Citing Tamas (from the other thread) “Maybe I am overly optimistic, but in the meantime I consider it within the capacity of an average adult to wait a short while when loading unfamiliar package in a new programming language without assuming that the computer is broken.”
If we talk about usability issue you need somehow to forget your know-how and experiences and try to look like you would see it the first time …
_
_ _ _(_)_ | Documentation: https://docs.julialang.org
(_) | (_) (_) |
_ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.2.0 (2019-08-20)
_/ |\__'_|_|_|\__'_| | Official https://julialang.org/ release
|__/ |
julia> using Pkg
julia> @time Pkg.add("Plots")
Cloning default registries into `~/.julia`
Cloning registry from "https://github.com/JuliaRegistries/General.git"
Added registry `General` to `~/.julia/registries/General`
Resolving package versions...
Installed Missings ─────────── v0.4.1
Installed Showoff ──────────── v0.3.1
Installed DataAPI ──────────── v1.0.1
Installed BinaryProvider ───── v0.5.6
Installed StatsBase ────────── v0.32.0
Installed Plots ────────────── v0.26.2
Installed Contour ──────────── v0.5.1
Installed Colors ───────────── v0.9.6
Installed Measures ─────────── v0.3.0
Installed Requires ─────────── v0.5.2
Installed Reexport ─────────── v0.2.0
Installed OrderedCollections ─ v1.1.0
Installed RecipesBase ──────── v0.7.0
Installed Compat ───────────── v2.1.0
Installed IterTools ────────── v1.2.0
Installed DataStructures ───── v0.17.0
Installed NaNMath ──────────── v0.3.2
Installed FFMPEG ───────────── v0.2.2
Installed Parsers ──────────── v0.3.6
Installed JSON ─────────────── v0.21.0
Installed FixedPointNumbers ── v0.6.1
Installed StaticArrays ─────── v0.11.0
Installed GeometryTypes ────── v0.7.5
Installed PlotUtils ────────── v0.5.8
Installed PlotThemes ───────── v0.3.0
Installed SortingAlgorithms ── v0.3.1
Installed ColorTypes ───────── v0.8.0
Installed GR ───────────────── v0.41.0
Updating `~/.julia/environments/v1.2/Project.toml`
[91a5bcdd] + Plots v0.26.2
Updating `~/.julia/environments/v1.2/Manifest.toml`
[b99e7846] + BinaryProvider v0.5.6
[3da002f7] + ColorTypes v0.8.0
[5ae59095] + Colors v0.9.6
[34da2185] + Compat v2.1.0
[d38c429a] + Contour v0.5.1
[9a962f9c] + DataAPI v1.0.1
[864edb3b] + DataStructures v0.17.0
[c87230d0] + FFMPEG v0.2.2
[53c48c17] + FixedPointNumbers v0.6.1
[28b8d3ca] + GR v0.41.0
[4d00f742] + GeometryTypes v0.7.5
[c8e1da08] + IterTools v1.2.0
[682c06a0] + JSON v0.21.0
[442fdcdd] + Measures v0.3.0
[e1d29d7a] + Missings v0.4.1
[77ba4419] + NaNMath v0.3.2
[bac558e1] + OrderedCollections v1.1.0
[69de0a69] + Parsers v0.3.6
[ccf2f8ad] + PlotThemes v0.3.0
[995b91a9] + PlotUtils v0.5.8
[91a5bcdd] + Plots v0.26.2
[3cdcf5f2] + RecipesBase v0.7.0
[189a3867] + Reexport v0.2.0
[ae029012] + Requires v0.5.2
[992d4aef] + Showoff v0.3.1
[a2af1166] + SortingAlgorithms v0.3.1
[90137ffa] + StaticArrays v0.11.0
[2913bbd2] + StatsBase v0.32.0
[2a0f44e3] + Base64
[ade2ca70] + Dates
[8bb1440f] + DelimitedFiles
[8ba89e20] + Distributed
[b77e0a4c] + InteractiveUtils
[76f85450] + LibGit2
[8f399da3] + Libdl
[37e2e46d] + LinearAlgebra
[56ddb016] + Logging
[d6f4376e] + Markdown
[a63ad114] + Mmap
[44cfe95a] + Pkg
[de0858da] + Printf
[3fa0cd96] + REPL
[9a3f8284] + Random
[ea8e919c] + SHA
[9e88b42a] + Serialization
[1a1011a3] + SharedArrays
[6462fe0b] + Sockets
[2f01184e] + SparseArrays
[10745b16] + Statistics
[8dfed614] + Test
[cf7118a7] + UUIDs
[4ec0a83e] + Unicode
Building GR ────→ `~/.julia/packages/GR/ZI5OE/deps/build.log`
Building FFMPEG → `~/.julia/packages/FFMPEG/9JQpZ/deps/build.log`
Building Plots ─→ `~/.julia/packages/Plots/Ih71u/deps/build.log`
110.991458 seconds (10.46 M allocations: 490.409 MiB, 0.19% gc time)
julia> @time using Plots
[ Info: Precompiling Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80]
59.120554 seconds (5.35 M allocations: 302.212 MiB, 0.46% gc time)
julia> @time plot(rand(8,2))
21.057579 seconds (46.02 M allocations: 2.265 GiB, 7.77% gc time)
julia> @time plot(rand(8,2))
0.001884 seconds (2.78 k allocations: 207.109 KiB)
So a first time user sees:
- Download and install (and in some languages this means package/library is available)
- Build (and in some languages this means package/library is ready to run)
- using / precompile (and in some languages this means, after compilation you are ready to run - fast)
- plot ( ‘the 21s is spend on what?’)
- 2nd plot → julia is fast.