skysight-inc/HackerNews huggingface dataset:
I made this comment when the submission title was “Tech salaries largely unchanged as skills shortages continue”. It seems like the title is more accurate now.
I work for a federal space where IPv6 native is a mandate. As someone who's working on k8s, we often have to build and patch everything ourselves to support that mandate. Want to pull a helm chart from a github repo? Gotta either dual stack the node or run a reverse proxy to make that happen.

I'd love to be at a point where everyone just dual stacked everything so that one day we can flip off the IPv4 switch.
Today you can almost universally get a better off-the-shelf solution with a SaaS product than what Googlers are able to access internally.
Tuning my puzzle generation algorithm by imitating humans
I don't think letters being in cursive is semantically important. Letter case is, somewhat.

I think Cyrillic doesn't even have letter-case, which I've often found interesting.
Were all the people who worked for the Nazi government psychopaths? Of course not, they were normal people who were "just doing their jobs" and feeding their families.

Indeed large corporations are good examples of the evolution of organizations toward compartmentalization such that almost every individual human in the machinery can tell themselves that they're not doing anything too evil, maybe just on the order of a small sin like speeding and everybody does that sometimes.
Merge conflicts to the main branch? I've never even heard of an org where it's OK to force-push to main. That's wild! And a huge red flag, that ought to be fixed at priority zero. Wow.
I'll throw in that I love the look of plim, and if I were doing a lot of html authoring I would probably use it too.

I really like low-symbol languages for day to day stuff. It's why, as much as I deeply despise it, I still often use yaml.

If I need safety in some form, yeah - lots of symbols allow a lot more information density, and that helps resist misunderstandings. That's hardly necessary in a personal blog though.
Disable C++ Exception Handling
Leslie Smith has a number of great papers- this one is particularly relevant. I believe he coined the term “super-convergence” in the space of training neural networks. Same idea- using very large learning rates post-warmup can speed up training an order of magnitude. https://arxiv.org/abs/1708.07120
I dunno mate, I think adults should be able to handle being chortled at. You're responsible for your own emotional state. If you've done something laughable (or even if you haven't), then don't be surprised when people laugh. Taking it personally is optional and not recommended.
And the coolest thing, the whole project, starting from the idea to Wordpress configuration is entirely generated by ChatGPT ;)
By CR do you mean meetings where everyone talks about the code? Or a github-style pull-request?
I personally find meetings where we talk about a pull-request to be a poor use of time. I want to have time to read, reread, and interact with the code.
Go's GC isn't compacting, and might never be, because it made the short-sighted decision that Go pointers can be handed directly to asm or C code.

It's also stuck on an old fork of tcmalloc which isn't anywhere near the state of the art today and will only fall further behind if they don't at least start on a plan to make allocators interchangeable. Bear in mind that Rust has had interchangeable allocators for years, and Java has had interchangeable GCs for decades, while Go still has neither.

Go's GC is pretty good for what it is, especially now that it has become more of a control system that converges on a target collection time ratio. But it is neither a state of the art GC -- not even by the standards of 10 years ago given how far along the JVM was already -- nor is [de]allocation done with a state of the art allocator.

People praise that Go promises a 10ms max duration for GC Assist -- the mechanism that makes your actual critical-path work pause and help out the struggling GC -- and while 10ms is fine for a logs pipeline or something, it's extraordinarily bad for many kinds of API endpoints which should have a 99th percentile latency under 1ms (bearing in mind that even local networking is going to add to that considerably so the floor should start low).

That's despite Go's GC being hailed for targeting predictable low latency rather than overall throughput... this is the predictable low latency they're talking about. 10ms is a failure in a world of sub-ms targets, and Go as a language gives you very limited options to avoid it, even after abandonding community idioms and popular libraries.
Theoretically, any discriminator that maximizes the expected value rather than the underlying distribution will be better. Logistic regression is an example of a discriminative classifier.

Even better, however, is if you maximize the margin, so a large margin discriminative classifier should be your baseline. I believe that the classification layer in fasttext is equivalent to logistic regression (but not large-margin).

All that said, I would probably use vowpalwabbit as a baseline as it doesn't use word vectors underneath, is extremely fast and easy to use, and has many optimization option. This way you can determine if word vectors help your particular problem or not.
Counterpoint, most places do not teach individuals how to check in often and make their stuff smaller. Some of them don't even realize merging side branche into side branch is a valid strategy to avoid merging incomplete features into the main branch(es).

The seniors are not getting out of this scot-free when they barely make an effort to educate themselves, let alone others, or strategize ways to make this dummy-proof.
Do we have any metrics on the network performance? I have a project that might have use for this, but it depends on pushing a lot of data around.
It's not a problem of getting 100k students to 165 schools.

