4 ms·
I bring up DifferentialEquations.jl specifically because it is supposed to be one of the flagship julia packages. When I paste their examples into my repl and g
by patrick451 4y ago
I bring up DifferentialEquations.jl specifically because it is supposed to be one of the flagship julia packages. When I paste their examples into my repl and get errors or infs where I should get well behaved values, that's their problem, especially when I have the exact version installed that the docs claim to be generated from. I'm not the only one with a similar take that julia has quality control issues, e.g.
https://yuri.is/not-julia/ https://yuri.is/not-julia/
- ChrisRackauckas 4y agoCan you please share which example is broken? I'd be happy to take a look. We share the project/manifest that was used with the build (https://diffeq.sciml.ai/stable/#Reproducibility https://diffeq.sciml.ai/stable/#Reproducibility), so you can see the exact versions of all packages and dependencies. The docs aren't perfect and there's many things we plan to improve within the next month (I'd be happy to detail some of what is planned), but I'd be surprised if the >10k unique monthly viewers all didn't notice that every example is broken without any issues reported (as you claim). It seems every typo seems to get an issue opened these days, but the examples haven't had a report in at least months.
- warinukraine 4y agoWhat you wanna bet that we never hear from him again? (Thanks for your work)
- patrick451 4y agoThis is one I remember https://docs.sciml.ai/DiffEqParamEstim/stable/tutorials/ODE_inference/ https://docs.sciml.ai/DiffEqParamEstim/stable/tutorials/ODE_... All of the cost function values are infinite, which results in an empty plot. There were others, but it's been too long that I don't recall exactly which ones. Edit: Here is another from the advanced tutorials DiffEqUncertainty/02-AD_and_optimization.ipynb The fourth cell produces the error Simultaneously using keywords vars and idxs is not supported. Please only use idxs. Stacktrace: [1] error(s::String) @ Base ./error.jl:35 [2] macro expansion [3] apply_recipe(plotattributes::AbstractDict{Symbol, Any}, sol::SciMLBase.AbstractTimeseriesSolution) @ SciMLBase ~/.julia/packages/RecipesBase/eU0hg/src/RecipesBase.jl:300 [4] _process_userrecipes!(plt::Any, plotattributes::Any, args::Any) @ RecipesPipeline ~/.julia/packages/RecipesPipeline/XxUHt/src/user_recipe.jl:38 [5] recipe_pipeline!(plt::Any, plotattributes::Any, args::Any) @ RecipesPipeline ~/.julia/packages/RecipesPipeline/XxUHt/src/RecipesPipeline.jl:72 [6] _plot!(plt::Plots.Plot, plotattributes::Any, args::Any) @ Plots ~/.julia/packages/Plots/aRJ6C/src/plot.jl:225 [7] #plot#182 @ ~/.julia/packages/Plots/aRJ6C/src/plot.jl:102 [inlined] [8] top-level scope @ In[4]:11 [9] eval @ ./boot.jl:368 [inlined] [10] include_string(mapexpr::typeof(REPL.softscope), mod::Module, code::String, filename::String) @ Base ./loading.jl:1428
- europeanguy 4y ago> This is one I remember https://docs.sciml.ai/DiffEqParamEstim/stable/tutorials/ODE_ https://docs.sciml.ai/DiffEqParamEstim/stable/tutorials/ODE_... > All of the cost function values are infinite, which results in an empty plot. I copy pasted the code up to the first plot of a cost function, and works fine.
- ChrisRackauckas 4y agoWere those run with the same versions as the project/manifests described in the repository reproducibility section (https://docs.sciml.ai/DiffEqParamEstim/dev/#Reproducibility https://docs.sciml.ai/DiffEqParamEstim/dev/#Reproducibility)? Downloading the described package version for DiffEqParamEstim.jl seems to work fine, as I just checked and another user described. The build system builds the outputs and plots using those described versions, so if it errors it would put the error into the documentation. If I had to guess what your issue was, you might be using some old Linux distro that's giving you like a Julia v1.3 with ancient package versions: that's something outside of my control and is the most common reason we've found for people reporting weird failures. We highly highly recommend following the standard installation instructions (https://docs.sciml.ai/Overview/stable/getting_started/installation/#installation https://docs.sciml.ai/Overview/stable/getting_started/instal...) and using the Julia generic binaries (https://julialang.org/downloads/ https://julialang.org/downloads/). On a higher note though... I'm a bit confused: we were talking about DifferentialEquations.jl, one of the libraries that is most heavily maintained, and then when asked for examples of what tutorials aren't working, you don't post any examples from DifferentialEquations.jl but from tutorials of other libraries? One of which we publicly discuss all of the time as not yet completed (DiffEqUncertainty -> SciMLUncertainty, one of the current research projects)? I would not conflate the two, it's like saying SciPy isn't robust because Python's ODES library isn't: they are two different libraries and the authors are quite public about the differences. We have been very public that the UQ stuff is still ongoing research with monthly talks about it, and we keep it in a separate Github repo with separate documentation. We don't call that DifferentialEquations.jl for a very good reason.
- warinukraine 4y agoYeah man Julia's correctness is horrible isn't it? ASML uses Julia for real-time modelling in their photolithography machines, and Stanford's robotics group also uses it for real-time control, however these people are amateurs! On the other hand, patrick451's crud app has a higher standard of correctness! Stop believing everything you read.
- patrick451 4y agoI keep reading about how great julia, but every time I try it, it just seems to suck. So, mission accomplished, I guess?
- europeanguy 4y ago> I keep reading about how great julia, but every time I try it, it just seems to suck. And how do you explain that? Because to me the simplest explanation is very obvious.