MurphyA/hacker-news huggingface dataset:
by kyrylo | 2025-11-09 12:54:39+00:00
Telebugs creator here. GlitchTip is solid, but Telebugs is built for devs who want something lighter and faster to self-host.

It runs on plain Rails, sets up in about 5 minutes (one command), and stays snappy even on small servers. The UI is modern, minimal, and actively maintained. I keep refining it to stay fast and clean.

The biggest difference is in philosophy. GlitchTip was built by an agency. Telebugs is a solo passion project. I’ve worked on error tracking tools professionally before, and built Telebugs to reflect how I wish those tools worked.

If you’re curious, here’s a short write-up on why I built it: https://telebugs.com/why

Happy to answer any specific questions!
by bgwalter | 2025-11-09 12:54:39+00:00
Gowers, Tao, Aaronson. Are there others hyping "AI"?

All of these seem to subscribe to "inevitability", have no issues that their research relies on a handful of oligarchs and that all of their thoughts and attempts are recorded and tracked on centralized servers.

I bet mathematical research hasn't sped up one bit due to "AI".
by tank-34 | 2025-11-09 12:55:38+00:00
this project is inspired by https://apis.guru/graphql-voyager/, which visualize the entity relationships based on graphviz and add fancy ui effects.

fastapi-voyager, from left to right, is tag, routes(apis) and response_models, it indicates the internal relationship between routes, which can help developers/PO easily figure out the data structure.
by jacquesm | 2025-11-09 12:56:09+00:00
> The systems with devastating impact are air-gapped.

You wish. More often than not the people building these think they are very clever by using their bullet proof fire walls rather than a physical disconnect. Or SLIP over a serial port because for some reason serial ports are fine.

I've seen this kind of crap in practice in systems that should be airgapped, that they said were airgapped but that in fact were not airgapped.
by hasbot | 2025-11-09 12:56:35+00:00
I have the same name as a former MLB player. We both use Yahoo Mail. I was there first and use my name without the middle initial as my email address. He uses his middle initial. I've received many emails for him where people have overlooked the use of his middle initial. Sometimes it takes me a second to realize the mistake and I'm wondering WTF is this email on about.
by mpalmer | 2025-11-09 12:56:47+00:00
This piece is an organizational mess, and almost nonsensical in places.

This strange discussion has only a few precedents; it leads, as so many discussions about AI do, toward speculation about hilarious absurdities. Sometimes, these hilarious absurdities—talking computers, hundred-billion-dollar server farms—become reality much sooner than even the speculators imagined. Will the same happen here? I fear it might. Will it be bad? Certainly. Although: It’s just possible that writing for AI might not be quite as bad as “writing for AI” sounds.

Was the person who wrote this thinking at all? (Did a person even write this?) This paragraph manages to say nothing, and with a distinct lack of skill, grace or apparent thought.
by HarHarVeryFunny | 2025-11-09 12:56:58+00:00
The default copy constructor does a member-wise copy, but that member-wise copy in turn uses each member's copy constructor (explicit or default), if it has one.

So for example, if your class has members whose type is any of the STL container types (std::list, vector, map, set,etc) then you will get a deep copy since that is how those types behave.

The semantics of a reference as part of a class are whatever you choose to make them. Is the reference referring to something within the class, maybe initialized in the constructor, or is it referring to something external such as a global variable perhaps? It's up to you to define your constructors according to the semantics of how you are using the reference. If you don't provide a copy constructor then the default member-wise copy would indeed just make a copy of the reference, which would be the right thing if you were using the reference to point to something global, but would be a bug in your code (missing copy constructor) if you needed it to refer to something in the copied class.

Raw pointers in classes are much the same. How are you using the pointer, and what does that mean that your copy constructor needs to do? Just like with the reference example, the default member-wise copy will only be correct if you are using the pointer to point to something not owned by the containing class, and just want the copy to point to the same thing. If the pointer is an owning reference to something allocated on the heap, then maybe you would want the copy to allocate it's own storage and copy the contents, but only you would know that.

