skysight-inc/HackerNews huggingface dataset:
I imagine multi-device sync and group chats would be a lot more complex with E2E encryption.
The whole article is disingenuous:

- This kind of vulnerability could happen in any app, including Telegram (similar issue also happened in the past with iMessage)

- WhatsApp conversations are all end-to-end encrypted by default, Telegram does not (have to explicitely create "secret chat")

- If this vulnerability used privilege escalation to access some data outside WhatsApp, iOS indeed had additional vulnerability (and Android too)
Thank you! I didn't know about code.interact, but IPython.embed I have used in the past. My point was more that I would like a way to drop to an IPython prompt when my program crashes, I really don't like the solution of having to modify the code to insert a statement where I think my program is going to crash.

In any case I think there was a way to examine variables from up the stack of a stack trace or something like that.. bit too lazy to look it up right now. Regardless, working with a REPL in emacs is pretty great ;)

I think there is a way to do jupyter from emacs (or at least there was a way to do ipython notebooks), but I haven't used it extensively, just tested it once I think. I guess I'm pretty satisfied with the REPL and haven't found a need to have intermediate output during the running of a program.

What I do like about the matpotlib interactive approach is being able to watch the progress of a loop very easily, which is hard to do from a notebook, although there are some ways, but they are either hacky or require some pretty sophisticated things like custom widgets.
The most basic thing I see people neglecting is that inserting a network protocol is really adding many additional components that weren't there before, often doubling or even tripling the amount of code, config, and documentation required. If there's a single large project that combines "A+B" modules with no networking and you split this into networked services, then you now have:

1) "A" Component
2) "B" Component
3) "A" Server
4) "A" Client

So for example if you started off with a single "project" in your favorite IDE, you now have 4, give or take. You might be able to code-gen your server and client code out of a single IDL file or something, but generally speaking you're going to be writing code like "B -> A client -> A server -> A" no matter what instead of simply "B -> A".

Now you have to worry about network reliability, back-pressure, queuing, retries, security, bandwidth, latency, round-trips, serialization, load-balancing, affinity, transactions, secrets storage, threading, and on and on...

A simple function call translates to a rats nest of dependency injection, configuration reads, callbacks, and retry loops.

Then if you grow to 4 or more components you have to start worrying about the topology of the interconnections. Suddenly you may need to add a service bus or orchestrator to reduce the number of point-to-point connections. This is not avoidable, because if you have less than 4 components, then why bother to break things out into micro services in the first place!?

Now when things go wrong in all sorts of creative ways, some of which are likely still the subject of research papers, heaven help you with the troubleshooting. First, it'll be the brownouts that the load balancer doesn't correctly flag as a failure, then the priority inversions, then the queue filling up, and then it'll get worse from there as the load ramps up.

Meanwhile nothing stops you having a monolithic project with folders called "A", "B", "C", etc... with simple function calls or OO interfaces across the boundaries. For 99.9% of projects out there this is the right way to go. And then, if your business takes off into the stratosphere, nothing stops you converting those function call interfaces into a network interface and splitting up your servers. However, doing this when it's needed means that you know where the split makes sense, and you won't waste time introducing components that don't need individual scaling.

For God's sake, I saw a government department roll out an Azure Service Fabric application with dozens of components for an application with a few hundred users total. Not concurrent. Total.
Wow!

Citation?
PHP Requirements Checker Library
In Italy fake news about the corona virus are spreading like a bushfire on the platform, thanks to the broadcast features and the utter absence of any possible moderation on something Facebook turned into a proto-social network. That’s really why using whatsapp is dangerous.
Simple and rapid framework to build workflows using Celery
I think it's because they want to give both usability (history shared between devices) and security (E2E encryption). Not anybody or any kind of conversation need encryption, so you as the end user can choose what's more appropriate.

TBH I don't know how other secure messaging programs like Signal or Wire handle the multi-device history issue.
I wonder what the state of the mafia is these days. Referring to the Wikipedia article[1], the five families are still a thing in New York.

