MurphyA/hacker-news huggingface dataset:
by somenameforme | 2025-05-08 04:57:02+00:00
And more generally the fundamental reason we agree to operate under laws is because these laws are expected to improve society as a whole. But if those laws instead start enabling and protecting bad behavior then they're doing the exact opposite.

It's fairly obvious that much of what the more sociopathic corporations do today will be illegal in the future, but changes in social opinions tend to predate changes in the law by quite some time. For the obvious extreme there - slavery was completely legal. Society began to believe that such a thing was no longer fit for society, and consequently acting against it, long before it was outlawed.
by abusaidm | 2025-05-08 04:58:20+00:00
The concept of what you describe is interesting and useful. I struggle to make the same conclusion from the website, it feels like it is written as too abstract to allow the reader to grasp exactly what you will get. Was the text improved by an LLM?

It would be great to have a simple example or a scenario or a hello world for someone to say “Aha! I get what it is and how it can help me”
by echelon | 2025-05-08 04:58:29+00:00
That's my hope. That Llama or Qwen bring multimodal image generation capabilities to open source so we're not left in the dark.

If that happens, then I'm sure we'll see slimmer multimodal models over the course of the next year or so. And that teams like Black Forest Labs will make more focused and performant multimodal variants.

We need the incredible instructivity of multimodality. That's without question. But we also need to be able to fine tune, use ControlNets to guide diffusion, and to compose these into workflows.
by zzo38computer | 2025-05-08 04:58:36+00:00
I think that JSON is overused (DER is better), but even without JSON, string data is also overused, in cases where numbers or other types would do better. (Unicode string types are also overused, but if a different type other than strings is better anyways, then Unicode is not the main issue here anyways.)

> If you're using a strongly typed language like TypeScript, receiving the user object as any or unknown type is unfortunate. You'll lose all the type safety and you can only regain it with manual type checking.

This is not specific to "stringly typed" stuff or to JSON, but is just the case when you transfer data that may use multiple types. In strongly typed programming languages, your program can parse it as the data that it expects and use an error handler when it is not what it is expected. (If you do expect that it may have any type, then you might be able to pass the unparsed value if appropriate; for example, I have a ASN1_Value structure in some of my C programs for this purpose.)
by dotancohen | 2025-05-08 04:58:45+00:00
> entirely dependent on Microsoft's goodwill to continue developing VS Code in the open.

The premise of many open source licenses, including MIT, is that the user is _not_ dependent on the developer. No matter what MS does, the latest pulled version of VS Code will remain working and available. MS could license future VS Code versions under more restrictive licenses, however the Cursor devs can continue to use and themselves develop the code they already have.

To be clear, by "the user" I'm referring to the Cursor devs. This is the terminology of many F/OSS licenses.
by xxs | 2025-05-08 05:02:57+00:00
No, Java does Class hierarchy analysis and has multiple way not to use v-table calls.

Single site (no class found overriding a method) are static and can be inlined directly. Dual call sites use a class check (which is a simple equality), can be inlined, no v-table. 3-5 call sites use inline caches (e.g. the compiler records what class have been used) that are similar and some can be inlined, usually plus a guard check.

Only high polymorphic calls use v-table and in practice is a very rare occasion, even with Java totally embracing inheritance (or polymorphic interfaces)

Note: CHA is dynamic and happens at runtime, depending which classes have been loaded. Loading new classes causes CHA to be performed again and if there are affected sites, the latter are to be deoptimized (and re-JIT again)
by OutOfHere | 2025-05-08 05:04:43+00:00
Not to take away from the article's explanation, and I am sorry, but Python's asyncio is a pathetically inferior choice to newer Python's no-GIL threading. The former implicitly does not parallelize, whereas the latter does. This is in stark contrast to Rust's asyncio, like with Tokio, which I believe does parallelize. This is a sufficiently significant loss that I think it's silly to use asyncio at all anymore.
by timc3 | 2025-05-08 05:06:08+00:00
If you are really into AV they are more important than ever.

