skysight-inc/HackerNews huggingface dataset:
In C++ it's harder to shoot yourself in the foot, but when you do, you blow off your whole leg.

Bjarne Stroustrup

Is it though?
I feel it's as easy to shoot my foot as to modify few lines of C++ code and get 200+ lines of STD error messages.
qmail/djbdns written by Dan Bernstein were groundbreaking when released, and are extremely interesting in terms of how to build and design robust software to be deployed in a security-critical hostile environment
> charge $0.05 for your software. Unless it does bug tracking, in which case the correct price is $30,000,000.

At the time the author was creating a bug tracker (if you want a shallow interpretation).
EU wants Airbnb and co to hand over rental home data
I'm not pro real name policies, it just seems very unlikely that a group in this day and age would ban specific races from attending. Given that, and the fact that the account is a throwaway, it's a priori more likely that it's a troll trying to stir up a flame war than an actual question.

Maybe the article photographers had a bias for white people, that would be more plausible, but I can't see how any group today (that isn't explicitly a racist/extremist group) would ban races from its members.
https://www.merriam-webster.com/words-at-play/fewer-vs-less

> Less has been used this way for well over a thousand years—nearly as long as there's been a written English language. But for more than 200 years almost every usage writer and English teacher has declared such use to be wrong. The received rule seems to have originated with the critic Robert Baker, who expressed it not as a law but as a matter of personal preference. Somewhere along the way—it's not clear how—his preference was generalized and elevated to an absolute, inviolable rule. ...

> Despite the rule, less used of things that are countable is standard in many contexts, and in fact is more likely than fewer in a few common constructions, especially ones involving distances (as in "less than three miles"), sums of money (as in "less than twenty dollars"), units of time and weight (as in "less than five years" and "less than ten ounces"), and statistical enumerations (as in "less than 50,000 people")—all things which are often thought of as amounts rather than numbers. ...
None of these problems would affect these people if they didn't insist on making their pet programming languages run on what is essentially a C engine. Rust, like a lot of modern high-level languages, basically compiles to llvm ir and then absconds responsibility, leaving things to the fifty years of engineering involved in getting us to where our compiler backends are. The joke used to be "Java will run anywhere someone writes a JVM in C" but now it's "progamming language will run on whatever target someone wrote for LLVM."

Then, having used the C and C++ toolchains to boost themselves into a simulacrum of self-hosting, they immediately decide they don't want to actually implement their preferred abstractions in the operating systems they want to use, so they write huge FFI libraries to take advantage of the massive amounts of library code and OS interfaces that we've spent the past fifty years writing.

Finally, having arrived on the scene, decided that everyone else is wrong and they're right, using the bad-and-wrong toolchains to bootstrap their throbbingly correct and superior approach, we're treated to angry rants about how fifty years of engineering is messy and why wasn't some omnipotent project manager in the sky keeping all this in check while the world awaited the arrival of someone smart enough to write us, at last, a good and correct programming language?

I totally understand that looking into the spaces where our programming languages and our kernels intersect can lead to anger, dismay, and confusion. They're all living projects who have had to adapt to decades of massive change in the computing world; once the LispM went away all hope was lost for coherence. But whining about it in the context of how it makes this thing you felt like doing slightly more difficult is just petulant noise.

Just like open source developers don't owe anyone specific features or bugfixes, the Unix and C ecosystem doesn't owe anyone a rigorous, provably correct ABI. If you're not happy about it, don't use it. If you want to benefit from the decades of work, you have to accept the pitfalls that sprung up over that half-century. The alternative is to do it over, yourself, according to your principles. I desperately wish someone would; the benefit to computing would be incredible. So far, everyone dips a toe in the FFI pool, declares it to be too cold, and then swims around in it regardless.
Promoting your open source project – or how to get your first 1K GitHub stars
To be super clear I'm not trying to disparage you at all. I am just saying that I might not be cut out for understanding these complexities and ... honestly it deeply frustrates me, but I don't know how to overcome it.
One of the first things I did as a professional programmer was to make a game for blind people where you used audio for navigation. The game was developed in cooperation with a school for blind kids and them using echo location to various degrees was quite prevalent. A common use case was to identify the direction of open doors when passing by. Some where quite reliant on using it but skill levels varied quite a lot.
In case you are curious about Google Play's search, you can try it on play.google.com
Craftspeople Built Height-Adjustable Shelves Pre Industrial Revolution
I am not yet convinced that Rust is a sufficient answer to C. Its constraints do solve some issues, but I am not really convinced. Also personally dislike the self-identification of Rust users. Rustafarian? Seriously?

