skysight-inc/HackerNews huggingface dataset:
Now that the Online Safety Bill is Law, when is Matrix.org moving out of the UK?
The online safety bill became a law yesterday, and nothing changed, it still kills E2EE(1)
They didn't backdown, and they did that marketing stunt on purpose.

Now, when are security / privacy projects like Matrix.org moving out? Because nothing can be trusted from the UK anymore, at least in regards to encryption.

1. https://www.eff.org/deeplinks/2023/09/today-uk-parliament-undermined-privacy-security-and-freedom-all-internet-users
What does this mean for accessibility?
These days when I present cash at the counter, it's as if I shouted "BOO!" while the cashier was sleeping. "DO YOU REMEMBER YOUR TRAINING?"
How normal is this?

I assume there are gluts fairly regularly so producers would to some extent be used to this?

Further what does the future look like. Input costs going down, or food price rises?
That is exactly what cloudinary does as part of their optimized delivery.

https://cloudinary.com/documentation/image_optimization#auto...

Also, your claim is that you are "first to support", not "first to serve all our clients images as jxl without asking if thats ok"...
Worked well for Cap'n Proto (the cerealization protocol)! https://capnproto.org/
In an efficient market, everything is sold at breakr even.

Produce is a competitive market, so there is no surprise that it's a market that is efficient.
Doubly more that the recommended best practices have actually reduced the key length.
> In a previous blog post they basically said they will never make a Go 2

No, they didn't say that, they said it wouldn't be backwards-incompatible with Go 1. Relevant quote:

> [...] when should we expect the Go 2 specification that breaks old Go 1 programs?

> The answer is never. Go 2, in the sense of breaking with the past and no longer compiling old programs, is never going to happen. Go 2 in the sense of being the major revision of Go 1 we started toward in 2017 has already happened.
https://archive.ph/JsDMd

> Troy, Persepolis, Pompeii may no longer be there but no major western city has perished in modern history.

Oh my, maybe ask urban developers. Many big western cities died. Most famously Detroit which was in the end poisoned by its major, but also Galveston (from biggest city in Texas to a small town), or Belchite in Spain, Real de Catorce in Mexico or the various nuclear towns in Ukraine, Belarussia or Japan.

See also https://en.wikipedia.org/wiki/The_Death_and_Life_of_Great_Am... or https://en.wikipedia.org/wiki/List_of_ghost_towns_by_country
It is not hard.

It depends on what do you plan to use programming for. Creative and sophisticated programming is hard, but CRUD one isn't
I haven’t heard of C+-, and searching for it seems difficult… which story was that?
Lichess is a non-profit with hundreds of volunteers, several part-time paid contributors/moderators and 2 full-time devs, not a company.
>That's not on a per-host basis.

I'm sorry, but this is one of the silliest nit picks ive ever seen on this site. Of course 1 million rps and 3TB/s isn't coming from a single host. 3 TB/s is far beyond the throughput of any network I've ever seen, considered or thought of, short of maybe a data center (and I don't work in that domain). 1.3 million requests per second is far beyond the capacity of pretty much any hardware available right now.
Neither can I, but there may be cases of code accidentally relying on it - there's an adage that I forgot the name of that says just that, and I think compiler manufacturers are the most aware of that adage.
Besides the Google brand meme, as someone who was bullish on the whole cloud gaming scene back then, Stadia was a DoA for me because I could neither bring my own games (like Shadow PC, or beta GFN), nor pay a flat fee and play a selection of titles (like OnLive allowed you to, many moons ago). No one was going to buy games exclusive to a platform that could Google could kill off at any time. And 'lo and behold, what we predicted came true.

