Senior Software developer at CNN. I build cool features that generate revenue. My opinions are my own and do not represent my employer.

I don't care if what Andrew Kelly is saying is true or not, it absolutely does nothing good for the programming world to make personal attacks against another developer that hasn't done anything to you personally. I want programming to move forward and I want people to be less divisive. There is nothing about that post that helps anyone, and all it does is attack another developer for some personal gripe that should have been kept to DMS.
1
59
Daniel Brenot retweeted
here's how this looks to outsiders who aren't emotionally invested in Zig or Bun
crazy blogpost by andrew kelley just dropped
30
23
905
47,698
Daniel Brenot retweeted
I made my Steam Controller automatically charge itself @Dexerto @HardwareSteam @valvesoftware
641
5,877
92,676
4,332,107
Daniel Brenot retweeted
GNU writes software, someone tries to clone it but it's difficult to clone because GNU writes shitty software. Instead of blaming GNU for writing shitty software, he blames the people trying to clone it.
Rust Coreutil replacement is “so subpar I don't even have words”, according to… developer of Rust Coreutil replacement. And this is shipping in Ubuntu? Woof. It appears that the developers of UUtils (the Rust Re-writes of the GNU Coreutils) are beginning to realize that replacing code dealing with “absurd” numbers of “edge cases”, developed and tested over decades… is not as easy as they thought it might be. Even with the magical, unicorn fart powered Rust programming language. One (of many) such cases: The Rust replacement for the GNU Timeout command is utterly broken. And the Rust devs appear to be at a loss for how code could ever possibly cover so many “edge cases”. From the Rust devs: “Timeout requires a rewrite I've attempted 10 times since last October or November.” “GNU timeout is just absurdly full of undocumented edge cases … and we don't even cover half.” “Our actual implementation is so subpar I don't even have words.” “I'm just frustrated with uu timeout to the point of absolute exhaustion.” github.com/uutils/coreutils/…
29
12
240
28,024
I just discovered mdx (markdown x) exists and I love it. Basically lets you create mixed markdown and html content but use jsx style rendering in it.
60
Go developers know the pain: if err != nil if err != nil if err != nil Dingo is trying something interesting. A meta-language that compiles to clean Go but adds things like: • Result types • Pattern matching • Error propagation with `?` Write modern syntax → get pure Go.
46
34
493
69,525
Daniel Brenot retweeted
38
742
4,886
332,121
Hey @valvesoftware, It would be super cool if your web api docs actually showed the schema of the responses for things like auth in the documentation rather than expecting the developer to have to make a test request first to know what the response looks like.
1
31
For the first time in my software development career, I get the chance to use a nibble(half a byte) for something. Very useful for delta compression in remote games where the coordinate wont change by more than 8 in any direction between each tick.
37
Daniel Brenot retweeted
time to update a resource! that’s right! POST request time to delete a resource that’s right! POST request
55
253
5,124
126,864
Daniel Brenot retweeted
As a Windows NT4, 2000 and XP kernel developer, on the initial Chrome sandbox team, Daniel is wrong. Win32 is a shithole of legacy compatibility. Absolutely bypass it if you can afford it! Nobody with a thinking head needs 26 emulated current working directories per process.
For starters, kernel32 performs various path transformations as it passes filenames from user programs to ntdll and the kernel. A program using ntdll directly, especially if it isn't careful to emulate win32 semantics (which I doubt Zig takes care to do) will behave unlike other Windows programs, e.g. when figuring out what actual disk file a string path names. Is the direct ntdll way better? Yes, it is, viewed in isolation. I quite like NT. Win32 is aesthetically suboptimal. But a direct ntdll program is *different*, and it's the difference that will cause subtle headaches for all sorts of users and integrators. Maturity in software is understanding that you sometimes have a duty to put up with an ugly interface for the greater good of a consistent interface. Our decisions ramify in time, and it's better for everyone to be consistently warty than for every program to be selfishly special. Plus, it's just rude to do this stuff, because 1) Zig is making a lot of work for the Windows team by making them support a second API surface they never signed up to support, and 2) Zig is constraining the evolution of the Windows platform by forcing Microsoft to freeze internal APIs in amber when they should be able to improve them. The Zig people do the same thing on Linux, by the way. They bypass libc and go straight to the kernel, breaking LD_PRELOAD shims Linux users rely on. And for what? Nothing! It's infuriating. The interface layers Zig bypasses on Linux and Windows are thin and add practically no overhead. Zig programs are not faster or better for having bypassed these layers that everyone else has relied on for decades. So what's the root cause of Zig-ism? Vibes about being closer to the metal? A feeling of power stemming from wielding esoteric knowledge? A kind of glee in annoying people like me, with my silly appcompat war stories and spiritually boomer worries about long term ecosystem evolution? Is it some kind of innumerate gutfeel that load bearing elements of the system are "bloat"? Do they understand how shared libraries work? A decade ago, the Zig people would be posting on forums about how they optimized (but in actuality pessimizd) their Gentoo systems by compiling with -O99 -funroll-all-loops -DMOAR_SPEED, saying a numerically "for sure felt smoother". A decade before that, the Zig people would have been attaching enormous spoilers and illegally loud mufflers to their Honda Civics. Probably painting them red too, because as everyone knows, the red ones go faster. There's just a sort of timeless personality type prone to this sort of thing. And that's fine. People are allowed to be ridiculous. Except this generation, this personality type comes armed with a trendy programming language. The Gentoo system gets reimaged with Debian stable. The Honda Civic eventually gets compressed into a cube in some landfill. We cannot serve similar justice unto Zig programs doing flagrantly stupid things forever.
5
10
102
25,110
Daniel Brenot retweeted
6
80
1,462
29,392
Qemu has a single 2000 line long file dedicated to adding objects to C... I truely don't understand why they didn't just use c++
1
30
After looking at the qemu source code for a while, I genuinely don't know why they didn't use c+. There is a ton of patterns that exist seemingly to just simulate OOP in c, so at that point just bite the bullet.
25
Daniel Brenot retweeted
Junior devs like DHH, Linus Torvalds and Theo all think AI is useful for coding. Senior devs like Notch think it’s useless. Clearly just skill issues.
196
67
2,904
219,616
Daniel Brenot retweeted
Replying to @kettanaito
This will throw an error: fn sum<A: Add>(a: A, b: A) -> A { a - b } Admittedly, it only works for simple operations, but your example is also purposely showing a very simplistic case. With a good type system you can represent a lot of invariants just with types.
2
2
21
916
With memory now being such a big concern, we are going to see a replaacement for electron pop up that is much lighter on memory footprint. Not tauri, but something else js based that just uses way less memory
57
Pretty proud of pulling this off. Just used some glass paint and some black tape
49
Daniel Brenot retweeted
Summarized Social media on Rust > Few people were annoying about how good it is, and now a large number of other people have become annoying in their complaints about how annoying the first group was > would never stop a useful tool from being adopted anyway
3
5
32
1,517