Ulf Adams

991 posts

Ulf Adams

Ulf Adams

@ulfjack

CTO of EngFlow GmbH

Katılım Nisan 2018
119 Takip Edilen454 Takipçiler
Pedro Piñera
Pedro Piñera@pepicrft·
@Dimillian How many codex agents do you have running while this is happening? 😜
English
1
0
0
90
Ulf Adams
Ulf Adams@ulfjack·
Highly recommended reading if you’re interested in processor architecture. My only concern: it spends a lot of words on the easy stuff and then glosses over the advanced stuff.
Adam Mainz@MainzOnX

x.com/i/article/2044…

English
1
0
0
76
Adam Mainz
Adam Mainz@MainzOnX·
Chat should I actually post this article? Feels scary powerful. This kind of knowledge might need to stay bottled up idk idk
GIF
Adam Mainz@MainzOnX

First day working on @PyTorch TPU in office ✅ To CELEBRATE Its article time Wednesday! - NV architecture + Differences by generation (ampere +) - GPU vs TPU architecture - Programming model on GPU vs TPU Drop your questions below and I will try to add some insights 👇

English
6
0
14
1.5K
Ulf Adams
Ulf Adams@ulfjack·
@marcaruel Crashes in llama.cpp on Linux on a RTX 5090. Haven’t yet figured out why.
English
1
0
1
65
Marc-Antoine Ruel
Marc-Antoine Ruel@marcaruel·
I'd love to hear the prompt processing and gen speed of nvidia/Gemma-4-31B-IT-NVFP4 on a GB10 (dgx spark)
English
1
0
0
338
Ulf Adams
Ulf Adams@ulfjack·
@marcaruel Not for data centers. 1. Dram has excellent bandwidth/density. 2. The energy usage for the refresh is too small to matter. 3. Mram and nand don’t have enough bandwidth by ~100x. 4. Nor isn’t even close. My prediction: Could change if conditions are right but not soon.
English
0
0
1
44
Marc-Antoine Ruel
Marc-Antoine Ruel@marcaruel·
Will the next AI hardware accelerators have flash instead of RAM for the model and kernels? Maybe NOR or MRAM could make sense? Refreshing DRAM that essentially never change is wasteful.
English
1
0
0
118
José Valim
José Valim@josevalim·
IMO, unsupervised coding agents are still in the "uncanny valley" of software development. Given the recent hype of AI writing "a browser with 1 million lines of code from scratch", I have been trying to give it more open-ended tasks, and every time it delivered seemingly working software but with large flaws in the implementation. Last week it was a "download manager in Rust" that completely failed at concurrent downloads. This week was a port of the Ryu algorithm for pretty-printing floating points with different precisions (f32/f16/bf16/f8). Both times the software seemed to work but had deal breaker bugs lurking. Fixing those required me to become part of the loop and supervise the agent. Here is a breakdown of the latest experiment, for those who may be interested. TL;DR: github.com/elixir-nx/nx/p… (it says 66k lines added, but 65.5k is a generated fixture file, so the diff is more like +800/-300). --- The goal was to implement pretty-printing of floating points (f32/f16/bf16/f8) in Numerical Elixir. I created a blank repository, wrote the problem statement, and mentioned I specifically wanted the Ryu algorithm, linking to a reference implementation in Erlang (github.com/erlang/otp/pul…) and to the paper (dl.acm.org/doi/10.1145/31…). I did one attempt with Sonnet, another with Opus, and while they both delivered a project with a passing test suite, both implementations were wrong and incomplete. In the first attempt, many of the tests were fabricated, to match the faulty implementation. With wrong code and wrong tests, there was not much to salvage. Time to start over. In the second attempt, now with Opus, I suggested it could generate all possible printable values for f16 from the canonical Ryu implementation in C (since there are only 65k of them), and use that to validate the algorithm. Once again, it delivered a passing suite, but it made one crucial mistake early on: when generating the reference table, they cast f16 to f32 before printing (a subtle mistake many would make), which led to wrong reference values. And because the reference table was wrong, it lead to all sorts of wrong decisions downstream, such as adding casting and deltas. That's when I decided to be in-the-loop and break the problem into smaller ones: 1. I asked Claude to create a f16 reference table and made it clear in the prompt that any sort of casting would lead to the wrong solution. That's the reference table you can find in the PR 2. Then I asked it to explicitly port the Erlang algorithm, as is, and then parameterize the constants in the algorithm to make it generic (so it works for f16/f32/etc). Then write a test comparing all reference f16 values 3. Then I moved the algorithm to Nx. Since pretty printing is now precise, it broke 150 tests, which I used Claude to fix (with specific instructions to change only the precision in numbers and not touch anything else) Claude still made mistakes but because I broke the problem into small steps, and verified their correctness each step along the way, I avoided bad decisions cascading through the whole implementation. And yes, using Claude was still extremely helpful (honestly, if I used Claude only on step 3, it would have already been worth the price tag). Those two experiments have been orders of magnitude smaller than the browser one, both they seemed to work, but were flawed upon deeper inspection. For now, I'd still advise staying in the loop and avoiding falling into this trap.
English
14
21
135
9.8K
Kyle Cordes
Kyle Cordes@kylecordes·
@ulfjack @ICEgov @CBP Well certainly enough to send $14,000 across the world if needed. The question is obviously more important if someone has good reason not to!
Chesterfield, MO 🇺🇸 English
1
0
1
95
U.S. Immigration and Customs Enforcement
UNDECLARED CASH SEIZED AT MSP On January 18, HSI St. Paul and @CBP seized $14,135 from two Somali-born U.S. citizens who were departing on international flights from MSP. ICE and CBP remain vigilant in detecting and preventing the illegal movement of funds across borders to protect national security.
U.S. Immigration and Customs Enforcement tweet media
English
1.7K
3.6K
14.9K
3.8M
Kyle Cordes
Kyle Cordes@kylecordes·
On one hand, I think there are some civil libertaries issues with seizing currency without evidence of wrongdoing. On the other hand, how can people be so clueless? If you need to send a lot of money somewhere, do a wire transfer or whatever. The money can meet you when you get there.
Chesterfield, MO 🇺🇸 English
5
0
1
2.3K
Ulf Adams
Ulf Adams@ulfjack·
@marcaruel Not sufficiently high levels of self preservation?
English
1
0
0
14
Marc-Antoine Ruel
Marc-Antoine Ruel@marcaruel·
- try a new coding agent - run it in docker - upon OOBE, it tries to start xdg-open - fails since it's not installed, throws an exception, bails out damn I can't be the only person to run my coding agent inside a headless containers?
English
1
0
0
99
Kenton Varda
Kenton Varda@KentonVarda·
Somehow The Algorithm decided to show this tweet to every junior JS dev on the planet and it seems most of them assumed I'm a noob asking a naive question rather than an expert challenging assumptions, lol. Got some good recon though.
Kenton Varda@KentonVarda

