skysight-inc/HackerNews huggingface dataset:
I don't think Torrentfreak has as much malicious intent as you think but I would agree overall. I love libgen and I would not be able to read as much as I do without it but no one seems to ask how Libgen got its library to begin with. Yes a lot of it is Onedrive and Proquest rips which maybe you can convince yourself is ethical but a lot of the books on there especially the independent more technical ones are bought with a stolen credit card which screws the author over twice: once for the loss of sales and again with the chargeback fee. "They can afford it" is the new hip justification for theft but I don't find it persuasive because it would justify theft from almost anyone in a decently developed country. Though I would never pay for scientific journals so maybe I'm a hypocrite.
Exactly my read - they're just saying that if you want to pretend you are selling magic that's not allowed.

Quantifying your risk does not mean you eliminated all your risk.

We allow the sale of alcohol, tobacco, and firearms too.
I'm a cmake advocate, but I agree with almost all of these criticisms. They are spot on, if perhaps overhyped (silly syntax is accurate, but not a critical problem).

But cmake has one overwhelming quality that overrides these: it won. Worse is better[1]. A united ecosystem behind a flawed tool is a hundred times better than a fractured ecosystem of utopian tools.

cmake has significantly improved over the last decade and continues to slowly chip away at its most pressing criticisms. Today it is 60% of what I want in a toolchain element. One day it will be 90% of what I want. And when that day comes I will be very happy with its ubiquity.

[1]: https://www.jwz.org/doc/worse-is-better.html
> > And C++ just... doesn't have that many real problems.

> It does not have many, but it has one and it's big. It's not memory safe.

It's not as big as a deal as c++ opponents make it out to be. The ratio of memory bugs to other bugs at work is basically zero. The problems that are holding our product back have nothing to do with memory safety. Of the long list of problems we need to solve, that just isn't one of them. If the only thing a new language offered over c++ was that I don't have to think about that 0.01% of bugs anymore, but in exchange I get either a garbage collector or a borrow checker to fight with, I would not switch.
Which part of this:

> Unfair methods of competition in or affecting commerce, and unfair or deceptive acts or practices in or affecting commerce, are hereby declared unlawful.

applies to an "inequitable AI algorithm"? I'm really serious, this section talks about unfair competition between businesses and unfairly or deceptively affecting commerce. Here's a lawyers definition of "in or affecting commerce": http://www.stephenson-law.com/news/“-or-affecting-commerce”-...

Specifically, it's not illegal to make a product that treats people unfairly. But it's illegal to treat people unfairly in commerce. My reading of that is that if I offer my shitbot to you fairly and non-deceptively, and it treats you poorly, that's not the FTCs concern.
We do a lot of mock 15 different things so that you can unit test this one thing. I too think it's a drag because it tends to ossify things. Not only do I have to change the code I have to change all the unit tests and mocks. And it just doesn't seem to catch a lot of stuff. Or at least a lot of bugs slip through

I wish we had spent that time on better anomaly detection and defensive coding and stuff like blue green deployments. Users are the best testers and it's not really a big deal if 2% of your users see a bug for 10 minutes.

Maybe different if people will die or if money will be lost. But for general business or consumer stuff I think it's fine.
I mean, I agree that incremental improvements are great but also I think your hyperbole is a bit of an overreaction. I use markdown and templates and Software people rightly prefer reuse and DRY principles but handwriting html is honestly only barely a notch more primitive.
Unless it's I-35, then they're stuck in traffic for 3 hours.

I've seen more road rage in California than anywhere because I lived there for 30+ years. Some dude chased down my mom's car (I was driving) during a forest fire evacuation in order to ram into the back of it for no reason whatsoever. I was weaving trying to get away, dude just had to keep going and plow into a vehicle. I was nearly to a CHP station. Wacko.
Principle problem being that expert systems required meticulous inputs from domain experts, codified by skilled engineers. People don't have time or startup capital for actual expertise...
"The patterns on the goods in this shop are designed to trigger Automated License Plate Readers, injecting junk data in to the systems used by the State and its contractors to monitor and track civilians and their locations."

