skysight-inc/HackerNews huggingface dataset:
> People memorize long numbers all the time, such as SSN, phone numbers, account numbers, credit card numbers, etc. People are not very good at memorizing lengthy alphanumeric sequences such as randomized passwords.

It's easy. Long sequence of 10 possible tokens that we're always used to seeing together. Easier to memorize because you subconsciously use any patterns you notice, and with just 10 possibilities the patterns are there. And you've been reading sequences of digits since you were old enough to get given pocket money.

Vs long sequence of 16 possible tokens, of which 10 belong in one cognitive group and 6 in another. The extra 6 you've never memorized before in random order because they're for representing your language and that has other ingrained patterns.

Let's not forget they admitted ipv6 addresses are too long and allow you to skip parts of it so now you have to count the colons carefully...
Perhaps, I’ve been in tech 18+ years though. Cut my teeth on Solaris, AIX, Unix, Linux etc… the good old days!
It also makes it less interesting for other potential customers to use it. Reducing the potential market is probably not what a VC funding a startup wants.
I was just telling a colleague today that HCL is great until you need to do a loop. A lot of parallels to this YAML discussion
This is an .ini:

[section]
option=value it the way you want it.
; And these are comments. That's all.

I don't argue. I use TOML too, but it doesn't change that it's an ini++. You can treat an .ini file as a TOML file (well, maybe comments needs some changing, but eh), they're not different things.

I don't think, even though TOML has some official spec, all parsers are up to it, and may have disagreements between them. It's same for INI.

You can have "native types" in .ini as well. The difference is you'll be handling them explicitly yourself, and you should do that in defensive programming anway. A config file is a stream of input to your code, and if you don't guard it yourself, you agree what that entails.
Oooo post it post it!

Was it “generate a multivariate Gaussian distribution and then divide each point by its norm”?
> there is no nat w/o a "firewall"

Actually, there is! People normally don't notice because NAT is usually co-located with a stateful firewall (since both need connection tracking to work, unless it's the rarer 1:1 NAT). But you can run NAT with firewall disabled, and in that case, it's possible in some cases for a device on the outside to access a device on the inside.

For instance, suppose a NAT router with 192.168.0.x/24 on the inside, and 192.0.2.1/24 on the outside. A malicious device at 192.0.2.2, on the same level 2 network as the router, wants to attack a host inside the NAT. The malicious device can send a packet with IPv4 destination address 192.168.0.x and the Ethernet destination address of the 192.0.2.1 router; if that router has its stateful firewall disabled, it will accept the packet and route it to the target device.

That is: what "protects" devices on a NAT without a firewall is not the NAT, but the use of non-globally-routeable addresses within the NAT, since a packet from the outside won't find a route to your NAT router; but if someone manages to route the packet to your NAT router anyway, it'll be accepted unless a firewall rule blocks it.

(If you want non-globally-routeable IPv6 addresses, you can use ULA addresses, which have similar properties to the IPv4 private addresses.)
No, what it shows is that science is not the thing to grasp. Politics is the thing to grasp, and that is because of the infantilization of the people.
AI in Central Banking
In my view, the presence of YAML templating is a red flag in any codebase or system.

YAML got its popularity with the advent of Ruby on Rails, largely due to the simplicity of the database.yml file as an aid in database connection string abstraction that felt extremely clean to Java programmers who were used to complicated XML files full of DSN names and connection string peculiarities.

The evolution of the database.yml file into something arguably as complex as the thing it was intended to replace is described in the article below:

https://dev.to/andreimaxim/the-rails-databaseyml-file-4dm9
US never ratified the United Nations Convention on the Law of the Sea (UNCLOS), hence not subject to its rules, unlike the 168 other countries in the world who have
> 2001:db8:424b:b4ff:fcb5:b643:f721:b703 becoming 9R}vSk6QzV!G$<lwB;|~

Memorize that :) Then try to tell it over the phone.
> The executive don't care. They earned enough to live rich until the end of their lives.