Yes at first glance a TV does the switching, and the rest. But a modern receiver can be better. Better switching, better ability to handle multiple speakers ( particularly for Dolby Atmos ) including Room EQ. Alot of TVs only have 2 HDMI ports with all the latest features.
by dotancohen | 2025-05-08 05:06:37+00:00
From the Zed homepage:

> The entire Zed code editor is open source under GPL version 3, and scratch-built in Rust all the way down to handcrafted GPU shaders and OS graphics API calls.

When I saw this, I immediately wondered what strange rendering bugs Zim might run into. This was before reading your comment.

In my opinion, this type of graphics work is not the core functionality of a text editor, same has been solved already in libraries. There is no reason to reinvent that wheel... Or if there is then please mention why.
by DaiPlusPlus | 2025-05-08 05:07:00+00:00
> "Trait/Typeclass"-style compositional inheritance as in Rust and Haskell is sublime. It's similar to Java interfaces in terms of flexibility, and it doesn't enforce hierarchical rules.

Yes-and-no.

Interfaces still participate in inheritance hierarchies (`interface Bar extends Foo`), and that's in a way that prohibits removing/subtracting type members (so interfaces are not in any way a substitute for mixins). Composition (of interfaces) can be used instead of `extends`, but then you lose guarantees of reference-identity - oh, and only reference-types can implement interfaces which makes interfaces impractical for scalars and unusable in a zero-heap-alloc program.

Interface-types can only expose virtual members: no public fields - which seems silly to me because a vtable-like mechanism could be used to allow raw pointer access to fields via interfaces, but I digress: so many of these limitations (or unneeded functionality) are consequences of the JVM/CLR's design decisions which won't change in my lifetime.

Rust-style traits are an overall improvement, yes - but (as far as my limited Rust experience tells me) there's no succinct way to tell the compiler to delegate the implementation of a trait to some composed type: I found myself needing to write an unexpectedly large amount of forwarding methods by hand (so I hope that Rust is better than this and that I was just doing Rust the-completely-wrong-way).

Also, oblig: https://boxbase.org/entries/2020/aug/3/case-against-oop/
by ryandrake | 2025-05-08 05:08:35+00:00
A lot of living rooms these days are terrible for surround sound, and sound listening in general. Big, “open concept” spaces without doors and walls, often with the “living room” area occupying an odd corner of the big open blah-space. No feasible way to correctly install and aim surrounds. Also sound insulation is generally quite poor unless you deliberately do it while building the house.
by dataflow | 2025-05-08 05:10:35+00:00
> And inheritance naturally suggests grouping interfaces into a tree in the way that seems of little value because in practice a tree probably doesn't represent the fundamental truth of things.

"This doesn't represent the fundamental truth" does not imply "this has little value". Your navigation software likely doesn't account for cars passing each other on the road either -- or probably red lights for that matter -- and yet it's still pretty damn useful. The sweet spot is problem- and model-dependent.
by __MatrixMan__ | 2025-05-08 05:11:13+00:00
I apologize for not addressing your comment directly. The free speech issue related to a TikTok ban has to do with limiting the audiences that Americans are allowed to engage with. It's not about what they might say, but about what they might hear. The message it sends is:

> You're allowed whatever speech you want, so long as we have influence over the speakers and microphones that you use to do so.

That's going to have a chilling effect on what actually gets said.

I was using "using USD" as a stand-in for "using platforms run by people we can reliably bully into tampering with your speech if it becomes problematic," and also to suggest a bit of corruption on the side, which seems likely given that Zuckerberg and Trump are now buddies.
by zzo38computer | 2025-05-08 05:12:45+00:00
> In this case, input should be buffered and applied to the state of the app after the previous input has been processed.

