skysight-inc/HackerNews huggingface dataset:
What's your solution though?

To me, if the server has updated it's schema and the client has old code, the server responds with an error, the user sees "something went wrong".

And if the validation fails on the client side, the user sees "something went wrong"

And if the client isn't doing validation of what's returned, and an error gets thrown because it tried to access a now missing field, the user sees ... "something went wrong"

Intentionally maintaining multiple versions of an API, or making sure your API changes are backwards compatible (like adding new fields and marking old ones as deprecated), those are solutions but definitely require organizational effort.

All totally expressible via Typescript though!
This is true and its only a recent change. When I compare it to similar sites that do the same, remote rocketship is the best IMO.

I personally think its worth 10 dollars for what it is. A barebones and clean aggregate job site. The other free sites have too much engagement or don't get the amount of listings RR does.
> It would be useful to give more clarity around your thoughts on the "Data Engineer" role. Is it also in decline? Is the market as a whole in a relative decline?

My thoughts: the tech job market as a whole has been in decline, as unanimously observed. There may be some signs that the slowdown is abating though. Next 6-12 months will be key to see how DS and DE rebound (or not).

> Most businesses' data engineering needs have been solved or will shortly be solved by managed services that 10 years ago would require endless and extensive self-built ETL pipelines, databases and tools. For the exceeding majority of businesses, this means they can and should focus on building capacity for business logic, analysis and predictions instead of data engineering.

