skysight-inc/HackerNews huggingface dataset:
Even many operations performed on a linked list will not be tail recursive if you do them naively. For example, a naive sum function might look like:

const sum = (node: Node): number => {
if (!node.tail) return node.value;
return node.value + sum(node.tail);
}

Even if tail call optimisation were a thing, I'd still expect most recursive functions to be written in a non-tail-recursive fashion, and only later optimised to be tail recursive. But in practice, it's already possible to rewrite those functions in an imperative way when they do become a performance issue.

So in practice, I can see why implementors don't prioritise TCO in Javascript, coming from both directions: there's not a lot of free wins available, because tail calls are rarely the most natural way to express a recursive algorithm; and even if you want to explicitly optimise for them, there's already plenty of ways to optimise an inefficient recursive algorithm if that's necessary.

That said, I can see the value a lot more in a language that's being used as a compilation target, which it probably made more sense when there was more buzz around compile-to-JS languages, and why it makes more sense now with WebAssembly.
https://peps.python.org/pep-0554/ "Multiple Interpreters in the Stdlib"
Osmo oil is the best. Highly recommend it as well.
I was thinking of giving AutoGPT a try to convert SQLite (or Redis) to Rust, because it has a lot of tests anyways, so it would be fun. I'm still waiting for GPT-4 API access though :(
Concur. E-book pricing and licensing conditions are so out of tune with the cost of distribution that it is easy to see piracy as a form of protest.
Or, you’re getting cranky because you’re hungry.
Also the turbidium from total recall
To answer your question, we need more context, that is... what do you want to do when you grow up?

In the tech field you need to understand that the language is only half of what you need at best. You'll also want to know something additional, like JS & React, or a framework like Django, etc. For example, C++/maybe ASM if you want to be a games programmer, PHP + Laravel + Postgres if you want to crank out database-backed apps fast, Go if you want high-performing web apps, etc.

Python wins by default because it's taking over, but lots of people know Python. My strategy when I was your age was to choose a trajectory (game programming, compilers, whatever), then try to get better than 80% of my competition in that area.

Finally it's smart to develop a third strength, like writing good articles for the trades, public speaking about your technological strength, SEO, social media in your chosen industry, etc. This will make you attractive to many more employers. These days most people have to wear many hats.
We have more brown people for more reasons to kill than the “war on terror”

I agree a lot of advancements came from the military but what an absurdly inefficient way to achieve that. Most of the military expenditure is on personnel and infrastructure. Military R&D is a pittance, not directly released to civil use, and inefficiently allocated. Even DOE investment is primarily towards war making and nuclear arsenal upgrade, research, and maintenance. The primary DOE fusion research is done as a slight of budget for nuclear war making rather than energy generation. The spin off tech from defense spending is a drop in the bucket of what could have been achieved had that funding been open civil research towards strategic goals like sustainable energy independence.

All this said I’ll grant that the relative global stability imposed by the US on the world has ushered in a period of discovery unrivaled by simply providing a world where global societies weren’t being repaved every 10 year, with the repaving being contained to proxy war zones. This is not without immense value - and almost certainly staved of many very bad scenarios. The trick will be maintaining that stability over the next 50 years. It’s not obvious to me we can sustain that. But what we have had was bought with that defense spending.
Because most engineers document, in English and great detail, the designs of their systems. So the English already exists and will continue to. Taking this English and turning it into code will be the job of AI, not a programmer.
The “problem” is that you can’t embed trackers, images for tracking, and other marketing crap.
Congrats! Looks really interesting!
> that's...not at all what i'm talking about. If you're publicly rude to your boss you can expect to be fired from most companies.

That's fine, but you can't do that and claim to be a free speech warrior at the same time.
Yes, this will be a major catastrophe if we don't plan ahead.

I think it's coming one way or another.

For an increasing number of us, the costs of automation will be lower than the cost of living. It will happen quickly. We absolutely need a serious safety net or it will be chaos.