You probably get accustomed to it, but I am not sure if I want to yet. Not deep enough into compilers to know why variables cannot be implicitly mutable or not. Probably a compiler necessity to enact its borrowing rules. But ultimately the compiler should make my life easier. Only ever using one thread or process does solve several common locking issues.

In that regard C string handling will probably let more people move away from it than its security flaws.

It will probably end up like always. There are some applications where some languages shine. And the simplicity of C has merits, otherwise another language would have taken its place. Of course C still has a lot of momentum and perhaps another language would do better in the specific use case.
Assuming you’re in the US, Check out the various Department of Energy labs, NASA, basically anywhere there’s big computations being done to support science and engineering projects.
Really bad news! Please keep sendmail default MTA!
You had me until the anecdote. I understand the sentiment and intent of what’s being said, but as a security professional it just paints themselves, their applications, and their user base as targets. Knowing it’s a won’t fix means it’s also easier to sell exploits if not disclosing as it’s clear he doesn’t intend to upgrade to a maintained and supported version of Python, so it should work for longer than most exploits.
Repeatedly refusing to fix this widely reported issue with non-sensical explanations does imply bad intent.

In the beginning, it might have been an oversight. Now moxie is just making seriously misleading arguments on behalf of people he doesn't know to make their service worse.
Do you have a time path? I am also interested in mysql
Have you tried 'offboarding' 200gb of photos and videos from icloud photo library?
It's not either/or, it's both. They were gifted, but they also had the time, money and motivation to work on their skills and hone their craft. It's not by coincidence that in literally every community that talks about how to level up their skills, the first response is always "practice practice practice".
Lessons from My Failed Startup
I covered my bedroom window with a blanket and that keeps most of the light out at night. Closing my laptop shell helps keep down the light in my room.
My impression is that Debian doesn't support the latest hardware nor have the latest software?
Free Space Required for Modern macOS Upgrades
Why? But anyway, you can install it from ports if you wish ;)
Is that what this is all about? I feel like the examples people give are nowhere near this simple.
But the same question applies: why?

It feels very weird to have both a very good end-to-end encryption (the Signal encrypted messages) and a very bad system (SMS) together in the same app. People should just move away from SMS, it's not like it's hard.
Agree. The hardest thing in the world (besides configuring sendmail) is to remember that other peoples' use cases are not necessarily my use case. The world of email was a whole lot different back when sendmail was created.

https://en.wikipedia.org/wiki/Email#History
All you really need to show is how Linus Åkesson made a Turtle animation[1] using Sendmail cf. That level of complexity should not exist in any configuration language.

1. https://www.linusakesson.net/programming/sendmail/index.php
I only tried following a few people that posted programming related stuff, but more then half their posts were completely off-topic, so I had no way to filter all the noise. Everything else Twitter suggested was rubbish.
When I came across the (obvious, in retrospect) visual explanation for why (a + b)(a + b) == a^2 + 2ab + b^2 I was blown away by how simple it was, and by why on earth I had to just memorise that formula in school.
Finally. For, well, decades, the first thing I added to my rc.conf was sendmail_enable=NONE.

I think local email is dumb in general though.
This effect clearly exists. It suffices to check how physics and math were expressed in the papers that discovered them and how they are currently represented to notice that sometimes organizing knowledge in the right framework and simple notational changes can be sufficient to power up our ability to make new advances.