Could not disagree more with your take of "DE demand will decline due to DE needs being already solved for most businesses". Apologies, but have you ever worked as a data engineer or even close to one? Pipelines break, requirements change, businesses expand, and infrastructure needs to be managed and optimized, etc. ETL processes, in the wild, are decidedly not one-off affairs.
This is why I pay by Direct Debit wherever possible (in the UK). The Direct Debit Guarantee (https://www.directdebit.co.uk/direct-debit-explained/direct-...) says:

You can cancel a Direct Debit at any time by simply contacting your bank or building society.

meaning the outgoing payments from my bank account are under my control.
> At that point, the curve levels off, and as the number of typical questions die off because they've already been asked and answered many times, the number of new questions has to trend downward

Yes, absolutely, and the article addresses precisely that point. But the questions graph shows a drop of about 40% at exactly the point in time when ChatGPT launches, which is much too extreme to explain away like that.
If this were true ChatGPT would be useless for any topic that doesn't have a vast Q&A dataset. The purpose of instruct fine tuning is to illicit the model to output in a question answer format. The bulk of the model's knowledge comes from the unstructured dataset.

I'm also not sure how "reasoning" at inference time is relevant here. You seem to be conflating unsupervised offline training with inference. The ironic thing is that the behavior you describe actually works, you can try it right now. Add code documentation to your context window and ChatGPT will happily write code using that documentation as reference.
badass mic drop. i will refer to your comment whenever i see this discussion coming up again and it will come up again as long as people are still learning the art of software development.
I'd argue there's too much "innovation" in the printer space. We would have been better off if they stopped at the 2000s level, and just charged actual manufacturing costs + margin.
That's not the GP's question. In fact, that reinforces the question.

To paraphrase the question: since total mortality must be exactly 100%, is the increase in suicides just an automatic and meaningless numeric compensation for the decrease in all-(health related)-cause mortality?

The answer to that is somewhere within their methodology on controlling for age. But I was unable to grasp the jargon on this one.
Out of neat one-liners I never use but sound good on paper?

timestamp() {
while IFS= read -r line; do printf '[%s] %s\n' "$(date '+%F %T.%4N')" "$line"; done
}

This prepends a timestamp in front of the output of a command, useful for long-running commands, and logging (e.g. "while sleep .1; do echo openssl rand -hex 8; done | timestamp").

Out of scripts I actually use a lot? Boring stuff like "refactor":

sedescape_regex() {
printf '%s' "$@" | sed 's/[^^]/[&]/g; s/\^/\\^/g'
}
sedescape_subst() {
printf '%s' "$@" | sed 's/[&/\]/\\&/g'
}

regex="$(sedescape_regex "$1")"; shift
subst="$(sedescape_subst "$1")"; shift

grep -rwl \
--include='*.sh' \
--include='*.c' --include='*.h' \
--include='*.asm' --include='*.inc' \
--include='*.s' --include='*.i' \
--include='*.ld' \
--include='*.md' \
"$regex" "$@" | xargs -t sed -i "s/\<$regex\>/$subst/g"

This one is obviously less useful for languages with namespaces, hence why --include currently only really has C and a few Assembly flavors.

I wish there was a CLI "refactor" tool that supported LSP, without needing a heavy editor to do that.
I miss you too, raldi.
Do take a look at these guys - https://arrowhead.team/
> Moreover the people analyzing it don't need to be data scientists -- they can as easily be statisticians, economists, geneticists, etc.

While data science is a newer academic field, most of its practitioners come from statistics, economics, genetics, etc.! (I say this as a 10-year data scientist who is an economist).
> The two protocols still don't interoperate.

On the contrary, they would, the behavior's and quicks would be the same. And if we define, say, that if the last four components are zero, then the addr is the same as normal IPv4 address, then you could deploy the whole thing without having anybody assigning new addresses. NAT's/configs/etc could keep working.

The big problem with IPv6 is that everything has to be double-configured to support both IPv4 and IPv6. Two addressed for all. Different semantics. No backwards compatibility.

If you imagine that all network HW is recycled, say every decade, you could roll the thing in without having anybody to reconfigure everything. Eventually coverage would be complete. This cant happen with IPv6, because the double configuration problem. Extending vs replacement.

This is of course a pointless though experiment, because IPv6 is the route that was chosen.
Or they open up the floodgates after that, listing numerous other unrelated "issues" with your code. In my mind you get one stab. After that STFU.
It's a bit naive to think there's freedom of press in this country (freedom to publish without retribution)
No, the contract is “I will do the right thing, presuming it does not require more than the smallest bit of personal sacrifice of any kind.” This generalizes to most facets of American life.
Huh. I’d never even registered the “Jobs” link on the home page title bar until I saw this post.

In recent years, I’ve always gone via agents who contacted me on LinkedIn - which has become something like a naffer Facebook.

Perhaps I ought to pay a little more attention in future.
You know there's other things to plant that use less water and still look nice aside from grass.

If your mental health depends on specifically grass and will not accept any substitute, then I'm just sad for you. Grass is the most boring plant to look at.
In this case it appears it would've worked just fine
With 10+ years in DS, I've always felt that best DS were always basically software engineers that knew math and were more interested in prototyping cool machine learning product than maintaining production infrastructure. Unfortunately this always accounted for a small fraction of DS I interacted with.

The largest group of DS was non-ML/CS/Math PhDs who started panicking once they realized their future job prospects in academia were very slim and so they signed up for bootcamps and got jobs at places hiring DS by the hundreds. Many of the people in this latter group had no idea how to write Python outside of a notebook, generally just structured problems to fit into XGBoost, and when not doing that tried to squeeze resume-boosting-complexity into any problem the could find. They also tended to have a hilariously poor understanding of creating business value.

Nearly everyone I know in the first group has switched back to just being an engineer of some sort, typically ML or AI engineer. I suspect the small set of talented people from the second group will end up in lesser paying product analytics type roles or closer to product management roles, while the majority that don't bring much to the table other than a PhD will be slowly attritioned out of the field as companies start looking for the value different skillsets bring to the table.
By the way, I'm totally fine with allowing some number of people that we know are going to be fiscal negatives (likely into perpetuity) come to the country. There does need to be some aspect of empathy in the immigration system. That being said, those left of center are just so naive about this topic. Noticing differences in groups is so taboo that they throw common sense out of the window.
MoreWaita – A GNOME theme that extends the Adwaita icon design to more apps
Neighbor Discovery is basically ARP wearing a trenchcoat. The only people "hurt" by the change are the ones who were parsing the output of the arp command for whatever reason.

IMHO the biggest problem is that IPv6 address autoconfiguration was half-baked. There is no mechanism to inform anybody about which address you have configured for yourself, unlike IPv4's DHCP where a central server knows everyone's address and can do things like update DNS entries and configure security devices. Autoconfiguration also didn't include critical details like "Who provides DNS for the local network?" and "What's the NTP server?". There isn't even any way to authenticate that the Router Advertisement your machine receives is valid, although this problem is shared with DHCP. The committee seems to have put a lot of faith in anycast routing, which has never been a good idea outside of toy networks.
Definitely a great point, adding one today
And if you are printing color, a color laser is the way to go.

Unfortunately, it's hard to buy a new printer that isn't evil. Brother has gone down road too, it's no longer the non-evil option.
I'll join the others in trying to bring up a nuance.

The issue is not necessarily unreachability being undecidable.
The issue is that reachability depends on control flow. And that implies being conservative which translates into having to deal with false positives.

That static analysis in a nutshell: how to get precision and soundness.

Probably a mere question of terminology.
> the problem is you

Scapegoat mechanism.
Yeah, seems like the second "Data Scientist" mention should actually be Data Engineer.

Missing is the Data Analyst component, and (as is normally typical in the discussion) the statistical experimenter (A/B, MAB, etc.)
OK, let me try to recover. :)

I'm using JS to wrap around the llama.cpp project. Most of the work is done by that. JS is just used to pull the tokens out, normalize them, and then send them to a real-time database (pocketbase). The frontend is a Svelte app.