Also, trying to convince devs to port games to Linux was never going to work - a more practical approach would've been to use/develop Wine instead. In fact, Valve had released Proton a whole year before Stadia went live, so if Google wanted to, they could've worked with Valve and combined their efforts to make Linux gaming better. Even if they chose not to approach Valve directly, they could've still used Wine and still benefited from Valve's upstream contributions (and vice versa). But instead they made the insane decision to try and convince devlopers to port their games to a niche platform Google which could kill off at any time... It's like they deliberately set the whole thing up to fail, then came up with excuses as to why it didn't work. Like Project Ara.
> [application containers provide] reproducible builds

If only distros provided more package versions than just the tip. I don't mind if they get withdrawn due to massive security issues but if your image requires an installation of a library, you can't pin a version because most distros will remove it after releasing an update.
Hadn't thought about the possibility of using http/2 in order to generate race conditions. Nice. Interesting trick.

Years ago, Stripe had a capture the flag related to distributed systems (I believe it was the second one they ran). One of the final levels involved attacking a system that would make calls to 3 other systems in turn that each held part of the key before calling back to your webhook. You could tell how many systems it had spoken to by watching for incremented port numbers between the requests.

I got killed by the jitter, but I seem to recall someone saying there was a way to stream your requests at a lower lower level on the same socket. Caveat, 10 years ago, details hazy.

Found the HN thread from the time though https://news.ycombinator.com/item?id=4453857
It is probably hard to compete with old investments that are payed off already? Prices should rise as maintenance takes its toll.

Fundamentally, farmers are valeuing their work way to low and our work way to high. How many loc of C# do I need for a bottle of milk?

The countryside need to squeeze us the city dwellers abit more. The income disparity allows for it and the countryside need to be able to flourish too.
It is two cities, SLC and Walmartville. It's like in literally the second line of the FAA notice.
> You say it drives your wife crazy, so it seems that being in this state doesn't actually help you resolve issues between you and your wife. It only numbs you to the conflict and puts the whole burden on your wife.

I don't understand why you're saying this. The technique wasn't primarily to resolve issues with spouse; it was to fight panic attacks.
Completely normal? I don't see how you could expect anything else in a competitive market for any commodity.
Pokémon characters must have been conceptualized and designed by quite a few people at this point. Each of those character writers will draw inspiration from various sources.

I’m not quite sure what to do with knowing it was “inspired” by a certain geological phenomenon. Yes, it might be a feel-good fact about a fictional character which might guide kids to learn about the world around them.

However, unless there’s some deeper aspect that carries through to character development, the Pokémon world can easily get filled with superficial characters with a disjointed “look at me, I’m so cosmopolitan” feel.
I don't exactly write "HTML" by hand if by HTML one means (as seems to be implied in the article) long text documents with HTML tags in it. For that I use markdown because it's faster and much easier to read.

But I do write HTML templates by hand when I code webapps; it's cleaner and more efficient than use some kind of library.

I tend to use DIVs with custom data- attributes; I don't know if it's a good or bad practice but I'm not familiar enough with other approaches and I'm used to it.

I also code SVGs by hand and it's surprisingly easy and straightforward; most (not all, but most) drawings can be approximated by combining elementary shapes (instead of paths).
Yet if you followed the money those programs are funded by government adjacent entities that usually have 3 letters.
I dislike the name mini mansion.

It seems more aimed at us reading about it, rather than the people unfortunate enough to need it.
Depression, the unwanted red pill experience of feeling what it is really like to be without self-deception.
Don't think about it, just function.
Didn't do that, but one of my earliest "dynamic" websites ca mid 90's would have a CGI try to ping the client with a short timeout, and if we got an answer that indicated a leased line or something rather than dialup and we'd serve up a heavy animated version of our logo instead of a static image... But could be used as a vague indicator of distance too.

Trickiest part of doing that today is so many fewer hosts are reachable via icmp, so you'd probably be better off serving up an initial response with some JS to measure more accurately.

