MurphyA/hacker-news huggingface dataset:
by Towaway69 | 2025-05-16 15:57:13+00:00
My inspiration was came from Douglas Crockford and the JSONlint[1] license.

Why not have a message? I mean if big-tech won't use my software because they legally think they might do evil with it, so be it.

Do I really want big-tech to wrap my software into a product and sell it for profit while not giving me a cent because what I did was share my code without strings attached?

I don't know. I would like to make this place just that little bit better and if if that's a license that makes folks think about what is evil, heck why not!

[1] https://gist.github.com/kemitchell/fdc179d60dc88f0c9b76e5d38...
by marcosdumay | 2025-05-16 15:57:20+00:00
There were always lots of code generation tools that people expected to review and fix the output.

Anyway, code generation tools almost always are born unreliable, then improve piecewise into almost reliable, and finally get replaced by something with a mature and robust architecture that is actually reliable. I can't imagine how LLMs could traverse this, but I don't think it's an extraordinary idea.
by palmotea | 2025-05-16 15:57:20+00:00
> So again, why not?

Because at my heart I'm a humanist, and I want tools that allow and encourage humans to have and express mastery themselves.

> Nothing is stopping you from taking your mouse in hand at any point and saying "let me do it" and pausing the LLM to let you handle the hard bits. The same way programmers rely on compliers to generate most machine or VM code and only write machine code when the compiler isn't doing what the programmer wants.

IMHO, good tools are deterministic, so a compiler (to use your example) is a good tool, because you can learn how it functions and gain mastery over it.

I think an AI easy-button is a bad tool. It may get the job done (after a fashion), but there's no possibility of mastery. It's making subjective decisions and is too unpredictable, because it's taking the task on itself.

And I don't think bad tools should be built, because the weaknesses of human psychology. Something is stopping you "from taking your mouse in hand at any point and saying 'let me do it'," and its those weaknesses. You either take the shortcut or have to exercise continuous willpower to decline it, which can be really hard and stressful. I don't think we should build bad tools that should put people in that situation.

And you're not going to make any progress with me by arguing based on precedent of some widely-used bad tool. Those tools were likely a mistake too. For a long time, our society has been putting technology for its own sake ahead of people.
by kstrauser | 2025-05-16 15:57:36+00:00
I don’t know what to tell you, except that you obviously haven’t read a lot of my stuff on that topic. (Not that I would expect anyone to have, mind you. I’m nobody.) I agree with you. I only use Chrome when I must, like when I’m updating a Meshtastic radio and the flasher app doesn’t run on Firefox or Safari.

I’m not anti-MS as much as anti their behavior, whoever is acting that way. This thread is directly related to MS so I’m expressing my opinion on MS here. I’ll be more than happy to share my thoughts on Chrome in a Google thread.
by xrhobo | 2025-05-16 15:57:37+00:00
Tiktok especially.

The only time I have ever seen Tiktok videos is from dating someone younger and watching them engage with Tiktok over their shoulder out of curiosity.

To me, it felt like my brain was being scrambled. The worst part was I could tell they were addicted to that same feeling.

It is not really fair if a person is addicted to having their brain scrambled while I found the experience absolutely horrendous.

If I engage with Tolstoy/Dostoevsky audiobooks in my free time instead of having my brain scrambled, there is obviously going to be huge carry over to all sorts of other activities. Focusing at work is just one of them.
by fkyoureadthedoc | 2025-05-16 15:57:43+00:00
We're talking about a modified parameter of an API call from a Twitter bot to the Grok API. And let's be honest, Elon or someone acting in his interests did it.

That is very different than the foundational technology falling into the hands of foreign actors.

> Wouldn't you want an inquery into their security procedures?

No more than I want an inquiry into SpaceX or Tesla, since X and XAi are not the same company.
by btbuildem | 2025-05-16 15:57:47+00:00
> To balance safety and utility, Codex was trained to identify and precisely refuse requests aimed at development of malicious software, while clearly distinguishing and supporting legitimate tasks.