I wonder if it does.
This is much better than OP though. It’s always confusing when people jump from one thing to another, while renaming things on the fly or implying details that are obvious only if you already know the picture. What chatgpt is really good at is structured narrative, even if it misses a couple of details here and there.
How does pot change the economics? If it becomes legal, it will be cheaper to grow it in greenhouses just like its cheaper to grow lettuce in greenhouses.
2002 for Germany mate.
There's a talk by Scott Meyers (at the D lang conference IIRC), where he methodologically takes apart the claim that priority #1 is performance or 0-cost abstractions. Basically the way the standards body seems to work is there's ~N different concerns and people will whatever set is appropriate to kill proposals. It gives a fantastic illusion of performance being #1, but C++ makes plenty of choices that are misaligned with performance (e.g. variable aliasing that it inherited from C but it let infect the C++ type system too).
Jokes on them, I'll call my AI product Full Self Thinking.

It's $10,000 if you buy now, but we'll be raising prices to $15,000 by June.

And yes, it will just be a worst version of the latest ChatGPT, but I'll hide it in a black box and continually tell you that it's so far ahead of the competition, we can't even see them in the rear view mirror!
That sounds way more sophisticated than the reality is for the most farmers. Automation exists but usually it's mundane like "my tractor does some proprogrammed routine automatically when U-turn is required on the field while tilling", and even that is enough to get you into the high-tech farmer club.
Everyone is entitled to their opinion, and I respect the one in the blog post. Here is mine:

Half of the post complains about syntax. In my opinion, that's irrelevant. If the `if() else() endif()` syntax is too hard to understand, good luck with modern software engineering, because you'll have to deal with many languages.