Yes, and this works best with keyboard-oriented interfaces (which I think is generally much better than touch screens anyways; a lot of software I write is designed for keyboard use because it has this and other benefits). However, it should only be done if the process of the UI is what is expected; if something unexpected occurs then it might be better to discard any pending input. (But, sometimes this "expected" and "unexpected" is not so clear.)
by kjkjadksj | 2025-05-08 05:13:28+00:00
Makes me wonder if the best inroad into influencing china is just direct bribes to government officials. You can’t do it the old fashioned way of propagandizing the population directly given restrictions on third party content, but I’m sure there are plenty of palms for want of greasing in the east same as there are here. Usually such restrictions on action are specifically to force a greasing of a palm anyhow in order to achieve that action than any outright ban.
by nurettin | 2025-05-08 05:13:53+00:00
You can't deal with how bad something feels if you have uncontrollable crippling sensations about it. Trauma does not let you mature, learn from experience or grow up. You can't walk it off. If you try to "man up", it comes back even stronger in terms of attention deficit, bouts of anger and OCB. It is very hard to convince people that the sensations trauma causes are real. Especially to people with a hero complex.
by fhd2 | 2025-05-08 05:14:28+00:00
Sure there's evidence: Your statements about this when challenged. And perhaps to a degree the commit log, at least that can arouse suspicion.

Sure, you can say "I'd just lie about it". But I don't know how many people would just casually lie in court. I sure wouldn't. Ethics is one thing, it takes a lot of guts, considering the possible repercussions.
by bill_yang | 2025-05-08 05:15:26+00:00
Thank you. I am using https://globe.gl/ which wraps three.js. The page realtime page is still pretty slow to load so though.

I'm using Next.js but I'm using all client-side components. The tooling around SPA client side state is just really good so I don't see a huge reason to go full SSR, especially when SEO doesn't matter for the actual app.
by davedx | 2025-05-08 05:16:19+00:00
What might, possibly, redeem Python in my eyes as a potential language for making production applications (something that today, it is most certainly not) would be if the type checker worked across the broader ecosystem of common Python packages.

For example, as my recent struggles showed, SQLAlchemy breaks `pyright` in all kinds of ways. Compared with how other 'dynamic' ORMs like Prisma interact with types, it's just a disaster and makes type checking applications that use it almost pointless.

How does Ty play with SQLAlchemy?
by timc3 | 2025-05-08 05:17:44+00:00
Thats fine if you are happy with it, does the job no problem.

Its just I wouldn't want the TV doing the switching because you are still managing two remotes for that and I dont want the wiring to the TV, I would want more speakers and some basic room eq, delay correction and subwoofer management. And I always end up with more devices. I also want Dolby Vision and Dolby Atmos.

My receiver does everything yours does and more, and the TV auto switches on and off but I am also been into this stuff for years.
by kragen | 2025-05-08 05:17:54+00:00
2¹²⁷ nanoseconds would be only 390 billion times longer than the universe has existed so far (13.79 billion years). If you wanted to crack AES-128 with brute force using one-billion-key-per-second cracking computers and could only wait a year, you would need 5.4 sextillion computers. If each of those computers weighed 100 milligrams, in the neighborhood of many current chips, their total mass would be 539 trillion tonnes (5.39 × 10¹⁸ kg, 539 exagrams).

That's only about a hundred thousandth of the mass of the Moon, and there are dozens of asteroids larger than this. Since it's clearly physically possible to disassemble an asteroid, or even the entire Moon, and build computers out of it, AES-128 should not be considered secure against currently known attacks. However, currently, it is not publicly known that the NSA has converted any asteroids into computers, and it seems unlikely to have happened secretly.
by zzo38computer | 2025-05-08 05:19:46+00:00
> Yes, in cases where the UI is transitioning to an unfamiliar state, the input has a good chance to be useless or incorrect and would be better dropped on the floor. It's annoying when you think you're going to click X but the UI changes to stick Y under your finger instead.

> However, there are times where you're tapping on a familiar app whose flow you know intimately and you know exactly where Y is about to appear and you want to tap on it as fast as you can. In those cases, it is absolutely infuriating if the app simply ignores your input and forces you to tap again.

