skysight-inc/HackerNews huggingface dataset:
I moved into management 5 years back. And since then I have reduced the amount of coding to a degree that I don't write anything that goes to production. Most of my coding is scripts to automate something or discovering something personally. I juggle between Emacs, vim, and VS Code for many of those; VS code especially if I want to navigate code. But Emacs is my daily driver. I use plain text files to keep track of things, write meeting notes, etc. The one editor that I keep coming back to is Emacs. May be it is me, but its flexibility is unbeaten. And as strange it sounds to say this these days, but Emacs is light. So much so than VScode. It isn't vi/vim, but it is snappy to get started.

Just recently I wanted the M-x shell to support OSC 8 links(you can click them to go to a file), and all it required was to write a small function to do so. This function goes into the thousand odd lines of lisp that I have curated over a 16 years. It is an editor that keeps evolving.
Because it's hard. I use tons of tools in my digital ecosystem, and the divide is tiring sometimes. Tool switching adds a little overhead, which can become not little when you're trying to do a lot of things because life demands it.

I use Eclipse as my main IDE, but for smaller stuff I use KATE on Linux and BBEdit in macOS. Similarly, my knowledge base has to be divided between two tools.

When you have time, this is no burden. But if you don't, then it starts to bother you. Also, creating digital systems requires time and experience.

However, I'm very with you on VSCode thing. It's a proprietary tool looks like a free one, and keeping people imprisoned without they realize. As a fun side note, VSCode's Java language server is a headless Eclipse instance.
Hi! /waves I use a VPN to stop my ISP from monitoring my traffic and selling my personal information.

But then how do you stop your VPN company from doing the same? You essentially have two ISPs now.
> Perhaps you could use some sort of weak pointer that gets nulled out when the target object is destroyed

std::shared_ptr comes with std::weak_ptr. Referencing counting is rather ham-fisted approach but is certainly a solution.

> IMO the language-level problem, if there is one, is that C++ is too willing to copy in cases where you would expect it to move instead.

IMO that's not a problem in the language but a problem with the engineer (misunderstanding when std::move is necessary) and the tooling (linter/static analyzer not clearly identifying that something should be moved instead, and raising a linter warning for it).

For that matter, the places where I see std::list used aren't places where "performance isn't important" but rather places where an inexperienced engineer was put in charge of implementation and a senior engineer accepted it. I can't remember the last time I accepted someone using std::list in a code review because there has always been a better design available even if it necessitated some teaching. If a stable pointer address is needed then indeed a smart pointer is the correct solution (perhaps std::vector<std::unique_ptr>). There are other reasons I've had coworkers cite for using std::list (eg constant allocation time) but that's generally resolved with std::vector.reserve(upper bound to size) or eg a slab allocator (unfortunately, I'm not aware of a standard-provided slab allocator, though to be fair I'm not very familiar with C++ standard allocators in general).

> I think life would be better these days if all non-trivial copies had to be requested explicitly

While I don't agree superficially (smells like bringing along deep-copy problems), I think the idea merits some thought experiments.

It would be fairly trivial to do that for non-plain-old-data types by deleting the copy constructor/operator (so it cannot happen implicitly) and providing a `make_copy(...)` function instead.
Someone is trying to surpress this story on HN, along with some NYT story about it. When I read the original Free Press piece days ago when someone submitted it to HN, there were no comments. What happened.
Direct image link: https://pbs.twimg.com/media/GBaikRhX0AEcjuy?format=jpg
My ISP is Comcast and my VPN is Mullvlad.

Guess.
As a word of caution to the readers: the Children's Health Defense is a group known for antivax, water fluoridation, and 5g disinformation.
I'd be curious to see how many studies controlled for relative emotional value of money, eg. by looking for differences in behavior for all groups at various values.

One could hypothesize that people might be more willing to share an unexpected "windfall", the perception of which could feasibly scale with one's emotional perception of wealth.
This would have been much better if it was just Casey.
Isn't 200G starting to become reasonable common for high-end enterprise gear?