And we need to discover another way to find meaning in what we do, or else it will be a mental health catastrophe.

I have thought on this long and hard and am confident I can find meaning in my life even if a computer can do what I enjoy more productively. It will take getting used to. It won't be comfortable. It is necessary.

It will be very bad if only a tiny fraction of people have financial security.
This is just my opinion.

The thing is - our ability is limited to our understanding. AI maybe already doing things we do not understand (which could be classified as AGI). Thinking of it like how dogs do not have the cognitive ability to understand the concept of the "future" or tomorrow - There is a good chance AI would already be doing things which are beyond our cognitive ability (including the smartest people working on the tech.)

But I am sure if we let 2 fairly good LLMs talk to each other - They'd shortly start talking things we feel are hallucinations but the 2 LLMs would understand and take it further.

Again, this is just my opinion and I have never worked on any LLMs. So an outsider.
Layers vs. Silos, a tale of 2 microservice architectures
A comparison of 2 extremes of microservice communication architecture: all-sync (layers) and all-async (silos), their structure, evolution, trade-offs, and the kind of rabbit holes they tend to push you into.
You can usually coax GPT to a finer degree of calibration for any specific task through more logic-engaging tokens. For example, if you said, "we are going to play a game where you count how many words we have used in the conversation, including both my text and your text. Each time the conversation passes 200 words, you must report the word count by saying COUNT: followed by the number of words, to gain one point..."

Specifying structured output, and words like "must", "when", "each", "if" all tend to cue modes of processing that resemble more logical thinking. And saying it's a game and adding scoring often works well for me, perhaps because it guides the ultimate end of its prediction towards the thing that will make me say "correct, 1 point".
I beg to differ. Nothing more miserable than debugging email templates with tables nested to the x-th degree.
Bing exposes both chat and search via a common webpage afaik. Not sure if there's been a notable drop in overall search volume.

> LLMs are basically search 2.0. They will eventually swallow search and can and will do so much more. Especially at the rate the technology is progressing.

this is a possibility but it is far from clear that it is so.

> Especially at the rate the technology is progressing.

Like self-driving cars progressed?
How do national chains of fabric stores exist? Your bubble is not representative.
What is regretful about that?
How what? Salaries have been adjusted as frequently as hourly in places that experienced hyperinflation.
information must be free man
dest$ nc -l > file

src$ nc $IP_DEST < file

On some installs of netcat you'll need to specify a port because they don't have a default one (typically 31337). Look at the manpage to see what is the case for yours.
There is actually clear difference between violent and non violent people in our society. Or any society. Some people won't beat you up, be ause they have self control and values.

Other people will beat you, because they have opposite.

Do not blame yourself for thinking archeological evidence has anything relevant to do with the actual topic at hand. It does not. And plus, it does not prove or disprove what I said. You just misunderstends what archeology can or can not prove.
I think this is BS. I've lived around the world and only in the US there's an expectation to tip. Everywhere else you don't tip unless the experience was overwhelmingly positive
It also implies the market can handle, and needs, the scaling. In some industries, like say food services, the problem isn’t lack of people.
> what do you do with that last 2%?

My plan when I finally purchase a self-driving car is to get 800 people from Utah to help me navigate for that last 2%
Interesting. It's more like 0.5x to 1x of the paperback in my experience, buying mostly English books on Amazon Germany. Sometimes considerably less, especially for older books, eg I just bought a fantasy trilogy from the 80s for like 2 bucks. And, like I said, real convenient.

Also I'm talking about "buying" an ebook as a consumer, the licensing model for libraries might be terrible for all I know. It's certainly still pretty terrible for most library members. I imagine digital lending is terrifying for the publishers.
Sinter Stitched Dielectric Fly Ash Foam for Use in Perpetual Flight Platforms
Getting closer, maybe you could do something with it.
Your immediate and slightly extended circle doesn’t equate to the entire planet. In the UK for instance, it’s closer to 50/50.