The "dealing with more complex projects" section actually shows a very simple project. IMO CMake should be just fine for that complexity, which encompasses most projects out there. If your project is too complex for CMake (and that happens, I don't deny it), then you are an exception, not the rule.

This said, the example creating a lib (lib/) and using it in a binary (exec/) in the very same project seems wrong (edit: I mean that the blog snippet seems wrong. Trying to have both lib/ and exec/ together is totally normal). I agree that `if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)` looks ugly, but I wouldn't blame CMake for that: I would refactor the CMakeLists instead, because it just seems wrong :).

"Weird function definitions" -> most of the time, functions are a coding smell to me. I always managed to not use them (or maybe I used one or two? I don't remember) and that's all fine. Projects that define a ton of functions get unreadable extremely quickly.

Admittedly, the syntax for installing the target is a bit weird. I wouldn't say it's impossible to get right, though. Usually it's similar to most of your other projects (so you essentially have to get it right once, then copy-paste), and it has to be done once per project. It's not that big of a deal.

Meson is cool, but I have seen messy Meson projects, like I have seen messy CMake projects. I wouldn't say Meson is that much better than CMake. And autotools is not that bad when done right.
How to attract more programmers for Merkaartor's developing? (2021)
Xylitol will kill my dogs.
Some Personal User Experiences
Yeah, cmake sucks. But it sucks once, then you get used to the cmake standard for your company and dependencies. And it sucks a lot less than anything else.

And cmake is the backbone of a lot of other build systems, being so popular. So it makes most Cpp projects straightforward to integrate.

I pull my hair out at this stuff too, but no more than any other tool required for configuring a workspace.
Ahhh! I'm so happy about this!
> I strongly suggest to transition to meson, but that’s a topic for another post.

and the author wrote about it too: https://twdev.blog/2022/09/meson/
CMake works fine if you keep things as simple as possible which often means going against best practices. For instance, this is my template for a C project using SDL, keeping all of my code and libs in their own local hierarchy:

set(PROJECT "ProjectTemplate") #this can't have spaces
set(CMAKE_VERBOSE_MAKEFILE ON)
set(CMAKE_BUILD_TYPE "Debug")
set(ARCH "x64")
set(PROJECT_ROOT "${CMAKE_CURRENT_LIST_DIR}/project")
set(PROJECT_SRC "${PROJECT_ROOT}/src")
set(PROJECT_INC "${PROJECT_ROOT}/include")
set(PROJECT_ASSETS "${PROJECT_ROOT}/assets")
set(PROJECT_LIBS "${PROJECT_ROOT}/libs") #third party libraries
set(SDL2_PATH "${PROJECT_LIBS}/SDL")

project(${PROJECT} C)

add_executable(${PROJECT} "${PROJECT_SRC}/main.c")
set(PROJECT_SOURCE_FILES "${PROJECT_SRC}/main.c")

target_sources(${PROJECT} PUBLIC ${PROJECT_SOURCE_FILES})
set(SDL2_INCLUDE_DIR "${SDL2_PATH}/include")

target_include_directories(${PROJECT} PUBLIC ${PROJECT_INC}
${SDL2_INCLUDE_DIR})

set(SDL2_LIBRARY "${SDL2_PATH}/lib/${ARCH}")

target_link_libraries(${PROJECT} "${SDL2_LIBRARY}/SDL2.lib"
"${SDL2_LIBRARY}/SDL2main.lib")

file(GLOB_RECURSE PROJECT_DLLS "${SDL2_LIBRARY}/SDL2.dll")

add_custom_command(TARGET ${PROJECT} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different ${PROJECT_DLLS}
"$<TARGET_FILE_DIR:${PROJECT}>")

if(EXISTS ${PROJECT_ASSETS})
add_custom_command(TARGET ${PROJECT} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_directory ${PROJECT_ASSETS}
"$<TARGET_FILE_DIR:${PROJECT}>/assets")
endif()

Is this the way it's supposed to be done? No. Is it setting someone's teeth on edge? Probably. Is it cross-platform compatible? No, but I don't need it to be, I just need it to build for the specific platform I'm using, which is Windows. Will it build? Yes, and that's all that matters.
Sure, but do Makefiles suck relative to CMake?
Facebook is an Anglish word, so what was the original English word?
and there are many more things like this. Back in the day "expert systems" were AI. For any given piece of software, it will meet some definition of AI from some time period.

The term AI is about as concrete as "awesome".
> This said, the example creating a lib (lib/) and using it in a binary (exec/) in the very same project seems wrong.

Not only is this a bog standard thing to do, it's really really easy with cmake.

> refactor the CMakeLists

Precisely. This is a totally normal organization just done incredibly badly.
One thing that seems to connect some of these are how they play to being outsiders and for people who otherwise can't get in. The best place to set up a fintech company in Europe is obviously London and if you wanna start up in Munich there's a lot of car industry around to service. But for (fintech) fraud Munich is pretty good, partially because there's less employee overlap with legitimate business for you and the regulators are not really set up to catch you (the way they would be in London). The investors in Theranos were also largely people on the sidelines of VC and the Madoff investors were people who would have a hard time getting into legitimate hedge funds
Short lived branches. If tests are green and it passes code review, squash merge, bump the release, and deploy. Never force push anything ever. Rewriting history is bad.

It is all about reducing feedback cycles.
|x| for captures is from Ruby.

Special ops are formed by adding another symbol onto an operator: wrapping ops are +% -% etc, saturating ops are +| -| etc. This pattern was perhaps inspired by OCaml, which uses +. -. etc for floating point ops. The | for saturating is because "| looks like a wall".

The <op>= syntax is of course from C.

p.* is pointer deference. It was probably chosen for parsing reasons. The * is C for dereference, the . prevents ambiguity with multiplication. It may have been inspired by the postfix p^ from Pascal.

The .fire is just MyEnumType.fire with MyEnumType omitted; the type will be inferred.
It appears there's a terribly contagious case of switcheroo fever in the comment section here.

The objective of the hoodie is to prevent face recognition.

Those who have come down with switcheroo fever are saying "aha! This actually makes you more recognizable, not less!"

But this is not a trick question and this is not the type of thing where the switcheroo is meaningfully responsive.

The objective is to prevent a camera from recognizing your face, and it does that. If you have tested positive for switcheroo fever, you should start your comment by stating out loud that you understand this is the objective and you understand that it does indeed achieve the objective before proceeding elaborate on your own personal variation of the switcheroo. And perhaps, if you dare, proceed to challenge mode, where you acknowledge that this might be a trade-off that was consciously chosen, and does not come as a surprise to the people who designed the product.
We often add promising TC39 proposals into Civet so people can experiment without waiting.

We've added https://github.com/tc39/proposal-pipeline-operator, a variant of https://github.com/tc39/proposal-pattern-matching, a variant of https://github.com/tc39/proposal-string-dedent and others.

Since our goal is to be 99% compatible with ES we'll need to accommodate any proposals that become standard and pick up anything TC39 leaves on the table (rest parameters in any position, etc.)
Next the FTC will be regulating the use of the word "awesome". It's about as concrete as "AI".
I disagree… cmake is very clear about what problem it’s trying to solve… build portability. If you need something to build on windows Mac and a variety of unixen cmake works much better than make.
The trouble is that a ) you probably don’t need that and b) cmake is contagious. Soon every library and its grandmother demands cmake. Cmake is also less orthogonal than make is…. Make is endlessly customizable to your work flow. Cmake is too opinionated.
The Kindle came out in 2007 - nearly 16 years ago.

