skysight-inc/HackerNews huggingface dataset:
Downloaded params.json - GeLU & 2D RoPE are used for the vision adapter. The vocab size also got larger - 131072 in size.

Also Mistral's latest tokenizer PR shows 3 extra new tokens (the image, the start & end).

The torrent is 24GB, and I guess the implementation will be up in HF in a few days!

Exciting times!
>
Today I can quickly be productive in unfamiliar domains

Today, you can quickly get a shallow, superficial understanding of the domain that might impress some people who know barely anything about the respective domain.

> and learn while asking questions to an AI that [...] has an extremely deep knowledge of so many things.

ROFL
Time 100 Most Influential in AI 2024
Too bad that deserializing DNA is rather time consuming and sometimes lossy.
> One day it stayed on after opening the door.

So you basically got exposed to microwave radiation. That's dangerous. Have you checked in with a doctor?
I like using Starlight for this purpose:

https://starlight.astro.build/
It's interesting you call out a year as a time span. I have no idea what the goals will be in a year, let alone how I'll code it. A year seems like a really long time, but also just short enough to justify adding extra work in early. My timeframe is more like a week to a month. Obviously different orgs will have different time windows for real reasons.
> you don't go to a "Taconomics" website comparing taco prices across a continent

but that's what people do, in aggregate. It's why manufacturing all went to china in the last 2 decades.
Why wouldn't they be comparable? It's a measure of how much government taxes take out of 'your' paycheck - tax receipts don't tell the whole story, because they don't show inflation caused by money printing. Government spending does.

It effectively indicates that you're working for the manor lord Monday and Tuesday (and Wednesday in France), and are allowed to work on your own field from Wednesday to Friday. At the extreme it is obvious that this would discourage work and starting businesses. If the government took 100% it wouldn't make sense to do anything (legally). Therefore the question is: at what percentage does this start happening too much?

This is an important question, because government budget as a percentage of GDP has been increasing over the last century. At the start of the 20th century this percentage was around 3-5%. Today it's around 40-60%. And it seems to be increasing even today.

People don't like austerity, but if our current system is built on an ever-increasing share of government spending of the economy, then eventually we're going to be hit with austerity x10.
At least it loudly announced itself (tough luck, you got pwned!). It is much more financially motivated and pernicious in spirit now, hiding its presence and infiltrating your entire network.

https://youtube.com/@danooct1 shows off some old malware.
Or just have a command-line option to specify an ignore file. That's strictly more useful because then you're not arbitrarily limited to files named “.gitignore”.
I constantly try to improve how I write my code. The last couple of years I’ve been involved in a couple of projects that’s required rebuilding a few times over because the project managers kept changing directions and was always in a hurry.

For one project I eventually managed to convince them to let our team write a more general purpose library to conserve time in the future. And this has paid itself of several times over.

When we write code it’s important we do consider how it may be utilised in the future. Since we cannot make exact predictions it’s better to make methods as small as possible instead to reduce the amount of time spent on refactoring (since this is unavoidable). This also helps us to create solid, more future proof, tests for our business logic.

You don’t need to follow a strict set of design rules, but general guidelines is a good idea. Like trying to follow SRP, avoiding more than x nubmer of lines for your method bodies and trying to avoid nestled code.
Why does introducing interfaces and vtables have to be the right abstraction? Given the example, the simplest solution is best. If you don’t need runtime semantics, just write simple code.

The Cons of a "simple" solution:
> As you add features, the class becomes more cluttered.
But if it's a feature, it shouldn't be considered clutter. Clutter usually comes from over-engineering, not necessary additions.

> Each method does one specific thing. That seems fine until you realize your interface is full of shallow, one-off methods. That makes it hard to maintain and extend.
However, each method is efficient and tailored to solve a specific feature, which boosts performance. Plus, if there's a bug, it's easy to find and fix since each method has a clear path.

