skysight-inc/HackerNews huggingface dataset:
I moved into Java/.NET back in 2006, but still keep C++ skills relatively up to date, because for better or worse that is the native language I can use when plugging native libraries into them. No way I am going to use bare bones C unless it is a project requirement from customers or higher level.

Still, the improvements on those eco-systems, increasingly make it so that I need turn to it less and less.

C++ is one of my favourite languages, it was thanks to it I some major milestones in my career took place, however it is starting to feel like all those critics than one would find talking about PL/I and Algol 68.

The "C++" that is heavily lobbied at unis is still what I would call C+, with some exceptions at what are probably elite universities.

Just yesterday I was reading an ISO C++ paper that touches this issue, P2000R3 - Direction for ISO C++.

We need replacements, because no matter how modern C++ one might want to write in clean C++20, there are millions of lines of gone that go back to the pre-C++98 days, and plenty of mixed quality projects.

However, until Apple, Google, NVidia, AMD, Intel, Sony, Nintendo, Microsoft, ARM decide for something else on their SDKs, C++ is going to keep to be one of the tools to reach for on their platforms alongside the other platform languages, it is what it is.
"The resulting code is actually more bloated than the copy-pasted version"

How is that possible?
> Moreover, the food we "evolved to thrive on," was likely primarily nuts, seeds, fruits, insects, rodents, and occasionally larger animals like antelope (which would have been eaten nose-to-tail), not fatty steaks from domesticated animals.

Citation needed. My sources mention the fact that we've evolved bigger brains when we've moved from low-density foods such as vegetables to high-density fatty foods, which is what distinguishes our diet from what primates eat. Meat is fatty, vegetables are not. In fact, vegetables are "fatty" for ruminants, as they have specialised bacteria that convert plant matter to fatty acids. We do not.

https://www.nature.com/scitable/knowledge/library/evidence-f...

https://www.scientificamerican.com/article/fat-not-meat-may-...

https://www.ncbi.nlm.nih.gov/books/NBK53561/

Just a couple articles from a 30 second Google search. The fat == bad, or worse, meat == bad is a modern argument that has nothing to do with our evolution or our physiology.

Here's the thing no one wants to admit: modern meat is bad for the planet, and we humans thrive on meat. We don't know how to reconcile the two, so we keep promoting and pushing towards worse and worse diets. Sorry, a vegan diet for everybody isn't the answer. There is no simple answer.
>It's funny how the author frames this post in a very economic way. [...] over-economic thinking.

He's not framing it in an economic way. It's just that the words "pay/paid" are very common conversational shorthand for "effort you have to expend". E.g. when parents often say "you have to _invest_ in your children" -- or -- "if you don't exercise consistent discipline when they're young, you will _pay_ the _price_ when they're older" ... the parents are not being clinical economists.

If you're still sidetracked by "pay/price", the alternative metaphor for the same concept is: Don't buy stuff for the "fantasy self" you're imagining. Instead, you have to be brutally honest in your self-assessment of what you will realistically use.

I.e. Don't buy a stack of cookbooks when you don't really have the motivation to cook. Thinking that the colorful photos of completed dishes will spur you to action is fantasy.

Yes, somebody might still complain that "fantasy self" is wrong because "I would never frame cooking food as a field of speculative fiction genre in literature" ... then I guess we're in a never-ending loop of focusing on the metaphor instead of the underlying message.
Quantum Computer with 5K Qubits Launched
No one had titles/roles next to their name.

The contemporary obsession with identity is ... Sad.
I don't necessarily have a problem with Proof of Work, I do however take significant issue with Proof of Non Useful Work (aka common PoW). PoW was useful for being simple and dumb which made it easy to reason about.