Exactly. They care to the extent that they are liable and face the risk of being held accountable, which in corporate America is minimal.
Can you elaborate? To my knowledge, 401k target date funds sometimes have small allocations to REITs (like 3-5%) or REIT indices that might be comprised of a mix of commercial and residential. Maybe there is some exposure to CRE mortgage backed securities through the bond indices?
This is the essence of the problem! Yaml and templates are just distractions. It just boils down to the fact that "string" is a very general type and we use it lazily.

My personal rule: Every time a value is inserted into a string it must be properly encoded.

I wrote a full blog post around this a while back https://kevincox.ca/2022/02/08/escape-everything/. But the TL;DR is that every string has a format which needs to be respected wether that be HTML, SQL or human-readable terminal output. Every time you put some value into a string you should be properly encoding it into that format. But we rarely do.
Shall we bet on what would happen if we asked 10 random people of any IT stripe to write a small sample INI file?

Come on.
I guess I'll ask the dumb question - why not use Javascript directly instead of Jsonnette?
You should make what you do / don't do less of your identity. You're limiting yourself because you identify as "not the kind of person who does that".
https://lists.gnu.org/archive/html/emacs-devel/2016-12/msg01...
It's common practice to have the committer not match the author (especially in environments where only patches/diffs are sent). I can't imagine the git project having any issue with that, given that the author field stays retained (ignoring this bug ofc.).
Yeass. I encountered jsonnet thanks to Ory Kratos, it’s great. Yaml is an awful hack that’s only still around in devops because of chance and circumstance. I hate IT.
Maybe Async Rust is bad, I haven't tried it!

But as for the arguments:

> But even in 1999 Dan says this about cooperative M:N models:

>> At one point, M:N was thought to be higher performance, but it's so complex that it's hard to get right, and most people are moving away from it.

It is higher performance. If you have M jobs and you can get N workers to work on them at the same time, you win!

It is also complex. So if you want the feature, let the smart people working on runtime figure it out, so that each team of application developers in every company doesn't invent their own way of doing it. If not in the runtime, then let library developers invent it, so there's at least some sharing of work. (Honestly I probably prefer the library situation, because things can improve over time, rather than stagnate.)

> Many operating systems have tried M:N scheduling models and all of them use 1:1 model today.

Nope! At the application level, M is jobs and N is threads. But at the OS level, M is threads and N is cores. Would I be exaggerating to say that doing M:N scheduling is the OS's primary purpose?

> but how come M:N model is used in Golang and Erlang - 2 languages known for their superior concurrency features?

These examples are "the rule", as opposed to "the exceptions that prove the rule".

> The Coloring Problem

I'm sick of the What Color Is Your Function argument. The red/blue split exists, and not just for asynchrony. Your language can either acknowledge the split or ignore it:

* A blocking function can call a non-blocking function, but not vice-versa.

* An auth'd function can call a non-auth'd function, but not vice-versa.

* An impure function can call a pure function, but not vice-versa.

* An allocating function can call a non-allocating function, but not vice-versa.

* A subclass can call into a superclass, but not vice-versa.

* A non-deterministic function can call a deterministic function, but not vice-versa.

* A exception-throwing function can call a non-exception-throwing function, but not vice-versa.

Even the dependency inversion principle works this way: it's a plea for concretions to call abstractions, and not the other way around!

Trying to remove the red/blue split will not work, and you'll only be pretending it doesn't exist.

The "solution" (if you can call it that) is simply for library writers to expose more blue code and less red code, where possible. If your language acknowledges that red and blue are different, then application developers have an easier time selecting blue library imports and rejecting red ones. Which is somewhat aligned with the article's title. But application developers can do whatever - red/blue, go nuts.
See all the 1024 possible finger arrangements of your hands
But we are no longer human, we are bots.
Embraer is still an independent company. The merger was a victim of COVID market uncertainty.
If you want to be the change you want to see in the world, shout in the ether that this engineer will have a job at your organization.