Also, to maintain a clear designed API, I suggest following some data-oriented recommendations, like designing functions to take lists of elements instead of single elements.
They said it was an ARM MacBook
It's been disappointing me lately that we've all given up on terminfo --- or at least forgotten what it was for. Most of these new libraries just hardcode escape sequences. It'd be more future-proof and customizable for users to consult a terminal database like programs used to do, yes? Maybe it doesn't matter: the world has mostly converged on xterm-based control sequences. But what about newer capabilities? Without either a central terminfo database or some kind of standard way to query feature availability, we end up with an explosion of ad-hoc and opaque logic.
If everyone is reinventing the same wheel, then...

Furthermore, those wheels aren't necessarily interoperable the way something built into the standard library would be; it's not just a convenience.
> Clearly any ordinary product can be used for nefarious purposes.

Right, I could kill a person with a spoon. Still we regulate guns and not spoons, why is that?
For me, that hope was realized,
we have access to most of the books in existence, incredible projects of knowledge sharing, and countless other resources to learn any subject you want.

If the majority of people don't want to use this, but instead just want to yell about politics and the news cycle, that's their problem and doesn't really diminish the achievements of the web.
Isn’t it a little ironic that NY Times, and most east coast media, is very anti big tech and pro union while their own employees are protesting because of low wages?

Who are they to judge how big tech treats their employees when they pay their own so poorly?
That line refers to the 'u' substituting for 'μ', the greek letter mu, not the L symbol. https://www.nayuki.io/page/common-mistakes-when-using-the-me...
Germany extends temporary controls to all its land borders
> If anything, overly simplistic solutions sometimes make me feel like I'm repeating myself, but really since the code is so easy it always feels possible to refactor it.

This is way underrated. I've been on a project that was in one hand quite over-engineered, quick and dirty on the other hand. The thing is tech leads insisted on factoring absolutely everything. So you had a component (not compliant with solid's O) that dealt with 2 cases, needed two more cases added. And this is where it all breaks. I wish we could have dumbly copy pasted the thing two more times instead of having to deal with the weird and unforcasted interactions.
It's true for all of the parsers that I tested at the time, which covered a couple different languages (Ruby, Python, C, Haskell).

It appears to still be true in at least Ruby and Python, which are probably the two most popular languages to write YAML-consuming programs in:

$ irb -v
irb 1.3.5 (2021-04-03)
$ irb
irb(main):001:0> require 'yaml'
=> true
irb(main):002:0> YAML.load '{"a": 1e2}'
=> {"a"=>"1e2"}
irb(main):003:0>

and