Also, much like Windows on the desktop, the email side of things is going to be skewed by business use; I would wager (without the data to hand) that iPhone and iOS is dominant in business, due to the perceived notion of better security and similarity across devices. Though the majority of mailflow globally is spam, or at least greymail, business email outweighs personal use of email. It’s also likely that the majority of Android handsets are merely used as dumb-phones based on engagement. Based on app metrics, iPhone users are more likely to use their device. That is why iOS mail in particular has the market share.
> ‘Probably because it has nothing to do with the article.’

Assuming you have read the comment, it is totally relevant to the article with AI (in this case LLMs or GPTs like ChatGPT) still not being able to transparently prove unsolved mathematical problems or even generate such solutions with and without supervision, since even if it was supervised, it will still generate it incorrectly and as with its black-box nature, it cannot reason or explain transparently.

The fact the those teenagers were able to create and derive this proof without regurgitation and withstood the scrutiny of experienced mathematicians tells us that it requires creative thought with transparent reasoning in the field to go against the books written by experts that once said it was ‘impossible’ until proven otherwise.
Rob Pike explicitly stated that he really isn't into generics,

https://youtu.be/RIvL2ONhFBI?t=1018 (starts here)

https://youtu.be/RIvL2ONhFBI?t=1892 (he expresses his opinion here)

We haven't made our little heads out of nowhere.
When I was lonely and isolated, I did started to think differently. Not out of spite, it just happened automatically. We adjust to each other all the time. We change behavior to match others. When we talk with people, our opinions become more alike. But when you are lonely, you change in own way and become out of sync.

That is why it is difficult to reenter socialization after long loneliness. There is gap between you and others, you feel lonely even if people are there. It took years to fully get back and for a while I thought I never will.
That works on Windows where alt+tab cycles between ... er, windows, but not on macOS, where CMD+tab cycles between apps. As another commenter said, the 'shortcut' feature (e.g. for PWAs) is a workaround.
I can imagine that the way most people tend to cook, that getting food into the grooves of the slide rule are a major issue.
Wow! So this is actually a drama I had a secondary role in.

A few remarks:

1. Team: Nitzan (the blog author, and an awesome dude!) was at the time the Production Engineer monitoring the top-line capacity metrics. The Java heapdump tooling was hacked together by E.A., with some tough bits by A.S., who's a force of nature. The bulk of the mitigation was carried out by Y.B. over several months. I was the person who analyzed a couple of memory dumps and framed URL strings as a worthwhile 80/20 goal.

2. The main difficulty in the mitigation project was that the pathological strings were accessed over hundreds of callsites using some semantics like

semanticallyUsefulURL = decodeURLString(urlStoredInStringForm)

What Y.B. ended up doing was

2.1. A lengthy build-up very carefully constructing an API to represent URLs in as compact a way as possible, and plugging it in where convenient,

2.2. Carrying out a massive automated rewrite at the source level ("codemod"), which is possible in Java but not for the faint of heart. I think he used some JetBrains tooling to get that going. I consider his work a tour de force.

I vaguely recall there being some modest CPU improvements in the process.

3. Organizational dynamics: the codebase was originally written by very competent people who did not work through that specific detail because it was not important for their original use case. However subsequently the code underwent several years of almost solely rewarding improvement in end-user metrics, leading to an overall inadequate state that was hurting the organization as it was hitting hard scaling limits. In fact, "engineering excellence" was not even a category for recognition at that time. In this climate I could not find my own voice as a SW professional and chose to quit after a little bit more than a year.

I have a pretty good memory, I'd be happy to give more context if appropriate, just ping me.

(Edited - added one more due prop!)
> There's just not enough uniformity of content.

There's much more uniformity than there used to be. Creation tools now import and export glTF. That's a neutral format and is becoming the industry standard. Until recently, people were trying to move content around in proprietary formats such as .obj and .fbx.

There's NVidia Omniverse, which is a way to link together multiple tools on the same model in real time.