That’s what is keeping so many of them silent: a mortgage, school fees, maybe a H1B.
I have seen this post on HN before and I wasn't received very well AFAIR.

But I can't help agreeing with its main point: so much complexity to support a few basic data types that are not sufficient for anything complex anyway.
I'd like to quote a snarky sig I once read on Slashdot:

> You know what's good about YAML? No, me neither.

Personally, I love using a Perl hash for my config files. But maybe I'm just mad.
> You don't need an application within an application to describe state.

As shown in the article, you apparently do.
Have worked at both, Airbus pays worse but has a much better engineering culture. Also arguably, because of the location(s) the quality of the engineers is quite high despite the pay as they can afford a pretty good lifestyle.

Airbus also functions very much like a quasi governmental institution in many parts, so there's less interest in squeezing everything to death to save money.

Finally, Airbus generally has a KISS mindset, and are very conservative w.r.t change in engineering practice and tooling. When I was there we spent way, way, way, way, way more time testing than writing software - and the software was written in a way that any software engineer could walk off the street and understand it.

Oh, and quite low levels of outsourcing in critical software - they save that for things that don't have people's lives on the line.
I'd guess most likely both get banned.
A really good solution here is to use a full programming language but run the config generator on every CI run and show the diff in review. This way you have a real language to make conditions as necessary but also can see the concrete results easily.

Unfortunately few review tools handle this well. Checked-in snapshot tests are the closest approximation that I have seen.
We are currently looking for a skilled & passionate Full Stack Developer (m/f/d) to become part of one of our Tech Teams onsite in Hamburg or remote within the EU!

All developers at ABOUT YOU are driven by the love of creating outstanding user experiences across our high-scalable applications. Your work will impact the future of how eCommerce is experienced by millions of customers. As a Full Stack Developer (m/f/d), you will be responsible for contributing to the application architecture and doing intensive, design-orientated development on both Frontend and Backend code.

What you will do

- Build high traffic web applications with PHP (Symfony or Laravel) and JavaScript / TypeScript (Vue.js, React.js)

- Engage in decisions ranging from UX Design to Backend architecture together with the Tech Lead and explore new technologies

- Build internal & external RESTful API as well as beautiful user interfaces

- Work with agile processes that are adapted to the team’s needs

- Exchange your knowledge with other developers and be part of our ABOUT YOU TECH community

Who you are

- Very good & MVP-focused coding skills in PHP (Symfony or Laravel) minimum of 2 years

- Practical & recent experience with JS Frameworks like Vue.js or React.js

- Good background in building complex and beautiful products which are able to handle the requests of millions of users

- Good technical understanding of RESTful API’s

- Passionate about writing well-structured, efficient, and maintainable code, actively keeping the quality of the code base in check

- Used to work in an English-speaking environment

* Additional Salary Information
We have defined salary ranges for all levels for this function – feel free to reach out if you have questions.

Medior: 60.000-70.000€
Senior: 70.000-85.000€

YOU ARE THE CORE OF ABOUT YOU.
We take responsibility for creating an inclusive and exceptional environment where all genders, nationalities and ethnicities feel welcomed and accepted exactly as they are. We believe that a diverse workforce essentially contributes to the ABOUT YOU culture. In order to maintain talent and diversity, we emphasize the care for physical health, mental health and overall well-being. Our values and work ethics essentially contribute to our brand mission: empower acceptance and shape an inclusive, fair and circular fashion culture.

We are looking forward to receiving your application – preferably via our online application portal! Thus, we can ensure a faster process and for you it is very easy to upload your application documents.
> Are there any advantages of YAML over TOML

YAML is older and more well supported. I'll explain to you why I ended up choosing YAML for the config files for a CLI utility written in Python that I maintain.

I initially chose TOML for many of the reasons mentioned here but before my first release I ended up switching to YAML. Python added support for reading TOML to the standard library in version 3.11, however it still requires you use an external library for writing. Do I use the built in library for reading and an external library for writing? A chunk of my users are on versions of Python older than 3.11 (generally Windows users who installed Python manually at some point), do I import a separate library for THEM to read the files but use the standard library if ver >= 3.11?

