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

I have a hobby project on the side involving radio digital signal processing in Rust that I've been pure vibe coding, just out of curiosity to see how far I can get. On more than one occasion the hobby project has gotten bogged down in a bug that is immensely challenging to resolve. And since the project isn't in an area I have experience with, and since I don't have a solid "theory of the program", since it's a gray box because I've been vibe coding it, I've definitely seen CC get stuck and introduce regressions in tricky issues we previously worked through.

The use of Claude Code with my day job has been quite different. In my day job, I understand the code and review it carefully, and CC has been a big help.


I've had some success with a multi-threaded software defined radio (SDR) app in Rust that does signal processing. It's been useful for trying something out that's beyond my experience. Which isn't to say it's been easy. It's been a learning experience to figure out how to work around Claude's limitations.


> Me too, but a more optimistic view is that this is just a nascent form of higher-level programming languages.

I like this take. I feel like a significant portion of building out a web app (to give an example) is boilerplate. One benefit of (e.g., younger) developers using AI to mock out web apps might be to figure out how to get past that boilerplate to something more concise and productive, which is not necessarily an easy thing to get right.

In other words, perhaps the new AI tools will facilitate an understanding of what can safely be generalized from 30 years of actual code.


Web apps require a ton of boilerplate. Almost every successful web framework uses at least one type of metaprogramming, many have more than one (reflection + codegen).

I’d argue web frameworks don’t even help a lot in this regard still. They pile on more concepts to the leaky abstractions of the web. They’re written by people that love the web, and this is a problem because they’re reluctant to hide any of the details just in case you need to get to them.

Coworker argued that webdev fundamentally opposes abstraction, which I think is correct. It certainly explains the mountains of code involved.


Overall I like the list. Some of the bullet points were stated a little more strongly than I was comfortable with.

> People who stress over code style, linting rules, or other minutia are insane weirdos

I feel like programmatically enforced linting is like keeping a shared house clean. Suppose you live in a house with roommates. You wipe off the counters, you clean up after yourself, you put dishes in the dishwasher, so that the house is tidy and pleasant. If there's a lint or style rule that requires judgment and is hard to enforce programmatically, perhaps better left as an occasional PR comment.

Programatically enforced linting also has the benefit of removing degrees of freedom that aren't very important and don't merit getting bogged down about.


The problem is that many linters are excessively pedantic, require workarounds that are just silly, and if we ask "does it actually improve things?" then ... often not really, not in a substantial way. Once you agree on the "big basics" like brace style or whatever makes sense for your language, you quickly get diminishing (often miniscule) returns.

This also ties in to what I call the "linter fallacy"; which goes something like:

"This code passes 56 linters"

"Therefore, it's good code"

And the related:

"Our code is a mess"

"I spent a week adding 56 linters and rewriting it all to pass"

"Therefore, now our code is good"

What really matters is "can I read this code naturally?" And if the answer to that is "yes" then it may be good code. Obsessing over whether it should be written with some small differences that don't really matter is just not useful for anyone.


To be fair, those who become uncomfortable from words are equally insane weirdos.


As someone who used Windows 95 when it came out, it struck me at the time as an off-brand Macintosh, making it feel kind of cheap (a feeling that never went away). I had also been using X Windows by way of SGI's workstations around that time, and IRIX felt clean, if a little old-school, by contrast.


95 felt amazing if you were used to 3.1. I had some exposure to Mac then and I liked it a lot, but somehow I always saw it as a different thing, rather than Windows being a knockoff. (Obviously there was a lot knocked off. It was really funny to me that they introduced a "recycle bin" to copy the Mac "trash".)


I built a web app that keeps track of every link I ever find to be interesting. It allows for fine-grained topics (e.g., individual academic papers, or topics more specific than that). It groups the topics in a DAG, so that you can get to a topic via more than one path from the top. And it allows you to look at intersections of transitive closures over topics in order to narrow down a search.

It keeps a history of every change to the graph in Git, so one day you could potentially implement some form of time travel and see what the graph looked like at an earlier point in time without too much difficulty.