$ python3
Python 3.10.12 (main, Nov 20 2023, 15:14:05) [GCC 11.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import yaml
>>> yaml.safe_load('{"a": 1e2}')
{'a': '1e2'}
>>>

--

> The spec specifies it should assume 1.2 and 1.1 should be opt-in.

The spec for 1.2 says that, but that's the reason parsers can't upgrade to 1.2, because changing the default version will cause backwards-incompatible parsing changes. Without the version directive there's no way for the parser to know which version was intended, so it defaults to 1.1, so people writing YAML will write YAML 1.1 documents, because that's what the parsers expect.

The only way YAML 1.2 is going to displace older versions is in a greenfield ecosystem that has all its tools using YAML 1.2 from the beginning, but that requires an author who both (1) cares a lot about parser correctness, and (2) wants to use YAML as a config syntax, which isn't a large population.
Global Privacy Control should provide a global control that should work better than DNT ever did.
Ouch. That tab error is a bug in libyaml, the YAML loader used by PyYAML. It's still stuck on YAML 1.1, but the spec explicitly allows tabs as whitespace, though they don't count as indentation semantics.[0]

The same is true in YAML 1.2, so it's not just a legacy thing, either.

[0]:https://yaml.org/spec/1.1/#id893482
No leads – Just paying users for your SaaS
Recently started experimenting with Polar[^1] (OSS themselves). They offer a platform for OSS authors to sell perks (e.g. newsletter, digital assets, access to private repositories/discord, README ads) and handle billing/VAT for you.
Quite happy with the experience so far.

[^1]: https://polar.sh/
It obviously depends on the context. There's no general right or wrong answer to that question.
That is what I immediately thought as well. The problem though is that a perfect hash is still going to be O(key length) for the hash function, which they are trying to avoid.

In theory, if they used a regex it would be using a state machine to do the matching, which should have similar performance to the trie- only O(k) in the worst case. But from what I understand regex libraries don't actually build the state machine, they use backtracking so the performance is no longer O(k).

I'm surprised they couldn't find a performant regex library that already existed that uses state machines. It should have similar performance to the trie. But in reality, the performance is affected more deeply by things like memory access patterns and the performance of specific arithmetic operations, so it's impossible really to speculate.
Hacker News is hacker like a hot dog is a dog
Effortlessly Manage iPhone Data with FoneDog iOS Data Backup & Restore

FoneDog iOS Data Backup & Restore is a comprehensive tool designed to simplify the process of backing up and restoring data on your iPhone or iPad. With its user-friendly interface, you can quickly backup your entire device or selectively restore data from backups without overwriting existing files.

One-Click Backup: Backup your entire iOS device to your computer with a single click.
Selective Data Restoration: Choose specific data types to restore from your backups, previewing before restoration.
Multiple Data Types Supported: Supports backing up and restoring contacts, photos, messages, notes, call history, and more.
Efficient Backup Process: Offers the shortest backup time compared to iCloud and iTunes.
Step-by-Step Usage Guide:

Launch FoneDog: Start the software and connect your iPhone or iPad to your computer.
Select Backup Mode: Choose the data backup mode that suits your needs.
Choose Data Types: Select the types of data you want to backup.
Complete Backup: Initiate the backup process to save your data.
Restore Data: Select the backup files you wish to restore and choose the data to restore to your device or computer.
Technical Specifications:

Supported Devices: Compatible with all iPhone models, including iPhone 7 to iPhone X, and all iPad models.
Operating Systems: Works with various iOS versions.
Backup and Restore Capabilities: Capable of backing up and restoring a wide range of data types.
Homepage: https://www.fonedog.com/ios-data-backup-restore/
I had structural engineering and electronics in school and especially when you get compound units like Nm (newton meters) not wondering if the N is a newton or the SI-prefix nano is not nothing.

In the end the reason for the weird capitalization is just to avoid situations where that ambiguity will occur.
Well, so, does this method return the login name of the user ? Or is the "name" field in fact a company convention to return firstname and lastname concatenation ? Oh and if it’s that, what will be the concatenation order ? It doesn’t seems like it’s a parameter but is it configurable somewhere ? Is this automatically defined somehow ? Is it hardcoded ? Or is there a name field in the database and if yes, what does it represent ? Etc …
Do the HN terms of service permit me to exfiltrate and transform your comment to use near verbatim in my upcoming novel about slimy legalistic carpetbaggers grifting regular run of the mill average members of the public?
I was surprised to see "L" as the "only correct" (though as minor mistake) abbreviation for a liter, being certain "l" or "ℓ" is the way to go, as that's how I was taught so far. Turns out that SI actually allows both "l" and "L", but I would only ever use the uppercase if it's a sans-serif font in a non-prefixed unit ("L" as opposed to "ml"). I've never seen any can or bottle using "mL" or "cL".

Some of the examples go pretty far too, either calling spelling I'd never see a "common mistake" (like "gr." for grams), or by being too scientifically correct for a casual usage, for example in a press article ("(100 + 200) grams", right).

But then I saw "Set the oven to 450 K", and I realized that the examples are to be taken with a grain of salt :)
What makes a game a game though? Do you necessarily need action and damage points?
Thank you, this really needed saying. I was wondering if I was the only one who saw it.
Why Teachers Need AI Detection Tools
Explore why AI Detection tools are essential for teachers in today's AI-driven world. Learn about the challenges posed by AI writers, the difficulty of detecting AI-generated content, and how AI Detection software can help maintain fairness and efficiency in education.
I've been thinking about this too, perhaps it's my age (43) and the fact I vividly remember earlier times.

If I were to pick an inflection point, a point at which the internet started going to shit, i'd say it was around 07/08 with the birth of the iPhone and Appstore. That's when "pay to publish" really started to take off.
I'm aware, but the taxes being paid by all these global corps did not change at all. Clearly there's enough loopholes to keep exploiting!
I don't know how it's applied in practice, but apparently the treaty establishing ESA specifies that its space activities will be "for exclusively peaceful purposes" and they apparently have no missions that are classified or have any declared military purpose.

I think there are other non-ESA European (and national) agencies that work on military use of space. For example, there's apparently an "EU Satellite Centre" based in Spain that is concerned with military use of space (and is not part of ESA).

https://en.wikipedia.org/wiki/European_Union_Satellite_Centr...

I do imagine that military users can probably buy or access data from ESA sources on the same terms as civilian users and that they probably do so.
You're right. I must have clicked the wrong link, the YAML 1.0 spec doesn't mention JSON. The quote was from 1.2, thanks for pointing that out!
cc maybe in favor of unicode's ㎤

/s
Why can’t they stick an app to a specific gtk version? They were fine with what they started it in, what is the reason to migrate?

If the answer is ver++ anxiety, the problem is self-imposed (still better than using winapi).
We are very careful with our kids in terms of they interact with technology for this reason.

Raising luddites that can't type won't serve them well over the course of their lives, but neither will allowing them to become tap-and-scroll dopamine zombies.

It's a difficult balance.

My strategy will undoubtedly evolve over time, but I suppose it could be summarized as "permit supportive technology, aggressively deny anything else"

Of particular note is that most, if not all, "for kids" content is actively harmful.

The key to making things work is having a cohort of parents that have similar priorities. If the parents in your social group default to shutting Junior up with an iPad, you're going to have a bad time.
We were not using car mounted antennas. We will try this next time!
Show HN: Stu – A TUI Explorer for Amazon S3
stu is the TUI (Terminal UI) explorer application for Amazon S3 (AWS S3).
The History of Web Performance
But how many of these new tools are robust when there's high latency? The advantage of good old POSIX shell is it works on cheap routers, the latest HPC systems, the system next to me and the system of the literal other side of the world, and everything in between.
Maybe this bottleneck is a constraint that leads to learning, as it forces integration of information.
Soon. Maybe even fully auto generated content where spammers prompt an LLM and the end product is a bunch of audio files
Note: The official SI unit “liter” was written “l” until a couple of decades ago, when they changed it to “L” due to frequent legibility issues (l/I/1). Some old texts use the old convention.
AI has taken over our world – it's time to learn the language of our new rulers
I built a powerful medical news survey report writer:

https://github.com/impredicative/newssurvey

It is to be extended to other sites as well. If you read the generated sample reports, you will see how it has potential to change lives.

Unlike much of the commercial stuff that people make, which almost nobody ends up using, the best part is that it is open source.
I'm conflicted about this. On one hand, it makes content more accessible to a larger audience. On the other hand, it leverages copyrighted material without crediting or compensating creators, potentially puts those same creators out of work, and finally, reduces the likelihood of more such (human) creators arising in the future. My worry is that a few generations hence, human beings will forget many skills like this, and if model collapse occurs due to LLMs ingesting their own data over successive iterations, future generations will be in for a difficult time. Reminiscent of Asimov's "The Feeling of Power".
Consent-O-Matic runs on recent Safari, while ublock unfortunately does not
"X is a superset of some subset of Y" is a weak statement.

This is not about semantics, it's about grammar. While it's fair to say that JSON "usually" is valid YAML, it's still good to be strict about it, because the existence of a single counterexample can be used maliciously.
I don't know where you reside and what kind of software you build.

With the European Cyber Resilience Act coming into full effect late 2027/early 2028 (depends on when it's finally signed) this will not always be an option anymore for a lot of people.

a) You'll have to provide SBOMs so you can't (legally) "hide" stuff in your binary

