skysight-inc/HackerNews huggingface dataset:
Your statement reminds me of the spoon scene in The Matrix: Instead of trying to bend the code to fit within the confines of its types simply try to realize the truth... Static types are just more code. They're extra conditions that we apply to things like function signatures and variable definitions instead of adding conditional checks where it matters.

"Aha!" you say, "but by enforcing conditional checks at variable definition and inside function signatures we don't have to check them ourselves in our code and the compiler itself can check them to ensure correctness and optimize performance!"

...and I'd agree with that sentiment but I'd also add that by having to reason about your types constantly you're adding a non-trivial amount of mental overhead when structuring your code. For some people that's how they reason about their code anyway but for others, having to consider whether or not a number is a `u8`, `u32`, or `usize` adds a lot of complexity to the code that could very well be entirely unnecessary depending on the use case.

Consider, for example a program that's meant to be executed on the command line that takes two numbers and adds them together. No matter what language you use you have to convert the raw string input into a numerical type before performing the addition.

In Python you have a simple function, `int()` that will happily turn any string consisting of numbers into a proper integer that can be used for math operations. If it gets something that isn't a number it'll throw an exception which is trivially easy to detect and wrap in a `try`/`except` block with a user-friendly error message. If we wanted to support floating point numbers we could just use `float()` and the code would otherwise be exactly the same.

In strongly-and-statically-typed languages this same process involves considerably more overhead. Before we can select a function to convert a string into a number we must first pick a numerical type and before we can do that we must think real hard about how big of a number we're going to support in this application. Our function signature(s) could also get complicated because, "wait: what type of string are we going to get from the command line?" Something as simple as adding two numbers becomes complicated really quickly!

Comparing the two ways of handling things (strongly, statically typed VS strongly, dynamically typed), Python ends up the clear winner a lot of the time because you got the job done without having to think as much, with less code that's super easy to reason about even though it didn't use static typing.

The other problem is that when you write such trivial programs in strongly, statically-typed languages like C, C++, Rust, etc it requires a lot more mental overhead to look at the code to figure out what's going on/how it works (though with Rust, less so because there's not 1001 awful ways to do things haha).
On the positive side:
Players will be able to download patches and redownload games purchased from the eShop for the foreseeable future.
Recommend watching the video[1], there are some classic moments where the crowd can’t hear rms because of how he is holding the microphone and we get a classic stallman rant about microphones.

[1] https://m.youtube.com/watch?v=vUwQLsWjA-g&pp=ygUQcmljaGFyZCB...
You are complaining about explicit typing.