Portable behavior is tougher, although the USD people are working on that.
The coming thing there is Unreal Engine's "verse", but it's too soon to see how that will work out.

A big problem now is importing some high-detail model and getting terrible performance. Level of detail generation needs more automation.

3D creation tools are hard to use. It's a really hard user interface problem.
The professionalism of a given postal worker, unfortunately, varies considerably from what I've experienced, I've had the pleasure of interacting with exemplary workers and the bad apples.

For something like this I don't want to base it around the bad apples, because this really is an example of the postal service being exemplary.
That is not a bad theory, but I can't tell you the difference when I try using one of their shavers vs the store brand ones I usually get.

I also cannot tell the difference between that and just buying safety razor blades, though there is a huge advantage (for me) in the pivoting head.
You will have somewhere to go. You can become a rich person’s serf and they give you food and an allowance and a place to live. It’s like childhood.
Just because kids aren't taught how to write cursive doesn't mean they can't still read it. Cursive letters are no harder to recognize than any other stylized font; the only potentially weird ones are "r" and "z".
In european clothing there is clear visible trend to 'locally' manufactured clothings. A lot of european brands moved to UK or Turkey.
It can be good or bad.

I read one analysis of those who saved/hidden Jewish people during WWII. They tended to be socially isolated people, a bit outside of society. That is what allowed them to not fall to group think and to overcome fear. (The analysis was done by some Jewish institute).
Amen. I live in the Czech Republic and they still teach it here as standard, and everyone writes that way, but I just can't read it at all. Such a pointless thing in the 21st century.
> Strip your design of all color

It's harder than it sounds. If you have total color blindness, your mapping between colors and values might be entirely different from most people, or even other people with monochromacy.

Color blindness in general is a pretty wide range of perception abilities. There's a classification but it's fairly rough. It's usually close to impossible to design something that makes sense for all colorblind people at the same time, because the types overlap heavily.
Many JSON parsers require the whole JSON file to be in memory. Parsers that allow parsing in streaming manner are the exception.

I only found jsoncons to work reliable but at the cost of speed compared to something fast like rapidjson. And even jsoncons might have the problem that large strings have to be fully in memory, i.e., if someone has the fun idea to store a 1 GB string inside a JSON, then you still have a potential out-of-memory event at your hand.

There are other attempts to fix this problem with the jsonl format but that format feels so ad-hoc that I'm not convinced yet. It stores one JSON object per line. Of course, this comes with its own problems such as each JSON object potentially still being unbounded and, now that lines are used to separate JSON objects, you cannot format those JSON objects in a human-readable way anymore.
Also, the first time I encountered a file like this, it simply had a .json extension and I was wondering why every JSON parser failed to parse that file. Because it isn't valid JSON and should have a separate extension.
If it's so easy for a human to fix it, I wonder how long the pipeline is between feeding that as training data into the next iteration of the OCR, and getting it deployed live?
Did I strike a nerve? It's unfortunate that so many seem to be under the impression that "human readable" is really an euphemism for "like English" and are narrow/closed-minded enough to not consider the possibility that people can learn just about any language with enough exposure and a bit of effort.

4f 6e 63 65 20 79 6f 75 20 73 74 6f 70 20 6c 65 61 72 6e 69 6e 67 2c 20 79 6f 75 20 73 74 61 72 74 20 64 79 69 6e 67 2e
And as a postal service, writing off 4.2mil letters is absolutely unacceptable so thus we must dedicate the resources to mitigate this tail risk.

This is a common pattern, and why I think AI risk is overstated…unless we suddenly decide to start wholesale writing off the consequences of tail risk.
Who's "we"? The West? The US? Humans? If it's the latter, we have had (and have) better - check out the Islamic financial system. It does have certain "capitalistic" principles (competition, no taxation by the government) but also places red lines against immoral practices. Best of all worlds basically.
With all due respect, you are talking about everything, but never had any objective comparison where the RC-tracing GC were the culprit.

