skysight-inc/HackerNews huggingface dataset:
Even if tesseract accuracy is low, if the tesseract result in addition to the image is then passed to the LLM, it can result in a much more accurate OCR.

For example, GPT4 with some vision capability would be able to fill in the incorrect OCR with the additional word co-occurrence understanding.

I've tested this approach with purely text LLM to correct OCR mistakes and it works quite well.

Also note that in some newer OCR pipelines that don't involve LLMs, there is a vision component and then a text correcting model that is in some ways similar to some forms of spell check, which can further improve results.
A Bayesian Treatment of the German Tank Problem
It disappeared because people disagree on whether to upvote or downvote comments, or other similar signals of disagreement.

When the HN algorithm sees signals like comments receiving large numbers of upvotes and downvotes simultaneously, or long strings of rapid back-and-forth tit-for-tat comments between posters, or etc, it interprets those signals as "this post is controversial." HN explicitly and intentionally downranks algorithmically identified controversial topics in order to reduce the odds commenters behave badly (which is disproportionately more likely in controversial topics).

The HN algorithm is intentional about a primary goal of driving well behaved discussions, even knowing that means important controversial topics getting downranked.

The fact that the disagreement here is likely centered around whether gimp is good or bad is irrelevant to the algorithm. It doesn't want people to get in the habit of behaving badly on HN, regardless of the topic.
I hope someone recovers that fin. It kept working despite all the damage it took.
I think you have to make a distinction between transformers and neural networks in general, maybe also between training and inference.

Many/most types of neural network such as CNNs are well understood since there is a simple flow of information. e.g. In a CNN you've got a hierarchy of feature detectors (convolutional layers) with a few linear classifier layers on top. Feature detectors are just learning decision surfaces to isolate features (useful to higher layers), and at inference time the CNN is just detecting these hierarchical features than classifying the image based on combinations of these features. Simple.

Transformers seem qualitatively different in terms of complexity of operation, not least because it seems we still don't even know exactly what they are learning. Sure, they are learning to predict next word, but just like the CNN whose output classification is based on features learnt by earlier layers, the output words predicted by a transformer are based on some sort or world model/derived rules learned by earlier layers of the transformer, which we don't fully understand.

Not only don't we know exactly what transformers are learning internally (although recent interpretability work gives us a glimpse of some of the sorts of things they are learning), but also the way data moves through them is partially learnt rather than proscribed by the architecture. We have attention heads utilizing learnt lookup keys to find data at arbitrary positions in the context, and then able to copy portions of that data to other positions. Attention heads learn to coordinate to work in unison in ways not specified by the architecture, such as the "induction heads" (consecutive attention head pairs) identified by Anthropic that seem to be one of the work horses of how transformers are working and copying data around.

Additionally, there are multiple types of data learnt by a transformer, from declarative knowledge ("facts") that seem to mostly be learnt by the linear layers to the language/thought rules learnt by the attention mechanism that then affect the flow of data through the model, as discussed above.

So, it's not that we don't know how neural networks work (and of course at one level they all work the same - to minimize errors), but more specifically that we don't fully know how transformer-based LLMs work since their operation is a lot more dynamic and data dependent than most other architectures, and the complexity of what they are learning far higher.
Depends if those enjoyable experiences pay the mortgages of the developers.
https://www.newshub.co.nz/home/new-zealand/2024/03/mobile-ph...

Hmm... seems like they're enforced here? Perhaps we need to up the fines though.
I don't know why I wrote an entire proof outlining why first-order PA cannot rule out infinite numbers, if you just ignore it and insist on your misconception. The set of finite numbers is undefinable in the language of first-order PA, which is why first-order induction isn't enough.

Read a textbook, these are well-known facts. Here's a free one that is quite good, chapter 3 is relevant: https://milneopentextbooks.org/a-friendly-introduction-to-ma...
Am not GP, but my experience is that the deeper I know a topic, the more uninformed and slanted any reporting / documentary / media article becomes.

