# JuliaHub raises $65m Series B and launches Dyad 3.0

**URL:** <https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941>\
**Category:** Offtopic\
**Created:** [May 1, 2026, 9:35am UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941 "2026-05-01T09:35:03Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![nilshg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nilshg/32/2283_2.png) [@nilshg](https://discourse.julialang.org/u/nilshg)\
**Post date:** [May 1, 2026, 9:35am UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/1 "2026-05-01T09:35:03Z")

</div>

> **[JuliaHub Raises $65M Series B and Launches Dyad 3.0, Bringing Agentic AI to...](https://juliahub.com/blog/juliahub-raises-65m-series-b-launches-dyad-3.0)**
>
> JuliaHub announces a $65M Series B funding round, led by Dorilton Capital with participation from General Catalyst, AE Ventures, and Bob Muglia, alongside the launch of Dyad 3.0, an agentic AI platform for engineering.

Congratulations to the whole team!

Here’s hoping that 0.1% of the funding goes towards completing date axis support for Makie 😃

---

<div class="post-metadata">

**Author:** ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://discourse.julialang.org/u/jules)\
**Post date:** [May 1, 2026, 7:28pm UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/2 "2026-05-01T19:28:56Z")

</div>

> [@nilshg](#):
>
> completing date axis support for Makie

remind me what’s still missing 😅

---

<div class="post-metadata">

**Author:** ![j\_u](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/j_u/32/219081_2.png) [@j\_u](https://discourse.julialang.org/u/j_u)\
**Post date:** [May 2, 2026, 12:31am UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/3 "2026-05-02T00:31:40Z")

</div>

Congratulations. I am still optimistic that we can overcome the two language problem. Together.

---

<div class="post-metadata">

**Author:** ![nilshg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nilshg/32/2283_2.png) [@nilshg](https://discourse.julialang.org/u/nilshg)\
**Post date:** [May 2, 2026, 6:10pm UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/4 "2026-05-02T18:10:41Z")

</div>

Probably one for another thread, but my main gripe with it at the moment is that I can’t add vlines to date axes:

```julia-auto
lines(Date(2000):Year(1):Date(2010), rand(11))
vlines!(Date(2005))

```

errors during some conversion attempt.

---

<div class="post-metadata">

**Author:** ![icweaver](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/icweaver/32/45764_2.png) [@icweaver](https://discourse.julialang.org/u/icweaver)\
**Post date:** [May 2, 2026, 11:45pm UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/5 "2026-05-02T23:45:28Z")

</div>

Just to bandwagon, are there any issues on unitful heatmaps (specifically for the zvals/colorbar values) that we can follow, maybe in relation to [Improve dim converts recipe compatibility, usability by ffreyer · Pull Request #5323 · MakieOrg/Makie.jl · GitHub](https://github.com/MakieOrg/Makie.jl/pull/5323) or [Breaking release 0.25 by ffreyer · Pull Request #5484 · MakieOrg/Makie.jl · GitHub](https://github.com/MakieOrg/Makie.jl/pull/5484)?

---

<div class="post-metadata">

**Author:** ![marteaua](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/marteaua/32/214927_2.png) [@marteaua](https://discourse.julialang.org/u/marteaua)\
**Post date:** [May 3, 2026, 7:40pm UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/6 "2026-05-03T19:40:24Z")

</div>

Are 65 thousands dollars necessary to fix that ? 😅

---

<div class="post-metadata">

**Author:** ![icweaver](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/icweaver/32/45764_2.png) [@icweaver](https://discourse.julialang.org/u/icweaver)\
**Post date:** [May 3, 2026, 10:50pm UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/7 "2026-05-03T22:50:47Z")

</div>

![image](https://global.discourse-cdn.com/julialang/original/3X/2/b/2b0168a5debc0793eb85ae34cd07cfbb2bfc2c76.jpeg)

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [May 4, 2026, 9:03am UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/8 "2026-05-04T09:03:07Z")

</div>

> [@nilshg](#):
>
> date axis support for Makie 😃

> [@icweaver](#):
>
> Just to bandwagon, are there any issues on unitful heatmaps (specifically for the zvals/colorbar values) that we can follow, maybe in relation to [Improve dim converts recipe compatibility, usability by ffreyer · Pull Request #5323 · MakieOrg/Makie.jl · GitHub](https://github.com/MakieOrg/Makie.jl/pull/5323) or [Breaking release 0.25 by ffreyer · Pull Request #5484 · MakieOrg/Makie.jl · GitHub](https://github.com/MakieOrg/Makie.jl/pull/5484)?

I’m not sure dates are something we use a lot in plots 😅, but I will note that the 4th most active Makie contributors, @asinghvi17, is one of the members on the Dyad team and some of our product areas like Multibody use Makie, so there is a good amount that gets upstreamed here. In particular, SciML is starting to use Makie recipes (at least as implemented by Anshul) and so we’ll be relying on and improving that along the way. Just thought I’d mention how this all ties back into open source!

---

<div class="post-metadata">

**Author:** ![j\_u](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/j_u/32/219081_2.png) [@j\_u](https://discourse.julialang.org/u/j_u)\
**Post date:** [May 4, 2026, 12:00pm UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/9 "2026-05-04T12:00:45Z")

</div>

Dear Christopher, I hope you do not mind and I hope this message finds you well. If I may ask, whom do you currently represent? I recall that a few years ago, shortly after I joined the community, you kindly suggested that I reach out to you. At that time, my understanding was that I would be contacting the MIT researcher. However, I soon realized this was likely not the case. I would be grateful if you could clarify your current role and affiliation. Thank you in advance for your time.

---

<div class="post-metadata">

**Author:** ![ffreyer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ffreyer/32/21569_2.png) [@ffreyer](https://discourse.julialang.org/u/ffreyer)\
**Post date:** [May 4, 2026, 12:17pm UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/10 "2026-05-04T12:17:19Z")

</div>

Units for vlines, hlines, heatmap are all fixed in #5323 / Makie 0.25. Almost all plots should be fixed after that.

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [May 4, 2026, 2:43pm UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/11 "2026-05-04T14:43:48Z")

</div>

> [@j\_u](#):
>
> Dear Christopher, I hope you do not mind and I hope this message finds you well. If I may ask, whom do you currently represent?

I represent Chris 😅. The positions are all concurrent. I am still a research affiliate at MIT, doing work every week with the students to publish research in numerical methods and scientific machine learning. I am the VP of Modeling and Simulation at JuliaHub, leading the Dyad team to put a commercial modeling software out. I also have affiliations with Neuroblox and PumasAI which are other transitions of MIT Julia Lab / Julia’s open source into industrial spaces. Then there’s also just everything around the SciML Open Source Software Organization, which is a non-profit around the open source software since not all open source software is research related (probably only half 😅).

So

> [@j\_u](#):
>
> At that time, my understanding was that I would be contacting the MIT researcher. However, I soon realized this was likely not the case.

Nope, you’re still contacting the MIT researcher. Note that none of my affiliations has changed since 2021, so this has all been the same the last 5 years. Still averaging 20 publications or so a year, so it’s all still current and ongoing. Just many many things going on.

Generally the triage is that, if you have an open source issue, then please open an issue. That’s the MIT / open source hat, I do all of that work publicly. Share your MWE on Github, and I’ll work on it, discuss in open Slack channels, etc. All of the ongoing work for publications and such is just out there being collaboratively worked on as part of the org. If you have a secret IP that you cannot share, then it’s not in the MIT / open source bucket. If it’s pharma, it’s the PumasAI bucket. Neuroscience, Neuroblox bucket. Anything else industrial, JuliaHub bucket. FWIW, I also karaoke DJ at night, many times while on Discourse.

But if you want help on private IP directly to me, I do get around to it sometimes. But do note that at this point, the open source community is large enough that I get around 30 or so emails a day of private models / ODEs to dig around in, and these days it’s difficult to keep up with that amount. I try to respond to each email in some way, but sometimes it can be quite late. If you want priority, then go through JuliaHub as whatever is there goes to the top of the list. Otherwise, I always note for folks to post their model and question publicly, like to this Discourse, as the priority order is commerical engagements → public work → everything else. The commercial stuff is on deadlines while the MIT stuff 🤷‍♂️ if it takes 5 years to publish no one’s counting (but generally I’ll respond to everything online 😅)

There’s just a ton of requests and lots going on. We need to really grow the team of developers and researchers and really share the load more there. This system is designed exactly for that: to continually help get more people into the Julia ecosystem full time.

So if I missed something, totally sorry and hopefully by growing the team and lab less will be missed.

---

<div class="post-metadata">

**Author:** ![j\_u](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/j_u/32/219081_2.png) [@j\_u](https://discourse.julialang.org/u/j_u)\
**Post date:** [May 4, 2026, 4:03pm UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/12 "2026-05-04T16:03:05Z")

</div>

It looks like there are many potential conflicts of interest, I’m glad I stayed away since our initial direct contact.

---

<div class="post-metadata">

**Author:** ![langestefan](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/langestefan/32/207923_2.png) [@langestefan](https://discourse.julialang.org/u/langestefan)\
**Post date:** [May 4, 2026, 4:28pm UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/13 "2026-05-04T16:28:37Z")

</div>

> [@ChrisRackauckas](#):
>
> I’m not sure dates are something we use a lot in plots 😅, but I will note that the 4th most active Makie contributors, @asinghvi17, is one of the members on the Dyad team

@asinghvi17 is one of the most helpful people I met in the Julia community, especially around makie and documenter. Tell his boss he deserves a raise!

---

<div class="post-metadata">

**Author:** ![icweaver](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/icweaver/32/45764_2.png) [@icweaver](https://discourse.julialang.org/u/icweaver)\
**Post date:** [May 5, 2026, 1:48am UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/14 "2026-05-05T01:48:31Z")

</div>

Right, so unitful axes for heatmaps work beautifully now, thank you! I was wondering more if plotting a unitful matrix was also a possibility? I currently seem to get the following error when I try on your branch:

```julia-repl
julia> using CairoMakie, DynamicQuantities

julia> heatmap(rand(3, 4)u"m")
ERROR: ArgumentError:
Conversion failed for Heatmap (With conversion trait CellGrid()) with args:
    Tuple{QuantityArray{Float64, 2, Dimensions{FRInt32}, Quantity{Float64, Dimensions{FRInt32}}, Matrix{Float64}}}
Got converted to:
    Tuple{QuantityArray{Float64, 2, Dimensions{FRInt32}, Quantity{Float64, Dimensions{FRInt32}}, Matrix{Float64}}}
Heatmap requires to convert to argument types
    Tuple{Union{AbstractVector{T} where T<:Real, Makie.EndPoints, AbstractMatrix{T} where T<:Real}, Union{AbstractVector{T} where T<:Real, Makie.EndPoints, AbstractMatrix{T} where T<:Real}, AbstractMatrix{<:Union{Float32, Float64, ColorTypes.Colorant}}},
which convert_arguments didn't succeed in. To fix this overload convert_arguments(P, args...) for Type{<:Heatmap} or CellGrid() and return an object of the correct type.
(Dim converts were not applied. This happens if `space = data` is not in data space or if the target type of the conversion is reachable without dim converts.)

Stacktrace:
 [1] argument_error(PTrait::CellGrid, P::Type, attr::ComputePipeline.ComputeGraph, user_kw::Dict{…}, converted::Tuple{…})
   @ Makie ~/.julia/packages/Makie/qX9Ep/src/compute-plots.jl:1052
 [2] (Heatmap)(user_args::Tuple{QuantityArray{Float64, 2, Dimensions{…}, Quantity{…}, Matrix{…}}}, user_attributes::Dict{Symbol, Any})
   @ Makie ~/.julia/packages/Makie/qX9Ep/src/compute-plots.jl:1116
 [3] _create_plot(F::Function, attributes::Dict{Symbol, Any}, args::QuantityArray{Float64, 2, Dimensions{…}, Quantity{…}, Matrix{…}})
   @ Makie ~/.julia/packages/Makie/qX9Ep/src/figureplotting.jl:335
 [4] #heatmap#54
   @ ~/.julia/packages/Makie/qX9Ep/src/recipes.jl:571 [inlined]
 [5] heatmap(args::QuantityArray{Float64, 2, Dimensions{FRInt32}, Quantity{Float64, Dimensions{FRInt32}}, Matrix{Float64}})
   @ Makie ~/.julia/packages/Makie/qX9Ep/src/recipes.jl:569
 [6] top-level scope
   @ REPL[2]:1
Some type information was truncated. Use `show(err)` to see complete types.

```

But maybe I am just setting it up incorrectly? Here is how I am adding the dev packages:

```julia-repl
Pkg.add([
    Pkg.PackageSpec(;
        url = "https://github.com/MakieOrg/Makie.jl",
        subdir = "Makie",
        rev = "ff/breaking-0.25",
        ),
    Pkg.PackageSpec(;
        url = "https://github.com/MakieOrg/Makie.jl",
        subdir = "ComputePipeline",
        rev = "ff/breaking-0.25",
    ),
    Pkg.PackageSpec(;
        url = "https://github.com/MakieOrg/Makie.jl",
        subdir = "CairoMakie",
        rev = "ff/breaking-0.25",
    ),
])

```

The hope would then be to add a colorbar to this plot with the correct units

---

<div class="post-metadata">

**Author:** ![Ahmed\_Salih](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ahmed_salih/32/206579_2.png) [@Ahmed\_Salih](https://discourse.julialang.org/u/Ahmed_Salih)\
**Post date:** [May 5, 2026, 6:08pm UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/15 "2026-05-05T18:08:45Z")

</div>

You are quite hostile in your responses considering Christopher was kind enough to answer your question in detail, while being forthcoming and honest.

I am happy that I don’t have to talk to you in person - not that nice to hear right?

Jokes aside, sure we would be able to have fun in person 🙂

Kind regards

---

<div class="post-metadata">

**Author:** ![greatpet](https://avatars.discourse-cdn.com/v4/letter/g/e495f1/32.png) [@greatpet](https://discourse.julialang.org/u/greatpet)\
**Post date:** [May 5, 2026, 10:59pm UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/16 "2026-05-05T22:59:45Z")

</div>

As a clueless reader, I have no idea why random cryptic complaints just pop up without any context explained to a general audience of this public forum.

---

<div class="post-metadata">

**Author:** ![juliohm](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/juliohm/32/215266_2.png) [@juliohm](https://discourse.julialang.org/u/juliohm)\
**Post date:** [May 5, 2026, 11:57pm UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/17 "2026-05-05T23:57:53Z")

</div>

> [@Ahmed\_Salih](#):
>
> You are quite hostile in your responses

I don’t think @j_u was hostile in his response. He was direct and respectful.

> [@greatpet](#):
>
> As a clueless reader, I have no idea why random cryptic complaints just pop up without any context explained to a general audience of this public forum.

Probably the accumulation of unresolved issues related to Julia’s governance model. Search for “governance model” in this forum to learn more. And try to continue this conversation in a separate thread if possible.

---

<div class="post-metadata">

**Author:** ![ffreyer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ffreyer/32/21569_2.png) [@ffreyer](https://discourse.julialang.org/u/ffreyer)\
**Post date:** [May 6, 2026, 12:30am UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/18 "2026-05-06T00:30:17Z")

</div>

No that’s expected to not work. And I’m not sure how that would fit into the dim converts scheme either. The idea with them is that the first plot can set a unit for, say, the x dimension and other plots can then see that and convert accordingly (or error if the units are incompatible). The matrix of a heatmap doesn’t relate to other plots like this, so it’s just skipped.

---

<div class="post-metadata">

**Author:** ![j\_u](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/j_u/32/219081_2.png) [@j\_u](https://discourse.julialang.org/u/j_u)\
**Post date:** [May 6, 2026, 12:50am UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/19 "2026-05-06T00:50:28Z")

</div>

Yeah, nothing personal, Christopher, really. P.S. I’m sorry for interrupting the discussion @nilshg,  
completely unintentional. By the way, to be honest, while the latest round in absolute terms looks  
significant, relative to the previous one, it seems to be a rather modest increase.

---

<div class="post-metadata">

**Author:** ![icweaver](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/icweaver/32/45764_2.png) [@icweaver](https://discourse.julialang.org/u/icweaver)\
**Post date:** [May 6, 2026, 1:33am UTC](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941/20 "2026-05-06T01:33:11Z")

</div>

Thanks for getting back to me, Frederic. Right, so that is why I was asking if there was any work / issue related to this, since it had to do with unit handling. Totally no worries if not, just wanted to make sure I wasn’t duplicating work for y’all if I was to open up an issue on GitHub to track things and maybe work on them. Thanks again for these awesome updates, I’ll stop detouring the thread here now, haha

Update: Got a draft PR going here with this functionality now: [feat: Support matrix data with units by icweaver · Pull Request #5623 · MakieOrg/Makie.jl · GitHub](https://github.com/MakieOrg/Makie.jl/pull/5623)

[Next page](https://discourse.julialang.org/t/juliahub-raises-65m-series-b-and-launches-dyad-3-0/136941.md?page=2)