I agree with both of these, but I think that such a thing would work better with keyboard-oriented interfaces. However, when using a mouse or touch-screen, these are still good ideas anyways, although the situations where you will know and should expect what comes next is less when using the mouse, still it can be important because unexpected pop-ups etc from other programs, just as much as, when using the keyboard, pop-ups that take keyboard focus are as significant for this issue. Since this can sometimes involve multiple programs running on the same computer, that do not necessarily know each other, it cannot necessarily be solved from only the program itself. (I think that it will be another thing to consider in the UI of my operating system design.)
by dhaavi | 2025-05-08 05:21:15+00:00
I was intrigued by Yggdrasil, so much that I built a similar network, also using concepts of other networks in that realm.

It uses a logical world map for improved address space allocation and routing as well as source routing. Private non-routable addresses for better privacy are planned.

https://mycoria.org

It will see more development over the next years, as I will be using it in an upcoming project.

Happy to answer any questions you have here.
by zozbot234 | 2025-05-08 05:22:51+00:00
Rust actually allows one to express "family tree" object inheritance quite cleanly via the generic typestate pattern. It isn't "garbage", it totally has its uses. It is however quite antithetical to modularity: the "inheritance hierarchy" can only really be understood as a unit, and "extensibility" for such a hierarchy is not really well defined. Hence why in practice it mostly gets used in cases where the improved static checking made possible by the "typestate" pattern can be helpful, which has remarkably little to do with "OOP" design as generally understood.
by system2 | 2025-05-08 05:23:00+00:00
I’ve built multiple apps just for myself using the API and honestly it sucked. The chat remembers context and talks to you like a real conversation. The API is crazy expensive and painfully slow. It’s best for one-shot queries where you ask one thing and expect nearly identical results every time. Anything beyond that and it struggles.

With ChatGPT Canvas I’ve completed small projects like WordPress plugins, handy personal Python scripts, chrome extensions (my favorite use of ChatGPT) and most importantly debugged faster than any tool I’ve ever used. Sure, my customer-facing GPT API apps are burning credits like a rocket on full throttle but at least I’m billing them for it. The API speed is wildly inconsistent so you can’t rely on it for everything.

One key tip is you can’t keep a single chat going forever. It gets sluggish, especially when you paste long code blocks. My method is simple. I ask for the final clean code, then request a complete detailed summary of what we built and what the functions do. Then I start a fresh chat, paste the summary and code, and continue clean. Think of it like making a commit, just a very crude version.
by Flux159 | 2025-05-08 05:23:16+00:00
I've gone through a few AI IDEs / agents and CLI tools now, currently on Cline with Gemini 2.5 Pro which is doing a pretty good job at my web app code with a decent .clinerules file in the repo.

To answer why I don't use chat at all for coding anymore, some benefits of IDE / CLI agents: Copy pasting into chat apps don't allow for agentic runs (ie run bash commands, edit code, validate with linting / testing before marking task as 'complete'). I can mostly just write my descriptive task (usually with code references if they aren't already there in clinerules / claude.md, etc.) and come back after a short walk or drinking some tea and check the code or just check at runtime to ask it to fix up the code. This is honestly very similar to "waiting for code to compile."

For reference, I've used the following to make production code changes:

- Cursor: which when Claude 3.5 was out seemed to be the best AI IDE, but the changes they've made around agent mode and 3.7 haven't really worked super well for me. Migrated to claude code after 3.7 came out.

- Claude Code: Very good, I generally just ran it in dangerous mode and it could accomplish tasks fairly well. Wrote a decent Claude.md file as well. Only con is that it got expensive quickly. On the order of $3-5 per session which would accomplish a single task.

- Cline with Gemini 2.5 Pro: Moved to it yesterday, it's been doing a good job and is effectively free right now using my own API key for Gemini. Seems a bit verbose at times although that might just be Cline's prompts.

I haven't tried Aider or Windsurf, but have heard good things about Windsurf's agentic mode. Although I might not move to Windsurf at all since Cline with Gemini works pretty well & is free to use.
by LanceJones | 2025-05-08 05:23:35+00:00
I've been using Windsurf for a few weeks. I'm a novice programmer trying to build a web app using React and NextJS.

The "context-in-the-codebase" thing for AI-based IDEsis overrated IMO. To extract the most from it, you have to remember to @mention the files.

If you don't remember to @mention specific files, the agent simply tries to perform searches (i.e., it has access to that tool) on the files and folders until it gets some results... and will usually keep broadening the search until it does.

It works well enough I suppose. But I still find myself beginning new chats (for example, per feature) because the model still loses its place, and with all the code/lint fixes it does, it starts to lose context.

Then you're right back having to @mention more files to ensure the model knows how to structure your front end, back end, etc.

(Please excuse any misnamed development terms.) :-)
by alex77456 | 2025-05-08 05:24:14+00:00
>I'm curious, why do you ask?