It’s probably natural, because (1) journalists only have a given amount of space to convey an idea, (2) need to capture a non-expert audience, (3) are usually working across a broad range of topics.
In retrospective, I think it's obvious that Go's decision to have package and variable names be in the same namespace was a mistake. It is the main reason why people overuse single letter variable names, and have debates such as the one in the linked post.

I am guessing that using a different operator (e.g. rate::NewLimiter()) was deemed inelegant, but it would have avoided a whole set of problems.
Its faster because its C (2010)
I think they're referencing the skull, not the brain tissue.
OCR is hard https://www.vice.com/en/article/gvy4gb/one-mans-david-and-go...
UGI Leaderboard – Uncensored General Intelligence
The embeddings do not offer the level of fidelity to recognize fine details on an image, hand writing for example.
In context, I believe interpretation number 1 stands on firmer ground than yours.

In the previous paragraph:

> Unlike his wife, Hemingway never went ashore at Normandy. On June 6, all he could do was watch from a landing craft as American soldiers fought their way onto Omaha Beach.

> Even though Gellhorn scooped Hemingway, his story ran first. “Voyage to Victory,” proclaimed the cover of Collier’s July 22, 1944, issue. The article identified Hemingway as “Collier’s famed war correspondent” and included a photo of the whiskered writer with Allied soldiers.

Only then does the section conclude with the line in question

> No mention was made of the fact that she was the only female journalist on the ground at Omaha Beach.

You can argue that the author just finds these and other facts interesting, and nothing more. I think that is ignoring the clear subtext present in the writing. The author is certainly making the case that she was not given the recognition she deserved; either because of her sex or her proximity to Hemingway. Because the author himself invoked her sex in the final line, I am inclined to think the former.
I disagree, I think multiple inside sources is plenty enough evidence to say that an organization is “eyeing” something. It's not a very substantial claim.
But that behavior badmouth the game publicly and seek financial repercussions, as written, are indistinguishable from what I'd expect someone who was wrongly banned by an automated anti-cheat system with all appeals met by robo-denial.
The question would be how much data are you sending on how frequently. You're still advertising performance. Even so, go ahead and setup shared memory between your processes. Better to explicitly share part, rather than implicitly share full.
Misses one other important point: if you search for a common name you will get results from all over. If the name isn't a common noun any search engine can find relevant results.
What an absolutely pointless gripe. And they wrote a whole blog about it...

Alias the package name or change your variable name.

Or don't use the package at all if the name upsets you that much.
It’s a terrible name, period. A substandard piece of software already has enough issues with marketing itself. Naming it with a word that means “cripple”, no matter how often it is used, is just such a poor decision that it’s not really surprising that no one cares about the app.
But they weren't rockets.
C++ programmers have had this problem in win32 since C++14 when they added std::min and std::max, whereas MSVC has offered those as built in functions since the 1990s
Counterpoint: His variable name of rate isn't really descriptive, which is almost worse than the package naming complaint.

What kind of rate? Time or volume or...something else entirely? Otherwise, the variable will be scoped within a function and go doesn't really promote global variables as a best practice.
It’s probable that there is a separate vision encoder which projects the image tiles into the distribution space of the text tokenizer a la CLIP/LLava
Agree with it or not, it’s recommended by the docs:

> It's helpful if everyone using the package can use the same name to refer to its contents, which implies that the package name should be good: short, concise, evocative. By convention, packages are given lower case, single-word names; there should be no need for underscores or mixedCaps.

https://go.dev/doc/effective_go#names

Maybe the convention of single-letter variable names was meant to play nicely with this too (again, agree with it or not).

Can’t say I really care about this issue that much, it’s occasionally a slight nuisance, but show me a programming language that doesn’t have the occasional slight nuisance.

An explicit scope resolution operator would be a better solution than forcing package name changes, as called out by another commenter. Maybe that was left out to keep it simple? If anyone knows of a Go blog post about the decision to omit this feature I’d be curious to see it!
Better is subjective. This version has no way to easily list sessions. Depends on what you want :)
I am confused why this appears on NIH.gov
ITS POISON IVY! Do not breath in that stuff! I ended up the hospital with my face all bloated. No kidding. Japanese harvest from the urushi tree containing urison the irritant in poison ivy! I think they get off on shipping this stuff to American's laughing at them.
Exactly this. They should be using a very stripped-down Windows IoT build in kiosk mode. Even for this outdated (and insecure) generation it looks like they're not actually using the Embedded version of Windows. While I don't think that had a named "kiosk mode", there were lots of things one could have done to make it not just crash to a regular full-featured desktop.
This has long been a problem with win32 and windows.h. Search for "NOMINMAX". They're preprocessor definitions, so you can't even shadow them.
They address that in the article, saying "but given this will be such a common problem for all the package's users, why make them do this?"

I agree, I don't think the default for a package should be a footgun. Or in the words of Michael Bolton "why should I change? He’s the one who sucks.”
It was adapted from an interview which took place with Der Spiegel, so I guess it was originally in German, although I haven't found the original. My guess would be there are less complicated translations, but I might be wrong.

Regardless, I think you're right, the target audience of this as it's written probably would not have issues understanding it.
I agree but I think you meant "Virt Manager"? afaik libvirt is an API, not even a CLI and definitely not a full GUI. For a CLI, virsh is your guy.
> min and max are names I had used for variables and functions all over the place

Shadowing is better than the very questionable decisions made by whoever wrote Windows.h...

#include <Windows.h>
#define NOMINMAX // comment out to break
#include <algorithm>

auto main() -> int
{
return std::min(42, 1337); // may break
}
In a country with free university tuition, I agree.

In a country with paid tuition, universities need to provide education that provides the fastest path to paying off student debt, otherwise they are doing their customers a disservice in life.

Far too many programmers exit from university without the skills that industry needs. If universities are places for free learning that's okay, but if you're paying $$$ for such a degree and been saddled with a mountain of debt then I think you've been robbed.
Assuming it's random.. it isn't like every divergent feature in nature is advantageous. My own theory is a lot of the neurodivergence stems from generational shifts in refined foods, fats in particular and especially the low fat efforts in the 80's that carries to today. That affects hormones, that shifts reproduction... and many shifts tend to amplify generationally.

Just my own take on this.
We’re an online platform dedicated to DJs, licensed with free and paid tiers. We mainly do ondemand streaming but added live in 2020.
Absolutely. I personally prefer to use both together.
I once worked under someone who felt strongly about us importing modules instead of classes. So instead of

from sklearn.feature_extraction.text import TfidfVectorizer
tfidf = TfidfVectorizer()

we were told to change it to

from sklearn.feature_extraction import text
tfidf = text.TfidfVectorizer()

to be compliant. Guess what variable name everyone used to store document text in every file.

Until this article, I always blamed this on the decision to blindly import modules instead of... well... whatever makes sense. Now I'm realizing if we all avoid common names for packages then this whole class of issue goes away.
FWIW, all my internal packages are suffixed with an x.

logx, errorx, typex, metricx...

They read just like "s" so it reads like the plural of their word, but conflicts are much rarer (there's plenty of "types" packages).

It also tells me which package is mine or third-party immediately.
Symbolic language in paintings is always so interesting for me to discover
Calling it a single conflict is bit of hair splitting, japan had almost nothing to do with germany, especially after war started. Those were 2 separate conflicts happening at the same time.
Five Major Upgrades That Make All the Difference in Aftershoot Edits 2.0
Same here. Only if the original author didn't abandoned the project.
> Variable names in Go are camel case, so ratelimit will never clobber a variable name. Even if it that wasn’t the case, having variables called rate, limit, or rateLimiter is plausible and even likely, but ratelimit? Not a thing.

Not to say it invalidates the whole article or anything, but in what world would "ratelimit" never be used as a variable name? That still feels like a fairly reasonable name for a variable if we're ignoring the camel-case requirement.
The Windows 11 UI is slow. The Settings app in particular is stupid slow.
Autism is definitely not inherited?

Autism being "too broad" is why it doesn't have a genetic cause?

Autism's nomenclature not being descriptive enough is why it doesn't have a genetic cause?

Autism not being as debilitating as DS is why it doesn't have a genetic cause? (developmental logic aside, are you familiar with Type 2 and Type 3 autistic individuals?).

Extra dings for not for over-use of CS analogy, "unwarranted fixation", and "we no longer live in the world".
I wonder if this only counts for variable names in English? For example, if you're making a package that you would name, 'rate' perhaps translate that to a different language before naming your package. Examples:

tasa - Spanish
uku - Hawaiian
sats - Danish

...or just be clever and call it something like 'irate' (the Apple version? haha).
It seems to me that many publicly traded companies are increasingly showing user hostile behavior the last 24 months.
> Until this article, I always blamed this on the decision to blindly import modules instead of... well... whatever makes sense. Now I'm realizing if we all avoided common names for packages then there would not have been an issue.

If your solutions depends on others to "do the right thing", it often isn't a viable solution.

However, how you import something in your own files, is something you most likely control.
I would assume it has a "mode" token where it switches between text/image (and now audio), or you'd have to try to maximize the number of reserved tokens between multiple modes. GPT-4o did go from 100K to 200K vocabulary, but as far as I understand all of that vocabulary is in use for text (reducing the token cost for non-English).
It was the first time the booster (bottom) and starship (top) had been mated together.
I feel like this has intensified over the last decade or so. Baby Reindeer, Bohemian Rhapsody, Rocketman and a few others showed things fairly far from the truth. But why would anyone even bother doing it that way? It's not like Bohemian Rhapsody didn't have great, true stories to tell. On the other hand if you like a concept of something that happened, Big Sick did it better and just told a new story inspired by the events. I don't see anything gained by pretending some story was more true then it really was.
The author mentions this in the article, that more than 170 tokens of text can be pulled from an image.
I love Guix.

System Crafters has a video playlist that goes more in-depth: https://youtube.com/playlist?list=PLEoMzSkcN8oNxnj7jm5V2ZcGc...
I have yet to see how I stated that Windows defaults are more ergonomic. And your limited awarenes ignores the fact that ergonomic considerations were not properly taken into account in the design in the 80s just like now there are still plenty of ergonomic issues
I would pay anything to stand there.
There is no definition of AH anywhere, I can’t tell where it is coming from. And $13, what is that about?

AH is the high byte of AX a 16 bit register in the 8086. AL is of course the low-byte of AX.

$13 is the hex number of the interrupt used in MSDOS.

What is AH or the Intr() call?

AH is as above. Intr() call is a Pascal call (was it Turbo Pascal, I wonder) to the 8086 interrupt code in a PC.

Yes this knowledge is arcane, and Yes, you 'just have to know it'

That's because this was the only way (Such a kluge!) you could interface the hardware to a "high level language" like Pascal that didn't have that capability built in.

It would probably have been better to use 8086 assembly with MSDOS system calls than Pascal as it was intrinsically able to interface with the hardware where Pascal was not.

But when you're a learner, you do what you can. Even if it turns out to be 'the hard way'.

We all have stuff that lives rent-free in our heads. In my case I can look at a lot of 8-bit hex numbers and know what machine instructions they represent in 8080/Z80 code. Enough of them to look at a hex dump of 8080 machine-code and know roughly what is supposed to happen.
I’m trying to free your mind, Neo. But I can only show you the door. You’re the one that has to walk through it.
Technically speaking, it still could. It'd just have to implement it itself via strings. But yeah, it probably doesn't do that (I can't speak about the implementation, I'm entirely uninvolved).

Though I've never actually encountered any errors because of that as my usecases are always pretty basic. Things like magic select, transparency, layers etc all work good enough that I haven't used anything besides this since I found out it ... sometime between 2015 and 2019.
Reminds me of my experience learning microcontrollers last year. You strip away many of the layers of abstraction and remember just how fast computers truly are and how much work they can do every second.
Not to diminish the value that a DJ brings for music, but I think if the labels took less than 70% then Twitch and the DJ is ripping them off.

At least, when you consider anything in excess of a 30% platform fee, the amount Apple, Google, Steam etc. consider to be reasonable, price gouging.

From the music creators perspective, a DJ is a platform showcasing their music, so it makes sense they'd pay the DJ some fee.

If it's less of a service platform, and more like a retail store, than taking a larger amount like the 50-70% might be reasonable, but it feels like a bit of a stretch, as retail stores have very high overhead costs in comparison.

I wonder what the real calculation was to get to that 30-50%, and if the DJ's really do consider it to be a lot.
That could be done base on metadata like description, tags or categories.
It's 4-dimensional chess, you see: You can't recruit a replacement because the replacement will be blamed for the inevitable return of the share price to the auto industry comparables, so by appearing to throw a tantrum and diverting attention to himself, Elon is clearing the way for a move he planned all along. Y'all need to recognise genius.
Totally agree, it’s a bit of a strange design choice. I’d be curious to read about the tradeoffs made here, as it must have come up while developing the language.
Perhaps images aren’t tokens at all… and 170 tokens is just an approximation of the compute cost.
I don’t think immigration issues were as bad then.
I could definitely see Musk getting into Make Pan American Great Again.
I think it only connected with DJ Category
You're trying to get people to do something without their consent. It's fundamentally coercive. Different in degree, but not in kind, to closing a road and routing traffic through your restaurant's drive through lane.

Additionally, we have institutions that (allegedly) function based on rational decision making by agents with access to accurate information (markets, democracy, etc). Investment in advertising beyond simply making information available to those who seek it erodes the efficacy of those institutions. It's like putting stickers on your windshield... Even if their content is not objectionable, you're going to end up less safe because you can't see past them.

For a concrete example of the latter: education outcomes are trending poorly, many teachers blame phone addiction. But if you look at what those students are doing on their phones, it's engaging with some advertising platform or another. We've created an environment where good dopamine hygiene requires skillful evasion of one of our most well funded industries. We're surely shooting ourselves, and each other, in the foot here.

If polluting the physical world with hazards waste is unethical, than surely there is something equivalently unethical regarding information.
> The nuclear submarine Kazan and three other Russian naval vessels, including the missile frigate Admiral Gorshkov, an oil tanker and a salvage tug, will dock in the Cuban capital from 12-17 June, Cuba’s ministry of the revolutionary armed forces said in a statement.

(Also stated: none of the vessels have any nuclear weapons. Though obviously "nuclear" is prime clickbait, from The Guardian's PoV.)

Per Wikipedia, both of the warships have been in commission for less than 6 years. Yet they brought along a salvage tug. And an oil tanker.

It sounds like the Russian Navy has limited faith in the reliability of their newer vessels. And either their frigate has extremely limited cruising range, or Russia's popularity is too low for them to refuel in neutral ports.
It also spawned groundbreaking artistic and creative videos such as those for “Take on Me” and “Money for Nothing,” so it wasn’t all dreck. Those videos are probably more widely and fondly remembered today than all the hair-band ones are.
The idea here is that many programmers would call it rateLimit, if they use CamelCase naming. If they don't, at least they can just switch to camelcase once they realize the issue, while that is not an option for single noun names
Very interesting, thanks.
I'm not sure how valuable most of these are. But this seems to bring back the settings explorer panel, which I personally prefer.