Dual-port 10G/25G is fairly standard on servers these days, and SANs with multiple 100G ports aren't exactly rare either. I wouldn't be too surprised to see 200G or 400G ports on newer spine switches these days.
It's 200GbE. Assuming you could actually fully saturate both of those links, it would only take a couple of hours to copy off the entire capacity. I think you'd more likely be capped by the write speed of the destination storage?
I think the other replies may have misunderstood your question. I think you are asking:

Why does std::vector<T> require T's move constructor to be noexcept (or else it falls back to copying instead)?

The reason goes something like this:

When std::vector<T> grows, it needs to move or copy all of its elements into a new, larger-capacity array. It would prefer to move them, since that's a lot more efficient than copying (for non-trivial types). But what happens if it moves N elements, and then the move constructor for element N+1 throws an exception? Elements 0-N have been moved away already, so the vector is no longer valid as-is. Should it try to move those elements back to the original array? But what if one of those moves fails?

The C++ standards body decided to sidestep this whole problem by saying that std::vector<T> will refuse to use T's move constructor unless it is declared noexcept, so the above problem can't happen.

In my opinion, this was a huge mistake. Intuitively, everyone expects that when an std::vector<T> grows, it's going to move the elements, not making a ton of copies. Often, these copies result in hidden performance problems. Arguably the author of this post is lucky than in their case, the copies resulted in outright failure, thus revealing the problem.

There seem to be two other possibilities:

* std::vector<T> could simply refuse to compile if the move constructor was not `noexcept`. I think this could have been done in a way that wouldn't have broken existing code, if it had been introduced before move constructors existed in the wild -- unfortunately, that ship has now sailed and this cannot be done now without breaking people.

* std::vector<T> could always use move constructors, even if they are not declared `noexcept`, and simply crash (std::terminate()) in the case that one actually throws. IMO this would be fine and is the best solution. Move constructors almost never actually throw in practice, regardless of whether they are declared as such, because move constructors are almost always just "copy pointer, null out the original". You don't put complex logic in your move constructor. And anyway, C++ already has plenty of precedent for turning poorly-timed exceptions into terminations; why not add another case? But I think it's unlikely the standards committee would change this now.
>But why would I trust a random company with this information over an ISP, who yes aren't always angels, but at least are somewhat accountable.

ISPs often have captive markets and have enough political sway to grant them said captive markets. VPN companies have none of that, and live or die based on their reputation, so they arguably have more of an incentive to behave well. Meanwhile some ISPs have even admitted to selling your traffic for marketing purposes or are forced by the government to keep records. There's plenty of shady VPN companies out there, and not all ISPs are scummy and sell your info, but there's quite a bit of range between the scummiest ISP and the best VPN, and for a subset of people using VPNs definitely makes sense.
I've jumped ship from vim to vscode ~5 years ago, for better or worse, after having been a vim person for previous ~20.

There are still things I miss which are impossible to replicate in vscode without breaking it, but I feel the out of the box experience and reduction in configuration complexity is a rather large net positive.

vim is still what I use to edit stuff via ssh and in docker images, though.
I think the snake oil claim is in regard to VPN companies marketing themselves as a security product. The security benefits that these companies claim in their ads are dubious but of course there’s other benefits to them, they just can’t advertise that they can be used for these things.

The problem is people who aren’t aware of this see these ads and think that they actually do prevent hackers from stealing their information.
My dad used to complain that he couldn't get on certain websites, got CAPTCHAs a lot more than he used to and often prices came up in US dollars on his computer, turns out he paid for a 3y plan to NordVPN and had it start on start up on his computer.