No offense to the Zod devs but I don't understand why Zod has to exist. Why can't we just use the schema format we already have, that is, TypeScript? Why is there no way to construct a schema validator from a TypeScript type? This seems like such an obvious thing.

English
24
2
224
31K
Ulf Adams
Ulf Adams@ulfjack·
@marcaruel I did that back in ~2000 with my online game when I found an infinite loop in a hash map (due to a race condition) and the game couldn’t save. 😁
English
1
0
1
17
Marc-Antoine Ruel
Marc-Antoine Ruel@marcaruel·
On the old 2008 Chrome days, I ssh'ed into our live CI server, monkey patching the code live. This was fun, and insane. This was using the "Twisted" library in python 2 with a custom ssh server that hooked the interpreter.
Samuel Timbó@io_sammt

The power of editing a program while it is still running without losing any state, can potentially save humanity at least 250 billion hours per year. Never recompile, never reload, never redeploy, never surrender.

English
1
0
0
159
Marc-Antoine Ruel
Marc-Antoine Ruel@marcaruel·
An idea for European countries: A company paying every employee >150k€/h gets in return: - no worker council - extremely limited labor protection (you can fire people with 2 weeks notice) - simplified taxes
English
1
0
0
102
Ulf Adams
Ulf Adams@ulfjack·
@jmmv Then I must be off by one
English
0
0
0
34
Julio Merino
Julio Merino@jmmv·
It was really hard to find the date and only Gemini was able to guide me to a reliable source, but it seems like tomorrow marks the 10th anniversary of Bazel's public announcement—and I have a treat ready for you!
Julio Merino tweet media
English
1
0
3
300
Ulf Adams
Ulf Adams@ulfjack·
@jmmv ISTR that we made the hacker news front page
English
1
0
0
36
Ulf Adams
Ulf Adams@ulfjack·
@sqs Some IDEs have good incremental build/test support, but if you shell out to a dedicated build system, a lot of that gets lost, and the most widely used build systems are still behind what we did (incl. bazel). It’s possible that there’s one out there but I haven’t seen it.
English
0
0
1
44
Quinn Slack
Quinn Slack@sqs·
@ulfjack That’s cool. See anyone working on similar stuff in OSS?
English
1
0
0
217
Quinn Slack
Quinn Slack@sqs·
Who's making CI that takes <1s for incremental builds and incremental tests? I mean actually <1s so AI agents can iterate on code, not "fast" as in 30 seconds or 5 minutes or something else.
English
18
1
30
5.2K
Ulf Adams
Ulf Adams@ulfjack·
@sqs Including rules, tools, and test runners. I think in some ways it’s easier for Java than say go or c++ because of the jvm and its support for hot code reload.
English
1
0
1
52
Ulf Adams
Ulf Adams@ulfjack·
@sqs I worked on this at Google. Some of the pieces made it into bazel, but some died due to lack of interest. The stuff we did was fairly specific for Java, and I think it requires significant language-specific work across all the parts.
English
1
0
1
68