[1]: https://en.wikipedia.org/wiki/Five_Families#Original_and_cur...
I started near the end and thought that Columbo had been shot by the mafia. As in Lieutenant Columbo. The horror!

More seriously, though, they're great movies and I enjoyed them.

Can't help feeling though that some people come away with the wrong message: they think that mafia morality is how the world really works and so they must now embrace it.

Instead of noticing that Michael Corleone was trying to escape from it all and create a different life for his children. A life without the threats and violence.

(And then I think, hmm, perhaps mafia morality is still alive and well. It's merely that instead of being assassinated people are being deplatformed, disemployed, etc.)
There is - Google/YT promotes Lil Yachty on the frontpage and takes him from xxxK views to a million at a whim.
I read this as an announcement of the 'why' they dropped it for their own 150 active users. There's nothing wrong with saying you stop something because it has become too expensive.

It's not price shaming, it's saying that you're not willing to pay the price that has increased.
It would've been price shaming if it said that it was so much money for so little services.
Every crisis will become a malware campaign.
Remote code execution in OpenBSD with exploit
Thanks, this has been fixed.
No point having E2EE if you can just ask for the history of all chats from the application.

Not saying telegram is better. But this is a common use-case for whatsapp. (Whatsapp web transports all history).

So the E2EE argument is disingenuous if the client is closed imo.
Best Crypto Index Funds
How (not) to use shapeless for cross-layer conversions in Scala
Thanks, first explanation about these voiceless thoughts that I could understand.

I think I can produce the same voiceless thoughts. But my voiced thoughts are crisp, clear and easily hold in memory compared to other modes of thinking.

I wonder, maybe that's why I'm excellent at talking about problems, understanding them at high level, but have so much trouble with acutal engineering.
“Extraordinary claims require extraordinary proof”

As an aside, this isn’t true. There are many things right in front of us that we dismiss routinely, and “everyone knows” these things are extraordinary/insane/wrong and so on. Usually, if you spend the time to learn about such things you can discover that they’re very normal and provable, you just have to go against the crowd. That’s different from needing extraordinary evidence.

Primarily this seems to be due to disinformation efforts and plain old human biases.
> Reactions were not always positive.

Universally true: Reactions are never always positive for anything. A non-statement which will also be true of whatever replaces Workplace.

> Many people preferred not to use a tool from a company that they did not trust in terms of data privacy.

Many other people used the tool for 3 years during the free trial; how is this advisable if there are genuine data privacy issues? Seems negligent on CERN's part.

The decision point came at the transition from free to paid, not due to a change in trustworthiness of Facebook.
I think it was more about making it difficult to be hit. Both because of the irregular movement, but also because rockets exploding on the ground causes damage, and being off the ground saves you (hence good players always aiming the RPG at the ground under the opponent).
Those people haven't done their research. Telegram is marketed as secure but two big issues exist:

(1) homegrown encryption which hasn't been extensively audited, which should be considered suspect by default because it's usually broken.

(2) Most chats are not encrypted at all.
yeah, I should have made that more clar: I was talking about the sed expression on p17. It looks for "--" in stdin.
This could alsp be a word.
I realize now that the first tr before removes all non a-zA-Z characters, so in this case it should not be an issue.

However intermixing text with separators is not trivial. There are reasons we use JSON/XML for exchanging structured data.
Thanks for sharing this info! You may want to add these useful comparisons to your Readme. I will keep an eye on MS and wish you and team the best.
Clegg is presumably referring to the fact that the Saudis had access to data from Bezos's phone that the WhatsApp app itself did not have, indicating a privilege escalation (iOS issue) in addition to the RCE (WhatsApp issue).
Delayed Gratification: A Slow Journalism Magazine
I do not know what DMV is, from a French perspective.

This is to say that beside the "internationally recognized acronyms" (USA, UK,...) everything else should be spelled out if isvis localized lingo.
Corporate social media is like having your parents try and hang our an be cool with you. It just won't ever work they way they think!

I used an earlier version of this stuff at a bank, an it was very monitored. The way we were instructed to write, like and shares things made me feel even more oppressed by an already pretty stuffy job.
Exactly. That would be great publicity for Facebook, it's a win-win situation.
That's pretty cool. Is that used to inform RAID rebuilds?
I believe the "understanding" bit goes hand-in-hand with the fetishization of nerdy intellect by the modern upper-class (especially in the managerial and IT urban elite). Whereas one recurring theme of classical art had to do with the sacred, and the experience of the sacred - something you can feel, but not something you can understand.
"Ruddy also agreed that the script wouldn’t include “Cosa Nostra,” another name for the mafia"
Wow, what a cursed product. I can’t think of a single other company I would trust less with our business communications than Facebook.

Edit: Maybe pastebin? Though pastebin will honor takedown requests.
OP, are you sure you were born in year 1986 Before Christ?

https://roblesnotes.com/about/
Show HN: Regex Cheatsheet
This is an interesting consideration - but it seems to be much more "why democracy won't work" than anything to do with specific communication platforms.

If everyone was on matrix, with solid end-to-end encryption, surely that problem would be equally bad?

Lack of trust, lack of authoritative sources that can be trusted; that's different to having secure mass communication means.
I wonder... if people can differ in such a fundamental way what else can differ and also what are features that are always present.
What is the best IVF centre in India?
Show HN: Pad Pricer – Client-Side Airbnb Price Prediction
I used to spend hours trying to craft the perfect expression for my scraping projects not realizing that I don't really know regex.

This tool is a cheat sheet that also explains the commonly used expressions so that you understand it.

- There is a visual representation of the regular expression (thanks to regexpr)

- The application shows matching strings which you can play around

- Expressions can be edited and these are instantly validated
Wow, are really impressive.
But what is the license to use them ?
The article is a fluff and mixes a few concepts. Quality over quantity. Quantity is a bad proxy. Not in any particular order but some things more important than quantity: availability, clarity, accuracy, transparency, traceability. Too many people love to listen to their own voice and opinions a bit too much anyway.
If I had more time I would have written a shorter comment.
Reading this article, I was thinking that Durov was really over-exagerating when saying that WhatsApp plant backdoors, while it was simply security flaws.

But then I looked at the flaws, and that definitely raises questions. At least two of the flaws are in mp4 parsing done by WhatsApp itself, while both Android and iOS provide hardened platform tools for that.

There are two reasons you would want to do that:

- Increase security. Yeah that's a bit paradoxal considering what I said before, but it is possible you could want to do that, because Android devices are barely updated, and even though the mp4 parsing is hardened, there are known not fixed flaws on many devices.
If that was the intent, then the very first thing they would have done, is have this run inside a dedicated sandboxed process (Android allows that pretty easily), with no access to either the data or the internet.
Or they could have written it in a managed language, where the worst case of failed parsing is crashing/DoS-ing.
Or they could do it in rust of course :-)

