Hacker Newsnew | past | comments | ask | show | jobs | submit | unclad5968's commentslogin

It sounds reasonable to me. I priced out a DIY setup when I bought my house a few months ago, and I came up with ~$6000. I priced new panels and what I would consider more reliable batteries which accounts for the cost difference.

Webgpu is the worst of both worlds. Significantly more complicated than opengl yet not capable of many "essential" modern techniques like bindless resources.

If you must use a modern api to learn for whatever reason, go with vulkan and use dynamic rendering and buffer device addressing.


Having grown up in a town of about 5000 people and 3 bars, yes this is what people did for the most part. I'm sure it's different depending on where you're at. Sometimes a DD actually will drive everyone especially since most people are less than 10 minutes away.

I didn't try that hard but I did not have much success. I spent some time trying to vibe code a forward clustered renderer in vulkan and I couldn't manage to get anything I was too happy with. Mostly just regurgitation of a few different tutorials. It's possible I'm just too dumb to use AI and it was also 18 months ago, so things have progressed on the LLM front.


The idea of paying a subscription to use my cars infotainment is insane, regardless of how much the manufacturer profits.


Why does it have to benefit them?


Well if c++ had the liberty of scrapping the language twice in the last 30 years I'm sure it would look better too.


Python 2 to 3 mess is exactly why all languages think twice about breaking backwards compatibility.


That is probably what they should have done ..l


What new ideas did Zig bring to memory management?


Pluggable allocators. Allocators are passed to functions as arguments, the caller decides exactly how memory is managed. Maybe not "new" in idea, but "new" in being consistently applied everywhere in language & libraries.


Already Turbo Pascal for MS-DOS had a custom allocator API for its runtime.

All modern C++ collection types have allocators as type parameters, and this was already a thing in the compiler frameworks like OWL during the 90's.


Zig makes allocation an explicit runtime concern:

   var list = std.ArrayList(i32).init(allocator);
where allocator is a runtime value implementing the allocator interface.

   fn parseJson(allocator: Allocator, input: []const u8) !JsonValue
Zig forces the caller to decide since allocator is part of the function contract. And this is consistent everywhere in Zig. Effectively speaking, this is universal, explicit & mandated dependency injection for memory management as opposed to to classic C++ STL allocators.

Sorry sir, I have a nostalgic fondness for C++ - it was my first language, but it just doesn't compare for flexible allocation convenience compared to Zig.


Fact remains it wasn't the first, and it remains to be seen how market relevant Zig will ever turn out be, especially after AI driven coding became mainstream.

The irony to argue about manual memory management ergonomic, when code is written by agents.


Second Sunday of May in the US


Why do they do this? Why not just have a fixed date for these things? Is it so people can use the weekend to celebrate?


If it was a fixed day it would end up being a week day a lot of the time.

Maybe that doesn’t matter, but it’s nice to have on a weekend.

Maybe I’m missing what you mean?


For Mother's Day, possibly, but it's not always the case. Thanksgiving is on the 4th Thursday of November.


Yes


It seems it must be the same in Switzerland where I live, makes sense!


I don't think Zig is different enough from rust or any other systems language for it to matter. If you can write rust you can write Zig.


I'm reminded of the old joke "how to shoot yourself in the foot in 25 different languages". The first one was "C - you shoot yourself in the foot." Zig remains very close to that philosophy.

So the difference is not in writing new stuff but in maintaining the existing codebase. Rust's rigidity makes it potentially harder to break stuff compared to Zig's general flexibility. As a project grows and matures, different types of contributors naturally come in and it's unreasonable to expect everyone to learn about historical footguns that may have accumulated.


Oh man. That joke takes me back.


Anthropic makes claude, claude can write Rust like a champ and struggles at Zig. It's a straightforward "training data" argument.

I think there are even longer term plays that Anthropic should be looking at, in this space, but it seems like they've decided rust is the right thing, so fair play. I would be (am!) thinking about making an LLM optimized high level language that you can generate / train on intensively because you control the language spec.


Claude doesn’t write Rust like a champ. It’s still miles ahead at js and python than it is at rust. It can do macros and single file optimizations but its gotten really stuck in type hell and tried to dyn everything on multiple occasions for me.


Claude struggling at Rust: not getting types correct, using the wrong abstractions, not implementing things correctly

Claude struggling at Zig: the above + memory safety issues if you run “fast” mode.

It is generally true that Rust code tends to be written in a way that the compiler catches the issue at compile time. The same is not as true for Zig, Python or JS


As a human occasionally writing Rust I've also frequently got stuck in type hell.


claude does not struggle with zig? not in my hands anyways.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: