skysight-inc/HackerNews huggingface dataset:
You can ask all of these questions while also empowering moderators to use the tools at their discretion. To refuse to allow moderation while not providing any solutions is the worst of all options.
Right. At which point, why pay the cost of the rest of the PC being modular? Both the $800 and the $200 would be smaller amounts in the case of an integrated system.
60 terrible tips for a C++ developer, part 1 (tips 1–5)
Well I think undergrad just stamps a label in your forehead. What you do in your free time, most important, what job you get and who seriously you jump into it is what determines your value to society.

Carsten Dominik, another physicist, was the creator of org-mode. I don't think physicist have an advantage over CS graduates, in fact reading code written by physicists is like watching and horror movie. But everyone can contribute a tiny bit.

You are right, a lot of my friends, who studied physics, take the jobs CS undergrads don't want to do, and get really low salaries...
BTW, the web app is at https://clarifypdf.com, if you need to see what it is first.
It's mainly momentum from the late 90's. Back then C++ actually was a better C, and upgrading code bases from C to C++ often made sense.
It depends on what you do! The reason I use this as my go-to example is that I came across the incorrect use of reinterpret_cast for this exact purpose in a previous job (which was firmware-adjacent).

edit: are you also expressing disagreement with the claim that few C++ programs are correct (and the implied claim that this is because many people's first-guess approaches are actually incorrect), or just saying that you think this is a bad example of the language being complex or misleading?
Note that the quote is specifically about parsing Rust syntax, it’s not about the language in general (which is a lot easier and safer to work in than C++).
Sadly it doesn’t have a link for it’s principal assertion:

> Stack Overflow, Inc. has decreed a near-total prohibition on moderating AI-generated content

That would have been a really good place for [one of these](https://somewhere)
I loved reading that part! I've always found ocaml's (and now rescript's) first class modules flexible and powerful. They're definitely awkward but in that way where you're having to explicitly think about and declare relationships you'd happily ignore until they bite you.

Recently I've seen a lot of programmers I respect consider them a weaker or failed alternative to typeclasses, basically a dead-end. And I had been reluctantly coming to the conclusion that I must be wrong in some way I'm not able to fully perceive yet. Seeing such a notable PL designer come out on their side makes me feel less like a fool.
A very consistent codebase makes it possible to do things like this, using automatic refactoring and very smart find/replace, but such codebases are few and far between.
> if you mean for onboarding a new software developer (both to your org and the practice of software development as a job)

In addition, I'd recommend:

Read and acknowledge the coding standards and best coding practices.

An efficient onboarding process on best coding practices would definitively save you time for your first code reviews with your team.

For example, at Promyze, we set up “Discovery Workshops,” some interactive coding challenges to discover/learn our best coding practices with concrete code snippets from the codebase.

The concept is simple:

- We built a list of best practices we want to introduce,

- We select for each practice some examples and counter-examples from the practice documentation,

- Then, each new team member will have to find in the source code where some best practices have been followed or not.

This really helps make onboarding and work more productive -- and fun.
I think crest may be referring to function multiversioning, but that only helps choose/call the implementation, not generate it.

github.com/google/highway supports compiling your single source code once into several versions, and then dispatching to the best one.

Disclosure: I am the main author.
I would call this sort of code "C with namespaces and templates". Classes are definitely the least useful feature that C++ added on top of C.
The second of your links says "According to the folks over at Jalopnik though, the bar for “safer than a human” is probably a lot higher than one might guess. In fact, after crunching numbers from the NHTSA, it seems as though drivers avoid crashes 99.999819 percent of the time. If Tesla’s data is to be believed, it’s already surpassed that."

Are you even making a statistically significant comparison at this point?

And there are these also: https://www.theverge.com/2023/5/25/23737972/tesla-whistleblo...

Quite apart from the fact that this isn't actual self-driving that's being measured (as sibling points out).
I've found that it works better to use a 'real' programming language for scripts and use a UNIX shell for interactive REPL-like use. The syntax of the command line is hard to beat one you master it because it's so terse and for one-to-ten line programs like you get in a REPL maintainability doesn't matter. For anything else, it's better to write a script file and execute it. The tradeoffs are different and what works well for a program meant to stick around doesn't work well interactively. The downside of course is that if you perfect a bit of logic with a repl, you then have to translate to the other language.

My company uses an in-house variant of Kotlin Scripting which has replaced bash and python for us. It's got a lot of neat features, like you can echo markdown to the terminal and it'll be rendered nicely, it has a built in progress tracking framework, it has a UNIX-like shell API for working with files and processes, you can import libraries from Maven and use them directly and so on.

The only real downsides are that it's slow to compile, and currently Kotlin Scripting is still in a (very long) beta period. Hopefully when they finally release version 2 of the compiler it'll be faster and they can finally nail down the scripting support a bit better.

But I have to say, it's really enjoyable to use. I used to dread shell scripting tasks because shell is just so persnickety. Now I don't. Java has something similar with jbang and jshell, but the Java syntax is perhaps a bit too verbose still. They're improving it a lot though!
It's partly a question of how you define "knowing something"

For one thing, when a language feature doesn't really work out, the user community will notice and it'll disappear from most codebases. If a Java developer with 20 years of experience has never worked with java webstart - is their mastery incomplete?

And even for features that aren't deprecated, almost no jobs will demand every feature a language offers. A veteran Java developer with 20+ years working on high-performance backend server code might not know much about JavaCard, or packaging their code for use on Windows, or the state of the art in making GUIs, or the latest kitchen-sink enterprise framework - is their knowledge incomplete?

Of course, some would say if your definition of "knowing a language" is so demanding that nobody meets it, some might say that's an unrealistic bar....
Faster Causal Attention over Long Sequences
Sorry but this is BS.

I've worked at places where people knew the standard by heart. If ever doubt some people actually 'know C++', visit the #c++ IRC channel on Libera.
When doing a major rewrite like that, you’ll often end up with significantly less lines of code, maybe 1/4 of the original. Even if rewriting in the same language.

This is the result of both being able to cleanup & simplify, as well as completely ignoring edge cases and regressions :)
So sixty pounds of fat in one year.
Many newer feature is, indeed, much cleaner.

But C++ have so many backward compatibility hacks and old code, it is impossible to "eliminate" the complexities.
This is amazing. I've been wanting to create something very much like this for ages, but never got around to it (because life).

Is there a contributors guide for the project?
Objective-C++ is one of those things that sounds like an abomination when you first hear about it, but when you try it, it's surprisingly straightforward and useful.

Obj-C and C++ are really very different, so it makes sense to use each one for what it's best at; and the syntax of each is so different that it clashes much less than you'd expect.
Because it is mostly backward compatible with C.

The people that think Rust is 'the next C++' are delusional. The next C++ will be backward compatible with C++.
Example of one that does: https://en.m.wikipedia.org/wiki/Snakehead_(fish)
Ballasted track is cheaper to build, so somebody needs to be willing to fund the difference in costs. This especially applies to existing infrastructure, where it's more likely than an upgrade to green track might have to be funded by the municipality alone.
There is a general rule that people who know less think they are experts, unless they find out that they don't, and start learning again... It's called Dunning–Kruger effect
And yet amateur endurance athletes are skinny while stuffing their face constantly with sugar and other refined carbohydrates.

Correlation does not guarantee causation, but it sure hints there may be something connecting the two variables.
Funny that a language sounds like a big company where only a small percentage of people do most of the work.
How does allowing AI content inherently and unquestioningly serve the commercial purposes of the business?
Phoronix.com Turns 19
Using JSX with jQuery
First time reading this. Thanks for the laugh. Trigger warning for those who have worked on legacy Java/C# code.
True, but I feel like the sentiment generalizes very well. I'm sure that C++ is perceived to have a similarly low bar in many areas.
>These markets benefit from deep OS integration, interconnectivity between users products and a long history of "we have always used Word". None of that is the case for LLMs.

The old moats did not stop existing because LLMs came along. e.g. a big use case for LLMs is running over one's own documents. We can guess who very likely already has access (MS and Google), and who is going to get a scary permission prompt at best (everyone else). OS integration is obviously coming, MS announced Copilot and Google can just silently upgrade Assistant. We may not be far from a repeat of the IE saga, where MS declares Copilot as essential part of Windows.

My point is that commercial demand for privacy is not enough, and may not prevent Cloud APIs from dominating.

>>For LLMs, either you supply a cloud API, or deal with a significant deployment burden
>Why would there be a deployment burden? The actual setup isn't hard, the rest is wrapping the thingamabob into an API the product can use...

Well, the entire idea is to run locally, right? Now you have to worry about getting the runtime to work on 3 different OSs, and many many hardware variations (like the many Intel AVX variants, low memory configurations, etc.). Just take a look at the recent moves to flatpack/snap everything, and that's merely due to software variations on a single OS.

>Why? I don't have to trust the OS providers to integrate, say, postgres or nginx or redis either. Why would I need their help to run another piece of software that lives entirely in userspace?

I expect LLMs to be a ubiquitous UI paradigm. We do expect OS providers to bundle a UI kit, and not everyone to roll their own, right?

Besides, you are comparing to server software. But non-cloud LLMs are expected to run locally on clients. That's a different world. Clients are a lot more diverse, weaker in processing power, and most can't handle upgrading postgres.

All that said, perhaps we should look at legislation as well as the possibility of a OS provider playing nice. We're talking about a lot of data/power in the hands of a few corps.
>Why would the frontend be the OS?

I answered this above.

https://news.ycombinator.com/item?id=36194304
Social inertia is working okay for Facebook... kinda... let's go with what kinda works, guys!

(Might as well, the alternative is they just pack up their moneytables and get the hell out of our temple...)
I would love to play with the language Graydon describes here.
I see the chain of reasoning, but it also seems quite logical that quality answers written by real humans should be a pretty big competitive advantage. Throwing away your biggest sales point just because the competition has something new is a business suicide.
One thing I want to add wrt. "Cross-crate inlining and monomorphization. I wanted crates to allow inlining inside but present stable entrypoints to the outside." [..] is that it was in general well desired AFIK by most developers but so far out of scope that you probably would need to had the resources rust has today _before_ the 1.0 release to get it done right. At lest with the state CS research had been at during that time. By now due to various reasons (e.g. swift) there is much more research in that direction already done hence a new language has it much easier.
> All day long, I could watch people just stop their bike, get off, walk over to the river and dump their trash into it

oh dear, thats so gross
Hard disagree. Rust brings a lot to the table for a web app. Compiled vs interpreted makes it easier to catch (syntax) errors beforehand. You can even go as far as compiled templates. Mapping JSON (or whatever) to strongly typed objects is great. Dependency management is best in class. I rather like diesel.rs (although it is very much an acquired taste) especially if you treat it like a safe query builder rather than an ORM.

The single biggest problem I've run into is that there's no real good story for a web app framework (especially since everyone's gone crazy over async). Rocket is perhaps a bit too magical for rust folks and it's been abandoned, but I rather liked it. I've warmed up to axum, but all this async stuff still rubs me the wrong way.

And, yes, compile times still suck.
https://choosealicense.com/ is a good resource that lists a bunch of licenses explained.
I remember going through all the specified points in the graph over my first 5 years of C++-ing, except the exception handling (probably because we had set rules on using exceptions for error handling).

Also, this graph is from 2010, so it's missing some lambda magic, auto vomit, and static object initialization got easier since.
I fully agree, and I note that they both use C as their primary language.
Glad to see that AI Twitter is as vacuous as human Twitter
"Proof that C can do forward referencing", as long as you compile it with the D compiler. This is a trait of an implementation, not of the language itself.
Raspberry Pi production rate rising to a million a month
- Java is majorly boilerplate.

- If you map out the entire system, and understand how all the pieces fit together, you can: make something simpler that fulfills reqs/does the same exact thing; use template metaprogramming to generate the source code for you, instead of writing it by hand

The only issue is very few people will have the skills or the patience to sit down and try to understand metaprogramming. So you won't be able to take advantage of it in most business use-cases (i.e. won't easily be able to find another cog to work on it), despite how powerful it is.

It's like why more people don't work with K (or functional langs, etc.): it's not a simple procedural or OO language, so it's harder to learn -- and harder to get started with.
> The goal of stack exchange is to create a repository of question answer pairs of knowledge. The problem here is that generational AI isn't able to create these new pairs.

I'm not so sure about that. I think we are quite close to an AI being able to put two and two together to create something marginally new. Maybe not an LLM by itself, but with some high-level iterative/recursive process like this: https://arxiv.org/pdf/2305.10601.pdf.

What I'm saying is that no-AI policy maybe made sense in late 2022, but will not necessarily hold in late 2023.
Easy. Pick a scenegroup that only releases SFW content.
"CODEX"
"FLT"
and such.
My philosophy with HA is not to touch it too much.

I update only when there is some feature I absolutely need to have. And even when there is a new feature, give it a month or two to mature before using. I run a specific docker tag with auto-updates disabled. The instance is not internet accessible, so less care needed for security patches. When there is an exciting new feature, I apply that excitement to the busywork necessary for HA updates, and power through.

Furthermore, I use the built-in UI only for administration purposes. Run a custom react app that talks to HA via websocket/rest APIs. Those are pretty stable in my experience. Same with YAML configured automations.

Sounds like a lot of work, but I feel that it's offset by someone else writing the integrations with 3rd party services. When I want to control my new robot vacuum cleaner from my custom dashboard, all I have to provide is the UI. Someone else has figured out how to talk with the vac APIs, how to authenticate requests, and what to do to avoid getting rate-limited by the 3rd party service. I have to deal with only the HA quirks, not every 3rd party service quirk.
Yes, I find that I not only can't easily recall what my own experience as a kid was like, I also reproduce a lot of my parents' behaviors.
>[type punning via enum] No; this works in C (since C99...?), but in C++ "it is undefined behavior to read from the member of the union that wasn't most recently written.

it is technically UB, but it works as a documented extension on pretty much every compiler.
In those types of discussions and environments I found its best to state your accepted limits of free speech right off the bat. Before the recent anti-free speech wave, free speech defenders didn't have to restate their redline exception to free speech: incitement to violence. This was the one limit that all liberal democracies accepted for free speech. Once you share this point of view then at least it's easier turn to discussing why all other limits are dangerous and ridden with pitfalls.

Nonetheless, I do think there are somethings alluded to in the sibling comment by dale_glass that needs to be addressed even though I don't agree with many of his assumptions. Namely, the practical matter of the disenfranchised trying to fight a losing war on social media platforms against an onslaught of doxxing, sex tapes etc, and lies distributed to millions by parties with war chests several magnitudes greater than their targets. This has also had a big impact on many elections across the globe in the last decade as well.

I have not seen any coherent solution proposed by free speech defenders, and I count myself among them, to this practial problem. And I think we should at least have the humility to admit that we currently do not have a good solution either, and at least make it a top priority to establish one.
A really unknown and underrated language for how good it is right now is rescript. It's ocaml's type & module systems and runtime semantics grafted onto JS. Ocaml's tooling, ecosystem, and standard lib situation are all ...fine... but quirky in ways that can be barriers when learning it.

Rescript lets you skip most of those, plus the (overblown but also real) weird syntax. I like ocaml and use it for projects still but if you just want to play around with what's unique and strong about it, rescript is what I would recommend right now.
We have to block several users per day for creating multiple accounts. I can tell you no amount of wording on the website will work, people have multiple email addresses and many use burner/disposable/temporary emails for signup. As first line of defense add a captcha, then rate-limiting by IP address. Some download website have a counter "You can continue after waiting 10 minutes ... or upgrade now", that might work here.
There's probably a danger in commenting on adjacent fields. If you're a HW guy and you write some software to exercise your hardware, you might think it's easy because you've only stepped one layer into the interface.

It's probably similar in a lot of areas, you stand on the tip of an iceberg and you think you've seen the whole thing.

I see something similar in trading code. You get someone who knows a lot about how markets work, and they figure out that you can hack a few things together in python. Now they're a software engineer.
I hope they have provided adequate alternative things to do

Or areas of the town that are safe from cars
for them to play together in as an alternative
"All train disruptions on the complete Dutch railway network since January 2011" - https://www.rijdendetreinen.nl/en/disruptions

Some say NS stands for No Speed...
At least Rust has left the door open to allow panicking on overflow even in release builds in the future - presumably on platforms where hardware support makes this cheap enough.
Best Books and Research Papers on Machine Learning Recommender Systems
> Then you have to battle the people selling highly marked up snake oil as an 'experimental' treatment - when every expert could tell you this treatment is already well known to be ineffective.

Isn't that easily solved by requiring all experimental drugs and procedures to be provided free of charge with the cost footed solely by the provider?
Rust-Written Coreutils Replacement Uutils 0.0.19 Released
Arguably TypeScript is pretty close to as safe while being less work.
I find it amusing that the post is from early 2010, almost 2 years before C++11 came out and people were already saying C++ is too complex.

Now, 13 years later, if someone knows the all the language itself, libc++, common idioms, best practices and template meta-programming intricacies, I think it's safe to say they are more of a devoted learner/teacher than a programmer, as retaining and keeping up with all that knowledge won't leave much time for actual programming.

Maybe at least 10+ years of continuous C++ use would be a better measure of actual C++ skills?
I fully expect the Apple Silicon team to throw out the roadmap 2 years into the future and start over because of AI breakthroughs this year. Or concurrently, build a new team to develop the SoC of the future for AI.

I fully expect the Neural Engine inside Apple SoCs to take up 80% of the transistors in the future, up from ~10% today.
this is trivially true as classes are exactly the same as struct except for the default access.

If you mean member functions, virtual functions and inheritance, I beg to differ.
Being a SW guy at my day job, I really don't want to play SW engineer
on the nights and weekends.

That's exactly why I fell out of love with home automation. The commercial stuff isn't better than HA. I don't want to care what brand my zigbee lights are. I don't want to come home and debug Siri or that god awful Hue app. I just want to turn my fucking lights on.

Home automation promises Star Trek and delivers the bastard offspring of 2001 and Galaxy Quest.
Six tips for better coding with ChatGPT - Nature
Except if some policy enforces C++11 or C++14, especially in embedded systems, where compilers might be years behind in following the specs. For example, gcc has (almost) full C++17 support starting from version 8, which might seem old enough to be omnipresent, but still some QNX-based distributions might have stuck with 5.x.
I assume his point was that there's no technical reason for C to not support it.
Someone's advanced metaprogramming is someonelse trivial use of templates.
Ouch, that is a harsh view. Black & white thinking leads to depression in people with a disposition. Questioning these thoughts helps.

I'm more inclined to follow the bell curve. 10% crap, 40% mediocre but rather bad, 40% mediocre but rather good and 10% great.
I dip in and out of C++ (have done so since it came about, which sort of dates me) and I don't see it as a unified language. I see it as a set of idioms that depend on the use case and libraries you have to use (boost, Arduino, XML processing, etc.).

It literally has far too many ways to skin a cat, from light grooming to full on mecha brain transplant.