(Another silly little thing we added was a link back to a users own ISP from the top ten or so of our competitors based on net block - got us a worried phone call from one of them who thought we'd been hacked and wanted to make sure we didn't think he was responsible)
Why create backdoors if you can convince everyone to use less effective cryptography?
TBF you can have block scoping in an indentation-based language, though it probably help to merge the too, as in Haskell: `let…in` will define variables in the `let` clause, and those variables are only accessible in the `in` clause (similarly case…of)
> Stackoverflow is doing just fine with Windows Server.

Good for them! I guess it mostly depends on what you want to build your platform around, what the constraints are and what developer skillsets are popular in your market.

> Java 6 would still blow the water out of Ruby's slow interpreter.

Probably! I do recall major GC improvements starting from JDK 8 onwards, though when compared to Ruby even the older versions would probably be decent: https://blogs.oracle.com/javamagazine/post/java-garbage-coll...

It would actually be fun if someone pulled out the old versions from back then and did some benchmarks, though maybe asking someone to build a full stack application in such a dated tech would be a tough ask, unless they're passionate about it!

> Being pleasant isn't relevant for performance.

If the discussion is just about performance, then that's true.

If we look at things realistically, then there's more to it - like using a tech stack that allows you to iterate reasonably quickly, as opposed to making your developers want to quit their jobs every time they have to debug some obscure Servlet related bug or to work with brittle configuration in XML (been there dozens of times), to the point where not as much could even get built in a given amount of time with a particular stack due to its challenges.

I do hate when people say that additional nodes are way cheaper than developer salaries, but they're also correct most of the time. Of course, there's also the humanitarian take to just not forget about the developer experience, otherwise we'd have written all of our web software in C++ even back then. It'd work really fast, but we'd have way less software in general.
Stable Audio: AI music generation
Tofu has an ancient reputation as a vegetarian replacement for meat. Its taste depends on the preparation (raw Tofu is very flexible).

Some people associate it positively ('ethical', 'wholesome', 'tasty'), others do not ('not the real thing', 'tasteless').
Only if you assume there is no regulator or shared protocol.
Any project of any size with any degree of coordination ends up with considerable wasted motion and "do what I mean not what I literally said." Maybe this wouldn't happen in an ideal world. We don't live in an ideal world. Even rigorous efforts to specify requirements (e.g. waterfall) didn't work very well and it's pretty much the definition of iterative development of anything that you throw a lot of stuff out but hopefully not big chunks (which 12 hours is not). That would be spending a month of something to find you were on the wrong track.
and Dropbox with Python
Depends on your definition of big.

Partly, you need mobile now, so any Rails stuff is likely to be back-end and hidden. Plus big investors like to go for the exciting stuff.

But if you're looking at companies aren't household names (taking smaller amounts of investment), there are lots out there.

Syft (recruitment) were founded in 2016 and have revenues of over $100m per year - although that's partly due to acquisition by a larger competitor, so when I just looked, separating their valuation from the group wasn't immediately obvious.

I've freelanced and contracted across a few niche industries (construction, print, airport signage management!) where I was building something against competitor software that I discovered was at least partially built with Rails. Those big players in each niche would have revenue in the tens of millions and from what I could see, very small technical teams.

But anyone outside those industries would never have heard of these companies.
High food prices make for angry voters, though.
Nothing is modest at Lichess scale, we have a few million users, several thousand of them post in forums daily and chat with each other.

Also, we're a chess website with more than one million games per day, and some people like to cheat. We're classifying "fair play and anti-cheating" as "moderation" in our expenses because the two are intertwined.
I wonder how big of an improvement could be achieved by combining all the different approaches like this together.
Deutsche Bank struggles with fallout after Postbank IT migration
If you are curious, here is how JPEG-XL adoption looks like after 42 hours of iOS 17 launch: https://twitter.com/adityapatadia/status/1704407864326939043
Amidst the inefficiencies plaguing the fresh produce sector, the astute capitalist sees ripe opportunity. By harnessing the superior capabilities of AI and large language models, one can exploit supply chain vulnerabilities and leverage arbitrage opportunities.
Unrelated but cute too: in the Unicode world tofu is when systems can't render a character and you get a square (tofu)
I know for previous code changes they had a tool that would just do a find & replace for you.