The "1984" incident happened in 2009 - nearly 14 years ago.

Amazon modified their terms and conditions to make it difficult for them to do something like that again.

I'm not sure that one example means anything in 2023.
If anyone knows CMake and wants to get rich, I’m pretty sure Citadel is still trying to hire a build systems wizard for ~4XXk. I got the offer but balked at the thought of writing cmake every day for the next ten years
I just wish there was something to CMake what TypeScript is to JS. Fully compatible with the existing ecosystem but saner semantics.
I wonder what would you propose to have such a check possible; how it can be done?
The content similar to this is being taught at Indian Institute of Technology Kanpur for well over a decade. It runs as 3 different courses seperated in different semesters depending on complexity and prerequisites:

* CS251 - Computing Laboratory - 1 - https://www.cse.iitk.ac.in/pages/CS251.html

* CS252 - Computing Laboratory - 2 - https://www.cse.iitk.ac.in/pages/CS252.html , and

* CS253 - Software Development And Operations - https://www.cse.iitk.ac.in/pages/CS253.html
On my end, all the issues I had 10 years ago using CMake just went away when I actually learned how to use CMake :)
I was dreading making changes to Cmake config and asked ChatGPT how to do what I needed and instantly had an answer, got it configured and moved on.
> if people can’t have consistency, a system of government never can

There's this concept called "emergence" that doesn't agree with that reasoning.
I don't really care, I just need to learn the thing that all the projects are using and if that's Cmake then that's what I have to learn.
I had the same experience with them. Very simple to deploy when I moved over from Heroku. Was up and running within a couple of hours and only used UI to deploy.
<source>: In function 'int main()':
<source>:6:54: error: conversion from 'absl::string_view' {aka 'std::basic_string_view<char>'} to non-scalar type 'const std::string' {aka 'const std::__cxx11::basic_string<char>'} requested
6 | const std::string foo2 = absl::StripAsciiWhitespace(absl::AsciiStrToUpper(foo)); // in Python: foo2 = foo.upper().strip()
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
ASM generation compiler returned: 1

This is gcc with c++20, curious what the garbage is you're describing.
I can see myself using this for fantasy stuff.

It is perfect for adding some flavor and old-timey vibes to your writing while still being much more readable than actual old English.
Don't forget the fragmentation of the streaming market, as every content owner spins up their own streaming service and pulls their content from Netflix.
26% I believe, not 47%. The rest said "unsure".
For me the UK design system page was half cookie banner, half “get started” pop up (which afaict just lets you through to the page you’re already on when you tap it. What’s the point?)

Hardly inspires confidence in this site as a shining example of simplicity and design…
I know, like, one farmer whose only job is farming, even those who are farming like 60+ hours a week.
It's happened more than that, because an Orwell title was mentioned here and it happened to me years ago with a title from another author. (This was before Unlimited existed and I've never used Unlimited.)

Amazon also removed an anime I purchased in 2019. For a while it said it wasn't available to watch in my location. As of today it's trying to sell it to me again!
Hello, I am the author of Idris JVM. Thank you for your feedback. I will update the README to include a link for JVM interop. For now, this file https://github.com/mmhelloworld/idris-jvm/blob/main/libs/bas... , demonstrates how the interop looks like currently. The %foreign directive takes an FFI descriptor to talk to the respective backends. Here you can see few scheme and JVM descriptors starting with "scheme:" and "jvm:" respectively. The JVM descriptors there also show constructor calls `<init>`, instance methods `.lock` and static methods `getThreadData`.
I would argue that if the best practices don't work fine, maybe you are not actually following the best practices.