The semantics of smart pointers are more clear cut, which is why they are to be preferred in modern C++ code. A std::unique_ptr simply can't be copied, so you would be forced to write a copy constructor to handle it. The default member-wise copy of a std::shared_ptr will just invoke it's copy constructor resulting in the copy pointing to the same object, now with an increased reference count.

Long story short, if you are writing modern C++, using STL container types, then a copy is a deep copy. If you are writing your own container types using pointers, or implementing your own copy constructors, then "copy" means whatever you have chosen it to mean.
by anastasija2504 | 2025-11-09 12:57:26+00:00
As AI coding assistants level up from autocomplete to autonomous, the real challenge isn’t what they can do - it’s how we use them wisely. From finishing your sentences in emails to finishing entire blocks of code, AI has come a long way. It’s like having a hyper-eager junior developer on your team – fast, capable, and sometimes overconfident.

But speed isn’t everything. These tools still need guidance, context, and careful oversight.

In this article, Birgitta Böckeler (Distinguished Engineer, Thoughtworks) shares practical strategies for using AI responsibly, helping developers harness its power without sacrificing quality or maintainability.
by Marshferm | 2025-11-09 12:57:27+00:00
It’s not understanding, it’s explanation. I read the paper, I posted it.

Start at what are human explanations:

https://www.alisongopnik.com/Papers_Alison/Explain%20final.p...

Now what are words in relation to that drive?

“We refute (based on empirical evidence) claims that humans use linguistic representations to think.” Ev Fedorenko Language Lab MIT 2024

What are LLMs?

As language or tokens cannot represent anything of merit in brains accurately, then the interpretation of what is semantic vs what is a task variable action potential is subject to the Gopnik problem.

It’s an enforced circularity that never allows the brain/ecology to speak for itself in its native process.
by littlestymaar | 2025-11-09 12:57:28+00:00
> Well I would disagree with that and laugh at the fact that this exact analysis has been published by The Economist and similar for the past 50 years

I'd be happy to live in a timeline where the Economist criticizes the bullshit that “supply chain economics” is, but if you paid attention you'd be aware that it's not really their editorial line.

> fact for the first time France unemployment numbers have gone below the numbers they climbed to in the 90s

You should thank the boomers for retiring, not the economic policy. (By the way, employment went up in pretty much all of Europe for the 2010-2020 period while the economy stagnated in most places but the east)

> We do have issues and for the past 3 years they've been amplified by our political standoff (parliament cut in three third and none agree to work with the others

Standoff caused exactly by the government dogmatic stand over their failed economic policy …

> but the core of our economic woes is from pensions.

It is not, this is government narrative. The “pension problem” is merely an economic activity problem. When the real wages go down (which is did in France since 2017) while pensions are inflation adjusted, obviously the share of income that goes through pensions increases but that's not a “pensions problem” it's a wage issue (and economy health issue).

In fact, public spending per capita is in the middle of what remwins of the EU15 (just above all other Mediterranean countries and below all the others). The reason why the spendings per capita ratio is too high is not because the spendings are too high, but because the GDP is far too low due to inept policies.
by binary132 | 2025-11-09 12:57:42+00:00
I’m saying these things aren’t “language features” at all. I applaud their creation, but “batteries built in” has always seemed to me like a terrible design decision compared to “batteries provided” especially considering that many of these things would have been perfectly satisfactory generic tooling. Now we have people yapping about C++ not having a build system because they’re all habituated to a world where every language has its own, different build system built in.
by dismalpedigree | 2025-11-09 12:58:17+00:00
I can’t support Linux as the first computer enough. Both of my boys got an Ubuntu desktop for their 8th birthday. I showed them some basics. They were motivated to figure it out. They learned how things work along the way. Also no scammy popups or notifications causing confusion or them granting access “just click yes and it goes away”.

Ununtu (non root) and timekeeper plus. I work with them when they want to install something or do updates.

They have steam, minecraft, OpenRA for games and are happy.

They create music, program arduinos, edit videos they make with friends.
by reify | 2025-11-09 12:58:37+00:00
I did this two years ago for a 10 year old.

I went with Linux Mint XCFE

The issue for all parents is surely online safety, especially so for our youngest.

I managed to prevent the 10 year old acccessing porn and other non child friendly sites.

change the browser to the Mullvad Browser or and librewolf

---------------------

make sure you change the DNS in network manager and the the browser.

https://mullvad.net/en/help/dns-over-https-and-dns-over-tls

I used these:

family blocks: Ads, Trackers, Malware, Adult, Gambling all blocks: Ads, Trackers, Malware, Adult, Gambling, Social media family.dns.mulvad.net all.dns.mullvad.net

you really dont want an 8 year old on, facebook, X, reddit or any of the other trash sites

----------------------- search engines:

Qwant provides a safe Junior search.

https://www.qwantjunior.com/

-----------------------

It takes time to set up.

once it is set up, become a kid and search for porn, gambling etc, to see if you as an adult can find those sites. if you do, block them

to block sites just add lines like these to ublock/my filters section.

If a child does click on them they are blocked and do not open. This also works if the child opens a link from a search engine. This way also removes the proceed button that allows you to bypass the restriction.

facebook.com##^html youtube.com##^html threads.com##^html instagram.com##^html tiktok.com##^html pinterest.com##^html twitter.com##^html google.com##^html bing.com##^html reddit.com##^html pornhub.com##^html

etc etc

for fun; set up a few aliases, so they can update from the terminal.

This is great for kids, typing update into the terminal and watching it update && upgrade
by exe34 | 2025-11-09 12:59:09+00:00
It's minimalist in the sense that they have decided what you should be allowed to have as a user, and any extensions you rely on to bring back functionality that has been considered basic for 30 years will break with every version.

other environments can start as minimalist, but once you have set them up in the way you want, those features will rarely go away. usually that would be considered a bug/regression, not a feature.
by Marazan | 2025-11-09 12:59:20+00:00
> There are decisions you didn't realize you needed to make, until you get there.

Is the key insight and biggest stumbling block for me at the moment.

At the moment (encourage by my company) I'm experimenting with as hands off as possible Agent usage for coding. And it is _unbelievably_ frustrating to see the Agent get 99% of the code right in the first pass only to misunderstand why a test is now failing and then completely mangle both it's own code and the existing tests as it tries to "fix" the "problem". And if I'd just given it a better spec to start with it probably wouldn't have started producing garbage.

But I didn't know that before working with the code! So to develop a good spec I either have to have the agent stopping all the time so I can intervene or dive into the code myself to begin with and at that point I may as well write the code anyway as writing the code is not the slow bit.
by RickJWagner | 2025-11-09 13:00:02+00:00
I was just wondering why it seems we see headlines about ‘far right’ issues, but seldom see headlines about ‘far left’ things.

If there is a political center, shouldn’t the headlines carry a similar number of headlines ( at least over time? I can understand that at times one side or the other might be more news worthy, but honestly I just don’t remember a time where headlines discussed someone being ‘far left’)
by throw0101a | 2025-11-09 13:00:46+00:00
> […] it's much more efficient than the alternatives […]

Efficiency by what metric? Energy per distance travelled? Energy per kilogram moved (per kilometer?)? Time? CO2 emissions?

* https://en.wikipedia.org/wiki/Energy_efficiency_in_transport

* https://ourworldindata.org/travel-carbon-footprint

For distances <120 km, cars are often quicker than trains, and for >900km planes are, but in between trains are often quickest (assuming infrastructure is actually present).
by lores | 2025-11-09 13:01:06+00:00
A company the size of Facebook has far more than enough resources to know that different ads have different requirements, if only legal ones, because moral ones seem hopelessly quaint. I, a know-nothing engineer not working in HR or advertisement, would have raised a question to Product asking whether job ads had to be excepted from the regular optimisations and advertised equally to everyone. Why didn't Facebook think about it? The answer is they did, they just chose to ignore it because money is more important, or at least the perception of choosing money over morals or legality.
by ErroneousBosh | 2025-11-09 13:01:24+00:00
It's been being done for 70 years or so. You just need to be able to generate quite a lot of power on VHF upwards, and have a very low-noise antenna preamp, and a large array of directional aerials to focus the signal.

If you're reasonably handy with simple hand tools you can build a moonbounce array for a couple of thousand and a month or so of evenings.
by jacquesm | 2025-11-09 13:01:26+00:00
Let me help a bit by trying to explain the situation. If you produce something that is a million lines of code you will most likely have at least a few hundred to a few thousand bugs in there. Some of those cause crashes, some of them cause hangs, and a small percentage will cause you to increase your privileges. Combine enough of those and sooner or later you end up with RCE. The problem is that you as a defender don't necessarily have the same budget to audit the code and to close it all down to the degree that an attacker has.

You need to do an absolutely perfect job in always spotting those RCE capable issues before an attacker does. And given the numbers involved this becomes a game of statistics: if there are 200 ways to get RCE on OS 'X' then you need to find and fix all of them before attackers do. Meanwhile, your system isn't a million lines but a multitude of that, there are your applications to consider (usually of a lesser quality than the OS), the risk of a purposeful insertion of a backdoor and so on.

So I don't think it is unreasonable to presume that any OS that is out there most likely has at least a couple of these that are kept 'on ice'.
by trueismywork | 2025-11-09 13:01:53+00:00
I am another one. My work in mathematics has sped up personally due to AI.

Whenever you start to prove new results, you get a lot of small lemme that are probably true but you need to check them and find a good constant which works with them.

Checking is by theorem provers and searching is by machines. You still need to figure out what you want to prove (which results are more important).

But rest can get automated away quite quickly.
by pron | 2025-11-09 13:02:18+00:00
It's not about more syntax, it's about design, and how Zig was the first to use partial evaluation to do away with several, rather common, features.

It's like how the novelty of the iPhone's touchscreen design was in not having a keypad, or that the novelty of the spork wasn't in inventing the functionality of either the spoon or the fork, but in having a single utensil that performs both. The more important aspect isn't the functionality but the design. I'm not saying you need to like any of these designs, but they are novel.

Saying that you could have a similar functionality by other means misses the point as much as saying that there's nothing special about a spork because if you have a spoon and a fork, then you have the same functionality. But you still don't have a spork.

You could, then, ask what the point of the novel design is. Well, in some languages you have generics and interfaces and compile-time expressions, but because none of these is general and powerful enough, so you also have macros. Macros are very powerful - perhaps too powerful - but they are difficult to understand, so they're used sparingly even if they can subsume other functionality.

Zig has shown that you can do almost anything you would reasonably want to do with macros with partial evaluation that has access to reflection. That wasn't obvious at all. And because that feature was not only powerful enough to subsume other features and make them redundant, but also very simple and easy to understand, it ended up with a design that is both minimal and easy to read (which is important for code reviews) but also highly expressive. Again, you don't have to like this rather minimalistic design, but it is novel.
by ErroneousBosh | 2025-11-09 13:02:55+00:00
> but, yeah, on CW a monster antenna and the legal limit of 1500W seems to be the median system.

A good ten years ago or more, they used Arecibo to transmit CW moonbounce on 70cm. I was able to receive it in my back garden with a handheld and an 11-element Yagi balanced on my clothesline ;-)
by spacedcowboy | 2025-11-09 13:04:46+00:00
I remember something similar from my university days (30-odd years ago) called Empire. This still lives on here [1]. There was many a map printed out on the laser printer (and my prof wanted to know why his budget was so much higher that term...) back in the day. We played against other colleges of the university of Londone over JANet, and I ran the server on a DECstation 5000, somewhat less powerful than my watch these days...