But you're describing a linter, which just outputs a line on your terminal with a warning; I wouldn't want a tool like that to add churn and tasks to my codebase (even though I'm guilty of adding TODOs myself and leaving them for years because ultimately they're not important enough)
After reading this, I still don't know if there is actually any difference from an end user point of view compared to OCI images.

Yeah, if you run Docker then you should only run one service, but that's not a technical limitation. I have images that have the standalone application, but you can also get them with a bundled database in the image for simplicity.

I can create a basic Debian container, connect and apt install anything I want. I can also snapshot the image using command tools.

So other than emotional arguments that you should run single services in a container from the OCI side, is there actually any difference?
There is probably some sweet spot of n between 0.5 and 2, but not near 1, such that the quotient of comment score^n and thread score^n gives good results.
Irish company Manna have been doing this in two Irish suburbs for a number of years now. They're worth checking out - their CEO Bobby Healy often tweets interesting stuff around payloads, journeys per day, route maps etc. I've worked with them a little and think they're building something really interesting.
Streaming has already been mentioned. Efficiency might be another argument. If your messages are typically being sent through a channel that already has a way of indicating the end of the message then having to express the length inside the message as well would be a useless overhead in bytes sent and code complexity.
It's not listed in this page because it varies month-by-month, but we publish our yearly books in a lichess blog post and on the government "Journal Officiel":

2022: https://www.journal-officiel.gouv.fr/pages/associations-deta...

2021: https://www.journal-officiel.gouv.fr/pages/associations-deta...

The TL;DR is that donations so far exceed our expenses, thanks to the generosity of our userbase, and thanks to the hundreds of volunteers doing work for free.
The rollover of the license is 3 years, not 5 years.
JXL is same speed as AVIF ? but what everyone has been commenting is that AVIF is 100x slow
Right. Then import more slave labor to keep costs down. /s
I'm looking at the naming, the top one is a map, the bottom one is a slice; that's where my internal knowledge ends though. I know a slice will have a backing array on the heap so there's some pointers / references involved.
> This may be more intuitive for some developers, especially those that don't use SQL all the time.

I tend to recommend my famous talk to such developers: https://www.youtube.com/watch?v=wTPGW1PNy_Y
I live in the center of a big city, but my windows are pointed away from the road. At the moment I am hearing someone one building over three floors down practicing piano, and the startup devs opposite chatting over a cigarette on the fire escape.

Might be "close enough to silent" for you, but cars are really loud. If this is in even the same league, this is too loud, especially as you just can't get a flat with windows pointed away from the drones.
In practice it won't break anything, unless there is code that accidentally relies on this behaviour. Most of the code affected by this will already have a workaround - the `x := x` mentioned - which can be removed after applying this change.
Just factually incorrect.
In the standard it is not specified if such loops mutate or rebind, and you have to assume it doesn't rebind if you capture variables. I do think however that once you learn how it works it stops being a problem (in any case I can select the form, macroexpand it and it shows how it's implemented)
That’s Not Invented Here syndrome, and it’s decidedly bad advice.

The cost of dependency management may be understated but it’s always less than the cost of reimplementing everything found in established libraries.
Perhaps I should elaborate.

One of my first really nasty bugs of this kind was platform-independent, in the sense that the fix affected all platforms. Once I had found the buggy code it was easy to reproduce it on my development workstation by constructing a more efficient reproducer.

But it did not affect all platforms equally. With the hardware on my desk it led to a slow memory leak and would crash after very long time, on a particular customer's hardware it leaked all memory in an hour, and the customer had more memory than I. I don't remember why, maybe the different CPUs changed whether a race was lost/won? Anyway, I restarted often and could have gone a year without noticing the bug in my office, but even on the same platform as I personally used, customers would have infrequent crashes.

