Around the web
That’s the abstract from this article. I genuinely think that this is ambiguous ethical ground. It makes sense that Twitter would want to “delete” deleted tweets wherever they appear, acting as agents of the user: that’s respecting individual choices and privacy. It also makes sense that removing publicly-made statements from the public record is unwanted censorship.
This is one of those “unintended consequences” areas. People would be more likely to think that whatever they tell a journalist will be permanently on the record, and choose their words carefully. But when you tweet you’re not talking to journalists, you’re talking to your friends, or making a journal entry, or maybe even replying to an individual. Except that for many people those messages are public, and journalists have adapted to use tweets as a source.
I’d love to discuss this, and learn what you think about it.
James Koppel takes aim at various descriptions of "abstraction" and programming tools that are claimed to allow the expression of abstractions, and finds them lacking. Yes, abstraction is an important part of program design. No, the abstractions aren't found in the resultant program: that is a specialisation of the design so specific it will run on the computer you built it for.
"Android messaging heist isn't the action of a well company," runs the subhead. True. But rather than painting Google as evil, the common reaction that solves nothing, let's instead consider that they are efficiently optimising for their incentives. Google makes peanuts from Android (at Google scale; if they're still getting $25 per device that's under 15% of their revenue). The rest comes from ads, the ads are targeted based on data profiles, and the products are ad-supported because that's more profitable than direct sales. Of course, the products are also more accessible than they would be through direct sales only, too: how many people would use email, or even web search, if it was charged at point of use?
There's always a reason that company doesn't use that thing you like that would evidently solve their problem, it's just that you can't see the reason. One of my criteria for "software engineering, not programming" is thinking if you have evaluated all of your dependencies (npm users: LOL) under these criteria and know that they actually suit all your needs. You don't need to know all the answers: you do need to know all the questions or to be able to find them quickly.
An anonymous author at the OSI says that the "weaponisation of open source" in the Russia-Ukraine conflict is harmful for open source. I made my position clear in the last issue: software freedom is a civil liberties issue. The freedom to use the software, for any purpose necessarily includes the freedom to protest military action.
Of course, deleting someone else's files is very much computer misuse, is illegal in many places, and targets the wrong people (journalists reporting on the war in Russia are in Russia so may get their files deleted, for example), so this specific action is a bad choice of action. But we also find that the fact that users of these packages had the Four Freedoms—including the freedom to study the software and modify it so that it does computing as they wish—gave them the chance to audit and remove the malicious packages before deploying them. They would not have had those freedoms had the protestors been shipping proprietary software.