Too much time on my hands

If you’re interested in this, see also this old thread. I’ve long had an interest in building this as well, and have made some abortive attempts here: GitHub - kescobo/Hapi.jl: [WIP] Workflow software in julia

I even wrote a NumFocus small development grant to give me the excuse to actually spend time on it, but alas…

3 Likes

I made a PR for package creation through the VSCode UI a while ago New project creation command by BenPH · Pull Request #2799 · julia-vscode/julia-vscode · GitHub. If anyone feels like bumping it or taking it over go right ahead!

2 Likes

OK, that looks like a reasonable plan:

  • Finish the current approach with a GUI for PkgTemplates.jl, supporting for the beginning just selected plugins, as in the current mockup. I’d estimate 30% to 50% as already has been done for that limited approach. Collect feedback (if any).
  • Check if BestieTemplate.jl for the backend and/or Bonito.jl for GUI are better choices. If yes, then that would practically mean writing another package from the scratch.
  • Check the possibility of integration as a VS Code plugin.
10 Likes

I suggest you leave the path of considering things from the point of view of programming in a specific language which needs to restrict your freedom of creating solutions to it. All of the computing comes down to a choice you make using some language. Why not making choices using the spoken language or phrases which remind spoken language sentences to a degree to be understood without any prior experience with “programming”? This will shift your experience to a new level from which perspective most of the detailed programming efforts start to appear useless and move it towards what really matters. Are you ready for such a shift? It would be a much better investment of time as circling in what is there making one more round.

Since @TheCedarPrince mentioned me, one thing that is definitely lacking in the Julia ecosystem is a Julia equivalent of Kedro (a package ecosystem for managing replicable data pipelines).
Note that presence of frameworks like this is needed for higher industrial adoption of the language (that in turn would attract funding to the package development).

4 Likes

This absolutely overlaps with what I’m going for with DataToolkit.jl, and if I could interest you in helping that would be brilliant :grinning:.

At the very least, it would probably be worth us talking more if you’re thinking of pursing a project along these lines.

6 Likes

As replicable data pipelines, DataToolkit and all that is not something I can really help with, I’d suggest to continue that line of discussion (if there is a need to) in a separate topic.

2 Likes

CSV.jl has not seen much action for a year. I imagine a large part of the community is using it. I posted a bug recently about something breaking in Julia 1.11-rc, but has not received any response.

1 Like

To be honest, I’m afraid writing PRs for a large and not well maintained project is a recipe for frustration, and despite having too much time on my hands, frustration is not what I’m looking for. Sorry for being that egoistic. Becoming a maintainer myself, on the other side, is beyond my qualification.

Specifically CSV.jl has e.g. a documentation (!) PR from Oct 22, 2022, waiting for a review.

4 Likes

Julia 1.11 still has some major issues due to the addition of Memory so I’m not sure if it is worth fixing CSV.jl until Julia itself is working correctly. For example I am waiting on a fix for `String(v::Memory{UInt8})` doesn't make a copy · Issue #54369 · JuliaLang/julia · GitHub to be able to fix my package ZipArchives.jl for Julia 1.11.

2 Likes

@tecosaur while this package is very useful, I feel it only addresses some standardization of providing a dataset along with preprocessing rules. I believe this is very useful for reproducible academic research projects.
However, this does not address needs of an enterprise that requires running and controlling some daily or weekly replicable data pipelines (this includes data ingestion, ETL, running, updating and storing arbitrary ML models etc.). I believe such feature is not present in the ecosystem. But this of course falls under on a broader topic on how to gain Julia adoption among the enterprise users which would allow to maintain Julia in the long run.

Right, glad the focus of the project comes across – it is that :slight_smile:

However, I think there’s also a fair bit of overlap between a project built for bespoke single-use reproducible analysis (DataToolkit) and something for reusable pipelines (Kedro, Snakemake, Cromwell, NextFlow).

If this is a conversation you’d be interested in having, I’d be happy to find a bit of time.

I have very little knowledge of GUI’s but thought MouseTrap and MousetrapMakie to be interesting. I think the author went on leave for some health issues, and there were some things not working so I never followed up.

For something totally different, there are some nice cost effective ADC boards for the Raspberry Pi. I have wrapped the MCC172 in Julia and used Clang to start the other boards, but they need to be finished. If this type of hardware interface is up your ally this would be a nice addition.

1 Like

Maybe support for developing Julia packages in the new Positron ide as discussed here.

1 Like

Yes and no. I remember @oxinabox talking about tweaking DataDepsGenerators to make it kinda snakemake-like, and you could certainly abuse the machinery of DataToolkit’s processing specifications to perform reproducible analysis, but I think the semantics are very different.

The point of DataToolkit in the end is to reproducibly have the same thing. The point of workflow managers is to reproducibly do the same thing on different data.

As you are experienced in JS developing, will it be a suitable project to write a vscode-extension to view .jld2 type file? .jld2 file is a binary file native in Julia JLD2

FYI, here are some dicussions on it

Note that you can use h5wasm to view JLD2 files in VSCode:

Just installed H5Web, took a JLD2 file, containing just one object, renamed it to give it a suffix .hdf5 - and got an error from H5Web. Or 17 errors, I’m not sure. The object was a Dict{Symbol, CustomStruct}.

On a very simple JLD2 file, containing just one small 1D array, the viewer worked OK.

:grin: Thank you, should I look for an IT job, I’d use that phrasing :grin:

1 Like

Well, I was thinking about buying me a soldering station and a scope some day, and learning Arduino, RaspberryPi & Co. Will have to ask my wife :wink:

1 Like