- Increase compatibility with a wider range of mp4 files. As far as I know, mp4 support of those platforms should be good enough for most cases, but ok, let's say such a case exist, that means that they don't actually care about the security. As Durov say, they are using "end-to-end encryption" to say they are secured, but don't seem to care much past that.

I'm still not convinced those are actual purpose-built backdoors, but I will at least agree that security doesn't seem to be a core value of WhatsApp.
> At this point we should just make Fresno really desirable too or something

That's my rather unpopular opinion. Could just force the Tech Billionaires, VC's and lords of finance to point the fire hose of money somewhere else for a change.
There are a lot of undefined behaviors that only exist out of inertia and laziness. For example there's a bunch of things that should be syntax errors that are instead UB.

> Simple example: accessing an array past it's end it's undefined behaviour. If you want to remove this, you need to add bounds checking (either to raise an error or to just return 0).

What's wrong with saying "it will either return an unspecified value or trap"?
Ask HN: Did billionares build their own bubbles?
We don't need any more arms races, thank you. It doesn't take much to work slightly less hard (or less publically), communicate in a way that's efficient with other people's attention and time, and stop humblebragging on social media about your lifestyle and material goods.

It's not good to wear training wheels all the time. Worrying about the minutia of communication makes you less able to see what is being said, and makes you look for confirmation of your predictions/worries instead.
Well, some instances at CERN are enjoying Discourse, so I guess the move was inevitable?
Ask HN: With so many posts, can we get categories on HN?
Yes, sometimes it is worth to optimize for size, especially if the string is actually not used in any fast path and just need to be there.