Now that I look at the state of things today I probably would add the tomlkit library to my setup file, but that wasn't very mature at the time, so I just used pyyaml. Changing it now would break compatibility with my older versions that use yaml config files, unless I maintained both paths... which I could do but it's just another source of complexity to worry about. These are relatively simple config files the user has to interact with manually so yaml works fine and I don't see any reason to change at this point.
I feel that, from a language theory level, it should be possible to implement functions that can be called in both sync and async contexts, removing the need for function coloring.

Any fundamentally blocking operations could be forced by the compiler to have have two implementations - sync (normal) and async, which defers to some abstract userspace scheduler that's part of the language itself.
I'm not sure you would even need a score for pre-training. You could do denoising or next-token prediction with a transformer, with the tile values as the tokens.
By that method, you might claim that all terms of all licenses (Free Software, Open Source, or proprietary) aren't really important, as the copyright holder can always ignore any of them.

I mean, yes, that's technically correct. But I'm not sure how useful it is? What is it adding to the discussion?
Just look at your favourite game console provider's forum discussions on "NAT types" and you'll see that it really doesn't. Or try self host on CGNAT. Or realise the only direction for IPv4 prices at AWS etc. is up
https://archive.is/WQAlQ
How did you get an internet connection from your medieval fortress in 1452?
I've memorized the first 130 digits of pi. Should be good enough for most tasks that require a human RNG.
Show HN: Old UNIX with new Technologies
This e-mail enters to my "favorite quotes from internet" list directly from the top.
The Case for Kubernetes Resource Limits: Predictability vs. Efficiency
Fast Company claims that design thinking era is ending
Integrating a modern JS engine into your program is complicated and probably pretty huge.
Is it possible for me, or worse, a normal person, to claim or request an ipv6 address that they can keep and use like a phone number? I'm used to dynamic allocation for residential ipv4 addresses and never bothered to beg ARIN for some or rent since from an ISP. Having an address you could keep and bring with you would be great and avoid a lot of the difficulties of DNS.
I'll take HCL over YAML templating any day. At least it is working with real data structures not bashing strings together.

That being said, yes, it is also an awful language.
I love the idea of keeping it simple and I do try to use kustomize or even plain yaml as installation method as much as possible.

But in practice when managing large systems you inevitably end up benefiting from templating
Could you just dry run rsync? It does exactly this.
You are talking about embedded or industrial control systems, which are always funky.

I am talking about normal software and websites that a normal person needs to interact with on a daily basis. For example, go to any random Japanese website and prepare to be greeted with a design that looks like it was taken straight out of Geocities.
> Trying to remove the red/blue split will not work, and you'll only be pretending it doesn't exist.

Go managed to so it. What exactly would "you're only pretending it doesn't exist" mean in context of Goroutines?
As soon as there are significant protests by farmers and middle class against the government, a government-sponsored activist NGO publishes a lurid paper about a meeting of conservatives that took place in November 2023. Two days later, another government NGO named the word "remigration" as the bad word of the year 2023 and a few days later a play was even staged in Berlin about this alleged meeting.

Although the article cannot substantiate its claims in any way (e.g. the alleged "secret plan" has been available to everyone in book form for months), the public service media adopt every assertion without distance and make completely unsavory comparisons with the Third Reich.

The government has thus successfully suppressed the perception of protests by farmers and the middle classes. Propaganda in its purest form.

A long text that covers the current situation well:
https://www.tichyseinblick.de/meinungen/correctiv-wannsee-un...
I think the better way to think about async Rust is to use it when it's beneficial to developer productivity and to avoid it when not. There are quite a few situations where it makes the code easier compared to alternatives you could come up with.

I don't think for a second that async Rust should be picked for performance reasons.

