José Valim
@josevalim.bsky.social
5.7K followers 17 following 90 posts
Creator of Elixir. Working at Dashbit and Livebook.
Posts Media Videos Starter Packs
Reposted by José Valim
inazarova.bsky.social
Friends, @josevalim.bsky.social will speak at the special SF Ruby x Elixir meetup at PlanetScale HQ already on Wed, June 18.
Sign up: lu.ma/rzyjxo93
Tidewave
Tidewave.ai
Reposted by José Valim
se4fp.github.io
🚀 We're excited to welcome Dashbit (dashbit.co) as a Bronze Sponsor of SE4FP!

Co-founded by @josevalim.bsky.social, Dashbit drives Elixir adoption in production and invests heavily in open source projects like Elixir, Ecto, Nx, and Broadway. 💜

#SE4FP #ElixirLang #OpenSource
Reposted by José Valim
zachdaniel.dev
Elixir 1.19 is a banger! Honestly I'm so pleased with the direction that #ElixirLang is going. My programs just get faster and more correct every time. I just know that we're in good hands. Thank you to everyone on the team for your hard work!

github.com/elixir-lang/...
Release v1.19.0-rc.0 · elixir-lang/elixir
Type system improvements Type checking of protocol dispatch and implementations This release also adds type checking when dispatching and implementing protocols. For example, string interpolation i...
github.com
josevalim.bsky.social
FWIW, I almost never ask it to correct itself. Usually I start again, giving more information (or by updating my rules file), and then if it doesn't work, I just do it myself.

It feels like once it goes in the wrong path, it is very hard to "right" it.
Reposted by José Valim
steffend.me
One common pitfall when using lists in #LiveView is that they are not change-tracked. We might have something to improve that situation in an upcoming update! #MyElixirStatus #Phoenix #ElixirLang
A HEEx template:

~H"""
<ul>
  <li :for={%{id: id, name: name} <- @items} :key={@id}>
    Count: <span>{@count}</span>,
    item: {name}
  </li>
</ul>
"""

Notice the special `:key` attribute.
josevalim.bsky.social
Just to confirm, it is all working as expected. It compiles on Erlang/OTP 27, but not on Erlang/OTP 28. It can't really work on Erlang/OTP 28 so I appreciate you going ahead and submitting PRs for those projects.
Reposted by José Valim
lawik.bsky.social
I have been busy doing too much community and ecosystem stuff to be a good prospector and salesman. If you think I could be helpful to your business, holler. We do big picture consulting on Elixir projects and their teams as well as hands on keyboard work.

#elixirlang
josevalim.bsky.social
Both algebra and reflection. For example, every binary has to be traversed twice, one to figure out to print it as a binary/string and another for the algebra document. Similar for maps deciding between keywords or => and so on.
josevalim.bsky.social
That code will always fail on Erlang/OTP 28, so we added an earlier warning, but we should probably have gated it around a OTP_RELEASE check. I will do it now.

Btw, don't expect me to check bsky/twitter, this would have been seen earlier on official language channels. :)
josevalim.bsky.social
I can confirm it is expensive, it traverses data structures, reflecting on them, then it builds an algebra document, and then it figures out the best way to format them. Although there may be some low hanging fruits somewhere.
Reposted by José Valim
lucas.mendelowski.com
Join our next KRUG meetup, powered by @rubycentral.org & Fastly, with venue support from Forte Digital

Talks:

- Michał Papis: Code UnCov & Pluginator
- @josevalim.bsky.social: Livebook - where Web, AI, and Concurrency meet

🗓️ June 10, 18:00
📍 Forte Space, Krupnicza 3, Kraków

🔗 RSVP lu.ma/0852jl2w
Reposted by José Valim
steffend.me
As we're getting ready for the first release candidate of #Phoenix #LiveView 1.1, I want to write about some of the new features and improvements we've been working on. A thread!
#ElixirLang #MyElixirStatus
josevalim.bsky.social
I had to double check 😂
josevalim.bsky.social
Thank you! I wanted to post it here but unfortunately there is a 2 minutes limit on videos (and I didn't want to go through the hassle of uploading it somewhere else either).
josevalim.bsky.social
That one is on me, sorry. It was very outdated. mix xref docs is the way to go and is always up to date on latest best practices: hexdocs.pm/mix/Mix.Task...
mix xref — Mix v1.18.3
hexdocs.pm
josevalim.bsky.social
Cool <3 We also have a Discord server on the website in case you want to join us and chat. There is a #rails channel!
josevalim.bsky.social
After discussing it for a bit, I am thinking a "get_package_location" should be enough, as it can then use the regular shell commands to interact with that directory. Can you try that instead?
josevalim.bsky.social
Sweet! Would you be willing to send some PRs? I have to discuss with the team but I can say for sure the built-in get_source_location should be able to deal with gems Then next we need to find out a way to read them (it works in Elixir because packages are installed within the project root)
josevalim.bsky.social
Introducing Tidewave: tidewave.ai

While working on our web apps, we run code, query the database, read logs, search docs… but our AI tools are limited to reading code.

Tidewave closes this gap by introducing Runtime Intelligence, for Phoenix and Rails. More coming soon, check out the website!
Tidewave
tidewave.ai
Reposted by José Valim
membrane-swmansion.bsky.social
Make your LiveView development experience better – check out the first sneak peek of the upcoming features in LiveDebugger v0.2.0 🛠️

More coming soon – stay tuned!

Github: github.com/software-man...
josevalim.bsky.social
It is .ai for "AI CARAMBA"
Reposted by José Valim
whatyouhi.de
#elixir community!

I’m trying to write a blog post and need some sources/data.

Could you please run "mix test" on one or more of your @elixir-lang.org codebases and report results?

I’m looking for:

1. # of tests
2. # of async tests
3. Total time sync
4. Total time async
Reposted by José Valim
tylerayoung.com
Wow, LiveDebugger is amaaaaaazing.

It's a dev-only package that adds a little blue "bug" button in the bottom right of the screen to open a debugging dashboard. From that dashboard, you can inspect all the LiveViews running on your local server. By "inspect," I mean do things like:

(🧵)
thinkingelixir.com
News includes Phoenix 1.8.0-rc with magic link auth and DaisyUI components, Ecto's new privacy features, the Elixir Secure Coding project's new home, and more! Plus an interview with Krzysztof Nalepa about LiveDebugger. #ElixirLang www.youtube.com/watch?v=HNl-...
Thinking Elixir Podcast 249: LiveDebugger: Peering Inside a LiveView
YouTube video by Mark Ericksen
www.youtube.com
josevalim.bsky.social
Thank you, I was also annoyed by this!