He can barely work the Sky box never mind stream stuff from the internet, he got duped into thinking it would make him "safer" when in reality it just makes using the internet a lot harder as everyone flags your traffic as malicious based on the datacentre IP.
I honestly fail to see in what aspect Kubernetes is poorly documented? It is complex yes, but just about any aspect I've come by is documented. I think that one reason that the documentation at kubernetes.io is kept in a rather short format may be to avoid it to become overwhelming.
I tried a lot of tools, but none of them can work on website like https://www.globalrelay.com/company/careers/jobs/?gh_jid=507...
Agree. Though today it's sharper, tomorrow you ask for the plot to be changed or for everyone to be wearing spinny hats. At least there's a shared experience now. If people find this outrageous, just wait until tomorrow. Better to accept the infinite progress unfolding before us than to spend another moment angry or enraged. All I ask for is choice.
How do you feel about extended cuts?
Yeah: the old companies take everything argument (quite true for many organisations and departments).

Where's the other side of the ledger: the services and products that the company provided to the community.

Hospitals are a great example. Put money in, get some health out.

How do we value getting our bladder fixed?

It is easy to look at the money and forget what we get in return.

What value do we get from an iPhone? If no more smartphones were produced I wonder where the market price would shift to? We could even find out if China has a war.
I was thrilled to learn about basedpyright recently. It does a great job of filling in some of the missing parts of pyright that MS deemed a better fit for pylance – which is a vs code exclusive.

Easy to install with pipx.

As with pyright, I’ve noticed `--createstubs` helps against slowness when working in modules that import large untyped packages.
Those poor pigeons.

I'm pro pigeon and anti-human at the moment.

Reminds me of the cruel B.F. Skinners work with pigeons and cruel old Ivan Pavlov's with his rats. In the name of science.

I would like to get hold of the guy and strap a 50kg camera round his neck to see how he likes it.

I would however be very interested if they could train them to shit on my neighbours ring door bells to stop tyem filming me every bloody time I walk past their houses.

Every house down my road has one of those intrusive cameras ever since the local bobbies sent out a letter mentioning that there had been some burglaries in the area. One burglary I may add and they all rushed out and got a damn ring-piece stuck to their front doors.

They have morphed from being my friendly neighbours into a curtain twitching volunteer police force. Wankers.
I once happened to be with a coworker setting up VSCode on his new laptop. I was shocked by the reckless abandon with which he installed all kinds of third party extensions.
NYC Leetcode Study Group
I guess we don't until there are supporting extensions.

Or we switch back to vim.
If the local ISP has a 100% chance of monetizing my data and the VPN provider has anything less than that, then it's still a win.

(Longer answer: This boils down to the weighted probabilities; if the ISP was meaningfully regulated such that it was legally restricted from doing certain things with my data, that might matter, and one should also play in the exact likelihood that either party is selling my data. In my case the weighted probability is wildly in favor of a VPN, but I suppose I can imagine situations where that wouldn't hold.)
The problem is that many things are correlated. The possibility that one has the capacity (in all its forms) to achieve such a project while at the same time harboring such socially hostile goals is like zero.

The calculus is not simply 95% brain drain so 5% not drain so 5% will behave in this way. There is correlation between being in each group.
It completely ruined the grading and killed the skin tones. There's many other things wrong, but making the actors look like gray clay isn't helping at all.
I've been using Emacs for as long as the author and I've also never really recommended it to anyone. I've never met anyone I could imagine going through with it. I feel like if you're the type to use Emacs you'll find Emacs yourself.
Some developers today think CSS-in-JS is a good idea. Web devs also wanted HTML to look and parse like XML. Backend devs also thought RPC with XML envelopes (SOAP) was the path forward.

Developers in all time periods have held curious ideas that appear ludicrous with hindsight.
Show HN: I Made an Automated AI Daily Newsletter About AI
I head generative AI projects at a major corporation and created this fully automated, AI-driven daily newsletter to address the frequent inquiries I receive about AI news. From story selection to final editorial, the entire process is managed by AI, showcasing how automation can streamline content creation. Dive in to see AI’s capability in delivering curated news efficiently for over 40 editions.
This is one of those things that the ever-amazing pandoc (https://pandoc.org/) does very well, on top of supporting virtually every other document format.
In part, we need more vocabulary to distinguish different techniques. Everyone is just "AI" right now, which could mean many different things.

Standard terminology would help us discuss what methods are acceptable for what purposes and what goes too far. And it has to be terminology that the public can understand, so they can make informed decisions.
Exactly. At work I have Emacs running in WSL, after a bit of tweaking it runs almost as fast as on Linux and doesn't give any trouble. I also have VS Code for when some coworker wants to work on something together and asks for it. You don't have to use only one of them!

What also helps is keybindings. I like vim so I use evil and whatever the VSC equivalent is, and most other commands are done with a "leader key" in both editors, so there's not a big difference in ergonomy.

It's really not much trouble to have these two setups co-existing. In fact I'd be upset if I had to choose only one.
If anyone want to look further into sandboxing applications on Linux, you can also look at AppArmor and the sandboxing features built into systemd.

I love this repository for bases for AppArmor profiles[1], really good work. Never found a repository as good for systemd, but there are a few around.

[1] https://github.com/roddhjav/apparmor.d
EDIT: this was an attempt to get past the paywall, but looks like it's javascript driven, so this archived version breaks after a moment, unless you disable js

https://web.archive.org/web/20240324050221/https://www.wired...
You can use http directly for your functions [1]. Or you can create custom http actions [2]. We encourage websocket usage because it allows for reactivity and UI consistency and it plays nicely with reactive frontend frameworks like React etc.

[1] https://docs.convex.dev/http-api/#functions-api
[2] https://docs.convex.dev/functions/http-actions
There are open source models, so I don't think people are going to be able to get away with that.
I think “copy from a PDF” could be improved with AI. It’s been 30 years and I still get new lines in the middle of sentences when I try to copy from one.
If that also saved a copy of the transcript, with meta data added (title, channel, url, smilar vids) - as a text file on my local machine - I would actually use this as well.

Wait, is this using a cloud service in some way or is it all local / total private? That would be a deal breaker or maker.

Oh might as well copy a screen shot of the thumbnail and save it.
False. Cuba has shorter life expectancy than the USA.

But beyond basic stuff like immunizations, antibiotics, and trauma care, healthcare has a very small impact on life expectancy anyway. Once you have a serious chronic medical condition, even the most advanced healthcare system can generally only give you a few extra years.
It's baffling that banks/governments that do geoip based risk assessments (ie. the ones that would lock your account if you tried logging in from a random country) wouldn't flag logins from a VPN/datacenter IP. Those basically tell you nothing about where the user is actually logging in from, and they should therefore treat them as if you're logging in from a random country.
Unless you have any explicit court case decisions to the contrary, I'm calling bullshit. I did a simple Google search and could not find any examples of someone being sued or prosecuted for region bypass.
it uses readibility but does some additional stuff like relink images to local paths etc., which I needed
The bodega sells whatever people want to buy, as long as it doesn't get the bodega in trouble for doing so.

Beer, wine, booze, tobacco, and vapes are obvious, but things like cough medicine (dextromethorphan), diarrhea pills (loperamide), little roses in neat glass tubes, and air dusters (let's kill some brain cells!) are perhaps less-obvious.

The bodega wants to be associated with being the place where a person can stop in and buy anything, from a can of soup to a pair of pants.
fyi the site was written in or before 2011

reasons for the theory:

- A comment within the HTML says "Mirrored from www.2020symposium.com/ by HTTrack Website Copier/3.x [XR&CO'2010], Sat, 04 Jun 2011 00:50:49 GMT"

- the website URL contains the numbers "2010-11"

- all references contain dates less than or equal to 2010

I agree about the article's poor communication and the adverse affect advertising has wrought on news and on the broader internet
Most dictators are not being over-thrown by foreign powers. Nukes as a deterrence would seem to have little impact there.

Unless you have a clear and immediate use, having a nuclear program seems like a very expensive money sink.
I'm not too surprised. There aren't that many parties with 100PB of data looking to switch from on-prem to the cloud. If you haven't migrated in the last 8 years already, you're probably never going to.

Keeping that truck around isn't exactly cheap either. I reckon it reached its technical or economic lifespan and simply isn't worth replacing.
Thanks for the kind words. Feel free to share any feedback in the discord community!
> assuming the network is not majority compromised

There is no such guarantee AFAIK, as long as a bad actor controls all the nodes in YOUR route, they can deanonymize you.
There's a really confusing gap between grief, or what I thought grief should look like, when losing someone close and the indifference or mere sympathy that comes with hearing about the loss of someone you don't know. A number of years ago I found out that someone I knew from university had died. He was young, and the whole thing was just so genuinely confusing that I didn't know how to feel about it. I'm in a similar position right now, learning about an old friend's terminal illness via their gofundme page. Do I reach out? Should I even be sad? All I seem to feel in this kind of situation is a derailing bewilderment.
The last line made me emotional.
Thank you for sharing this story, it was well-written.
I'm sorry for your loss.
There is a certain irony complaining about Microsoft, while praising everyone else in regards to C and C++ compilers, as if outside the beloved GCC, in a age where clang did not exist, the other proprietary compilers were an example of perfection.

Apparently the folks didn't learn their lesson with Web standards, given the power they gave Google to transform the Web into ChromeOS.
I would avoid this guide. I don't even see mentions about dilution and cap tables, let alone preference and a bunch of other risks.

If you need a solid guide, I usually point at the Holloway Guide To Equity Compensation but I'm annoyed that it looks like they started charging for it (probably still worth both the time and money). The preview is worth checking out. That being said, I think there are a bunch of other aspects that aren't captured.

I was under the impression that founders/management generally don't give any company specific guidance in order to not be on the hook for anything that may be construed as guidance or promises.
First IANACC (I'm not a compiler programmer), but this is my understanding:

What do you mean by interface?

A dynamic library is handled very different from a static one. A dynamic library is loaded into the process virtual memory address space. There will be a tree trace there of loaded libraries. (I would guess this program walks this tree. But there may be better ways i do not know of that this program utilize)

In the world of gnu/linux a static library is more or less a collection of object files. The linker, to my best knowledge, will not treat the content of the static libraries different than from your own code. LTO can take place.
In the final elf the static library will be indistinguishable from your own code.

My experience of the symbole table in elf files is limited and I do not know if they could help to unwrap static library dependencies. (A debug symbol table would of course help).
Was that what they called KParts? Terminal, file browser, text editor, more, all easy to embed and build an application around?
The good news is that since C++ containers aren't special to the language, you can just implement your own wrapper classes that disable the copy ctor (and provide an explicit `.clone()` instead). Coupled with `#pragma GCC poison` it is pretty easy to blacklist legacy footguns in source files at least (though not in headers without some aggressive work).

... and yet, almost all vulnerabilities in C++ code are still written in C style, not even legacy C++.
Aha I see, thanks! Cool, I don't use iOS so I wasn't aware of this. I always install Conversations through F-Droid too (I don't use the play store even).

But I like your goals, what bothers me about XMPP is that pretty much every mod con is in an extension. Understandable considering this is the core idea of the protocol but it makes it a bit of a hit and miss to understand what works with what (a bit similar to IRCv3).

In the end I ended up using Matrix a lot more though I still use Conversations sometimes. But I understand the idea of making a branded platform out of XMPP with a known-good base level of supported features.
I went through something similar, I enjoyed emacs TRAMP for so long... One day, I saw a colleague opening remote vscode through SSH. Turns out I hadn't seen that on vscodium... it's kinda proprietary. (Should I care?) It's work! It needs to get done!! (: and another feat was magit, but that I left behind when I started using gitui ... I still highly appreciate and respect emacs. Maybe one day vscode will turn shit because, hey! it happens, and emacs will still be there for me <3