You get a feeling for what is a good use of async and bad use of async relatively easily these days as the ecosystem is maturing.
Sure, but why?

brew install wine-stable
WebEx was founded in 1995 and I recall using it at work long before Cisco acquired them in 2007. Even back in the late 1990s where I worked all managers were given a (voice) conference bridge number to use to set up conference calls. Outlook Web Access was first released in 1997. The first iPhone came out in 2007 and the first Android in 2008. WiFi was becoming fairly ubiquitous by 2003 and 3G by 2008. If people were unable to work from home during Sandy (late 2012) it was either due to an incompetent IT department or the fact that the hurricane knocked out power and internet.
You don't understand why a sequence of 39 digits might be harder to memorise than sequences of 10? 16 is longest of the examples that people actually memorise (no, people are not memorising their bitlocker keys), and even then they have 1 example that lasts at least 5 years to deal with, instead of however many IP addresses they have to deal with.

Also many of my account numbers and my nations equivalent of a SSN are alphanumeric so 36 vs 16 choices.
>It's UX was miles ahead of anything else.

Not my experience. UX was more or less in line with everyone else, UI just looked cleaner and prettier because it didn't yet have obtrusive ads compared to the competition.

Gmail was groundbreaking because it offered 1GB of storage at launch compared to measly 100MB or so from Yahoo or Microsoft.

Google brand name + invite only scarcity at launch + huge storage space + no ads at launch = the formula the drove initial popularity.
> Thatcher eliminated all this feather bedding and the UK was better for it.

You might want to catch up on the last few decades of UK history. To say it's unraveling would be generous. The once mighty British navy can hardly even build working ships anymore.
A Love Letter to Building Software
No, IPv6 devices are typically assigned both a permanent IPv6 address and a temporary one. When using the internet, it uses the temporary address for privacy reasons.
There's an education here that unfortunately I don't have the time to give you.

SLAAC is the replacement for DHCP, it provides a local prefix address (fe80::) and optionally (and, crucially: additionally) provides a publicly routable IP if there's a public prefix available.

You can think of the subject being split into two components:

As a base: You will get a local IP

On top: you get DNS/Public routing.

Here's a bit more about how it works: https://www.networkacademy.io/ccna/ipv6/stateless-address-au...
To 1-up a bit, in the UK (and probably several other countries) you usually do nothing at all. The tax is deducted by your employer at time of pay and you just get annual statements that you usually do nothing with. If you are due a refund (e.g. salary went down so your projected yearly income was wrong), you usually get refunded automatically by giro or cheque (or possibly compensatory tax code changes for the next year. Not sure)
I definitely wouldn't use Python because it isn't sandboxed, and users will end up doing crazy things like network calls in your config.

Starlark is a good option though.

People will talk about Jsonnet not being Turing complete, but IMO that is completely irrelvant. Turing completeness has zero practical significance for configs.
> Like locusts, they ate through Boeing's real value (its engineering, its reputation) and can now fly away their bellies full, leaving behind a devastated company.

If they're smart, on an Airbus.
the URL ends with "apple-vision-pro-bulky-battery-pack-secret-2024-1". The article says: "Wired noticed that this tactic allowed Apple to obscure a sort of not-so-cool aspect of the headset: the bulky battery pack.". The decision is not motivated by clickbaitism.

Anyway, I have removed the word "secret" as it seems that it's not that secret any longer.
https://github.com/TheR1D/shell_gpt?tab=readme-ov-file#shell...
Clearly that is not sufficient enough for a variety of reasons else we wouldn’t be having this conversation in the first place
I, too, loved hiera and puppet.
Reading yaml has the enjoyment of reading a love letter where else json has the deterimental feeling of a solicitor email. For writing, yaml is like putting out the draft, you only focus on the meaning not care for else or the form, but for json it is like finishing up your thesis with hard defined structure.
ed is the text editor of UNIX created by Ken Thompson. It is compiled in WebAssembly for running in exaequOS, a new UNIX like operating system running in a web browser