If PoW communities are really seriously interested in losing the "bad for the environment" tag, they need to be putting significant financial effort and brain power towards developing Proof of Useful Work (PoUW) systems.
> Other "classic" object-oriented languages are all managed (C#, Java).

True, but there have been always ways to compile them to native code, granted not all of them as free beer.
Except, they might be sued now, and it might be significantly more expensive.

They probably forgot what they wrote in their blog post

http://googlepress.blogspot.com/2006/08/google-launches-host...

"Furthermore, organizations that sign up during the beta period will not ever have to pay for users accepted during that period (provided Google continues to offer the service)."

Yes, they can claim they are no longer providing the service, but that's difficult to argue when they are providing a functionally identical service that is just a billing change to cause a "migration".
The Startup Triumvirate
I'm struck by your use of the phrase chrome only API. As a safari user, that's a term that comes to you naturally.

As a web developer, I feel like there aren't that many chrome only APIs, but there are a lot of web standards safari doesn't support.

I wonder if our two categorisations have a large intersection.
> If you wanted readability, or maintainability you have to sacrifice performance. If you want performance, you have to sacrifice everything else.

This is true in every programming language to some extent. What makes it worse in C++ is that the language markets itself as being performant without any trade offs (zero cost abstractions!) and the reality is very different from that.
I do code reviews for Go every day and it is easy but also frustrating and tiresome.

The ridiculously antiquated error handling and the absence of modern FP constructs e.g. filter/map means that 1 line of Scala/Swift/Rust/Java etc code = 10 of Go.
There is no reason that the third-party cant be a contract with globally accessible permissionless apis, that let you borrow peer2peer or peer2protocol against your assets, and that upon you not repaying your debt liquidates your position (by other people/protocols bidding for the assets that are out of position, usually over-collateralized at 150% min).

Most of defi is structured in this way and it is working fine, it works because it IS being integrated and made compatible with existing finance.

This is "futuristic" because anyone in the world has opportunity to lend/borrow to anyone else in the world, to write code that automates savings accounts by rotating these positions, to write business logic of their startup to borrow money when they need and pay it back when its the best time for them - scaling their finance on demand like spinning up an ec2 instance.
A system where you have more voice and opportunity for your work/savings/co-op/club, compared with whatever the state of banking is in wherever you happen to be born in the world.

Concrete example: I asked my bank to borrow some money and showed them my bitcoin, they predictably said no because their system cant handle it. I wrapped it onto ethereum, deposited it in aave, borrowed usdc, withdrew to my bank account and carried on with my life without needing the banks permissions. The people lending that usdc to aave to lend out to me know it is safe and I cant run off never paying back my debts and interest (otherwise they get my over-collateralized btc).

permissionless global p2p lending and borrowing. it isn't futuristic, it is the present. ill never understand why "hacker"news doesnt find that amazing.
Your missing the point, javascript is easier but in the class of languages go is in, its a day and night difference.

rust, c/c++, java etc. Compared to these languages, go is much easer to learn and use. Java can be put the side, the real comparison is with c/c++ and rust.

By taking some trade offs on the performance side, go has a much better UX than rust/c.. Literally open up a few tabs, go to github and compare a page of go code vs rust vs c/c++..
Amazing!

"Zeloof says he doesn’t know for sure what he wants to do after graduating this spring" - I hope we don't hear later that he went to work for FAANG. One the saddest things about Big Tech is how they take young talent away from innovative, potentially competing enterprises and into busy work internal projects just because they can.
it nice to dream of this "digital abundance"

but if creators want to get paid for their work , there does have to be a way to bestow certain privileges to people who pay

im not saying NFT is the best possible solution,but its a start
They hate everything that takes 1us from them, following on the C culture.

The nice C++ frameworks from the 90's all used bounds checking enabled by default, what does ISO C++? Bounds checking disabled by default and it is up to the compiler vendors to do as they please, hence FORTIFY and _ITERATOR_DEBUG_LEVEL.

If you read how magnificent C++ is on the HILO tutorial or C++/WinRT ones, it is quite clear how WinDev sees these nasty folks doing stuff in .NET at DevDiv.

Joe Duffy on his Midori talk at RustConf mentions that even with Midori being available to WinDev they were asserting it wasn't possible.
Software Engineer Like Qualities
Writing a Lisp interpreter an Lisp is cheating. You get the reader and garbage collector for free.

Don't get me wrong, it's fun. But if you want to learn about things, writing a Lisp interpreter in some (relatively speaking) low-level language like C/C++ is a much more satisfying experience. And then write a Lisp interpreter to run on your Lisp.

Bonus points if you get to optimize tail recursion. (I didn't, but I didn't try to, so I don't consider it a failure.)
I think the word itself is from French too (although I don't know what the explanation for the strange plural form is).
Useful insight. Just what I needed. Thanks!
All the research that was founded by tax dollars in the 70s before all the research was privatised (like nor more scientific publications how it was done etc).
I can see benefits of something like ansible if you have a command-and-control environment where you deploy 300 machines from a central database. Still allows you destroy 300 machines in one single misconfiguration or mishandled error though, ouch. If you have a federated environment where you have many actors all managing their own machines though I don't see the point.

The number of times I have to do something to the 160 machines I'm responsible for is about 3 times a year. Clusterssh does the job in 10 minutes, and inevitably shines a light on some unexpected error somewhere. If I was doing it on a weekly basis though, using ansible would be beneficial.

Personally I don't like ansible's way of throwing everything in a file in /tmp, then running it as root. authlog gets sent to my central syslogs servers so I've got a record of what happened. With ansible I'm never quite sure, and I'd have to look in two different places for logs.

Instead we just have a lightweight phone home agent which reports processes/diskspace/mounts/interfaces/hostname/ownership etc so you can identify who owns a device on your network and what it's responsible for without consulting out of date documentation that relies on humans to do things.

Kubernetes I guess is useful if you're building a cluster of 100 machines scaling and doing the same service because you're handling a million users a day. Most companies don't do that, most services don't need that.

Use the right tool for the right job, and don't assume the stuff google use is the right tool (unless you're building a lab because you want experience to get a job working for google. If you tried that shit on my network you'd be starting your job search far earlier)
Are you saying that most loans are uncollateralized?
Truely, node.js is a sore travail.
I have found that drag and drop is an awful UX pattern in recent years.

Via a physical mouse, it's fine. But trackpads are such a common set up these days and you cannot reliably drag and drop, especially since sometimes you need to lift a finger to drag further. The only solution I can think of would be to have a key that initiates a drag and you can hold the key while to continue the drag - but there's currently no standardisation in this pattern
If you're not completely against markdown, I particularly like Grav (https://getgrav.org) combined with the optional Admin plugin. Very quick and easy installation; I don't need to keep detailed notes on getting the exact packages loaded to make it work.
The admin plugin gets you easy editing capabilities, although you still write in markdown by default it has quick buttons for common markdown and a preview button.
> You know when a program you coded doesn't work anymore or only with degraded performance because of an outside api? That's it you need to patch it. stop talking like it's something unbelievable insidious happening we need updated influeca vaccines every year. ffs

That's fine, as long as nobody acts like they know how it protects people in the future and tries to force it on people.
In a Bloomberg businessweek article this week on Rent The Runway the figure they give is that they rent the articles an average of 20 times before retiring them.
Sure but doing all that at such a young age is so impressive
his short special form name is reminiscent of early 80s lisp research (lelisp iirc)
I agree DoH has strong benefits. However, should your web browser (or any specific app for that matter) have its own resolution settings? What about split-horizon DNS on your LAN? What about cache/latency when your uplink to CloudFlare is really bad (as in many so-called developing countries)?

I'd be much less concerned if Firefox gave users an explicit choice about this: "Your Internet provider may be censoring/monitoring domain names. Would you like to keep it, or use a slower secure tunnel to one organization in the list below? Note that local-network services may break due to using an alternative."

Defaulting to CloudFlare is a joke. Just like telemetry has not helped Firefox improve in significant ways from my perspective as a user. Just like using Google Analytics on Mozilla websites was always hypocritical. Just like integrating more cloud services (Pocket, Sync, VPN) into Firefox without worrying about how to make it practical to selfhost is helping the web move in a bad direction.

I have much respect for Mozilla devs, but being run by corporate executives not the community has definitely killed Mozilla's mission. I'd be much more inclined nowadays to trust a non-profit where each employee has equal pay, team management is done or elected by the team and overall governance is left to the community. I just don't know of any browser vendor that suits the bill.
Yeah, the irony...
The key difference between trackpads and mice that cause thus is that on a mouse a click and move are different physical actions, but on a trackpad the click and move are both uses of a single finger and cannot be invoked exclusively
More bloated != more lines of code
I can appreciate that, but my counter is simple:

It worked before, and I have no idea why changes need to be made that aren't universally supported; as a user there is no benefit for me that I'm aware of, and no site to my knowledge deigns to tell me otherwise

That's my point; it worked, then it didn't, and the argument is "get a different browser" (usually they say better). But the question is why did this change need to happen in the first place? Why do I need to change when it's clear that the functionality __IS__ possible with my browser.

It's not about what my browser of choice does or does not support, it's that I'm being told I need to change browsers for functionality that worked perfectly before, and I have no idea why, and instead of being told why, I'm told how awful my browser of choice is despite the benefits it has that I use it for.

I'm sure there's a reason for such changes, or at least I hope there is. But I've never seen a site that ever explained __why__ this was such an essential change that breaking compatibility was an acceptable cost; I'm just told my browser sucks, which isn't compelling.

Edit: to add, I want to stress that it's not a choice for users between browsers that support certain developer features and web features; it's a choice between which browser you spend the majority of your time in for __all__ sites at all times.

When 99.9% of the sites you use daily or weekly work without issue and just one you visit decides to make a breaking change to do the same thing that worked before, it's a very hard sell for me to accept that the browser I'm using is in the wrong. I balancey choice against the benefits my browser of choice does give, the costs of installing another browser, and how much time I really spend on the given site. I know I'm a minority in that I don't use chrome, but the entire issue is unrelated to that; it's about making breaking changes and not explaining any good reason for it, and instead just blaming the browser. If there was even some explanation, at least we could have a discussion on the value of the change.

But missing that, I just see "it worked, not it doesn't, and the functionality is the same. What is the benefit for me as a user?"
That's pretty much what carbon credits are. We have them, they just need to be expanded and developed. And ideally not subverted and transformed into just another tax.

The current system, as far as I understand it, is a market. One of the better ideas I've seen governments implement. You can purchase carbon credits only to the extent other carbon credits are on the market - like people planting trees.
And a fourth cost for many items: time to clean and maintain them.

A lot of my hobbies require time devoted to maintenance. Woodworking, for instance. Lots of tools to keep sharp.
If this is just for the sake of not rolling 7 you can have a die with just odd numbers like 1, 3, 5, 7, 9, 11.
Having 2 of them guarantees an even sum.
Of course you would have gaps between the possible outcomes but not rolling a 7 is already a gap.
Oh, really? Past thread: https://news.ycombinator.com/item?id=25074959
That is a very micro-economical view.

There is some merit into investing from an "hours of fulfilment resulting from the investment" perspective, but if you overdo things, it may actually spoil most of your vacations. If in every moment, you reflect what you could have done, and calculate the hourly opportunity cost instead of enjoying the moment, any money spent on being right under that clear summer sky with romantically sparkling stars on the French coast will degrade to a spreadsheet exercise.

My recommendation: use such considerations in the planning phase, but not _during_ a vacation or date! "Be here now."
In the broad picture it demonstrates a common phenomenon of what I dub "flip-floppy" behavior in digital systems: the optimal design at one scale inverts at another, which creates the layered approach we so often see: for example sometimes graphics are best described as "raster", other times "vector". But then you go to implement a useful graphics renderer for some task, and you do both even if you output only one. Sometimes you need geometry and sometimes you need samples and you don't end up with a pure system of one or the other.

So the same could be said of what we need in consensus: sometimes the right move is to turn to an authority to get an answer, other times we coordinate one out of a network. Twitter is doing some of both to be a useful service.

I have a creeping suspicion that ML and distributed ledgers go together in that one can be the flip-floppy complement of the other - ML as agent and oracle, ledgers as a mechanism to build shared knowledge among agents.

(I am also of the opinion that we are hopelessly clueless about how to apply these technologies well right now. But even if that means it is foolish to try when it results in so many failures, I think joining the fools is a noble idea.)
Change your behaviour by making it harder / more involved to access the distracting apps you need:

- use slack in the browser so you need to type in its address

You can think of other creative things like:

- use automation to only allow mail when some other app is running so now you start two apps?

- run messages under a second user account?

- slower browser in a vm for social media sites?

The sky is the limit. The key is to make it still possible to use the app, just more involved, breaking the habit.

The final advice from me is to write down what you are going to do and write down the currrbt situation and the approach you’re going to take, then all that’s left to do is act on it which sets up a nice internal focus mode
Replit (YC W18) is hiring engineers to make delightful programming environments
Without debating Project Veritas specifically (I'm not a big fan), I will say that SourceWatch itself is extraordinarily biased. That doesn't make them bad automatically but, like most sources of information, it makes them a bad single source.
Wait, let me see if I got this right... I use a Red die and a Blue Die. Blue die is considered "secondary" (in the examples below, the second number is always taken from the blue die), and both dice are thrown together.

- I roll 4+2 - result is 6

- I roll 4+6 - result is 10

- I roll 1+6 - result is 1

- I roll 3+4 - result is 3

- I roll 4+3 - result is 4

Correct?
I totally understand you. I also did something similar recently. In my case, I’m leaving a company I’ve been working in for six months where I’ve been earning a very good salary but the lack of technical challenges, learning and political battles combined with nobody requesting me to deliver anything simply made me feel bored and miserable. Now I’m about to start in a new position from a different place where the salary is not that good (although still pretty decent) but I know from friends that are working there that the environment is much more satisfactory.

It’s simple, silly me, I consider work a big part of my life. And given the fact that I have to do it for living anyway, it *must be* gratifying.
I completely disagree with the author's contention that "the industrial revolution could not have happened without slavery".

I think the author doesn't even mean it and instead just wishes to convey a general sense that British economic success is inextricably linked to injustice.

By making this argument instead that the industrial revolution "would not have happened without" slavery allows the reader to infer that slavery was therefore justifiable on the basis that we wouldn't have modern medicine or modern food production techniques without it.
You probably know this, but for reference, while Rust doesn’t support implementation inheritance, it has inheritance and runtime polymorphism at the interface level.

You put your dynamic components into references and smart pointers of the form Box<dyn Component>, where Component is a so-called “object-safe trait” (which is exactly what you’d call an interface in the OO world). These traits can inherit from each other, and you can upcast a Box<ConcreteType> into a Box<dyn Interface> into a Box<dyn ParentInterface>.