Try ML (OCaml, F#…) or Haskell, they have type inference. No need to declare types most of the time, but they’re there, checked at compile time.
So far this is probably the best "intro to CRDTs for a developer" I've read. I built a product around CRDTs, essentially, and my god was it painful trying to engage with. Showing actual code, explaining that `merge` is the fundamental operation, etc, is really all a developer needs to know IMO.

Also, the fact that we always use text editing as the de-facto solution is so weird to me since that problem is both niche and extremely complex. IMO a better example would be something like "Can this person drink alcohol?". Age moves in one direction so it has a simple merge function:

def set_age(self, new_age: int):
self.age = max(self.age, new_age)

A property of this is that if I query your age and if you're 21 I can cache that age forever. You'll only ever be >= 21, after all. If I add new queries that care about you being 25 (for a hotel) I can satisfy the "drinking age" queries from a stale cache and then retrieve the true value (<25) when I need to check if you can book a hotel.

This means you can have distributed caches without invalidation logic. A pretty amazing property since cache invalidation is a hugely complex problem and has seriously negative performance/ storage implications.

It also means you can drop writes. If my system gets information that a person was 18, but that information is out of date, I can drop that write, and I can do so by examining the cache and viewing stale information, only checking the real value if the cache value is < 18.

This whole thing lets you push computation to the edge, drop expensive writes, ignore any cache invalidation logic, cache values forever, potentially answer queries from stale cache values, etc.

Anyway, kudos for the writeup. I skimmed the second half but the first half was great and the second half looked legit.
Because I assume for most people "rancid" means "gone bad", instead of some technical word about oxidation of fats.

The article almost reads like the US is getting old expired oil from Europe, while it's actually getting good oil that has just been produced in a different way.
Android has had support for IPv6 since at least 2014, and there are plenty of mobile networks which are IPv6-only and work just fine with Android phones doing CLAT.

The only thing missing is DHCPv6, and that's a deliberate decision - albeit a somewhat controversial one.
Show HN: I made a learning platform to help builders grow their SaaS
Hey builders,

I created a gamified platform to help startups founders and makers learn how to grow their SaaS and start taking action.

It's pretty self-explanatory.

Hope it helps!
Neither users nor device manufacturers are allowed the option to disable US Presidential or FEMA device alerts.
C++ lacks strong typing? I'm curious what the type system is missing to qualify.

Or do you mean that the C-based escape hatches like casting pointers make the type system inherently weak? You don't have to use them though...
Wordpress auto-update is fundamentally broken, anyway, which is why it's still one of the most popular phishing site hosting platforms out there.

This is sad, but not surprising.
Has the author ever been to an Oktoberfest?
I haven't used it, but I know that Coalton adds static typing to Common Lisp, might be something you're interested in.

https://github.com/coalton-lang/coalton
This looks great, although the Azure requirement makes it a no-go for me. I just keep wishing for a simple solution that is easy to self-host locally. After a lot of work I managed to get an instance of Helicone running, but it's made of 6 or 7 different services, each with a pretty large footprint.

I feel like there's definitely room for a single-binary tool made in Go with a small sqlite database and in-memory caching.
This is the case across much of the US. Seattle dumped 100 million gallons of untreated storm & wastewater in 2022.
See this recent Ask Reddit "What book is an immediate red flag for you when someone says it’s their favorite?" and look at the replies around Ayn Rand, Atlas Shrugged, The Fountainhead, e.g. this sub-tree:

https://old.reddit.com/r/AskReddit/comments/16yaui6/what_boo...
wasm file is 42.9mb, it's way too big, doesn't godot strip unused things?
I went recently to "Tre Torri" and I was amazed by how much vegetation there was among the residences, I think they did a nice job
From the end:

> We do want to give a genuine shout-out to the Worldcat team. Even though it was a small tragedy that your data was locked up, you did an amazing job at getting 30,000 libraries on board to share their metadata with you.

I wonder what the story is behind Worldcat getting so many libraries across the world on board? I don't know much about the software but it must be pretty compelling.
> Lisp, on the other hand, I can see why there really isn't a need for types.

What Lisp are you using that doesn't have types?
That's from 1996 and definitely not true today. The $$ numbers there are also hilariously low now. Compare them to:

https://www.aaastateofplay.com/school-districts-ranked-by-th...

Especially in inner cities, many of the better performing school districts spend far less than the places serving poor communities. Camden NJ is one of the highest spenders, so are a lot of city schools in Illinois. Famously "good" schools, like Stuyvesant which spends about $17,000 per student, don't even make the list. It's far below the average for NY!
Yes I think something like this in education can be great, group projects/ discussions seem like a good use case
I watch the news daily, and am active on social media (including following some government agencies and politicians), I only heard about this from a friend of mine who is deep into conspiracy theories. That was the only time I heard about it until now when it made it to the front page on HN (which is also the first time I see it on social media).

Whichever publicity they did, didn’t reach me at least.
I wonder how many illicit prison phones this alert test will discover.
Godot packs the whole engine runtime when packing the game no matter the platform, but in this case it's also probably because the internet connection on the server is slow - https://lfgslots.com/classicvideopoker/index.wasm (26MB, main engine runtime) took me 22s to load, and https://lfgslots.com/classicvideopoker/index.pck (16MB, game resources) 34s.
The only other use I'm familiar with where strong types are used to describe the equivalent of static types, but we've made clear distinction between the two here. What other definition is there?

Usually: A strong type system does not allow types to change after being established. A weak type system allows types to change. This is also described in the original article.
Not just competition but also grifters, some of whom will come from your own family.
I prefer to use my own server as I can optimize cache hit ratios for the things I request. This makes the internet perceptibly faster for me and others on my network. I can also pull statistics from my server whereas I would have to beg someone at the ISP for that data as a one-off request. This also gives me the option to block domain names used for dark patterns or outright malevolent behavior. I also have control over the upper and lower limits of cache and I can flush to cache if a website is still relying upon DNS failover vs BGP Anycast but I have not run into that for about a decade.

Speaking of stats, I can also see what IoT/Cell devices are requesting to keep an eye on their behavior and look for interesting patterns of DNS requests.

I have honestly never used the ISP DNS servers so I don't know what their performance is like. It's just muscle memory for me to set up my own home Linux router to be a DNS server. I highly doubt they could top the performance of Unbound and cron-jobs that request commonly used records on an hourly basis. I do know that my performance is better than talking to the DoH/DoT servers on the internet. The cached record response time is in microseconds vs 23ms for CF and non cached response time is generally between 50ms and 70ms vs 80ms to 160ms for CF not-cached.

Another nifty option in Unbound is to cache the "Infrastructure" records and to "Keep Probing" multiple nodes. This combines into a nice balance of speed and resilience especially if someones name server is having a moment but their status page is green.

unbound-control dump_infra|wc -l
1235

These numbers are thrown off a bit by my cron jobs that are requesting things that I am not visiting all the time and when the authoritative record is sub 3600 seconds. They are requested hourly. Some of the government domains in my cron job seem to be throwing off the curve, I will reach out to them.

total.num.cachehits=20949
total.num.cachemiss=8010
total.num.prefetch=753
total.recursion.time.median=0.0698958
CRDTs seem like one of these things that are mentioned on here frequently, but I haven't seen that many popular apps that use them. Any examples?
In what country? Here in Washington State USA any place that's remotely habitable is either very expensive or gets snatched up immediately.
Even Sally should lie down when she's not the subject of a song made famous by Eric Clapton. :-)

Lay as a present-tense intransitive verb is slang[1], just like "ain't" (another bit of slang in that song) and so it stands out in a video and presentation that otherwise conveys a sense of formality and seriousness.

[1]: https://www.merriam-webster.com/grammar/how-to-use-lay-and-l...
Very good point, thanks for the feedback!
I saw so much suffering in that movie it never ocurred to me that it could be seen as a feel-good movie. The devs working on the game for 2-3 years while the life was collapsing around them. I found it cathartic but not a happy story.
2C-I was pretty fun. I ordered it online from a Canadian research lab, paid with credit card, all above board, lol. The panic attack was because of cannabis; over the years I've had half a dozen cannabis-related panic attacks, 2c-I on the other hand was pretty mellow, with lovely visual patterns. Felt less "spiritual"/introspective than shrooms, so to speak.

Also, after I got hospitalised, the ER paramedics returned the small bag of white powder to me. I don't know if that's common practice , but I appreciated the gesture.
Males took over a women in tech career conference by registering as non-binary
The DNS in this case but as a general rule, I avoid Google services.
I found a post about the Linux version em86. I don't think it saved the results like FX!32

Someone on this forum was the guy who made the Linux version using the FX!32 as the basis.

https://www.phoronix.com/forums/forum/software/general-linux...
I've always been satisfied with my grocery-bought olive oil, but also curious as to what "good" olive oil actually tastes like. Is there a brand or vendor in the US that sells such a product?
Courts also are not bound by technicalities like this typically!
Maybe if they weren't going after FAANG exclusively I could take this seriously and not think it is entirely politically motivated BS. ISP monopolies are 10x more harmful than anything they are going after. They have even taken subsidies and then refused to deliver what they promised to get the subsidy, and kept the money. But all I hear about is cases against Google and Amazon for things that sound to me like a real legal stretch.
If we do dollar for dollar, spending more money on schools isn't going to help the outcomes either. The money would be better spent on the home life since that is what determines kids outcome the most.
Octoberfest is a giant party, but that’s about all the two of these have in common.
Presales to Product: A Mini-Series
looks like the loading is the 45mb download it needs to do.
Are you okay with someone in EST? I'm mainly applying for Principal/Staff SRE/DevOps roles
Good point, yes I think even the ability to title a comment could be a huge addition - thanks for the suggestion!
Some would argue that exactly that thinking is what makes the software cleaner and better- rather than mush-mash that passes the compiler. I.e what I’m saying is that it might be good to be thinking about exactly what you’re passing in, out and why.
> You pay these fees so the products aren't cheap.

Except they are, otherwise consumers wouldn't use Amazon. Whenever I want to buy anything, I check Amazon first. 9 times out of 10 it's the same price as every other retailer with the added benefit of free shipping and free returns. If that wasn't the case, I would have no reason to use Amazon.
Centre for Internet and Society | Technology Researcher | Full-time | REMOTE (India) | INR 80-90K per month | https://cis-india.org The Centre for Internet and Society (CIS) is a non-profit organisation that undertakes interdisciplinary research on internet and digital technologies from policy and academic perspectives.

We are looking to hire a technologist to work across multiple teams in the organisation. This is a full-time position (40 hours per week) to study the advertising technology ecosystem in India and more broadly, security and privacy issues on the Internet. The candidate must be comfortable working independently and will have ample opportunity to shape the project agenda and implementation.

Apply at: https://cis-india.org/jobs/call-for-applications-technologis...
Thankfully DC has very low crime so they can instead tackle headline issues like this /s

A congressman was just carjacked in SW DC. The city was really great in the aughts and teens and has gone to shit post-2020. I wish they'd focus on cracking down on crime, which is working really well in NYC.
Sorry the smiley somehow disappeared...
The link that was (originally) submitted is to LWN just posting the release notes. The direct link(s) to the release notes is:

* https://www.openssh.com/txt/release-9.5

* https://www.openssh.com/releasenotes.html#9.5
It's fairly complicated. https://wizardofodds.com/games/video-poker/
How are they accomplishing this? I glanced at the documentation but couldn’t find anything in this regard.
I made this table to compare vector databases in order to help me choose the best one for a new project. I spent quite a few hours on it, so I wanted to share it here too in hopes it might help others as well. My main criteria when choosing vector DB were the speed, scalability, dx, community and price. You'll find all of the comparison parameters in the article.
Charles Pierse on Tactic Generate
Tactic Generate presents an incredible UX for the comparison / question answering over multiple documents prompts! For example, one of my most common workflows as a researcher at Weaviate is to dig through a bunch of papers to understand their unique perspectives on a question like "How well can LLMs evaluate search relevance?" Tactic presents an easy interface for me to simply drop the arxiv links in Tactic, have this question answered for each paper, and then aggregate the results!!

https://www.youtube.com/watch?v=L_nyz1xs9AU
Indeed, and it'd be worthwhile doing a comparison. My only point is that you have to make sure comparisons are accurate with respect to scope of services.

Private schools in the US look artificially good in terms of both finances and performance because they end up selecting the more privileged students to start with.
I'll take the charitable interpretation and assume you just don't understand the mechanics of the policy.

Amazon is saying that sellers cannot offer a fair low price to customers on other platforms if the seller can't also offer it on Amazon. This is 1) anticompetitive, 2) anticonsumer, and 3) insane.

Consider this test:

- Seller buys a crappy LED bulb from China for $0.80

- Seller is happy to list the bulb on Walmart, Target, etc, for $2.00. Net of fees and shipping and stuff they make enough money

- Amazon charges $3 in fees. Obviously the seller can't afford to sell for $2 on Amazon. They sell for $5 instead.

- However, now the seller also can't sell for $2 on competing sites. Amazon, leveraging its market share, has dictated that the seller must price Amazon's fees into pricing on non-Amazon sites, so consumers pay $5 to Target for something the seller would have been happy getting $2 for.

This is insane.
Show HN: RailsTablerStarter – Free and open source Ruby on Rails starter kit
OP is saying it's provides weak guarantees which is a result of the fact they made it easy to adopt and implement among legacy untyped code. It's the opposite of painful to work with for typing systems, compared to something like Rust which has stronger guaruntees and more predictable patterns but hard requirements the full stack is type. The result in TS is plenty of "any"s everywhere and in legacy code some situations where it's mostly just a thing veneer of type safety.

But all of that makes plenty of sense because in the early days it was rare to work on a real life production JS project that was pure TS from day one in addition to having TS only libraries.

These days it's everywhere and the work has been done to move away from rampant anys in popular libraries. The tooling is also mature and it's rare to find major JS libraries not already packaged with types or a @types import. Turbo moving away from TS was the rare exception.
More importantly (IMHO):

ssh-keygen(1): generate Ed25519 keys by default. Ed25519 public keys
are very convenient due to their small size. Ed25519 keys are
specified in RFC 8709 and OpenSSH has supported them since version 6.5
(January 2014).

* https://www.openssh.com/releasenotes.html#9.5

Previously, if you didn't specify "-t", you got RSA keys; now you get Ed25519, and if you want RSA you have to ask for it.

NIST's publication of FIPS 186-5 in February (2023) added Ed25519 and Ed448 as approved (? allowed?) algorithms:

* https://csrc.nist.gov/publications/detail/fips/186/5/final

* https://en.wikipedia.org/wiki/EdDSA#Standardization_and_impl...

Partly one of the reasons given for the default switch:

* https://lists.mindrot.org/pipermail/openssh-unix-dev/2023-Se...

Curious to know if/when the OpenSSH folks will add Ed448 (RFC 8709, like Ed25519).
Blissful sounds about right, because I don't care. It smells good, tastes good, and works just fine. Also, I buy the cheapest organic EVOO from Lidl, so I'm not exactly paying a lot.
This is a classic low-effort comment that requires a high-effort response. Still, I've finally caved in and written one.

It's like asking why do you not like driving this car in particular while it's on fire? Disliking a use of goto does not need individual justification. All the usual reasons apply, from all the way back to the 1970s when structured programming was introduced. (Although, back then, goto could jump into totally different functions so was enormously worse.)

And I already said that, in this case in particular, refactoring to avoid it would improve the code clarity. The goto I referenced in particular was to re-attempt formatting after an initial attempt did not finish within some limits. But the core element that is attempted twice could be put in its own function and simply called (up to) twice in the outer function. This would make things clearer by itself, but in addition it also means the many local variables (also a bad sign) could be split across the two functions.

More importantly – and I think this implication was always clear – this is such a fundamental and easily avoided mistake that it reflects worryingly on the developer writing the code. In short, this function is not writen by someone whose code I would want any production software to depend upon.
I'm sorry, but I asked for a clarifying question: which feature do you mean? My earlier comment mentions both Skype and ChatGPT. Which one did you mean I haven't used, and how would you know I haven't, except for the guesswork in your latest comment?

Also I did not realise I was being accused of something? What am I being accused of?
Nope, the core issue is Amazon has monopoly on advertisement and distribution. And Amazon is abusing it to suppress competitors.

Consider the scenario:

Amazon executive want more bonus, so they decide to increase retailer prices by 10x.

Now, retailers cost have increased for Amazon by 10x. But other distribution channels remain the same.

So, retailers should increase prices on Amazon only. But Amazon forces them to increase prices everywhere.

This interference of Amazon on other business is the issue

Amazon sees that it's profit is lower