It's 165 separate problems, of getting (presumably, on average) 1k students to 1 school. That's a much more tractable problem, and if you have a large-scale map and a lot of push-pins, you can probably intuit 90% of the solution.

Yes, the person you're replying to is probably under-estimating the problem, but this isn't a problem you have to rent quantum computing time to solve.
The MDN front-end developer curriculum
Because when done in a team where people want to work together and do not have incentives discouraging that it is a really good tool for spreading knowledge and improving maintainability. So far I have only once worked at a place where the review culture was bad and that was due to issues much bigger than the code reviews (specifically a culture where a different team wrote code for another team to maintain, encouraging shoveling shit code over the fence).
"were not google" is usually good for things where people are using cargo cult. I saw at one company that went open floor plan because google did it. No one was happy about that. Retention became very low and everyone bailed out. Emulating google does not fix process and management issues. As what may be at google for a good reason may be an utter failure at another company. There are things all shops can adopt that google does that would help them. But many of the ones I have seen adopted were little more than showy garbage instead of the things that would actually help.

Also sometimes you just need a simple tool to get something done. As engineers we like to build things so sometimes we make it way more complex than it really needs to be. For someone like google that may just be fine to do. For others a minimum viable product may be in order. Do not worry about optimizing for the 3 million user per day case when you have 10 total users a month. Add logging and keep an eye on it. Then worry if you need to scale. As building good scale takes time and thought. Many times you do not need that at all.

As your company/group grows you will take on more and more of the things 'google does' because you will need to, or you will go nuts chasing everything. You could probably even make stages out of the different times to do/evaluate things. To do it early could actually harm what you are doing. You need to evaluate what you are doing and why. Just copying someone else does not always lead to a good outcome and you could be wasting effort when you could be making product.
Who alleged that?
The one distinguishing feature of an ORM is that it drops SQL and the relational paradigm and places the developer completely within the OOP world. If you drop this, you have merely a database connector library, with much more freedom of behavior than an ORM.

Yes, since they are an notoriously bad abstraction, every ORM will give you an escape hatch for the minority of tasks that it can't abstract at all. That escape hatch is not in any way a defining feature of the system.

Now, about that extra freedom that you get from dropping the requirement that your connector is an ORM... well, neither your data at rest, the presentation to the user, the abstraction for a service client, nor your validation rules benefit from OOP. Proof of that is that OOP interfaces from all of those things precede the current popular ones, and all of them were abandoned due to fundamental dissonance between the model and the data.

The rationale for an ORM is that, even though none of the interfaces you actually want for your data is best done in OOP, somehow OOP is still the best way to integrate them so that you can reuse data and metadata. This thought is not completely without merit, but there is very little empirical motivation for it, and the tiny amount that exists is more than completely explained by the OOP hype that only started to die around a decade ago.

EDIT: Oh I saw you wrote SQL Alchemy! First, thank you for that great piece of software.

Now, SQL Alchemy does provide a lot of useful ways to postpone the object representation or even to map your values into dumb data. My comment up there is on theoretical limitations, but on practice, I do think it's the best option available on Python. (And maybe about the best option afforded, since the language is intrinsically biased into OOP.)
Previously they didn't have the money or risk appetite to actually follow through on that plan. ZIRP gave them that last push. The sums that have been sunk into the WeWorks and Ubers of the world are staggering, on par with what giant infrastructure projects (with all the pork) cost.
Waking a child up at 7am for school seems harsh enough; if someone told me my child had to be up at 5am, I'd tell them to pull my other leg.
1. A countervailing meta-analysis does not mean it's "debunked"

2. A theory being debunked does not mean it's "just a marketing gimmick"

3. The serotonin theory being debunked does not mean "chemical imbalance" is totally exonerated

Great article though, thank you for sharing. Here's the paper itself for anyone interested (AFAICT it is oddly not linked in the UCL article?): https://pubmed.ncbi.nlm.nih.gov/35854107/
The avatar people on the front page have 3, 4 and 6 fingers

so it checks out, it’s AI generated
Google is not what it used to be but this book is great. So much distilled wisdom.
I'd definitely like to second how great peewee is. It's been a core part of running our telescope for the last 8 years. It strikes a nice balance between power and simplicity, a significant set of useful extensions and great documentation.

Sometimes I find it impossible to believe that @coleifer is just one person. Peewee has 2300 issues and 500 PR's none of which are open and outstanding, and almost all of which he has personally responded too in a genuinely helpful way. He pipes up on Stackoverflow for peewee questions too.
AI Will Reshape Job Market, Global Economy, Employee Productivity
> It's unlikely the API will get deprecated no matter how you talk about it.

Deprecation isn't what I want. Equivalent alternatives are what I want.

I still can't do <script type='text/typescript'>. Why?