But I agree with the "keep things simple" (e.g. don't define custom functions), but I don't think that your snippet does that (ahem, I see `add_custom_command` there) :)
I mean, sure, if Factorio was running at 60 stably the CPU would downclock until it was just about keeping up. My point is more that artificially running Factorio at unlocked tickrates (above 60) makes sense for a benchmark, because if it can hit 115 in that map that tells you it'll be able to keep 60 in a map that's twice as big. Ie. I'm saying it's not like the CPU is using a different mode below 60 and above 60 as long as the tickrate is unlocked; there's nothing special about 60, it just happens that's what Factorio is normally limited to.
They already have that power (or at least in my jurisdiction). Similar to being able to arrest you without a warrant if you are currently committing a crime.
I am pretty sure there was a comic where everyone were wearing hoodies like these due to global surveillance. Just can't remember it.
While he may have been less than attentive to these things, he would use every bit of information that was available to him to advance his agenda and he had people around him who read/in those briefings who knew and support his agenda. Certainly his agenda pre-pandemic as it related to China was pretty much an economic war for lack of a better description.

If your intention is to motivate Americans away from Chinese products, what better way to do it then to use a scary virus that seemed to emerge from China to that end.
Wow! It crashed my Pixel 7 immediately. Less than a second after the video played. It was really weird because it was the quickest my phone ever rebooted.
... and Old/Ancient Greek. When you see -phth- you know you are in for a right old tongue twister. Not human but fish related: ichthyophthirius. In English it's called "white spot" - both of those words are very Anglo-Saxon.

Spanish is considered a "Romance" language, along with French, Italian int al. English is considered a "Germanic" language along with German, Dutch int al. English alone has at least three major periodic based "versions" - Old, Middle, Modern. There were also events such as a major vowel change where the way we pronounce vowels today differs from before that event.

Spanish seems to have a famed "lisp". However that simplistic approach to a complex language and Spain as a whole ignores rather a lot of history, culture and is frankly an insult! As we say in Britain - "Viva la difference".

English as spoken in Britain and elsewhere should borrow and bother from every language it ever trips over. It should always evolve and mutate and continue to become ever more flexible. It should also continue to enable useful "pidgins" which are amalgams of English bolted on the side of another language and vice versa.

What English seems to have lost compared to the other Germanics is a lot of formal complicated verb conjugations and nounal declensions and noun genders and quite a lot more. Complexity can be bolted on but it is optional. Subject object verb is also quite fluid too in English. I believe German at least insists on a verb dump at the end of a sentence. English still has many of these structures - active, passive, subjunctive verbs (transitive, intrans etc); Nom, Voc, Acc, Gen, Dat, Abl for your nouns but they are largely implied via other words instead of suffixes.

English is quite literally and vocally French!

(lingua franca - language of the Franks)
This. I am happier dealing with a clean autotools config than with a meson mess.

If it's clean, then I'm fine with basically everything, as long as it's not too exotic (it's annoying to have to learn one build system for one specific project).
> At 500m, Rudisha accelerates and leaves these other runners

In his 2012 Olympic 1:40.91 win (and WR) his splits were 49.28, 51.63, so he didn't accelerate. He slowed down less than the rest of the field.

In his prior 2010 WR of 1:41.01 his splits were 48.9, 52.1.

So in 2012 he went out slightly slower and then faded less in the second lap. Which is interesting because it's typical of the 800M to run positive splits, but he improved his time by running a bit closer to an even split.

From https://www.runnersworld.com/races-places/a20800858/800-mete...

> In 2007, [exercise physiologist and Science of Sport blogger Ross] Tucker analyzed the 26 men’s world records set for 800 meters in the modern era. He found that 24 of the 26 were set with positive splits. In fact, the last time a world record was set with a negative split was in 1972, when Dave Wottle ran 1:44.3 to bring gold home to the United States. His last lap of 51.4 is also the fastest ever in a world-record race, despite the fact that record has fallen more than 3 seconds in the last four decades.

1:44.3 was at the US Olympic trials. Here's the 1972 Olympics 800 final (one of my favorites):

https://www.youtube.com/watch?v=5LHid-nC45k

Wottle wins in 1:45.86 with a slight negative split of ~53.3, ~52.56. Here you could legitimately claim Wottle accelerated on his competitors (he's in last place at 500m), though mostly they went out much too fast and faded badly.