> RC is super cheap. Seriously. You can do about several billion of them per second. Your malloc/free call is going to be more expensive.

Yes, and it is completely irrelevant. Good tracing GCs can use a thread local bump allocator, and it can even defragment it automatically later.

> Sure. Atomic counters are relatively expensive. But I’m good designs there’s very few of them. And they easily show up in hotspot

That’s just false, unless you are using something like cachgrind or so — any sane compiler will inline the 2-3 instructions of counter increment/decrements. It is the stereotypical “death by thousands cuts”, never showing up in profiling.

> Most languages that use RC actually avoid most memory allocations/frees by leveraging value composition instead of referential ownership.

I’m sorry but this has absolutely nothing to do with the topic here, there are plenty of tracing GCd languages that can do that as well, like D, Go, C#, Nim just from the top of my head. That’s just a completely different axis.

> I did actually provide proof by the way. Apple’s phones use half the RAM as Android and are at least as equally fast even if you discount better HW

That only proves that RCs use less memory, which as has been pointed out in the thread many times is one of its few positives — it does make sense to use in a mobile phone, but then you finish off with “ big hyperscaler is unlikely to be using Java for their core performance-critical infrastructure” which is just bad logic, and straight up false. Half of the internet literally runs on Java, with heap sizes going up to the terabytes range. Alibaba, many part of Google, Apple’s literally every backend system, Twitter, whole cloud providers(!) all run on the JVM.

> You only do this when you need to share ownership

That’s like.. the point of garbage collection algorithms? Otherwise you why don’t you just randomly increment a counter here and there?!

> Not only was the initial version faster than the equivalent Java code (not surprising since c++ will outperform due to no auto boxing, at least at the time

You literally give the reason why it was faster — you are comparing a sequentially laid out data structure to one of pointers. The effect size of that will trump any concern about which GC algorithm is used, so your point doesn’t apply here at all.
In the 70s I worked in the mailroom of a college that had 1500 teachers and administrators whose departments I had to learn (for $3.75/hour). We'd get those big plastic boxes full of mail, and just know that Garrido was in Athletics, Loftus was in Psychology, etc. We'd throw the mail in the slots, then rubber band them together, pack into the electric golf cart, and deliver them. I still remember dozens of names and their departments. Also Dominique, one of the receptionists in Social Studies. Sigh.

Anyway, my cousin lives in a small Virginia town, current pop. 38,000 but closer to 5,000 back then. She has a slightly unusual first name. About 25 years ago I guessed it was rare enough that whoever threw mail in the town would remember it. So I sent the mail to Dorothy, Gloucester, VA (not her real name). No street address, no zip code. It got to her with apparently no delay.

I tried the same thing about 5 years ago but included her last name and the zip code for Gloucester. It never got to her, which makes perfect sense.
1. Can't you just use the style inspector in your browser?

2. Imo, Grid is a much easier to read alternative to most uses of tables.
I couldn't be happier about it. It's annoyed me ever since the third grade. And every time someone tells me "your signature must be in cursive". It's nearly as bad as daylight savings time.
Ok.

I might have missed something but why can’t an ESP32 or some other microcontroller be used as a hardware tool to more easily construct low level frames?

The ESP32 would still be connected to a Linux machine to control it.

I’m not a security researcher so I don’t know how this work is normally done. My simplistic take is if the OS and drivers make some of this hard I would look for a simpler environment that I had more control over.

Or it that too naive an approach?
I went in deep after discovering this playlist on the theory of litterature, doing the recommended reading and thoroughly enjoying the journey. Had to drop it midway or some years back but I really do want to get back to this topic. Maybe now is the time!

https://youtube.com/playlist?list=PLD00D35CBC75941BD
Sorry man, disagree with you pretty heavily

> There is no chance of hyperinflation even if they pump $50 trillion into economic activity

Good lord. Buy Bitcoin guys, this is what some people really think..