And look, Typescript is also hampered by some of JavaScripts bad choices. Actor-model concurrency would be a really good way to handle events and parallelism to boot, but we won't get that in any language that compiles to JS.

WASM isn't an alternative, because you can't use WASM without JS.
> we see this abuse of power all the time and no one pays the consequences

Where there is no consequence to the police departments go after the press who are investigating them?

I don’t know that we see that all the time! In fact, that’s why this story is news!
If we believed ChatGPT was the cause of an SO decline, then I'd expect it to also cause a decline in Google searches for programming queries. Here's the Google Trends data for two super-common error codes and one more conceptual programming search query:

https://trends.google.com/trends/explore?date=today%205-y&q=...

Maybe a little something going on with typeerror? Or just noise. But it definitely doesn't look to me like evidence supporting the article's claim.
MuseScore = Fantastic market leading open source music notation package.

MuseScore.com = Stage 4 cancer.

It gives me some solace that the application will outlive the company. Perhaps if they themselves realized this, they would do a better job of stewardship for their community.
Lampson attributed that “fundamental theorem of software engineering” to Wheeler, he did not claim to have said it first.
Newegg already seems to have this.
Ctrl + "[" , Ctrl + "]" - bring the full path in the left panel or the right panel respectively into the command line (so Ctrl"+"[" and then Ctrl+Enter will bring full file path of the file under the cursor into the command line)

Ctrl + PgUp - move up the folder tree

Ctrl + U - swap panels (so the cursor goes from one panel to another, useful when you operate in 2 folders primarily, saves you an Alt+Tab)

Ctrl + LeftArrow, Ctrl + RightArrow - makes one of the panels larger or smaller

Ctrl + 1,2,3,5 - change panel layout (file name 1 column, file name 2 columns, file name with attributes, file name with more attributes)

etc. There's a lot. Not even mentioning all the plugins built in the last 20 years.

Fun fact: it was written by a 24 yo college student (graduate?..) from Chelyabinsk and was pretty much functionally complete couple years later. The same guy who designed RAR file format and built WinRar around the same time.
Airlines rush to avoid cancellations after engine recall
I actually messed it up a little because I'm not sure you can mix positional and kwargs in filter, and you definitely can't use kwargs first. Still, the idea is there.

In JS, theoretically you could design an API like

.where({column_a: 1}, Q(column_b__isnull=True).or({column_b: 2}))

Which really isn't bad IMO
why all three instead of getting really good at one?
The evidence points to demand for data engineers declining on a relative basis to other data roles, following the data science trajectory. Agree or disagree?

Maybe the analysis as to _why_ is wrong, but that is what I'm trying to unpack.

HN Guidelines: "When disagreeing, please reply to the argument instead of calling names"
The simple questions are certainly the ones that ChatGPT is least likely to reconstruct wrong, so especially for super popular languages with huge bodies of work on the internet, you'd expect ChatGPT to act as a decent pre-filter, finally ensuring folks don't end up asking "how do I sort this list based on properties inside my objects" for the millionth time =)
No word for beans but "kasi" means (leaf, herb, wood, plant), or maybe you have a green tea, "jelo" mean (yellow, light green).
> is largely built upon hobbyists' transcription efforts.

Which is the same model as one of the other holdings of Muse Group, Ultimate Guitar. It has a wide database for user-created guitar tablatures for most popular songs. Starting from 10 or so years ago, the experience has deteriorated rapidly; they
- push their "Pro" versions at the top of each search result,
- overlay a bullshit video on the actual tablatures which is easily mistaken for a video tutorial for the song you are looking at,
- user created GuitarPro tabs require an account to download,
- there is an ever-present countdown until their 80% runs out, which resets every two days or so.

When I first heard of MuseScore and the fact that Tantacrul worked on it, I was quite excited about an open source notation app but I want nothing to do with it because of their parent company.
> Freedom of the press is not freedom to publish "without retribution", and never has been. It is freedom to publish without _government_ retribution.

You're talking about the American First Amendment specifically, not freedom of the press generally. The World Press Freedom Index includes sociocultural context and safety; if journalists are being attacked by mobs of angry citizens that is obviously a problem for the freedom of the press. To assert otherwise is ludicrous.

https://en.wikipedia.org/wiki/World_Press_Freedom_Index
Book Review: Introducing Elixir by Simon St. Laurent, J. David Eisenberg
Since reading this book I have also read, "Programming Ecto," as well as having actually programmed in Ecto/Elixir and have some thoughts on people's insistence that Elixir is bad at IO. I believe people who are coming from other languages are misusing functional programming in the context of Elixir, it is meant to be used to create state machines, and you can always optimize your IO within that context.
Thanks for that. Makes me hate the how much humanity moved away from nature even more than I already did. They took our language and our spirituality so why not take our brains as well.

Sometimes I wonder if my mental illness, and my utter disgust of capitalism, is from the legacy of trauma in my lineage.

What is even more interesting is that my senior thesis paper was on a man named John Collier who was the head of the Indian Affairs Bureau in the early 1900's and really into eugenics. He wanted to ship Indigenous Americans all over the country so we could all get their genes and be more like them. Funny that wikipedia called him an "advocate"!

https://en.wikipedia.org/wiki/John_Collier_(sociologist)
I've found it refreshing to be able to ask a performance-related question and not get a trite reply about premature optimization. It's frustrating reading a well-researched, obviously informed question about a specific thing and the top reply is "Why do you need this? Did you profile it?". Nothing new is learned and the cynical part of me thinks it's just a race to get free Stack Overflow points.
uh, I'm obviously talking about the outcome after due process, and assuming the described facts are roughly correct. I'll repeat the question - after the justice system has run its course, and assuming that the description of events is roughly correct, do you foresee any possibility of the perps ending up in prison?
I’d say it depends on what “writ large” here refers to. Is it “the larger population of Tech startups” or “tech companies in general”?

If former then maybe the thesis holds true, but data scientist in more established companies do vastly different things than in startups.

It’d be good to extend the analysis by accounting for company size.
I have no idea what country you are even talking about, but why would a modern state have any claim on things that were sold away before it even came into existence?

If I sell stuff overseas, does "rightful ownership" return to the nation I lived in as soon as it becomes historically interesting?

So all of Picassos work is now the property of Spain?

That notion is ridiculous and unworkable.
Not yet. It’s also slower today than it will be as the node count increases. I mean, today there’s a fair chance that 2 nodes in California may talk through a node in Australia.
Reviewers are responsible for not just pointing out issues, but also providing (at a minimum) some form of direction, or (more ideally) one or more explicit suggestions as to how to resolve those issues.

This is an essential component of a productive code review culture.
This experience is at this point decades out of date, but when I was attending middle & high school in a moderately rural area, a fair amount of our bus drivers were teachers & janitorial staff.

(The former came in very handy when doing extra-curriculars - our debate coach could drive us to meets without incurring the cost of an extra adult to drive the bus. Of course, given that debate meets start early and finish late, and we still had to do the drive, in practice it meant that a very sleep-deprived and stressed out person driving somewhat erratically.)
> Live components are best avoided if possible, in my view. The documentation is quite bullish on them, presenting them as just another thing alongside functional components, but I think they should be more of a last resort, with functional components used whenever possible. This is because live components immediately raise questions about what is the source of truth for the state (view or component), they are harder to test given that they are stateful, and they have some warts like inconsistency in how messages have to be passed depending on whether the live component is a child of a view or another live component (although I know this is on the roadmap to be fixed).

This has been the single biggest issue we continue to face in organizing our components. The way to communicate between live views, live components, etc, still feels inconsistent, incomplete, and leaks abstractions everywhere. In some places, between handle_event (which is sort of a live_view thing), handle_info (which is a genserver thing), send (elixir/erlang thing) and send_update (which is kind of a live view thing, but requires a DOM ID, and you handle it via "update", not via handle_*), we end up having tight couplings in code, not fully understanding when to use which one, or having to pass a bunch of extra attributes that only send_update would want (module, DOM ID, etc).

Given that PubSub is baked in, it seems like it could be a really powerful abstraction for all the message passing between components, with elegant namespacing between components, their parents, etc. You would just handle_event() to a pubsub topic and stop caring about who in the child hierarchy threw it.

Somehow coming up with an elegant event abstraction that combines send_update, send, etc would take live_view to the next level as far as maintaining larger groups of components and their interactions.
Helpful tool, thanks for sharing!

What do you mean by "networking" tag?
Not good.

I've seen people rapidly shift to career protection, wagon-circling, and empire building. I've seen more competition for leading junior people since there are fewer new hires coming in. But mostly I've seen the company become more cynical towards executives.

Depending on your feelings on AI, you might see new excitement and opportunity opening up or further meddling and messy product management in the future. I'm not sure where I land here yet.

I think Google is still a very good place to work. Pay is high. WLB is great (at least where I sit). Tooling is very good. I haven't had any asshole managers or directors. But I definitely find it hard to get people excited about taking a big risk or maintain a project that is important but somehow misaligned with what your VP cares about.
The politics of entitlement plays large everywhere in this country. Trumpism is a movement largely based around entitlement. Rural people who believe they're the "true americans" tend to demand the most relative to how much they put in.
Prop 13 Is Not Passed on to Renters
Edge (sorry)
I've always thought that the suffix "Scientist" on any title in a software company was likely more hype than reality. Unless the company is really doing science.