Question is, are we dedicating enough effort to this endeavors? Is rewriting known math under a different guise sufficient to survive the publish or perish attrition?
And will these efforts keep returning results?

I suspect the answer is no to the first two questions, and I don't know the answer to the third.
Gerrymandering happens because districts are constantly getting redrawn for population changes.

What if we took the opposite approach, and instead of making it so every district had approximately the same population, made it so each representative's vote was weighted by the population of their district? Could then use county boundaries (assuming the number of counties is >= the number of representatives)

Could even weight by # of votes obtained rather than district population, to incentivize being the preferred representative for as many people in your district as possible. I like having a few pro-consensus forces in our politics in a time of polarization.
The backups on Android are near useless as well - they expect users to remember and save a massively long string of numbers (that are pre-generated, so they can't even choose a password they remember) and then they only do backup manually and onto device storage where it'll be gone together with everything else on the device if it breaks or dies.

Getting that backup off the device is yet another manual process for most users they need to think about.

Compare this to Telegram: user doesn't have to do anything.

Compare this to iMessage: user doesn't have to do anything.

Compare this to WhatsApp: user just needs to click agree.

The last two even save backups in an E2E encrypted fashion unreadable by servers.
GWB rebranded it as Climate Change, not anybody else.

Solar forcing is completely accounted for in the models, in all areas (albedo, bouncing in the galactic plane, distance from the Sun).

The repeated cries of "but you didn't account for this or that, which I know as a layman, but surely PhDs in climate science didn't think about!" is inane. It's in the models. Every single variable you can name and then some are in the models.

Climactic periods are not "measured" in any kind of arbitrary 3 decade cycle. Even if you want to pretend that they are, and we are returning to some kind of baseline (which every bit of science says we are not -- we are going to dramatically overshoot it), humanity did not evolve under those "historical norms". Our society and agriculture and population patterns did not emerge under those "historical norms".

Returning to those "historical norms" will mean the largest population migration in human history, with a large amount of it from nuclear states which already have shooting skirmishes in their borderlands facing an existential crisis over water (India, Pakistan, China). Those "historical norms" are not necessarily compatible with civilization.

Before you talk about how much farmland it is going to "open", ask yourself how well the supply chain did during COVID. Then ask yourself what will happen to it during a population migration. Ask yourself what happens when deep water ports at low sea level start having problems, and how we would get crude to refineries to get bitumen to even make asphalt to create infrastructure in the new "open" land, how we'd transport concrete and steel there if there are interruptions in the supply chain which impact diesel production. Ask yourself how long it will take to transform old-growth forest and granite-filled glacial retreat zones in Canada into arable land, how easily we'll be able to get chemical fertilizers, etc.

Even if you want to talk about how this is some kind of "historical norm", the question ultimately becomes not "is this anthropogenic?" (it is, but it doesn't matter), but "how do we intend to survive this as a species?"
I recalled articles about blind mountainbikers using echolocation, and a search found several, including [0] and [1], there was also an article on HN [2] a few years ago.

[0]: https://www.discovermagazine.com/the-sciences/echolocation-t...

[1]: https://www.mbr.co.uk/news/blind-mountain-biker-echolocation...

[2]: https://news.ycombinator.com/item?id=21169414
Nothing stops Signal from E2E encrypting backups on their side.
Thanks for your reply.

On trying to join a FAANG: I'm not sure if they're interested in 40-something year olds that have only been coders and haven't even been team leads.

Working on site is not really an option as it's in a different country, and I just had a daughter with my girlfriend, who has a job and doesn't speak English.

> watch out for the trap of being grumpy about your situation, you are not a victim. if you want the responsibilities and big $$$, you have to be to showing that you are ready and interested, and not waiting around, working remotely, doing the same stuff year over year, in a comfort zone.

Yes I'm fully aware of this. But I've been showing readiness and interest for 11 years of working my ass off, didn't take me nowhere (other than big salary increases, which sure were welcome). I have no reason to believe anything will change.
Even if it is proven beyond any possible doubt, I do not believe that this will make any real difference in voting behaviour. I would like to believe that it does, but there have been so many more instances where this should have been the case, and it never happened.

It seems to me that the narrative in certain circles circles (especially the conservative subreddits, where it is possible to observe as an outsider) has settled so much that it will not be changed by anything.

Figuring out how to prevent democracy from veering off a cliff in this post-truth world is a challenge in my country as well, but it just seems so absurdly hopeless in the US, even if you take away the extreme amplification through (social) media.
Ask HN: How can I block posts about Musk, Twitter, Mastodon and related topics?
Since Elon completed his purchase of Twitter, the quality of conversation on this site about those topics has plummeted.

I'm almost at the point of getting off HN for several weeks until the hive mind finds something else to vex it. But I realise I'll be losing a lot of high quality conversations too.

Does HN have filters for topics you don't want to see?
Python 3.12 Goals
DEME, Barge Master developing Jones Act compliant feeder solution
To be fair, dma has been in the base system for a long time.

Now (well sometime in the future) I can remove half of my Ansible role for setting up dma on my systems, just skipping disabling sendmail.

I learned about dma here, a great blog btw! https://jpmens.net/2020/03/05/simple-solution-for-outgoing-m...
It's also the cartesian ontological argument for the existence of God.

>The God is perfect.

>If the God did not exist it wouldn't be perfect.

>Therefore God must exist.

https://en.wikipedia.org/wiki/Ontological_argument#Ren%C3%A9...
There are so many learning resources. Do you just learn randomly?
Which book do you recommend for VoIP Engineers?
Which book do you recommend for VoIP Engineers?
#SIP #SDP #VoIP #webrtc #javascriptAPI
Need more context. Bad sleep? Jet lag?

I have a US to EU jet lag routine. Basically I try to catch a late flight east from as far west as possible and get precisely 6 hours of sleep. It’s enough that I can make it through the next day without a nap until 22:00 or so and be tired then. Normal sleep thereupon and it’s pretty much sorted.
FWIW i am pretty sure Java's HashMap has the same behaviour - it grows the table, but never shrinks it. Even if you call .clear(), it just clears out the table, rather than throwing the table away.

I imagine there are lots of scenarios in which this is what you want, because after emptying the map, you're going to re-fill it, and it saves reallocating the table. But it would be frustrating in a scenario when that isn't what you want.

If a map has this behaviour, i would say that the most important thing is that it should be clearly documented (Java's isn't). The second most important thing is that there should be a way to get round it - either a .clearHarder() method which throws away the table, or a .compact() method which downsizes it while retaining the content.
Good Quality DOSBox Video Capture (2020)
>The radical leftists who promote it are thereby granted the license to abuse all who oppose them, since those "reactionaries" must be bigots, racist, sexist, transphobes, homophobes - in short: evil people who deserve the abuse of good people like themselves.

Yes, and let's go further in. Is it really "all who oppose them" they're after? Or is it just envy, "all who have something I want?"

They would rather destroy society than admit what they are doing doesn't work for them.
If votes are on the public record it becomes too easy to directly buy or even coerce votes from people.
Steel framed bicycles from the 80s...

Sure, they are reliable, just as older diesel engines are reliable. But they are noisy, heavily polluting, and weak (I mean the diesel engines, of course!).

Compare an 80s bike - no matter which discipline - to a mid-level bike today, and the difference is stunning. Almost all parts have changed significantly, and for good reason. One thing is that they are much lighter, and because of this they wear quicker. But ride a modern road bike with a carbon frame, you will never want to go back to your 80s bike, however reliable it is...

Maintainability? Sure, if you have hidden cables it sucks, and press-fit BBs and headsets do require special tools - but how often do you need to service them? The parts that wear are super easy to maintain, in some cases easier than that 80s bike...

btw. $10k is the "supercar" territory - just as there are people that pay $500k for a car, why is it surprising?
This all looks like reasonable implementation behavior which will give optimal runtime performance in most "common" cases. If one really wants or needs a map that'll free memory as it shrinks (and sure, for some folks, that'd be super useful) one's always free to just implement your own.
I can accept that it is a real argument, since so many people mention it. But I just don't get it.

People have multiple apps for their social networks, and are completely fine with them. Snapchat, Facebook, TikTok, WhatsApp, Telegram. At the end of the day, I think it's just an excuse. They don't want to install Signal because they follow what others do, and it seems like others are not on Signal.

Instead of saying: "Install Signal, it will be your new SMS app", if you said "What? You don't have Signal? That's the new thing man", I'm sure they would try it. Then realize that they don't have contacts there, and uninstall it (because they reaaaaaallly need to save those 6MB badly on their phone, for some reason).

People don't use what's best, people use what other people use. They don't want to think.
Those pretty much can't happen in garbage collected languages, so the usage of the term has been widened to include things like this. I agree it's a shame.

Roedy Green coined the name "packratting" for this modern kind of memory leak: https://www.mindprod.com/jgloss/packratting.html
Nice thoughts about using hexagonal architecture to decouple the business logic from web frameworks logic.
I'm happy to see this! I've always liked the idea of them but refuse to use any social media app that implemented them previously.

I know some people are not going to like it, but let's face it, this is a feature people use and now it'll be easier for friends and family to continue using Signal.
It could discourage them without explicit banning though. But then I guess it would be news if this was true, so fair enough.

Addendum: To be clear I do not support forced racial equity / reverse racism, but considering the history I would expect article authors to make a bit of extra effort to show diversity on photos if there is any (and if there is none it just begs the question, no offense).
Lazy, a Capture Tool for Knowledge
Show HN: TinyUX
Wireframing and visual brainstorming on your phone.

Grid based, icon heavy, and allows you to do some simple UX work while you're in on the go, in bed or on the toilet!

For all languages (no text in app), offline, no ads, no account, single purchase of $5.

Video of how it works over here:

https://www.youtube.com/watch?v=PO05M1Guy8s

Would love to get some feedback. Happy to share plans for future, will write article about that later this week.
Philip Freeman’s biography of Alexander the Great is my favorite. Well researched and draws heavily from both Plutarch and Arrian.
If you're interested in this kind of thing I would heartily recommend Chris Okasaki's "Purely Functional Data Structures" https://www.cambridge.org/core/books/purely-functional-data-...
If they are just insults, u can just ignore them right? I mean.. you're an adult.
Except no one actually reads that way. People know how Twitter works. They know the display name changes. They know the username is the part after the "@", rather than being an unimportant, random string. That latter part is so well known it's become an idiom across the internet in general - people on HN will refer to dang as @dang, for example.

HN itself is designed so that all text except the comment is as difficult to read as a downvoted comment, but people here know what the username is.
I believe it.

A data science company I used to work for got hired in 2017 by a large American telco to handle this exact same sort of data coming from antenna location to do better ad targeting.

The reason why Verizon or AT&T do not have the ad capabilities of Google or Meta is because they are giant incompetent corporations that are incapable of developing anything in any area that didn't exist in the 1980s.
Does Alexander rate as mediocre as Machiavelli was on lasting impact?
What is an eigenvalue?
I could write symbolic assembly within Nokolisp. Sentences were feeded straight into DEBUG and
numbers were absolute addresses within COM-file. This is superfast fibonacci.

(defun fib2
(x)
(AX-reg x)
(assembly
(CALL 272)
(JMP 320)
272
(CMP AX , 2)
(JC 304)
(push AX)
(sub ax , 1)
(call 272)
(MOV BX , AX)
(POP AX)
(PUSH BX)
(sub ax , 2)
(call 272)
(pop BX)
(add AX , BX)
(RET)
304
(RET)
320)
(AX-reg))