I can't say I am a big fan of neutering these paradigm-shifting tools according to one culture's code of ethics / way of doing business / etc.

One man's revolutionary is another's enemy combatant and all that. What if we need top-notch malware to take down the robot dogs lobbing mortars at our madmaxian compound?!
by ryao | 2025-05-16 15:57:49+00:00
That is an approximation. If approximations are acceptable, then here is a trick you might like. In loops that call cosf(i * C) and/or sinf(i * C), where i is incremented by 1 on each iteration and C is some constant expression, you can call cosf() and sinf() once (or twice if i starts at something other than 0 or 1) outside of the loop and use the angle addition formula to do accumulation via multiplication and addition inside the loop. The loop will run significantly faster.

Even if you only need one of cosf() or sinf(), many CPUs calculate both values at the same time, so taking the other is free. If you only need single precision values, you can do this in double precision to avoid much of the errors you would get by doing this in single precision.

This trick can be used to accelerate the RoPE relative positional encoding calculations used in inference for llama 3 and likely others. I have done this and seen a measurable speed up, although these calculations are such a small part of inference that it was a small improvement.
by freedomben | 2025-05-16 15:57:53+00:00
Could not agree more, especially "I loathe the "embigification" guised as mobile first for desktop experiences. Mice are precise and allow for dense design (which i prefer)."

It really is utterly ridiculous how much scrolling we have to do on desktop with these modern apps. Scrolling is a paper cut IMHO. There are obviously good cases for having to scroll, but we should rarely if ever have to scroll just to see menu options! I've built a lot of "modern" websites and built desktop UI apps back in the day too, so I understand the challenges of trying to build responsive UIs that work on different screen sizes, but optimizing for the tiny screen and almost completely ignoring massive screens isn't the answer.
by antirez | 2025-05-16 15:59:08+00:00
Languages learning curve can be very funny. Phonetic regularity plays a lot in this game, for instance. French and Italian are very similar languages (more than Italian and Spanish), yet they are so phonetically apart (with Italian at the extremes of regularity and French at the extremes of complexity) that it's complicated for Italians to learn French in the first steps: then the curve flattens a lot.

Italian itself is a strange beast. It is, perhaps, the most single latin language to learn for a random speaker of some other language, at least at a level where you can talk and understand decently, but it is almost impossible to master, even for Italians.
by Jemaclus | 2025-05-16 15:59:24+00:00
For large applications in a service-oriented architecture, I leverage Kafka 100% of the time. With Confluent Cloud and Amazon MSK, infra is relatively trivial to maintain. There's really no reason to use anything else for this.

For smaller projects of "job queues," I tend to use Amazon SQS or RabbitMQ.

But just for clarity, Kafka is not really a message queue -- it's a persistent structured log that can be used as a message queue. More specifically, you can replay messages by resetting the offset. In a queue, the idea is once you pop an item off the queue, it's no longer in the queue and therefore is gone once it's consumed, but with Kafka, you're leaving the message where it is and moving an offset instead. This means, for example, that you can have many many clients read from the same topic without issue.

SQS and other MQs don't have that persistence -- once you consume the message and ack, the message disappears and you can't "replay it" via the queue system. You have to re-submit the message to process it. This means you can really only have one client per topic, because once the message is consumed, it's no longer available to anyone else.

There are pros and cons to either mechanism, and there's significant overlap in the usage of the two systems, but they are designed to serve different purposes.

The analogy I tend to use is that Kafka is like reading a book. You read a page, you turn the page. But if you get confused, you can flip back and reread a previous page. An MQ like RabbitMQ or Sidekiq is more like the line at the grocery store: once the customer pays, they walk out and they're gone. You can't go back and re-process their cart.

Again, pros and cons to both approaches.

"What didn't work out?" -- I've learned in my career that, in general, I really like replayability, so Kafka is typically my first choice, unless I know that re-creating the messages are trivial, in which case I am more inclined to lean toward RabbitMQ or SQS. I've been bitten several times by MQs where I can't easily recreate the queue, and I lose critical messages.