I have used the app every day for years. I feel like there's something promising there that is of general interest, but I have not figured out how to communicate the value.


I’ve made the exact same website for myself. It’s just a little PHP static webapp but I can write reviews for posts and it’s got a simple SQLite/PHP ^8 backend.

https://artsie.red/

I could have used something like Safari’s reading list, but that wouldn’t scale to all of my devices. And I don’t like the idea of putting control of those links into a service I can’t delete.

This site literally solves one problem perfectly and beyond the occasional functionality upgrades (auto-fetching post metadata, a refresh button, and a little CMS behind authentication) it’s super light and useful for me!


Sounds very interesting. Do I’m having trouble picturing how it works. How do you get the links into the system? I’m assuming this won’t work for links that you find on your phone, i.e. when not on your on your computer? And how do these links get indexed? By the stuff that’s on the page? What’s an example use case of where you use that system to find a link?


It's pretty manual at this point. The indexing is done by hand. The idea is kind of crazy, but I think it can be made to work, in the same way that Wikipedia is maintained by hand.

https://digraph.app/

https://github.com/emwalker/digraph

If you can crowdsource the indexing, you get yourself a manually curated search engine with a nice topic graph that can be traversed. A piece of this puzzle that hasn't been tackled yet is a reputation system to keep the signal-to-noise ratio high and deal with spam.

> What’s an example use case of where you use that system to find a link?

An example use case is that I come across some interesting long-form article on a topic I'm following, e.g., Shackleton's expedition, that's published on a nice website and that I don't have time to read. I can just drop the link in the right topic and get back to it without too much difficulty. Or that's the hope, anyway. (Doesn't always work out that like that.)

Another thing I'm interested in is what the topic structure ends up looking like as it's more fully fleshed out. So sometimes I'll drop in random links even if they're not that interesting, just to build out the topics.


Thanks for the link. Quite a collection. Have you thought about auto suggesting categories when adding new items? Cheap and fast way: Use fastText or Fast Sentence Embeddings to calculate average embeddings for all items in each category. Then, when user enters a new link, create embeddings and rank categories based on the new embeddings’ similarity to those of the categories.


I think there's plenty of scope for improvements like this. I haven't had the energy to pursue further improvements along these lines, but I suspect they could make it a better app.


That's an intriguing idea. What is the purpose of it? Can you share screenshots?


My own purpose in using it is to be able to get back to any link that I've read or have potentially wanted to read at a later point in time. You scan see screenshots here: https://github.com/emwalker/digraph.


A little depressing to see GitHub join the zeitgeist. Probably mandated from above by Microsoft. The next time I'm on a job search, I'll be de-prioritizing, and possibly even excluding, those tech companies that laid people off in order to signal to investors that they had their finances under control. I was kind of attached to GitHub, though, so this is disappointing.


Hey, there is always GitLab!


GitLab also just announced layoffs: https://about.gitlab.com/blog/2023/02/09/gitlab-news/


weren’t they yesterday?


How can you be sure that investor signalling is their motivation?


As opposed to what alternative explanation?


I'm an experienced Ruby web developer, and I'm starting to learn Rust. You mentioned Java and Nodejs, but I still wanted to chime in on the topic of languages in web development more generally, and the applicability of Rust to web development.

After tackling the refactoring of a complex Rails app that has a rules processing engine implemented on top of ActiveRecord, the true cost of Ruby's lack of static typing has become apparent to me. It's clear now that you can get a web app up and running quickly in a framework like Rails (as one example of a convenient, low-friction framework). But once you need to turn it inside out and make significant changes to the implementation, you're walking on egg shells and relying on previous devs to have built out good test coverage. A web app written in Rust would be easier to refactor in important ways at this point in the life of the app. It is clear there was a cost to using Ruby, but also that it was deferred.


Over the last decade I've had a similar thought and hope. Or at least the idea of working for an employee-owned and directed tech business (maybe on the model of REI?). Curious whether anyone knows of any successes in this area with respect to the tech industry?


I recently watched this intro to the topic, which I found really interesting: https://www.youtube.com/watch?v=bnnacleqg6k


That was a good talk. Thanks for linking it.


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

Search: