10 interesting stories served every morning and every evening.
I’ve used Windows for as long as I’ve been alive. At 6 years old, my first computer was a Windows 98 machine, with an Athlon XP 1900+ (Palomino core) and a GeForce 440 MX, blessed with a generous 256 megabytes of RAM.
Looking back, I kinda got scammed with that graphics card, but what could I do? I was a silly kid. (The missing shader support came back to bite me in the ass)
Also, is it weird that I still remember the specs of my first computer, 22 years later?
Anyway, Windows has been familiar and comfortable. I knew all the workarounds and how to extract maximum efficiency from it.
I was a happy user, for over 20 years, and Windows has been my go-to for everything computer-related.
Even after becoming a software developer and using a macbook, I’d still find myself reaching for Windows at times.
That is, until Microsoft decided to turn it into something completely unrecognizable and unusable.
I think it started with the Windows 10 full-screen ads.
You know, those friendly suggestions telling you to try OneDrive or to “use the recommended browser settings” (reads as “please try Edge and OneDrive, we’re desperate”).
Actually, scratch that, I think it really started with the non-consensual updates:
Oh you’re doing work? That’s so cute… we’re gonna close whatever apps you had open, because we’re updating now. We own your computer.
You had unsaved work? Too bad, it’s gone, get bent.
At first I ignored it, and carried on as normal. Sure, I’d get mad from time to time and I’d complain.
But hey, nothing beats the convenience of being able to have all of your applications in one place
My breaking point came with the 24H2 update. It installed on my system without my consent, like any other major update. I knew there were problems with it, people were already complaining on Reddit, so I just postponed it, and kept postponing it.
All it took was for me to leave my computer on and unattended for a while, and BOOM, just like that - the major OS update that nobody wanted, it was on my computer.
As soon as 24H2 landed on my machine, I encountered a bug so bizarre I thought I was losing my marbles.
If Chrome was positioned under any other window, it would start having what I can only describe as a visual seizure.
Here’s Ableton Live with Chrome (Reddit) under it:
Worse, there was a decent chance this would trigger a full system lock, leaving me smashing my desk in impotent rage. I shit you not.
I tried to rollback. The rollback failed with an error. I reinstalled Windows. The bug persisted.
Like digital herpes, I just couldn’t get rid of it.
The solution? Installing an Insider build. Yes, the solution to Microsoft’s broken stable release was to use their unstable release.
For the Windows Defenders (see what I did there?), I tried uninstalling the display drivers with DDU, and testing other versions. It didn’t help.
Either I stayed forever on the older build, or I’d have to deal with this. And don’t tell me to forever disable updates, I’ll completely lose it.
The Insider build worked…sort of. But now I had a new bug: Chrome would randomly lock up for about 30 seconds when a video was playing. My options were to wait it out or press Ctrl+Alt+Delete and Esc to force my way back to a working browser. After some digging, I discovered this was caused by an NVIDIA-Microsoft driver incompatibility.
I’ve found out that the flickers and the chrome lock-up issues are likely caused by the Multiplane Overlay (MPO) pipeline. Microsoft blamed NVIDIA for not correctly implementing it in their drivers. NVIDIA blamed Microsoft. What’s clear is that if you were facing this issue, you were essentially screwed because these 2 companies would just pass the hot potato to each other.
I should mention that this bug persisted even after I went off the Insider build and on 25H2. And when I posted on r/Microsoft, they just deleted it.
The latest and greatest OS surely cannot be broken beyond repair, surely I’m using my PC wrong.
So there I was, finally grasping the reality of what you’re up against, as a Windows user:
* Updates that install without permission and brick my system
* Copilot and OneDrive ads appearing in every corner of the OS
* Copilot buttons everywhere, coming for every application
* Can’t even make a local account without hacking the setup with Rufus (they even removed the terminal workaround)
* Zero actionable fixes or even an aknowledgment of their fuckups
People often say Linux is “too much work.”.
And I agree. They’re completely justified to complain. There’s the documentation page diving, the forums, the reddit threads. And, most importantly, you have to basically rewire your brain and stop expecting it to behave like Windows used to.
But I looked at the list above and realized: Windows is now also too much work.
And the difference with Windows is that you’re going to do all that work while actively fighting your computer only for it to be undone when the next surprise update comes and ruins everything.
You might be thinking “just disable updates, man” or “just install LTSC”, or “just run some random debloat script off of GitHub”.
Why? Why would I jump through all these hoops? I’d rather put in the effort for an OS that knows what consent is and respects me as a user.
To set the stage: I’m a software developer and a musician.
As you can imagine, I was legitimately worried about app support on Linux, and how it would distrupt my workflow.
But after Chrome crashing for the 10000th time, I said “enough is enough”, and decided to go big. I installed CachyOS, a performance-focused Arch-based distribution, on my main machine (9800X3D, RTX 5080).
It wasn’t a painless process. In fact, sleep mode was broken from the start, and my system would fail to detect the monitor after waking up.
What’s more, Ableton Live does not have a native Linux build, only Windows and macOS. So I couldn’t use it anymore, at least not without fucking around with Wine (which doesn’t fully support it), or without keeping a Windows VM and taking an L on audio latency.
But unlike Windows, on CachyOS I could actually fix my NVIDIA woes by following this thread on their forum.
All I had to do was add the NVIDIA modules to mkinitcpio. One config change, a command to rebuild the initramfs, and problem solved.
I also found a good native alternative to Ableton Live - Bitwig Studio, which bothered to release a native Linux Build.
Thanks to the constant progress that was made with Pipewire, I’m getting audio latency on par with Mac OS, and lower than Windows. And my workflow didn’t even change that much, since Bitwig is made by ex-Ableton developers that seem to give a shit.
As for my development tools, on Windows you already accept the fact that you WILL use WSL or docker, so realistically I just cut the broken middleman.
Now compare that to the Windows fuckery above.
If 3 years ago you would have told me that Microsoft would singlehandedly sabotage their own OS, doing more Linux marketing than the most neckbearded Linux fanboy (or the most femboy Thinkpad enjoyer), I’d have laughed in your face, called you delusional, and then hurled some more insults your way.
Yet here we are, I’ve been dual-booting CachyOS for over a year, and in the last month I’ve been using it exclusively.
If you’re thinking about making the switch, I’d recommend you do a little research first.
Look up the tradeoffs between a rolling release distro and a stable release, it might just save you a headache.
For me, the fast updates of Cachy/Arch are a good thing, but you can imagine that you are effectively trading stability for new features.
So what is the actual state of Linux in 2026, from my honest perspective?
All major browsers (Chrome, Firefox, Edge, Brave) have native Linux builds. Full support. No compromises.
Video playback works flawlessly, with hardware acceleration even. On AMD, on NVidia and yes, on Intel too.
Linux is the preferred platform for development.
Better terminal support, native package managers, Docker runs natively without the WSL overhead, and your production servers are probably running Linux anyway.
Hell, even Microsoft has their own Linux distro, Azure Linux (Formerly CBL-Mariner).
This is where people assume Linux falls short. And they’re right, but not completely:
* Adobe Suite: Runs via Winboat. Far from perfect (no video acceleration, laggy at times), but functional
So while content creation is viable, the compromises might be dealbreakers.
* Audio latency: Thanks to PipeWire, Linux audio latency is actually lower than Windows
Here’s where things get interesting. The perception is that gaming on Linux is a no-go. In 2026, that’s increasingly untrue:
* Proton/Wine: Pretty much all games without kernel-level anti-cheat work out of the box through Steam’s Proton compatibility layer
* Performance: For AMD GPUs, gaming performance is on par with Windows, on average
* NVIDIA: There was a 10-30% performance penalty on Intel/NVIDIA GPU setups, but recent Vulkan extensions are taking care of that.
NVIDIA has released beta drivers making use of these improvements, and once Wine/DXVK/Proton are updated to make use of the extensions, the performance delta should be essentially gone
The only real limitation is that some games with anti-cheat like Valorant, Call of Duty or League of Legends won’t run. But honestly I think not being able to launch League of Legends is actually a feature - one final reason to install Linux.
It’s not all bad, though. Arc Raiders makes use of Easy Anti-Cheat, yet runs flawlessly. In fact, I’ve been playing it like a madman. It goes to show that if the developers want to, it’s possible.
Still falls short compared to Windows and Mac OS (Autodesk, I’m looking at you).
The silver lining is that Blender has a native build. So if it’s your main application, you’re good to go.
Basic operations are so much faster on Linux. Opening directories, launching applications, system responsiveness. It’s like your computer took a line of coke, and is now ready to work.
No more waiting for the Start menu to decide it wants to open. No more File Explorer hanging when you need it the most.
Since we’re on the topic of Linux improvements, I want to address the elephant in the room - people who keep saying “I want to switch”, but keep moving the goalposts:
“Okay, but what about Y?”
If you’re always finding the next reason not to switch, you’re not looking for solutions, you’re looking for excuses to stay complacent.
I was that person, so I would know.
At the same time, I want to take it down a notch and say that there are still plenty of use cases (Especially creative work, and like stated previously, 3D modelling and also Game Dev) where it simply doesn’t make sense to switch.
So if you’re in that scenario, don’t feel pressured, just wait for things to improve.
And if you don’t plan on ever switching, more power to you.
I’m not here to judge, just here to vent my Microsoft frustrations.
And I didn’t really want to switch either, because who wants to re-learn how their computer should be operated from scratch? What I really wanted was for Windows to work, but Microsoft didn’t.
While I’m enjoying my new Linux setup, Windows 11 is having a miserable year, and we’re only a month in!
According to Windows Latest, there were over 20 major update problems in 2025 alone, and 2026 is starting off strong, with the January update causing black screens and Outlook crashes.
Here’s a quick 2025 Spotify Wrapped of the bugs Windows users dealt with:
* The Copilot app accidentally getting deleted (okay, this is actually a good change for once)
And the company’s response? Crickets. They’re busy boasting that 30% of their code is currently being written by AI. Don’t worry, Microsoft, we can definitely tell.
For the remainder of 2026, Microsoft is cooking up a big one: replacing more and more native apps with React Native. But don’t let the name fool you, it’s never going to be as close to native as the real thing. These are projects designed to be easily ported across any machine and architecture by making use of JavaScript.
And each one spawns its own Chromium process, gobbling up your RAM so you can enjoy the privilege of opening the Settings app. And each one of these apps creates an instance of V8 or Hermes per app, which adds additional overhead (RAM + CPU). I’d argue you do not need that overhead just to open a Settings app.
I could maybe understand this for a weather widget. But when it’s coming for core system apps, I think it’s just lazy.
I’m gonna go full conspiracy nut here, but I bet it’s because it’s easier for LLMs to write JavaScript, and Microsoft can’t be asked to pay actual humans to write (and test) proper native code.
Meanwhile, entire governments are abandoning Windows for Linux, the term “Microslop” is trending on social media, and Windows 11′s reputation is at its lowest point ever.
So here I am. Fully switched to Linux.
Not because I’m some open-source idealist or command-line warrior (I’m just some guy), but because Microsoft turned into Microslop.
Recently, Microsoft CEO Satya Nadella wrote a blog post asking people to stop calling AI-generated content “slop” and to think of AI as “bicycles for the mind.”
...
Read the original on www.himthe.dev »
“[Nvidia CEO] Jensen Huang Is Begging You to Stop Being So Negative About AI” — Headline from Gizmodo
Guys, enough is enough. Bullying is a serious issue, and it’s time for me to speak out. There’s an extremely hurtful narrative going around that my product, a revolutionary new technology that exists to scam the elderly and make you distrust anything you see online, is harmful to society. This slander is totally unwarranted, and I would really appreciate it if everyone would stop being so mean about this thing I just invested a billion dollars in.
As someone who desperately needs this technology to work out, I can honestly say it is the most essential tool ever created in all of human history. Don’t mercilessly ridicule it just because it steals the joy out of your hobbies and creates sexually explicit images of women without their consent. Seriously, please stop! It really hurts my feelings.
It’s easy to throw stones if you think about the job displacement and ecological destruction caused by this pointless technology. But such black-and-white, not-wanting-billionaires-to-get-richer thinking is, quite frankly, cruel. You can’t just measure the value of something in terms of “whether or not it makes everything worse for everyone.” The world is much more complicated than that.
This technology is going to fuel innovation across industries and solve all problems of feminism and equal rights. Yes, it’s expanding the surveillance state, and yes, it’s destroying the education system, and yes, it’s being trained on copyrighted work without permission, and yes, it’s being used to create lethal autonomous weapons systems that can identify, target, and kill without human input, but… I forget my point, but ultimately, I think you should embrace it.
Lately, I feel like I just can’t win with you guys. Please, just use my evil technology. What’s so wrong with that? Just use it. I’m begging you. I want to continue living my immoral technofascist life without any criticism.
...
Read the original on www.mcsweeneys.net »
This, if it is still visible:
Next up, age verification for ADSB?
...
Read the original on alecmuffett.com »
Earlier today, as referenced in our FY 2025 results release, the ASML Board of Management shared the following internal message with employees.
Dear ASML colleagues –
Today we shared our full-year financial results for 2025, as well as our outlook for the year ahead. The semiconductor ecosystem is poised to experience significant growth in the coming years, and ASML is well positioned to leverage this positive development. On behalf of the Board of Management, I want to thank everyone for their contribution to this success.
We can attribute our success to our customer dedication, engineering talent and collaborative approach to the ecosystem. Our ability to innovate and execute has generated substantial benefits for our customers and suppliers, our colleagues, and our investors. We intend to continue to grow our workforce and footprint, including at our planned second campus in Eindhoven, in line with customer demand.
As with any company that grows rapidly, however, we need to be mindful that the way we have grown does not slow us down. The feedback from our colleagues, our suppliers and our customers shows that our ways of working have, in some cases, become less agile. Engineers in particular have expressed their desire to focus their time on engineering, without being hampered by slow process flows, and restore the fast-moving culture that has made us so successful.
We believe it is important to address these issues so that we are well prepared for future growth and well positioned to continue to deliver for our customers. As a result, we are announcing today that we intend to strengthen our focus on engineering and innovation in critical areas of our company through the streamlining of the Technology and the IT organizations.
In the Technology organization, we are proposing to shift from a project/matrix setup to one where most of our engineers will be dedicated to a specific product and module. This will allow us to simplify processes and decision-making. This need for simplification is something that we have heard consistently from all levels of the organization.
We are safeguarding what makes us strong: a dedicated foundational team which will ensure that we continue to develop our deep technical competence, and drive fit-for-purpose commonality and standards across all engineering domains.
As a result of these proposed changes, some roles — mainly at the leadership level — may no longer be required. At the same time, to retain our engineering capability, we will create new engineering jobs to strengthen existing technology projects and embark on new ones to support our own and our customers’ growth plans. While this will allow some of our impacted colleagues to move to new roles, we have to acknowledge that some will leave ASML as a result.
In addition to the Technology changes, we will also look at the setup of the IT & Data organization, similarly seeking ways to streamline its structure to optimize its delivery capabilities.
In the coming weeks we will be working closely with our social partners in the Netherlands to discuss the intent and extent of these changes. At this stage, we believe the proposed changes could ultimately result in a net reduction of around 1,700 positions, mostly in the Netherlands, with some in the United States.
The focus of these changes is on the Technology and the IT organizations. ASML continues to grow and will need to create roles as required to meet customer demand for new machines and servicing, including in Manufacturing, Customer Support and Sales.
Of course, every colleague is someone that we value and appreciate: We are committed to acting responsibly - with care, speed, transparency, and fairness - and to supporting them through this change.
We recognize that this news may create uncertainty and raise questions for many of you, but we believe strongly that it is important to be transparent in our approach. We will host all-employee meetings today to share more about the proposed changes. Further information sessions will be held for teams affected, and we commit to continuing to inform you all about what we can, when we can.
As our FY 2025 financial results demonstrate, we are choosing to make these changes at a moment of strength for the company. Improving our processes and systems will allow us to innovate more and innovate better, generating further responsible growth for ASML and our stakeholders.
With best wishes
Christophe, on behalf of the ASML Board of Management
...
Read the original on www.asml.com »
We’re excited to announce the release of pandas 3.0.0. This major long-awaited release brings significant improvements to pandas, but also features some potentially breaking changes.
Dedicated string data type by default: string columns are now inferred as
the new str dtype instead of object, providing better performance and type
safety
Consistent copy/view behaviour with Copy-on-Write (CoW) (a.k.a. getting
rid of the SettingWithCopyWarning): more predictable and consistent behavior
for all operations, with improved performance through avoiding unnecessary
copies
New default resolution for datetime-like data: no longer defaulting to
nanoseconds, but generally microseconds (or the resolution of the input), when
constructing datetime or timedelta data (avoiding out-of-bounds errors
for dates with a year before 1678 or after 2262)
New pd.col syntax: initial support for pd.col() as a simplified syntax
for creating callables in DataFrame.assign
Further, pandas 3.0 includes a lot of other improvements and bug fixes. You can find the complete list of changes in the
release notes.
The pandas 3.0 release removed functionality that was deprecated in previous releases (see here
for an overview). It is recommended to first upgrade to pandas 2.3 and to ensure your code is working without warnings, before upgrading to pandas 3.0.
Further, as a major release, pandas 3.0 includes some breaking changes that may require updates to your code. The two most significant changes are the new string dtype and the copy/view behaviour changes, detailed below. An overview of all potentially breaking changes can be found in the Backwards incompatible API
changes
section of the release notes.
Starting with pandas 3.0, string columns are automatically inferred as str
dtype instead of the numpy object (which can store any Python object).
This change improves performance and type safety, but may require code updates, especially for library code that currently looks for “object” dtype when expecting string data.
For more details, see the
migration guide for the new string data type.
This new data type will use the pyarrow library under the hood, if installed, to provide the performance improvements. Therefore we strongly recommend to install pyarrow alongside pandas (but pyarrow is not a required dependency installed by default).
Copy-on-Write is now the default and only mode in pandas 3.0. This makes behavior more consistent and predictable, and avoids a lot of defensive copying (improving performance), but requires updates to certain coding patterns.
The most impactfull change is that chained assignment will no longer work. As a result, the SettingWithCopyWarning is also removed (since there is no longer ambiguity whether it would work or not), and defensive .copy() calls to silence the warning are no longer needed.
# Old behavior (pandas < 3.0) - chained assignment
df[“foo”][df[“bar”] > 5] = # This might modify df (unpredictable)
# New behavior (pandas 3.0) - must do the modification in one step (e.g. with .loc)
df.loc[df[“bar”] > 5, “foo”] = 100
In general, any result of an indexing operation or method now always behaves as if it were a copy, so modifications of the result won’t affect the original DataFrame.
For more details, see the
Copy-on-Write migration guide.
You can install the latest pandas 3.0 release from PyPI:
Or from conda-forge using conda/mamba:
Running into an issue or regression? #
Please report any problem you encounter with the release on the pandas issue tracker.
Thanks to all the contributors who made this release possible!
...
Read the original on pandas.pydata.org »
The UK Government recently unveiled its ‘AI Skills Hub’, which wants to provide 10 million workers with AI skills by 2030. The main site was delivered by PwC for the low, low price of.. £4.1 million (~$5,657,000).
It is not good. Like, at all - the UI is insanely bad and it’s clear that this was just a vibecoded site (to be fair, this is the AI Skills Hub, but c’mon, where is the pride in your work? I would be ashamed to even release this as a prototype!)
PwC didn’t even write any of the course content! The only thing the Skills Hub does is link out to external pages, like Salesforce’s free Trailhead learning platform:
Note that I’m fairly certain this course already existed before the contract was even awarded, so all the site does is.. link out to other sites?
PwC itself also admits that the site does not properly meet accessibility standards:
Even for those without a disability, the lack of here in this regard means that the site can be very confusing and buggy as a result.
The site has a course on “AI and intellectual property”. One thing it mentions is fair use:
Except that fair use is not a thing in the UK - that’s a US concept! The UK uses what’s known as “fair dealing”, which is more restrictive than fair use, so the details here are plain wrong.
The interface for this website has also not been clearly thought out - one glaring example is the process of actually enrolling in a course.
On the course page, the “Enroll Now” button is tiny, and if you don’t see it and try scrolling down to the bottom, you will find yourself nothing but a comment section!
Then you have other bugs too, like the “Skills & Training Gap Analysis” - which is linked at the top of the site! - apparently being closed off to the public for no reason:
To be honest, seeing this made me angry.
I’m angry at the sheer wastefulness of the UK Government here. Our public services are collapsing - while £4 million is admittedly chump change for the UK government, there are real people behind these numbers - families waiting months for NHS appointments, children in crumbling schools, vulnerable people not getting the care they need. The waste feels particularly galling when you realise that almost no one will actually use this site!
I’m also angry that the small webdev businesses we have here in the UK were left out of this - for less than 5% of the cost, we’d have a better website and help out small businesses who actually care about their work, instead of handing the project to a multinational company that made nearly $60 billion in revenue in a year and has zero qualms about ripping off the British taxpayer.
...
Read the original on mahadk.com »
* WhatsApp has adopted and rolled out a new layer of security for users — built with Rust — as part of its effort to harden defenses against malware threats.
* WhatsApp’s experience creating and distributing our media consistency library in Rust to billions of devices and browsers proves Rust is production ready at a global scale.
WhatsApp provides default end-to-end encryption for over 3 billion people to message securely each and every day. Online security is an adversarial space, and to continue ensuring users can keep messaging securely, we’re constantly adapting and evolving our strategy against cyber-security threats — all while supporting the WhatsApp infrastructure to help people connect.
For example, WhatsApp, like many other applications, allows users to share media and other types of documents. WhatsApp helps protect users by warning about dangerous attachments like APKs, yet rare and sophisticated malware could be hidden within a seemingly benign file like an image or video. These maliciously crafted files might target unpatched vulnerabilities in the operating system, libraries distributed by the operating system, or the application itself.
To help protect against such potential threads, WhatsApp is increasingly using the Rust programming language, including in our media sharing functionality. Rust is a memory safe language offering numerous security benefits. We believe that this is the largest rollout globally of any library written in Rust.
To help explain why and how we rolled this out, we should first look back at a key OS-level vulnerability that sent an important signal to WhatsApp around hardening media-sharing defenses.
In 2015, Android devices, and the applications that ran on them, became vulnerable to the “Stagefright” vulnerability. The bug lay in the processing of media files by operating system-provided libraries, so WhatsApp and other applications could not patch the underlying vulnerability. Because it could often take months for people to update to the latest version of their software, we set out to find solutions that would keep WhatsApp users safe, even in the event of an operating system vulnerability.
At that time, we realized that a cross-platform C++ library already developed by WhatsApp to send and consistently format MP4 files (called “wamedia”) could be modified to detect files which do not adhere to the MP4 standard and might trigger bugs in a vulnerable OS library on the receiver side — hence putting a target’s security at risk. We rolled out this check and were able to protect WhatsApp users from the Stagefright vulnerability much more rapidly than by depending on users to update the OS itself.
But because media checks run automatically on download and process untrusted inputs, we identified early on that wamedia was a prime candidate for using a memory safe language.
Rather than an incremental rewrite, we developed the Rust version of wamedia in parallel with the original C++ version. We used differential fuzzing and extensive integration and unit tests to ensure compatibility between the two implementations.
Two major hurdles were the initial binary size increase due to bringing in the Rust standard library and the build system support required for the diverse platforms supported by WhatsApp. WhatsApp made a long-term bet to build that support. In the end, we replaced 160,000 lines of C++ (excluding tests) with 90,000 lines of Rust (including tests). The Rust version showed performance and runtime memory usage advantages over the C++. Given this success, Rust was fully rolled out to all WhatsApp users and many platforms: Android, iOS, Mac, Web, Wearables, and more. With this positive evidence in hand, memory safe languages will play an ever increasing part in WhatsApp’s overall approach to application and user security.
Over time, we’ve added more checks for non-conformant structures within certain file types to help protect downstream libraries from parser differential exploit attempts. Additionally, we check higher risk file types, even if structurally conformant, for risk indicators. For instance, PDFs are often a vehicle for malware, and more specifically, the presence of embedded files and scripting elements within a PDF further raise risks. We also detect when one file type masquerades as another, through a spoofed extension or MIME type. Finally, we uniformly flag known dangerous file types, such as executables or applications, for special handling in the application UX. Altogether, we call this ensemble of checks “Kaleidoscope.” This system protects people on WhatsApp from potentially malicious unofficial clients and attachments. Although format checks will not stop every attack, this layer of defense helps mitigate many of them.
Each month, these libraries are distributed to billions of phones, laptops, desktops, watches, and browsers running on multiple operating systems for people on WhatsApp, Messenger, and Instagram. This is the largest ever deployment of Rust code to a diverse set of end-user platforms and products that we are aware of. Our experience speaks to the production-readiness and unique value proposition of Rust on the client-side.
This is just one example of WhatsApp’s many investments in security. It’s why we built default end-to-end encryption for personal messages and calls, offer end-to-end encrypted backups, and use key transparency technology to verify a secure connection, provide additional calling protections, and more.
WhatsApp has a strong track record of being loud when we find issues and working to hold bad actors accountable. For example, WhatsApp reports CVEs for important issues we find in our applications, even if we do not find evidence of exploitation. We do this to give people on WhatsApp the best chance of protecting themselves by seeing a security advisory and updating quickly.
To ensure application security, we first must identify and quantify the sources of risk. We do this through internal and external audits like NCC Group’s public assessment of WhatsApp’s end-to-end encrypted backups, fuzzing, static analysis, supply chain management, and automated attack surface analysis. We also recently expanded our Bug Bounty program to introduce the WhatsApp Research Proxy — a tool that makes research into WhatsApp’s network protocol more effective.
Next, we reduce the identified risk. Like many others in the industry, we found that the majority of the high severity vulnerabilities we published were due to memory safety issues in code written in the C and C++ programming languages. To combat this we invest in three parallel strategies:
Invest in security assurance for the remaining C and C++ code.
Default the choice of memory safe languages, and not C and C++, for new code.
WhatsApp has added protections like CFI, hardened memory allocators, safer buffer handling APIs, and more. C and C++ developers have specialized security training, development guidelines, and automated security analysis on their changes. We also have strict SLAs for fixing issues uncovered by the risk identification process.
Rust enabled WhatsApp’s security team to develop a secure, high performance, cross-platform library to ensure media shared on the platform is consistent and safe across devices. This is an important step forward in adding additional security behind the scenes for users and part of our ongoing defense-in-depth approach. Security teams at WhatsApp and Meta are highlighting opportunities for high impact adoption of Rust to interested teams, and we anticipate accelerating adoption of Rust over the coming years.
...
Read the original on engineering.fb.com »
Projects
I have a credit card with HSBC. It doesn’t see much use, but I still get a monthly statement from them, and an email to say it’s available.
Not long ago I received a letter from them telling me that emails to me were being “returned undelivered” and they needed me to update the email address on my account.
I don’t know what emails are being “returned undelivered” to HSBC, but it isn’t any of the ones sitting, read, in my email client.
I logged into my account, per the instructions in the letter, and discovered my correct email address already right there, much to my… lack of surprise.
So I kicked off a live chat via their app, with an agent called Ankitha. Over the course of a drawn-out hour-long conversation, they repeatedly told to tell me how to update my email address (which was never my question). Eventually, when they understood that my email address was already correct, then they concluded the call, saying (emphasis mine):
I can understand your frustration, but if the bank has sent the letter, you will have to update the e-mail address.
This is the point at which a normal person would probably just change the email address in their online banking to a “spare” email address.
But aside from the fact that I’d rather not, by this point I’d caught the scent of a deeper underlying issue. After all, didn’t I have a conversation a little like this one but with a different bank, about four years ago?
Perhaps I should be grateful that they didn’t say that I have to change my name, which can sometimes be significantly more awkward than my email
address…
So I called Customer Services directly, who told me that if my email address is already correct then I can ignore their letter.
I suggested that perhaps their letter template might need updating so it doesn’t say “action required” if action is not required. Or that perhaps what they mean to say is “action required: check your email address is correct”.
Say what you mean, HSBC! I’ve suggested an improvement to your letter template.
So anyway, apparently everything’s fine… although I reserved final judgement until I’d seen that they were still sending me emails!
I think I can place a solid guess about what went wrong here. But it makes me feel like we’re living in the Darkest Timeline.
You know the one I mean. Somebody rolled a ‘1’, didn’t they…
I dissected HSBC’s latest email to me: it was of the “your latest statement is available” variety. Deep within the email, down at the bottom, is this code:
What you’re seeing are two tracking pixels: tiny 1×1 pixel images, usually transparent or white-on-white to make them even-more invisible, used to surreptitiously track when somebody reads an email. When you open an email from HSBC — potentially every time you open an email from them — your email client connects to those web addresses to get the necessary images. The code at the end of each identifies the email they were contained within, which in turn can be linked back to the recipient.
You know how invasive a read-receipt feels? Tracking pixels are like those… but turned up to eleven. While a read-receipt only says “the recipient read this email” (usually only after the recipient gives consent for it to do so), a tracking pixel can often track when and how often you refer to an email.
If I re-read a year-old email from HSBC, they’re saying that they want to know about it.
But it gets worse. Because HSBC are using http://, rather than https:// URLs for their tracking pixels, they’re also saying that every time you read an email from them, they’d like everybody on the same network as you to be able to know that you did so, too. If you’re at my house, on my WiFi, and you open an email from HSBC, not only might HSBC know about it, but I might know about it too.
An easily-avoidable security failure there, HSBC… which isn’t the kind of thing one hopes to hear about a bank!
Tracking pixels are usually invisible, so I turned these ones visible so you can see where they hide.
But… tracking pixels don’t actually work. At least, they doesn’t work on me. Like many privacy-conscious individuals, my devices are configured to block tracking pixels (and a variety of other instruments of surveillance capitalism) right out of the gate.
This means that even though I do read most of the non-spam email that lands in my Inbox, the sender doesn’t get to know that I did so unless I choose to tell them. This is the way that email was designed to work, and is the only way that a sender can be confident that it will work.
But we’re in the Darkest Timeline. Tracking pixels have become so endemic that HSBC have clearly come to the opinion
that if they can’t track when I open their emails, I must not be receiving their emails. So they wrote me a letter to tell me that my emails have been “returned undelivered” (which seems to be an outright lie).
Surveillance capitalism has become so ubiquitous that it’s become transparent. Transparent like the invisible spies at the bottom of your bank’s emails.
I’ve changed my mind. Maybe this is what HSBC’s letter should have said.
So in summary, with only a little speculation:
Surveillance capitalism became widespread enough that HSBC came to assume that tracking pixels have bulletproof reliability.
HSBC started using tracking pixels them to check whether emails are being received (even though that’s not what they do when they are reliable, which
they’re not).
Eventually, HSBC assumed their tracking was bulletproof. Because HSBC couldn’t track how often, when, and where I was reading their emails… they posted me a letter to
tell me I needed to change my email address.
What do I think HSBC should do?
Instead of sending me a misleading letter about undelivered emails, perhaps a better approach for HSBC could be:
At an absolute minimum, stop using unencrypted connections for tracking pixels. I do not want to open a bank email on a cafe’s public WiFi and have
everybody in the cafe potentially know who I bank with… and that I just opened an email from them! I certainly don’t want attackers injecting content into the bottom of
legitimate emails.
Stop assuming that if somebody blocks your attempts to spy on them via your emails, it means they’re not getting your emails. It doesn’t mean that. It’s never meant
that. There are all kinds of reasons that your tracking pixels might not work, and they’re not even all privacy-related reasons!
Or, better yet: just stop trying to surveil your customers’ email habits in the first place? You already sit on a wealth of personal and financial information which
you can, and probably do, data-mine for your own benefit. Can you at least try to pay lip service to your own published principles on the
ethical use of data and, if I may quote them, “use only that data which is appropriate for the purpose” and “embed privacy considerations into design and approval processes”.
If you need to check that an email address is valid, do that, not an unreliable proxy for it. Instead of this letter, you could have sent an email that
said “We need to check that you’re receiving our emails. Please click this link to confirm that you are.” This not only achieves informed consent for your tracking, but it can be
more-secure too because you can authenticate the user during the process.
Also, to quote your own principles once more: when you make a mistake like assuming your spying is a flawless way to detect the validity of email addresses, perhaps you should “be transparent with our customers and other stakeholders about how we use their data”.
Wouldn’t that be better than writing to a customer to say that their emails are being returned undelivered (when they’re not)… and then having your staff tell them that having received such an email they have no choice but to change the email address they use (which is then disputed by your other staff)?
No time to comment? Send an emoji with just one click!
...
Read the original on danq.me »
To add this web app to your iOS home screen tap the share button and select "Add to the Home Screen".
10HN is also available as an iOS App
If you visit 10HN only rarely, check out the the best articles from the past week.
If you like 10HN please leave feedback and share
Visit pancik.com for more.