"Where did you regret adding complexity?" -- Again, smaller systems that are just "job queues" (versus service-to-service async communication) don't need a whole lot of complexity. So I've learned that if it's a small system, go with an MQ first (any of them are fine), and go with Kafka only if you start scaling beyond a single simple system.

"And if you stuck with a DB-based queue -- did it scale?" -- I've done this in the past. It scales until it doesn't. Given my experience with MQs and Kafka, I feel it's a trivial amount of work to set up an MQ/Kafka, and I don't get anything extra by using a DB-based queue. I personally would avoid these, unless you have a compelling reason to use it (eg, your DB isn't huge, and you can save money).
by bvrmn | 2025-05-16 15:59:35+00:00
I did an eval of Quint about year ago and did not find it compelling. It constantly refers to TLA+ and doesn't bring much benefits except typing. Syntax tries to cover underlying fact that state machine is expressed in terms of logic and math using "understandable" for programmers concept but it's very leaky in the end. IMHO "assign" is quite hard to grok without TLA experience. Documentation is scarce.

The most frustrating part it's hard to use with TLA+ background. I know how to do something in TLA but have no clue with Quint because translation rules aren't direct and obvious.

On the other hand it's a way better than PlusCal!

But I'm heavily biased. Please take this "critique" as a mumble from TLA+ initiated duckling.
by beedeebeedee | 2025-05-16 15:59:47+00:00
That is not accurate again. Not only did North America have much more available and abundant natural resources than Central America and South America, the immigration to North America was much higher, so there was a more able labor force to cultivate and exploit the land. Your reductionist stance about free markets is misleading. A free market is only one component of why these places prospered, and may be the least important. Civil liberties and political stability, in addition to the natural abundance already mentioned, were probably much more responsible for the prosperity of North America. Likewise, with post-war Asia you miss the mark. For example, you overlook Japan's pre-war industrial development as well as their embrace of defeat after the war to development their economy and civil society. I'm not arguing for planned economies (quite the opposite), but the lack of nuance in your argument means that you miss the mark.
by Shorel | 2025-05-16 15:59:53+00:00
Have you ever used LaTeX?

Word Perfect was like LaTeX and MS Word at the same time. You could edit text or you could edit the codes and there were no nasty surprises or any random reorganization of the document because you copy pasted something.

Also, by editing the codes you could dictate the precise way the document should look.

I think it was ahead of its time.

Sadly, WP 6.0 changed the macro language too much (they made everything an object and many features were lost) and it was not as successful as WP5.1, because you just don't make all the macros of your customers obsolete overnight.
by paganel | 2025-05-16 16:00:26+00:00
> e.g. I think you will find that Britain and France are culturally closer than France and Slovenia

Not sure about Slovenia but there's a lot more France here in Romania (from where I'm from) compared to the France that is present in Britain, that is if we ignore the 1200-1300s Norman direct influences. But that's a different discussion, related to how the insular Brits cannot really comprehend Napoleon's work to the fullest (as a reminder, what is now Slovenia was indeed, if even for a short period of time, under Napoleonic France, with Ljubljana being indeed the capital of what was then a French autonomous province [1])

[1] https://en.wikipedia.org/wiki/Illyrian_Provinces
by samiv | 2025-05-16 16:00:27+00:00
After having embedded Lua in my game engine and having worked with some Lua games I've come to conclusion that:

- Lua is great from the integrator/engine dev perspective. It's easy to embed and there are several libraries that help with creating bindings between Lua and your game classes.

- Lua has absolutely terrible runtime performance especially when the GC stalls. You soon learn that you have to start moving code to the native side and carefully consider the APIs that you provide for the game so that you can even dream of any type of performance. Haven't tried LuaJIT since that doesn't work with WASM so it's not an option for me.

- The loose runtime typing in Lua is absolutely terrible, and while it's easy and fast to knock up some simple script you really pay the price when you try to maintain or refactor your code and you have no typing information. For the game engine developer this also makes it very hard to provide any kind of help for the game developer, i.e. "intellisense" kind of functionality. I've basically "solved" this by assuming that variables have certain name suffixes and prefixes and when those are present I assume that it has a certain type which lets me provide a list of functions in the script editor to the game developer. Far from perfect. [see link below]

https://github.com/ensisoft/detonator/blob/master/screens/ed...
by silverslate7 | 2025-05-16 16:00:43+00:00
Thanks, Peter! What's the most viable visa for European to-be founders looking to move to the US (without affiliation to any institution / accelerator)?

I've been considering (a) going on a M-1 or F-1 master's student visa while working remotely my non-US company or (b) applying for an E1 Treaty Investor Visa. Are there other routes I haven't considered, and are there any unclear watch-outs around these two routes?
by jlarocco | 2025-05-16 16:00:57+00:00
But you can use `first`, `rest`, etc. in new code. CL and Scheme are stuck with the old names for backward compatibility reasons going back over 60 years.

Clojure had a chance to do better because they were starting a new thing.

It's not necessarily a flaw with the language, in any case, just something I've noticed in Clojure articles.

I suppose I'm agreeing with the author - refactoring Clojure to make it more readable is a good idea.
by skovati | 2025-05-16 16:01:55+00:00
I'm curious how many ICs are truly excited about these advancements in coding agents. It seems to me the general trend is we become more like PMs managing agents and reviewing PRs, all for the sake of productivity gains.

I imagine many engineers are like myself in that they got into programming because they liked tinkering and hacking and implementation details, all of which are likely to be abstracted over in this new era of prompting.
by 90s_dev | 2025-05-16 16:02:58+00:00
> Or they'll write to me and say, "how do I know if it's evil or not? I don't think it's evil, but someone else might think it's evil, so I'm not gonna use it."

> Great. It's working. My license works. I'm stopping the evildoers.

Or cautiously logical people who are probably doing good but don't have an absolute certainty that they are, which is probably the best way to live.
by Towaway69 | 2025-05-16 16:03:10+00:00
Easter eggs in code that break things are evil!

I don't write code for corporates, so my license is purely fictive. I cannot enforce my license but I can prevent corporates from taking my code and wrapping it into a product and selling it on for a profit. While not passing on a cent to me.

If a corporate wishes to use my code, then they are welcome to pay me a license fee or a one-off payment for a non-distributable license.
by sidrag22 | 2025-05-16 16:03:31+00:00
there is a lot to be said for adding complexity you dont understand and then trying to work around it, despite not grasping it.

comparing it to no longer doing the long division portion of a math problem isnt a great 1 to 1 here. long division would be a great metaphor if the user is TRULY only using llms for auto complete of tasks that add 0 complexity to the overall project. if you use it to implement something and dont fully grasp it, you are just creating a weird gap in your overall understanding of the code base.

maybe we are in full agreement and the brunt of your argument is just that if it doesnt fit ur current usecase then dont use it.

i dont think i agree with the conclusion of the article that it is making the non coding population dumber, but i also AGREE that we should not create these gaps in knowledge within our own codebase by just trusting ai, its certainly NOT a calculator and is wrong a lot and regardless if it IS right, that gap is a gap for the coder, and thats an issue.
by joaoqalves | 2025-05-16 16:03:32+00:00
Hi! João here

The company I work for [1] was recently taken private by a PE consortium. I put together a write-up on what changes post-acquisition. It's not just the headlines (layoffs, cost cuts) but how decision-making, KPIs, product focus, and internal culture shift.

It’s based on direct experience + patterns I’ve seen from others in similar situations. Might be useful if you're in a SaaS company or just curious about how PE works from the inside.

I'm curious to hear how this compares to others' experiences. In particular, from folks who've been through something similar.

1 - https://www.ft.com/content/9bbd28de-e3f3-4eb5-8b04-39c145c72...
by 0x457 | 2025-05-16 16:03:34+00:00
> Material Design v1

I think it was the worst one. At least from an interoperability perspective: sure, a giant floating "+" in a circle in notes app on a mobile device is alright CTA to add a new note, but on anything bigger than that (even an iPad screen) it's bad.

Apps and websites using it felt like "Work in Progress, we will style it later" except there was no later it was already styled and was just ugly.
by illnewsthat | 2025-05-16 16:03:40+00:00
I haven't checked in on it recently, but maybe a similar open-source option would be https://github.com/All-Hands-AI/OpenHands

A not open-source option this looks close to is also https://githubnext.com/projects/copilot-workspace (released April 2024, but I'm not sure it's gotten any significant updates since)
by PeterStuer | 2025-05-16 16:03:44+00:00
In the very early days, Java was pushed into the mainstream long before it was ready. This left a foul taste as management demanded we jumped on the bandwagon while the trenches filled with frustration over many bugs in the early JVM's and language implementations and missing quality in core features.

It was not that it was fundamentally bad, maybe a tad too academic, just overhyped beyond it's maturity and capabilities at the time.

It did not feel as quirky as C++'s paradigm neutrality, and less esoteric (syntactically) than Lisp, so all in all in theory a welcome hi gh level language with decent perks. But if you are going to push adoption by preaching to the managerial class with half thruths, expect some pushback (remember write once, debug everywhere?).

Then the second wave with colsultancyware feature adoption (anyone like CORBA?) and becoming academia's darling (I heard you like frameworks, so I put a framework in your framework so you can meta-factory your own DSl framework at runtime!) made it so that when later .NET arrived, it felt like Java, the good parts.

Of course, .NET would go on to become a monster in itself. But that is another story.
by bitwize | 2025-05-16 16:03:46+00:00
N.B. Access for DOS was not a database. It was a communications program with preconfigured settings for popular services like CompuServe and Dow Jones. It wasn't generic like Crosstalk (also featured); to my knowledge it couldn't do anything that it didn't have a configuration for. Clearly aimed at the "on the go" business person who wanted to check stock prices or something without worrying about baud rates or stop bits.
by aatd86 | 2025-05-16 16:04:05+00:00
Yes but the AI is not creating these components from zero is it (on demand part)?

It will probably have access to a list of components with their specifications, especially the type of data that the components allow to mutably (or not) represent.

Or respond to a query from a database by presenting a graph automatically.

But the hard part is to turn natural language into a sql query in my opinion. It's not really the choice of data representation which is heavily informed by the data itself (type and value) and doesn't require much inference.
by dmonitor | 2025-05-16 16:04:34+00:00
It still is. There's been attempts at porting the game to modern engines (Space Station 14 having the most progress), but SS13 is still alive and well.

/tg/station's github is very interesting, too. About a dozen pull requests every week adding random features and bug fixes from random contributors. The game is constantly in flux, but they manage to keep everything feeling the same.

https://github.com/tgstation/tgstation
by TheDong | 2025-05-16 16:04:34+00:00
This is simply magical thinking.

Knowing the details of an open source tool a company uses does not magically give you a backdoor.

By that logic, merely knowing coinbase uses the open source go language for some things would let you steal all their crypto, and I assure you if it was that simple their coffers would be empty.

btw I use linux and firefox and have an unencrypted bitcoin wallet.dat on my computer, feel free to prove me wrong.
by Shorel | 2025-05-16 16:04:51+00:00
Word Perfect 6.0 (they also had a DOS version) should be taught in software engineering universities as one of the prime examples of product managers killing the company.

5.1 was perfection, but the interface was text console. 6.0 was a complete redesign of … everything, and it was more a bad clone of MS Word than an improvement over WP 5.1.
by vinceguidry | 2025-05-16 16:04:52+00:00
I enjoyed the Culture / WH40K fanfic, unfinished as it is. Their take on the Culture / Necron negotiations was hilarious, essentially the Necrons are machine intelligences that have degraded introspective ability, thus are unable to effectively negotiate. Every negotiation breaks down into demands / threats which they clearly can't deliver on. The Culture eventually works around this limitation through hints and intimations and effects a technology trade.

https://archiveofourown.org/works/649448/chapters/1329953

Feelings, or some other way of understanding the self and what it wants, are apparently required to operate effectively as an agent.