JuliaCon 2025 Hackathon Ideas!

Hi folks!

I was thinking about JuliaCon 2025 Hackathon ideas for this Saturday! Figured I would start a general Discourse post so everyone can post and peruse ideas. Feel free to share ideas below!

~ tcp :deciduous_tree:

8 Likes
9 Likes

How about writing an initial JVM that runs HelloWorld.class?

free perf improvement clout

Hardware Hacking

Oh I should mention that I brought all the hardware for this with me!

If you want to hack on this, just reach out! And if you want to borrow the machinery while we are here, happy to lend it to you as well – just get it back to me in time for the Hackathon! :smiley:

4 Likes

Aside from possibly doing some hardware hacking (I also brought a RPi Pico 2W if anyone wants to try their hand at deeper embedded programming with Julia!), I’m planning to work on some of these:

  • Adding device-side RNG to Metal.jl
  • Propagate RNG through Dagger.jl tasks for reproducible parallel programs
  • Implementing copyto between GPU and CPU views of arbitrary layouts, for Dagger.jl
3 Likes

Hi, a quick question here, can’t this be realized by setting seeds identical to the MPI number?

New atoms in Convex.jl.
Some ideas can come from the atoms in CVXPY.

1 Like

I would love StatsModels.jl to reach 1.0, in particular if it solves its performances issues / inherent slowness

3 Likes

Compiling Julia code small wasm modules using juliac and run without a jl runtime on top of wasm runtime.
Why would I say anything else then what i want.:grinning_face:

3 Likes
  • Getting juliac.jl to emit header files together for better integration with other ecosystems that want to use Julia compiled .so as backend.
  • Fix lowering of @atomic for floats on shared memory for Metal backend
  • Getting TypstString to work as Makie.jl axis labels and text scatters
  • Check speedup opportunity in EvoTrees.jl regarding GPU histogramming
6 Likes

I’m looking for people who are interested in extending CliffordNumbers.jl to interoperate with Makie and provide convenient 2D and 3D plotting methods for projective and conformal geometric algebras. With this implemented, it’ll be really easy to plot arbitrary lines, planes, circles, and spheres and their meets/joins.

The code for this that I’ve already written lives in this repo, and it shouldn’t be too hard to get this into a package extension. If you want a relatively simple introduction to computing with geometric algebra, this is it!

4 Likes

I’ll be trying to chip away at more of the pairwise reduction refactor (#58418). Some concrete things to work on here include:

  • Doing a coordinated merge with sparse arrays for some pre-cursors that were split out (julia#55628 + JuliaSparse/SparseArrays.jl#615).
  • Brainstorming on the arrangement of the internals (and perhaps a real interface?) to help packages that were overloading internals before
  • Improvements to the benchmarking and analysis/plotting
  • Hunting for more optimizations and better rearrangements (that is, Performance challenge: can you write a faster sum?)
4 Likes

Will do

Bonus

  • Update MakieTeX.jl’s version of Typstry.jl to version 0.6.0 (related to @jling’s idea)
  • Support Typst in Handcalcs.jl
  • Update Typst_jll.jl to version 0.13.1
5 Likes

Will do

  • brainstorm about the internals of Manifolds.jl to simplify the current traits system, since that does only help little and yields annoyingly complicated error messages – with @mateuszbaran
  • Check the JuliaManifolds ecosystem to switch to Runic.jl as code formatter
  • maybe look at the hardware ideas from above, though I only have old(ish) Raspberry Pis at home

…and maybe give Typst another try

2 Likes

Regarding Makie and Typst, I’d be interested in finding out whether the Typst library could be coaxed somehow to spit out glyph and linesegment information in a format we can use in Makie’s backends. Then we could maybe use Typst as an option to format text in Makie. I find that much more likely to work reasonably well given Typst’s speed than any LaTeX solution.

6 Likes

I’d be very interested in working with anyone on making locally running models more usable from Julia. A few specific areas I’d like to work on:

  • Enable Transformers.jl to load the latest HuggingFace models (like “nvidia/OpenReasoning-Nemotron-32B”)
  • Improve the ability of PromptingTools.jl to use tools with Ollama models (currently tool use requires proxying local Ollama models via the OpenAI scheme, which is slightly uncomfortable and partially broken)
  • Integrate tool-calling/MCP with JustSayIt (may require one of these first two to work first, though)
1 Like

Things i will be working on:

  • Interactive dashboard to tune Quanser robot pendulum control parameters
  • Wrapping Google’s s2 library in a C API that we can use from Julia, for spherical geometry
  • Getting that spherical wrapper integrated into GeometryOps via an extension
  • Improvements to GeoMakie for satellite things (sorry @ffreyer, this will involve arbitrary model matrices :D)
  • Refactoring the Makie text pipeline to also accept scatter plots with @jling
  • Stretch goal: trying to get GeoMakie’s GeoAxis to have better ticks, one projection at a time

But if anyone has any questions about Makie, Documenter, etc., feel free to grab me!

3 Likes

A few of us (@asinghvi17) discussed this, and think it might be done by wrapping typst-layout in a jll.

1 Like

Naturally I got very little of this done. But huge thanks to @jpsamaroo for looking at my not-so-great RangeExtractor.jl code and giving me some solid advice on how to shape it up!

Claude created a C API for s2 but it was horribly inefficient, so I’m trying the HEP crew’s WrapIt.jl library instead. Hopefully that works well.

2 Likes