It's not a lot of code, llama.cpp does almost everything.
Reminds me of this game where you are a paper clip factory: https://www.decisionproblem.com/paperclips/index2.html
Agreed, still too much money forced to provide substandard public ed. let parents keep the $$ and use them for better ed.
Eh, carcinization is a better ontological fit. Many separate things evolving into the same structure, versus the process of losing electrons and/or structurally degrading.
to me it looks like its too early to draw conclusions from the programming question volume graph. But if it is indeed true that LLMs are leaving SO in the dust, thats crazy.

I’m in my 20’s and this is the first time I feel like my work routine and ways of interacting with tech is getting antiquated. God damn.
Except the graph cuts off before 2023, so it tells us nothing about the actual effect it had, it cherry picked the initial drop off (or worse, they just used https://insights.stackoverflow.com/trends, didn't even look at the time axis, and went "this proves our point").

It's Q3 of 2023, if you're going to argue a decline, why are you not looking at the most important three quarters of data?
I concede that this is an entirely fair point, and one that I did not consider (mostly because we're on "Hacker News".
One application of this could be writing to a SQLite database.

If you wrap your writes in a shell script controlled by a lock directory, you are guaranteed to never receive SQLITE_BUSY.

#!/bin/sh

until mkdir /var/tmp/mylock
do sleep 1;
done

trap 'rmdir /var/tmp/mylock' ABRT EXIT FPE HUP INT QUIT SEGV TERM

sqlite3 mydatabase.db 'INSERT INTO MYTABLE VALUES (1,2,3);'

Since the mkdir() is atomic, the SQLite busy handler is now irrelevant with this approach.

On Linux, there is also an flock utility, but it tends to need subshells which are not as efficient.

EDIT: This does reduce the write performance to one of these executions per second. Simple inserts like this can hit a few dozen per second otherwise, as I have heard.
The data engineering space feels like it's earning the same reputation front end had/has with the endless stream of new and shiny frameworks.
I fell for the same bait at MuseScore and ended up paying for the entire year. Now I try to use Privacy.com for subscriptions like these since you can create a temporary card and then disable it.
These days it is touted as 'public-private partnership' and it extends far beyond press.
And murder is already illegal fwiw
You've probably heard this before, but it's worth repeating: code review doesn't have to be a "flawed process" that is "nit-picky" -- if it is, there's a problem in your organization that needs to be -- and absolutely can be -- fixed!
old.r... isn't a thing.

https://www.reddit.com/r/programming/comments/15pxt76/why_ha...

works great, with the old look. Just set preferences!
> When a piece is dealt, instead of removing it from the pool, it is replaced with the most droughted piece

So as I understand, the contents of the bag remain in flux, and pieces that don't occur in the history as much start to appear in the bag more.

It's interesting to think about how much tuning this required for them to get it right, my immediate worry is that this would create an oscillating system.
> This license was popular w folks like apollo who arguably hijacked nearly 700 contributors efforts w a license like this. Because they are using it from start at least that won't be as bad

Which Apollo are you talking about? Only one I know is Apollo GraphQL, and their main server package seems to be MIT, so I must be looking at the wrong thing. What's the story?
Yeah most banks let you do this online too, so it's really simple.

I have lots of magazine subscriptions and it's one-click to cancel.
I once watched a data scientist copy code from a notebook into an email and send it to us, right before going to Hawaii for two weeks so we could productize it. This was after advocating for version control for the project for months...
You believe the traveling salesman problem for 100k students at 165 schools can be figured out with pencil and paper in a few hours?
Long lived feature flags are totally fine, they're more like operational flags than anything. The Fowler article is pretty good at classifying them. Depending on the type of flag (longevity/dynamism) the design will vary. https://martinfowler.com/articles/feature-toggles.html
Ozempic Settles the Obesity Debate: It’s Biology over Willpower
I find this much more valuable than the main post, which is entertaining but leans too hard into absurdity to be a useful guide for what actual problematic behavior looks like.
Hmm. Looks like they're trying to convert Ford vehicles into "platforms" for "innovative customer experiences."

So... you know those annoying ads that play while you're pumping gas? Those are coming to your Ford vehicle (admittedly, that's a bit of a stretch, but if it does happen, I'll look like I have Blavatsky level clairvoyance.)
Seems not that relevant to the subject.
People having food to eat and people having green lawns aren't even remotely equivalent dude, come on.

Literally the whole point of "we should use less water on lawns" is so we'll have more water for food, for humans. Because lawns contribute nothing that humans want or need.
macOS has an AI video upscaling algorithm that was introduced in version 12
The key code is here: https://github.com/dnakov/little-rat/blob/f0b9b6be39af9fe7f4...

chrome.declarativeNetRequest.onRuleMatchedDebug.addListener((e) => {
if (e.request.initiator?.startsWith('chrome-extension://')) {

Given that the extension is using a "Debug" API, it seems unlikely that the Chrome Web Store will approve. "Only available for unpacked extensions with the declarativeNetRequestFeedback permission as this is intended to be used for debugging purposes only." https://developer.chrome.com/docs/extensions/reference/decla...
While I can see how this can work for code reviews, it ignores general communication overall. I find that if someone comes across a certain way in code reviews that you need to adopt this, it's probably an issue with communication in general, and should be addressed. This doesn't mean the person is bad, but that they are probably poor communicators. This means training. We train in other areas where we are deficient, so it's not unreasonable to expect that if communication is critical to your business that you wouldn't also train people on how to communicate well.

However, while "strong communication skills" is something we say we look for, it's not something we actually test for. What does "strong communication skills" actually mean? Does it mean you know how to use a spell checker? A grammar checker? Read and write in your native language?

Personally, I've always taken "strong communication skills" as being able to communicate with other people to achieve the goals of the company. And if one of the goals of the company is creating a team of people that enjoy working at the company, then communicating in a way that doesn't achieve that flies in the face of a goal of the company. In other words, you are lacking in "strong communication skills."

tl;dr: Does "strong communication skills" really matter or is it just a platitude?
Innocent until proven guilty? It just happened and we don't even know for sure if they acted improperly?
I don't think this is true.

It means that you wouldn't expect them to have products that fail because of unresolvable tech problems. You can see plenty of cases like Stadia where the tech was solid but the product strategy and leadership follow through was garbage.
No it doesn't - note the axis marks are every two years.
Individuals have no leverage; they only get better valuation with collective bargaining.
IMO bang for buck is to invest in:

* reproducible fast dev environments - anyone should be able to build anything pretty easily fairly quickly

* culture of design reviews, testing, and code reviews.

* CI/CD, static analysis, PaaS, dependency management.

You can do all of these without Google-level or really any bespoke tooling. A lot of what google builds is for operating at Google scale - distributed builds and running of huge applications - and even then this tooling this simply enables working at this scale, it comes with a lot of cost(speed/complexity) and jank you don't need at smaller software shops.
Sure, but that's not "undecidable"?
Worse than urban air with auto pollution? I'd want to see a source for that...
This is what I came here to say.

For example, I'm working on an project now that long ago added a "sellable things" store that used plain sql. There are many, many stores like this one, but it did some logic to figure out what items are sellable and return the set. Easy, developer happy, ticket closed.

Some time later, it was needed to have "sellable items of a specific type." Well the "sellable things" store was too much to clone so the developer simply pulled all the sellables and filtered in memory. Hey it's Go so it's fast right?

This continued for a couple years and now I'm joining a project with a p99 of >15s. It would have been a natural fit to return a query set of sellable things and the other callers could further refine it however they wanted. Now I'm looking at a ball of logic that should have been in the database and it's beginning to break down at scale.

This article is just that pattern with syntax sugar. It will lead to sadness.
Is it real individuality or fake individuality? All those devices are already general purpose Turing machines that the manufacturers go to great effort and lengths to restrict, writing millions of lines of code, developing cryptographic systems etc to lock them down. A turing machine can run anything, the 'individuality' is just a fake restriction. There is nothing stopping you from running a general piece of software or os on any hardware that meets some minimum requirements. No reason android couldn't run on an 'iphone hardware' or ios on an 'android hardware'. Not the quotes I used, the hardware is just some general purposes CPUs, RAMs etc there is nothing magically 'iPhone' or 'Android' about it.

Almost all differences among the various modern phones, laptops are mere software,
the software is where the individuality is. Hardware differences exist in degree rarely in kind (megapixels of cameras, gb of ram etc) and even if some new type of hardware or sensor comes out its just a matter of developing a proper interface for the cpu, os etc.
On the other hand, I have no doubt that it takes a lot of effort to ensure that stack overflow is full of high quality answers. The tendency of any system like that is toward entropy. The moderators might be forgiven for being a little too judicious in pruning similar questions and splitting focus where the benefit to the whole is to keep answers focused in one place.
Not only. Just like when actually coding to implement a given specification you find yourself refining the specification and discovering edge cases that weren't taken into account etc., when you actually start writing for other you need to make everything clear and to actually develop your thoughts, and it also "debugs the science", if I may. See also the concept of rubber duck debugging which is another instance of the same kind of effect.
Freedom of the press is not freedom to publish "without retribution", and never has been. It is freedom to publish without _government_ retribution.

If you publish some awful stuff, other people are allowed to point out that you said awful stuff and there are consequences for that, and that's how it's supposed to work.