b) Security updates are mandatory for known exploitable vulnerabilities and other things, so you can't wait until a customer asks.

This will take a few years before it bites (see GDPR) but the fines can be just as bad.
I would never have imagined to read something about him here. I absolutely love his 4th symphony "Los Angeles". And recently "In cantus memoriam Benjamin Britten" was used in a movie. He wrote that piece after learning about Benjamin Britten and being absolutely delighted by his work, only to then find out he passed away shortly before. What a fruitful friendship and cooperation this could have been....
I failed to find on the website (or understand from the docs) which devices this would be compatible with.

Is it that common for consumer routers to run x86_64 processors nowadays? Or is this meant to be run from a normal PC?
E-Maj 4.5.0 – PostgreSQL
We haven’t experimentally verified that such neurological inducement is possible. I bet we’ll be able to do so, but until then the question remains.
I think a better solution is to write smaller, single-purpose functions. To refer to your example downthread, you should have one function that only writes the file, and another that does the "whole" operation -- calling the function to write the file, checking for errors, and then updating the database.

Then you can use defer in the file-writing function if you so please, and not bother to close at the end explicitly, without issue. A more robust example might be to even include the sync call in the deferred function (and even clean up the file itself on error). To re-use your example from your blog post:.

func helloNotes() (err error) {
var f *os.File
f, err = os.Create("/home/joeshaw/notes.txt")
if err != nil {
return
}

defer func() {
if err == nil {
err = f.Sync()
}

cerr := f.Close()
if err == nil {
err = cerr
}

if err != nil {
os.Remove("/home/joeshaw/notes.txt")
}
}()

err = io.WriteString(f, "hello world")
return
}

I would probably move that out into a helper, though, so I could do something like

defer SafeClose(f, &err)

instead, and be able to use it elsewhere. Hell, even without defer, it's nice to have a helper that will sync and close for you so you can avoid the boilerplate, if you have lots of different bits of code that writes files.

FWIW, I'm not sure why you are so negative on named return values, but I'm at best a novice Go programmer, so perhaps I don't fully understand why they aren't great (I guess it does look weird to me to have bare `return` statements that do actually return a value even though it doesn't look like it). Your argument about the return value possibly being modified after the core function finishes being unintuitive doesn't really strike me as a big deal either.
Another way to look at this that this is 3 linearly dependent PRs masquerading as one. Make each a distinct PR and the problem goes away, especially if you can mark the PR to depend on another one (on Gitlab you can, not sure about Github). If you want to see each change as a single logical unit, then they will each be a distinct merge commit on your master branch, use `git log --first-parent-only master` to only see these kind of changes.
It is not the same. For me the magic of IRC was to not be online all time. People needed to actively connect and join the channels every day
Agreed, though it is more like "X is a superset of some common but not de jure interpretation of Y". The real culprit is the ambiguity of Y...
Competition is a good thing. We all lose when powerful players band together and form a cartel.

If companies did that - it's illegal. If government politicians do it - their populism brings them votes.
> I don't know that "parasocial relationships" are the primary reason people like having real hosts

But it is likely one of the main. Me telling you that something is possible doesn't necessarily mean that it is real but you chose to believe it. Whether the source is human is not necessarily relevant. After all humans can and do lie all the time
I think it's a general issue of developers with tricked out machines and fast internet connections developing software for everyone else. The reason the CLI is fast is not because it was carefully engineered that way, but because most of the software was developed when computers were slower than the chip you'd find in a washing-machine these days

example: flatpak. Last I tried - tab-outcompleting to install a package makes a network request for the application list. This ofcourse means you don't have to maintain a cache like `apt` and certainly makes things easier. I'm sure this makes sense if you're on your macbook pro in a cafe in Cupertino. But it was nearly unusable (whole CLI locks up and hangs) from my Core m3 computer tethered to a shitty network in a 2nd tier city in China.
I have seen usage of kvm (kvadratmeter) in Sweden