I'll mention though that std::string (well, basic_string) takes an allocator parameter, so it could only enable this optimization for 'well known' allocators that provide aligned buffers.
They fail to mention how many potential users there were and whether this was high or low take up.

"The acronym CERN is also used to refer to the laboratory, which in 2016 had 2,500 scientific, technical, and administrative staff members, and hosted about 12,000 users."

Is it 1000 out of 2500 or 1000 out of 14500 or am I using an invalid source and the actual staff count is completely different?
EU lawmakers, with eye on Apple, call for common mobile charger
My company chose Workplace as a formal and only official channel for internal communication, including announcements from executives to all employees. It makes you have to actively on workplace to get information, knowing what's happening around. I think it's a wrong way to use, but it's already set by top c level.
There's one thing preventing me from traveling alone: a deadly allergy to sesame. This is an ingredient that gets into everything, and it's often very hard to communicate reliably to people how serious it is if I accidentally eat it. Do you know many solo travellers with obscure and serious allergies? Any tips?
Happened to us, we built a bot[1] to buy and sell bitcoins privately on Telegram. Someone messaged me saying that they would get a 'SCAM' label on our bot if we didn't pay them the ransom. We didn't comply and within a few days we got the label(guess they managed to get a lot of accounts on our bot to report scam). Their support team was unresponsive and it took around 3 weeks to get it resolved.

Needless to say, our users lost trust and we couldn't risk this happening again.

We still run the service(from request of a few existing users) but not actively promoting it.

[1] https://t.me/megadealsbot
Xcode Shortcuts to Boost Your Productivity
My First Month of Rust
I can see value in both approaches. One is a test of what happens if you go right now and buy a PV module from a nearby store. This has the implication that the module has been in the store for a while and the raw material was mined and collected many years ago. Then you compare it to getting the power from the wall socket, which similar implications that the power plant that generates the power was built many years ago using old technology.

The other approach compare the state of the art PV module vs the state of the art power plant, both being built using the latest mining and construction methods.

The answer of what is more sustainable is going to depend a lot on context. Are we comparing what a person can do right now, or what we should be doing in the future? For powering websites the general answer from the industry is currently to build data centers in depopulated areas in countries with cold climates, near a hydro power plant and with plenty access to cooling water. This is however not a solution that you can apply if the requirement is that the server must be located in Spain.
Glasgow Effect
Note that the implementation described above uses the Arc Consistency 3 algorithm for the propagate step. It's often an order of magnitude faster to use AC4, as is done in the original WFC repo and in my implementation (https://github.com/BorisTheBrave/DeBroglie).
Mathematical model for amyloid formation–catalytic nature of protein aggregation
Is this with gccgo or gc? Compiled code quality is worse for gc, though that is mostly apparent on CPU bound code that most likely won't be written in Go (but might be written in Rust).
Indeed, for some reason I tough that it is POW since it rewards work done on BOINC platform.
Corporate internal social networks are a concept that just doesn’t work because of the hierarchy involved. This is obvious to anyone who isn’t in the HR department.
That's what the article is saying though. That the entire origin story of "drones over Gatwick airport" is that someone found a damaged drone. That doesn't mean that the damaged drone was ever "over the airport", it just means someone found a damaged drone. No mention of how close to the airport, how long the drone had been there, etc. It could have been in a park nearby and someone crashed it into a tree weeks ago and it fell to the ground more recently.
This is a case of the pot calling the kettle back, to be honest. Telegram controls encryption keys centrally as well. If you want true end to end encrypted messaging then Signal is the way to go.
FWIW, I don’t understand the trend in open source projects to use Telegram for messaging given its closed source / proprietary origins.
So Apple will boot an app that gives users the ability to send adult content to other users....?