So. Platform-dependent or not? It's hard to classify in those terms, don't you agree? And that's typical in my experience.
Eastern Arabic digits are read left-to-right, surprisingly. So e.g. in license plates, phone numbers, etc. (where you read the digits separately), you go left-to-right.

When speaking the numbers, you are right, the rules are the same as in German, e.g. Fifty-one is Whahed-wa-Khamseen, so similar to German Ein-und-fünfzig.

P.S: I'm German and live in Saudi, but my knowledge of Arabic is limited, so take it with a pinch of salt.
Any insight on why Firefox and Chrome dropped it, other than how disappointing it felt? What was their reason?
No, it's all vanilla JS.

Moreover, I don't even have internal dependencies, every page is written from scratch (with a pinch of copy-paste). This is a hobby project, and I like to program, so I'm just not interested in code reuse.
I couldn't tell you the last 10 bugs I saw (they are too frequent and varied to memorize), but here are the most common bugs I run into:

- Firefox randomly freezes up on Android (Google Pixel 6a), and then sometimes this crashes my phone and causes it to spontaneously restart. This usually happens at least once a day, often more, despite being very widely reported for a very long time.

- Assorted Adobe software develops strange behavior after it has been open for a while (selected items stop showing as selected, some tool or editing technique spontaneously stops working, exported images are borked, pressing ctrl+S reports that it has saved the file but it actually has not, etc). I have probably seen 50+ unique failure states over the last couple of years. I am affected at least a couple times a week, and I have learned to restart my software several times a day as a preventative measure.

- On desktop (Windows), some website will fail to load something or it may display bizarre behavior (erratic scrolling long after the page has loaded, back button stops working, links stop working, video playback stops working, etc.). Usually reloading the webpage fixes it, but sometimes the tab itself has broken or the browser has to be restarted. Other times, it's a consistent bug in the website and there is nothing to do but wait a couple days for them to fix it. I usually see website/browser issues like these about once a week or two.

It's better than the 90s, but it's still pretty bad and could be way better (as proven by all the software/systems/sites out there that don't have so many bugs).
Well - true, but there are plenty of stories of people being abandoned by friends and family on the strength of an accusation.
Transactions apply across full object graphs. The fact that it uses a KV store under the hood is exposed to you, but it doesn't impose limits.

For example if you read an object, read some fields, follow a reference to another object, loop over a list you find there, then make some changes and commit, the underlying transaction will only apply if those operations are conflict free.
No, you mean that - in order to justify the continued existence of the NSA - but I really do mean NSA when I state NSA.

There are no other intelligence agencies coming even close to the human rights violations committed every millisecond by the American people.
Simple business lessons from a real estate developer
What do you mean again?

Very few people outside a small clique want or care about self-hosting anything.
Isn't more explicit control of memory allocation useful precisely in the places where the default behavior would murder you? I don't see the incompatibility. Many python and java programs have portions that are native code for performance reasons (though that's not necessarily just about GC).

What's relatively rare is a program where the whole thing is absolutely performance critical rather than just some parts.
Yes, "submessages"in Protobuf have the same field serialisation as strings

The field bytes dont really encode tag and type, they encode tag and size (fixed 32bit, 64bit or variable length)

Protobuf is a TLV format. In that regard, it's not unique at all.
No, it’s just an obvious behaviour when you understand how the language works.
> But all that is part of programming.

Nah, its systems analysis, a field which is largely either forgotten (in the “cross-functional means everyone is a nobdifferentiated developer” school of Agile teams) or replaced with “business analysis”, whose practitioners have less relevant skills (particularly, systems analysts were experienced programmers with additional process engineering skills, while BAs are nonprogrammers in a role that is often structured more as stenography than engineering) and “software architects” (who have a closer skill set to systems analysts, but have a role with a simulta!eously more abstract and narrower, implementation-focused orientation.)

Systems analysis requires (or at least benefits from) an understanding of programming, but its not the same skill