Empire has the concept of a "Bureaucratic Time Unit" which recovered to its maximum in real time every update, and was based on how many civilians (as opposed to military) you had in your capital city. I always thought that was a pretty cool idea - every operation took X BTU's, so you couldn't log on at 3am and utterly nuke another country before they woke up. 3am was still the popular time to start nuking another country, of course :)

I still remember waking up (I splurged on a 1200-baud modem rather than the standard 300-baud one) in the morning, logging in on my Atari ST before I went to college, and seeing "You have 2000 telegrams...". Oh crap. You got telegrams for lots of reasons, but one of those reasons was an attack. It was all part of the "All the news that's fit to print!" messaging system. Just like 'Diplomacy', half the game was in the interaction between people, alliances and betrayals, not just getting stat X to 100% ... [1]: http://www.wolfpackempire.com
by einsteinx2 | 2025-11-09 13:05:03+00:00
Same type of BS happened to me at my last company, which ultimately let to me being extremely unhappy there and leaving. If I hadn’t gone for the promotion at all I’d probably still be there.

I’ll never understand why companies as an almost universal rule make it as difficult as possible to get promoted or get a raise but will hire less qualified outsiders for those positions at higher pay without blinking an eye.
by jstimpfle | 2025-11-09 13:05:39+00:00
Chasing an object model may work for simple programs, but as the program gets more complex, it tends toward an exercise in futility.

The problem with the object concept is that there are many ways to partition all the data in a program into distinct objects. But types and object models need you to decide on one way of looking at the world, and it wants you to see the world like that throughout the codebase.

Taking copying as a specific example, there may well be more than one useful way of copying stuff. The best way to achieve what you need depends not only on functional factors but also non-functional factors (such as performance and concurrency for example). The more serious and involved a program gets, the more apparent it becomes that there is not one way to copy. And the harder and more arbitrary it becomes to single out one way of copying that should be "blessed" with a special syntax.

It's an arbitrary choice to single out a blessed way to copy, and that is also a choice against a lot of other useful ways to copy stuff. Having one blessed way makes a few things easier, but makes everything more complicated. There is now one way to copy that gets done quite implicitly using syntax, which draws on a mountain of special C++ semantics, and there are other ways that must be done using regular function calls. The end result is something that is more complex than just always making regular freestanding functions that do the thing that you want done.

(What copy routine will be chosen implicitly by syntax/semantics is mostly predicated on types, so you can always opt to add wrapper types to accomodate other ways of doing things. Now try wrapping the members inside the thing that you want copied, working against all the implicit semantics... that must be about the point where the boilerplate becomes unbearable, where C++ gets much more verbose and unreadable than just straightforward C).

The downside of always using function calls is that you can't profit from all the built-in implicit semantics stuff, but as said there is always a theshold of program complexity beyond which that stops being useful because there's much more stuff that the program needs to do that cannot profit from it.
by shubhamjain | 2025-11-09 13:06:13+00:00
> Spec-Driven Development changes this: specifications become executable, directly generating working implementations rather than just guiding them.

Reminds me of TDD bandwagon which was all the rage when I started programming. It took years to slowly die out and people realized how overhyped it really was. Nothing against AI, I love it as a tool, but this "you-don't-need-code" approach shows similar signs. Quick wins at first, lots of hype because of those wins, and then reaching a point where doing even tiny changes becomes absurdly difficult.

You need code. You will need it for a long time.
by tdeck | 2025-11-09 13:06:22+00:00
This kind of illustrates the biggest problem with the FORTH ecosystem, in my opinion. Approximately 80% of open source development effort seems to go toward building new, slightly incompatible FORTH interpreters to suit the author's own tastes.

Sure, gForth still doesn't have a decent way to make HTTP requests or match a regular expression, but writing libraries like that doesn't seem to be fun for the average FORTH developer, who would rather reimplement a very barebones language environment to address the gap left by the other 1200 FORTHs.

It's not that these projects aren't cool, but if you actually want the language to become popular why not look at things every other popular language has?