That is completely ridiculous and if that is the reason Telegram is policing adult content then Telegram is ran by idiots. You can use any IM app to share adult content, there are plenty of groups on Whatsapp sharing porn, there are plenty of groups in iMessage sharing porn, there are porn accounts on Instagram and twitter, hell the entire reason snapchat even exists is so that you can send self destructing nudes to people.

The idea that an app will be banned due to content shared with people using the app, and not uploaded and/or hosted on some public website accessible to anyone (CP on tumblr) sounds completely ridiculous to me.
Not sure about the US but unfortunately it is still a thing in Italy, especially the 'Ndrangheta. This is an article from 2014 [1] but even so, back then they said that 'Ndrangheta had a turnover of €53bn, and I can imagine it did only go up in the meantime. The bad thing is that it has "captured" most of Northern Italy, too, or at least according to what I have read online and in the papers (I'm not from Italy myself), and it also has a strong European presence: Germany, Eastern Europe [2] etc.

[1] https://www.theguardian.com/world/2014/mar/26/ndrangheta-maf...

[2] https://linx.crji.org/2019/08/30/bio-mafia-care-producea-in-...
> They only had 150 active users

"roughly 150 active users of the platform per week."

This is a distinction with a difference, "per week", casts the active user count in a different light.

> passive-aggressive jab at the three-year free trial

That's exactly how I read this.
We should be wary of blaming ‘overpopulation’ for the climate crisis
They do run bechmarks, but of course it is anyone guess how significant and representative they are. At the end of the day it is a long list of tradeoff. You pick one point in the option space and hope to have gotten it right, because it will enshrined in the ABI for a very long time.
Say you're shipping 3 weeks late, then ship only 2 weeks late. Now you've shipped 1 week early.
Building one right now, C#, SQL, Lucene.NET. It's not really a search engine, but my bookmarks organized into a public site that works like a search engine. I put my bookmarks into it and others can search it.
A Battle to Protect Forests Unfolds in Central Africa
That's true, by definition one char is one byte. What's not guaranteed is that 1 byte is one octet.
I recently rewatched it as an adult and was moved to laughter. It's propaganda so shameless that it's absurd.
Thanks, that does improve it for simple cases of pure chains of layers without any skip connections etc.

Unfortunately it's most an issue with more complicated architectures. When testing different designs I often forget to modify it in both places and sure it's not a huge deal, but having one place or two does feel like a qualitative difference in cognitive burden. For example if I introduce a bool flag which decides whether I do a particular alternative design, I have to chech the flag and do an if/else in two places: once to create the layers, once to use them.
Both have advantages, from my experience.

Communicating useful everyday things with coworkers brings in a more friendly atmosphere, which lets people trust you with work.

Going on full communication blackout helps in focusing on actually getting said work done.
If it's any consolation you miss it when it's gone.
Show HN: Bootstrap templates free download – get your site up
Young People, Pornography and Age-Verification
There's nothing wrong with dropping an internal tool because you don't want to pay for it. Posting about it publicly is a different story.

I'm not seeing why they would post about it publicly unless they wanted to put public pressure on Facebook to let them keep using it for free. To me, that's price shaming.
How close are we to making drones that can take on a modern fighter? We still need planes that are capable of establishing air superiority.