Mostly out of curiosity and to self reflect. This being a forum largely focused on 'work/hobby/productivty', I find everything outside that very relevant, while not being talked about as much. So I was curious what a healthy (or unhealthy?) way of spending one's free time may look like.

Perhaps to see if I'm missing out on something, or get inspiration to spend free time better. I personally wouldn't be able to answer the same question in the way that would make me feel good.
by jazzyjackson | 2025-05-08 05:24:56+00:00
I ask as someone hyped about decentralized protocol but only following ygg from a distance -- who are they building it for, is there a use case or commercial customer that wants this, or is it more of an idealistic/political endeavor ? I guess I'm wondering how mature the org behind it is, if they're setup for the long haul or taking steps forward when they can, on a hobbyist basis.
by 4b11b4 | 2025-05-08 05:25:18+00:00
I wasn't trying to be dismissive, only in line with the explicit call outs for simplicity from the author.

I suppose I was trying to give the perspective of someone doesn't have a problem with authoring a markdown document for example... and bringing myself back to the reality that for most people authoring a document with any sort of formal (rigid, to be interpreted by machine) syntax is unfamiliar.
by ValtteriL | 2025-05-08 05:25:35+00:00
I use copilot through VSCode. The copilot plugin lets me either ask questions or ask for edits to my code. I can choose which files to include as an additional context to the prompt. I can additionally choose which model to use. Some models are unlimited, others have some monthly quota. GPT-4o is unlimited and quite good with short tasks.

It has also shortcuts for instance fixing errors in the code by just selecting "fix with copilot". Its a bit hit or miss but for simple things work well.

It is very good and seamless. Cannot think of ever copy pasting multiple files of code to some web chats and back.
by Dylan16807 | 2025-05-08 05:26:03+00:00
If everyone in a classroom but one makes the same mistake, it's not incoherent to say the class screwed up.

And they half explained why AGPL is different, with the other half not being hard to infer. It's the only one that isn't donating code to huge companies, because they can't use it on their servers without sharing back.

Give a tiny bit of benefit of the doubt that they were saying something coherent. Please.

(Their other later comment says they considers AGPL to be in a different category from "open source", and even if that's wrong it actually makes the argument more coherent. They're explicitly criticizing open source licenses other than AGPL.)

Also 1% was just a rough guess but this survey says I was exactly right: https://github.blog/open-source/open-source-license-usage-on... If the number has changed in the last few years I'm open to updates.
by atmavatar | 2025-05-08 05:26:39+00:00
I'm fascinated by the amount of abuse the study participants seem to take without doing anything about it (e.g., blocking people, leaving groups, etc.).

Taking one example: were I a healer in a raid, especially one showing top healing numbers, and anyone started off on a slur-filled tantrum against me in voice chat, I'd immediately leave voice chat and the raid. If the response from guild mates was anything but disapproval of the tantrum, or it was allowed to happen more than once, I'd leave the guild.

There are plenty of people/guilds who don't behave like complete assholes to choose from in any online game.
by beefnugs | 2025-05-08 05:28:07+00:00
Well the smarty pants people think its $3B and $9B dollars worth of "choosing what to shove in the context for you"

I guess they try to do things to give better results: give the context a list of file names, give the context the full class graph of the Classes in the current working file (not sure about any specifics really) Reality is they don't do a whole bunch... but without doing what they do, it would be infuriating to figure that all out yourself , over and over and over for each thing you want to work on.

But dont worry, we just have to wrap layers of LLMs around layers of LLMs around loops of retrying and testing around loops of detecting when the censorship starts evolving and breaking until we finally just all decide to become farmers