I think the age of AI has really cheapened work like this. It's clear this library was vibe-coded; it's clear enough that the python version of the library originally posted yesterday was vibe-coded; I didn't look at the original library but it would shock me not at all that it was vibe-coded. Often just one or two commits and a functional library, emoji all over the readme, "Clean and easy-to-use API", etc.
In many ways this is pretty amazing. Only a few years ago it would have been a huge pain in the ass to come across some valuable library only for it to be locked in some language I didn't understand or wasn't working in at that moment. But in other ways, maybe it feels a bit "cheap" now to do `claude -p "port this library to $LANG, make sure it works, do a good job" and I'm not sure there's a ton of... accomplishment? craft? care? in it.
At my $CORP job, I often see engineers enamored with creating new things. I completely understand the appeal -- it's fun to create something new, without preexisting constraints, with full ownership of the codebase.
However, the real challenge is what happens _later_, when the thing is done. Most people don't really think about maintenance, and move on to other things, making the thing they worked on stale and stagnant.
I think this applies here too: Vibe coding lets us create new _things_ quite easily, but we see value in places other than the sheer the existence of the project. We care about how the project is maintained, if it has a userbase, contributors, longevity. I think this is also part of why it feels so "cheap" and not genuine.
Yes, indeed. I think that's why I haven't published much code in the last years since I vibe-code everything I build now and I have essentially no intention to maintain it once it's 'working'
As an "AI" skeptic, let me ask an out-of-character question: Could such maintenance be automated or at least heavily simplified with coding agents? Looking over whether something breaks when gcc is upgraded, automatically updating if needed, updating best practices, automatically reproducing reported issues and proposing fixes ... too much of a dream?
I think its easy to criticise vibe-coded work, if you're into programming for the sake of programming.
But if you're into programming for the sake of the user, none of this matters.
For me, I appreciate the clean, complete documentation and code generated for use in this project - I see nothing wrong with it, its useful and functional, and I can easily integrate this library into an app I'm building to get the screen angle. From this perspective, for the sake of the user/developer, I'd say things were definitely improved over Plain Ol' Human Code™ ...
Ha, I'm not into programming for the sake of it. I vibe-code all the time now and don't think I've written a line of code by hand in over a year. I'm really not trying to criticise this library itself and I agree that in many ways it's quite good.
What I think I'm trying to say is that this specific kind of thing now takes everyone the same amount of time to create. It's "cheapened" this specific type of code. I'm not trying to say this particular library is bad or anything, just that converting some small library from one language to another no longer really holds much value, since essentially everyone can do exactly the same thing exactly the same way now, for the same time cost.
There do seem to be some of young brilliant minds today taking "with AI you can be xxx" too literally, thinking the sole remaining distinction between them and all the rich geniuses in the world is willingness to prompt something. They're not incentivized to fix that skewed perceptions because they have nothing else to reinforce their self esteem and "LLM is AGI" is giving them the crutch they desperately need. They'll be hard to de-program when the time comes...
I think that's the thing I'm trying to say. _This_ library might not exist but anyone with an Anthropic account and the knowledge that there is a readable sensor can make it exist just as easily.
This couldn't have existed until someone else done it manually in Python and posted here on HN. The author likely fed that code to Claude or free tier Gemini.
> I'm not sure there's a ton of... accomplishment? craft? care? in it.
Who cares?
What's important is that now I have a useful library. The only complaint I'd give is that it might not be super optimized, but it's open source so you can instruct your agent to take it and optimize it for you :)
This is pretty much what I'm trying to get at. Why would you even begin with _this_ library when you also have an agent that can build precisely the thing you want with the abstractions, constraints, etc that you want? What value does _this_ library have, considering that it takes you _exactly_ as much time and effort to build your own?
I mean, we're supposed to care? We're here on a forum of programmers and technical people ostensibly gathered because we want to satisfy our intellectual and technical curiosity.
Hacker News is already full of people too misanthropic and uncurious to engage with topics beyond the title. Now we don't even care about the art and science of programming. So why bother showing up? This place will be nothing but shitposting bots and self-promotion soon.
The underlying system API is a u16. Do you propose that this library should add logic to clamp the value between 0 and 255? What would be the point in that?
I think the age of AI has really cheapened work like this. It's clear this library was vibe-coded; it's clear enough that the python version of the library originally posted yesterday was vibe-coded; I didn't look at the original library but it would shock me not at all that it was vibe-coded. Often just one or two commits and a functional library, emoji all over the readme, "Clean and easy-to-use API", etc.
In many ways this is pretty amazing. Only a few years ago it would have been a huge pain in the ass to come across some valuable library only for it to be locked in some language I didn't understand or wasn't working in at that moment. But in other ways, maybe it feels a bit "cheap" now to do `claude -p "port this library to $LANG, make sure it works, do a good job" and I'm not sure there's a ton of... accomplishment? craft? care? in it.
However, the real challenge is what happens _later_, when the thing is done. Most people don't really think about maintenance, and move on to other things, making the thing they worked on stale and stagnant.
I think this applies here too: Vibe coding lets us create new _things_ quite easily, but we see value in places other than the sheer the existence of the project. We care about how the project is maintained, if it has a userbase, contributors, longevity. I think this is also part of why it feels so "cheap" and not genuine.
But if you're into programming for the sake of the user, none of this matters.
For me, I appreciate the clean, complete documentation and code generated for use in this project - I see nothing wrong with it, its useful and functional, and I can easily integrate this library into an app I'm building to get the screen angle. From this perspective, for the sake of the user/developer, I'd say things were definitely improved over Plain Ol' Human Code™ ...
What I think I'm trying to say is that this specific kind of thing now takes everyone the same amount of time to create. It's "cheapened" this specific type of code. I'm not trying to say this particular library is bad or anything, just that converting some small library from one language to another no longer really holds much value, since essentially everyone can do exactly the same thing exactly the same way now, for the same time cost.
Who cares?
What's important is that now I have a useful library. The only complaint I'd give is that it might not be super optimized, but it's open source so you can instruct your agent to take it and optimize it for you :)
Hacker News is already full of people too misanthropic and uncurious to engage with topics beyond the title. Now we don't even care about the art and science of programming. So why bother showing up? This place will be nothing but shitposting bots and self-promotion soon.
Deleted Comment
(https://github.com/ufoym/mac-angle/blob/main/angle.cpp#L186)
The most I can reach on mine is 132deg
Deleted Comment