Hacker News new | past | comments | ask | show | jobs | submit login
The rise of user-hostile software (den.dev)
456 points by dend on Aug 26, 2021 | hide | past | favorite | 283 comments



Agreed on all points.

Interesting to see this:

> You can argue that all of this has existed for a very long time, back from the days of all kinds of toolbars and extensions that created multiple levels of address bar nesting in your web browser and taskbar.

What I find ironic about the whole situation is, back then it was universally known that those toolbars and extensions are distributed by assholes. The whole software category was called by various pejorative names - "adware", "spyware", "malware". There was a whole ecosystem of tools and tricks to get rid of them, as well as preventing them from being installed in the first place.

Something weird happened over the past decade. We find ourselves in times where most mainstream software from renowned companies should be, by the standards of the toolbar era, classified as malware.


>Something weird happened over the past decade.

I blame it on social media monopolies, or at least effective monopolies, oligopolies, and the network effect. Once everyone was sucked into these silos and unable to leave they could do whatever they wanted with the user experience without repercussions. And once everyone was used to it and took it as a given it was only a matter of time before it leaked even into desktop apps or even Windows, and people just accepted it. What I think could reverse the user hostility trend would be competition which would require breaking the oligopolies/network effect which means the rise of Linux desktop or Fediverse platforms, and that's gonna be a while, but not impossible. And of course there are limits to how far they can degrade the user experience without starting to lose users so I don't think it can be a lot worse than now, but still we're stuck with the status quo.


I blame it on web development, pure and simple. The relentless drive for analytics and advertising is what brought the acceptance of spying.


I blame marketing departments being given too much (read: almost any) control over product development.

No developer cares about the level of analytics being pushed today, and unless they're profit sharing they probably don't care about the ads either.

Those anti-features are there because marketing departments want them there and have enough power to get what they want.

Don't let marketing make product decisions.


Back up even farther, though - SO MANY PRODUCTS are literally indistinguishable outside of marketing.

I think the issue is much deeper than "don't let marketing make product decisions".

Browse through any app store - click a category, and it's a sea of apps that provide essentially the same capabilities.

Just like your grocery store has a sea of jars filled with slightly varying salsa.

So take the diagram in the article:

Customers asked for it: Check.

Customers would benefit from it: Check.

We built/tested/shipped it: Check.

What's the missing step? Did ANYONE fucking buy it?!?!

And it turns out none of the other steps actually matter compared to the last one, if the goal is to remain a functioning company.


> Customers asked for it: Check.

> Customers would benefit from it: Check.

The key is in what the word "it" means. The answers are positive if by "it" you mean "this category of product". They may very well be negative if by "it" you mean "our particular product".

The customers want a jar of salsa. They don't want, and never asked for, your particular variation of a jar of salsa, essentially identical to 10 other variations except for a differently designed label.

Another tricky bit is in the "asked for" part. For most products on the planet, customers don't really ask for anything. The market isn't structured this way. Products are just dumped on the market, and those that sell survive. This is wasteful, but has some benefits. It would just be better if marketing wasn't there to meddle with things, artificially sustaining more variations of a product than needed.


I'm gonna use one of those examples that irks me personally. Do we really need 19 different formulations of fabric softener available in another 15 different scents from 12 different manufacturers?

I'd say it's a solved problem. Make - dunno - 3 different formulations (normal, sensitive, extra soft?), and provide the scents as small and separate ampules, and let the user mix and match the apple and cinnamon, and make the place smell of a bloody apple pie after a load of laundry for all you care. People are usually already familiar with those, and have their preferences, plus it would even be fun to experiment, and make one's own blends.

Anyway.... What I wanted to say is that I hate having too much choice (especially artifical one), and I specifically hate choice paralysis.

And I'm writing this as an European. Finding myself in search of a cereal, and ending up in a typical USican giant isle consisting just of a cereals is my idea of an nightmare. I thank the FSM for Lidl existence.


Customers didnt ask for an iPad but they sure bought the hell out of it


They asked for PADD from Star Trek: The Next Generation, and iPad was the closest the market could give them.


The underlying cause here is unbound and often unregulated profit motive with the farse that competition self regulates. At some scales competition self regulates but at scale we see now, it simply doesn't. There are too many barriers and too strong of foothold in markets.

As a result it trickles down, how can we improve our revenue stream. More data, more ads, more nickel and diming consumers, how can we lockdown control of this product/service, charge more for the same and even more for less.

Developers are, in my opinion, just along for the ride and not making these decisions so much as allowing and enabling them to happen. In the world of professions software engineering pays quite well and it pays well for a variety of reasons. People take lucrative positions and decide, reasonably, that what they're being told or pressured to do isn't that bad. It's not like the holocaust where they're turning a blind eye to genocide, they're turning a blind eye to corporate, monopolistic, and oligopic market abuses because at the end of they day they get to live comfortably.

I develop garbage I don't agree with often. I reduced my comp level to have more leverage to haggle against questionable practices but even then I still have to do some questionable things. For developers it's a choice of following along and being paid well or taking a hit and working somewhere that comps a hit less but doesn't product hostile products. I have nothing against those who choose to enable these business practices because they're building financial security in a world we've created that says these practices are OK. Businesses are sort of doing the same but they're more proactive in shaping the policy that allows these practices, so they have real responsibility here. Consumers have a responsibility as well by continuing to buy garbage they don't need that uses these practices. Voters have some responsibility for pushing politicians in who bend to the will of businesses to allow deregulation or prevent regulation for these practices. Politicians have blame for the ethical flexibility to let lobbyists and businesses incentivize them to represent businesses more than their voter base.

We have a mess on our hands with everyone having a little bit of blame here but the biggest responsibility I believe falls on large businesses and the capital holders behind them setting most of this in motion.


If you build your culture on an ethic of competitive individualism, this is what you get.

Hardly anyone is really happy. Not even those with huge piles of money.

They're comfortable and (largely) immune to everyday threats. But the system as a whole continues to be made of traps and sharp edges. And a lot of people fall through them, never to be seen again.

Not a few were convinced it couldn't possibly happen to them, until it did.


As a career front-end developer, I take affront at this. I have never argued in favour of any of the shit people face on the web on a daily basis. I’m close to wanting to get out of the industry because the product is so toxic these days. The people are largely great, I love my current team.. but every month we’re told to add more tracking, or advertising (from Google of all people). I could leave out of political differences but where am I gonna go that’s different (in London)?

Biz: we need to track our users, stick GA on it Me: we could do a privacy-friendly alternative which brings the data in-house. It would lower our lower our GDPR burden so our cookie notices would be simpler, and at the same time make it easier to link our user data with other metrics (I work in streaming video at the moment) Biz: GA is free Me: Longer term, out overall cost of development will be lower because the complexity will be lower, and you wont be leaking data about your customers Biz: but GA is free and works out of the box with more analysis than we’d use Me: Do you see how that actually makes it more complex, over-engineered and unfit for OUR purposes? It’s also a dog to use by the data people and they will ask for a different tool because they can’t change GA Biz: it’s free. The deadline is three weeks.

BIZ: we want to make more money so we’ll sell advertising Me: Ok, but content-based advertising would guve us more control over what we get linked with, doesn’t track users, lets us set our own pricing, lets us sync better with our own content (because presumably we’d be able to control the manifests better Biz: but GA gives us an admin panel and we don’t have to think about it Me: but the integration will take months and half of it’s out of our hands be ause Third Party Biz: here’s the admin key they gave us…

(Ok, so I didn’t actually have these conversations and TBH I only learned the detail of sharing manifests with a third party after I joined the team.. but you get the idea).


Dont take a critique of the job title as a slight against you personally. We, frankly, don't know you.

And as a whole industry, front-end devs have implemented atrocious dark patterns and all manners of disgusting anti-user choices. Have you? Only you can answer that - but I sincerely don't care about your personal choices. This discussion was never aimed at "the_other".


Honestly, I knew that it wasn’t meant at me. But I am DEEPLY frustrated at the lack of power I have in these situations.


I understand that you may feel affronted (and apologise for making you feel like that), but I'm actually criticising the web development as an industry and as a set of broad trends, rather than individual developers. Sometimes developers may have leverage, but from my experience in backend dev, that's rarely an option.


Start your own company


And yet almost every example of malware in the article is a native app.


Electron is not native


It's more native than a web page.

Is an app in C# not native? Or Lua? or Python?


No it is not. From https://en.wikipedia.org/wiki/Native_(computing):

"In computing, native software or data-formats are those that were designed to run on a particular operating system. In a more technical sense, native code is code written specifically for a certain processor.[1] In contrast, cross-platform software can be run on multiple operating systems and/or computer architectures."


If it runs in a DOM, it's not native. Native (to me) means it uses a layout engine that's significantly different from a web browser, uses native controls relentlessly, and integrates well with the OS. Electron cannot do that. QT, C#, Lua and Python can.


I blame Javascript and the "hipster" devs that fueled its rise unnaturally.


I've never worked with a Javascript developer who was responsible in any way for their employer's adtech and dark UX patterns strategy. In my experience, those decisions are always made by PMs and approved by the board.

Your comment seems like an opportunistic attack on a type of developer you don't personally like rather than something that is rooted in reality.


> for their employer's adtech and dark UX patterns strategy

well, generally a JavaScript developer is just a frontend developer so I'm assuming at least some have experienced a PM saying: too many people are doing X which we don't want them to do, how do we keep them from doing X? And the developer then makes helpful suggestions.


> which means the rise of Linux desktop or Fediverse platforms, and that's gonna be a while, but not impossible.

I like to hope you're right, but I don't believe you are.

Most people don't want to learn more about tech. They just want tech to be intuitive enough to pick up and use.

The mobile market appeared because Windows is too big and cumbersome. That's why people advertised it as a skill on their resume. It isn't fun. Windows is a chore to most people.

Nobody puts "experienced Android user" on their resume because it is expected that just by being alive you should be capable of using every function of an Android device. Very little functionality is abstracted away into 20 year old UI's or shell commands. There is a button for everything, and the button makes sense.

So if Windows didn't stand a chance, there is absolutely zero chance Linux will catch on at the scale it needs to for your post to come true.


Ignoring the fact that Android puts its buttons in basically arbitrary places, the fact is that it's just not a very useful platform for more complex tasks. It can do less, so there's not much to master. Windows and Linux can do more, so there is more to master because they allow more complicated interactions between things inside the computer. In other words, listing an OS on your resume means that you are sort-of competent enough to pull off such tasks at all.


The reason you don't list android user on your resume is that it's very difficult to use android (or iOS) for anything beyond passive consumption of content which is not something employers want.


Also I think Windows/Office is kinda left-over from 20-30 years back when it wasn't fully standard knowledge... So it's entirely meaningless buzzword used to fill up CVs...


I agree. Based on what I saw those that want to move either have or are exploring their options already.

Average user is perfectly content with what they have, because it requires zero new knowledge and zero extra work. Linux is still anything but that.

edit: Come to think of it. It is a good thing. Web became mainstream and see what happened to it.


A little too literal IMHO. No reason a floss mobile os can’t exist. Android proves Linux is technically capable.


>Something weird happened over the past decade.

PR happened. The big players have figured out that if they want to keep misbehaving to make money, they needed people to not fight them. To do so, one amazing tool is to make sure the entire way to speak about the topic is controlled by them.

Internet gave us the ability to share more, and we though it would allow us to defend our self better, to make people more aware. But we didn't predict that an entire industry would specialize into creating submarine communication that pretend to be an organic one of such quality that the average human can't tell the difference.

With old school com and ads, you at least knew somebody was trying to sell you crap. Now, you are nicely having a chat in what you think is a community of peers, while being exposed to commercial and political influence that have been crafted to reach you here without raising your BS radar.

And with AI, it's going to get worse.


> And with AI, it's going to get worse.

Cynical prediction: AI influencers, possibly with a hybrid components. Accounts powered by some GPT-esque generator, acting like a real human, shilling various widgets in a naturalistic way. Use humans-in-the-loop to add randomness and natural-ness. Or just AI extending how much marketers can generate.

And/or microinfluencers. Platforms benefitting (otherwise regular) users in some way to adopt some stance. Oh, you said good things about Brawndo, and our fingerprinting was able to trace your social media to your amazon wishlist, which happens to have Brawndo in it? Free pack of brawndo shipped to you from a "mystery admirer". Post a selfie with a logo prominently, CV bots pic it up, get swag. Gossip quickly spreads that if you say nice things about X, or take pics of Y, you get free swag. Suddenly your feed is full of your friends giving a lot of organic-seeming attention to corporate products. It'll put the Sunoco bumper sticker campaign to shame.


Yes, that's what I had in mind, and I suspect it's already going on to some extend with votes and follow ups, which is easier than content generation, until the later becomes so good you can let it roll free.


Politics too. People are far too eager to cede power to these big tech companies just because it will hurt those on the other side of the political spectrum now - without realizing that that power is gone forever. DMCA takedown, demonetization and ad revenue scene, privacy - it's all the same story.


Was (is) there any normal person who was in favor of the DMCA? Geeks knew about it and hated it; non-geeks were unaware or, if informed, hated it. It was a product of lawyers and moneyed "entertainment" industry interests.


Precisely. The fact that most software these days can be called "spyware" and "adware" is very unsettling from the perspective of someone who got into computing at around the time of Windows 98.


The problem is too much money came into tech. Even 10 years ago software companies had only a fraction of today's representation among blue chip companies. Once the industry is recognized as a top place to make money then the wrong sort of people start worming their way in slowly but surely undermining whatever integrity came out of the early engineering culture and values that built the foundation.


I'm not sure what you mean. Blue chips like IBM and Microsoft were making bank even in the late 90s. Lots of money in tech isn't new.


Up until web 2.0 and the smart phone revolution it was mostly hardware, and mostly business. What changed was once the majority of the consumer market and attention span was tapped via ubiquitous web and mobile penetration which opened up the possibility for software companies to extract maximum value from every single consumer.

Consider this:

https://www.visualcapitalist.com/a-visual-history-of-the-lar...

In 1999 (dotcom peak!) there were 5 companies in the top 10 (1 software, 4 hardware). In 2019 it was 7 out of 10, including the top 5 spots.


The problem is that since the past decade or so you started being able to get tons of investment money from simply "engaging" users (whatever the fuck that means). This works recursively too - you can create a company that provides services to other companies who "engage" users. Best of all, you don't even have to be profitable or have a long-term business plan (being against your users is not a successful strategy unless you're a monopoly), you can just enjoy the VC money and get you and your mates a nice salary for a few years and then rinse & repeat.

This turns the entire thing upside down. It used to be that you made money by making good tools that users paid money for because they solved their problem - thus the incentives are clear and aligned. But now it's the opposite, you simply waste the user's time and annoy them as much as possible and money just magically appears and the users don't even have a choice because they're not the ones paying for it.


Agreed.

> This works recursively too - you can create a company that provides services to other companies who "engage" users. Best of all, you don't even have to be profitable or have a long-term business plan (...)

A neat flavor of this is what I believe a good chunk of adtech industry is built on. Since these companies are all paragons of virtue, some apply the same honesty to their in-industry customers as they would to end-users. That is, you don't even have to supply your adtech customers with a product or service that works. You only need to supply the perception that it's working. With data-driven cargo cult, it's easy - neither you nor the other side is likely to know what the data means anyway, but as long as the numbers are printed in green, and the line on the chart goes up, everyone is happy and the money keeps flowing.

> "engaging" users (whatever the fuck that means)

English is my second language, and I've learned most of it from videogames and TV shows. For many years, I thought "engaging" is the thing that a starship does to another starship with phasers and photon torpedoes. Only later on I learned the ordinary meaning of the word.


I think that it's a shift in trust. 10 years ago people worried about sketchy/annoying software and would avoid software that asked them to refill their printer ink 10 times a month.

These days everyone lives in a walled garden of some kind so there's less chance of sketchy software being outright malicious.

Also I think people are just inured to it. Apps on my android phone that I pay money for still send ads to my notification bar every day. If my desktop starts doing the same that's hardly a large shift.


I don't think there is a sense of "safety" because of walled gardens. I think it is a sense of "learned helplessness". If you keep shocking the rat no matter what they do, eventually they lie down and just hurt.


It’s funny to find a product that you worked on mentioned in HN and being called an asshole by implication. :)

Around 2003(?) I worked for a search company that published that Dogpile toolbar. This was before browsers were doing web search from the url bar and when pop-ups were a big problem. The Dogpile toolbar was intended to bring web search to the browser and to also help cut pop-ups. It also include a news ticker fed by various RSS feeds from news sites. Strangely, the pop-up blocker would bark when it blocked a pop-up. Fortunately you could turn that off and I’m sure most users did right away.

It was not bundled with other software, did not install other software or change browser settings, and was not installed secretly. There was a menu option in the toolbar to uninstall it which removed everything. It didn’t spy on user activity or report anything back to the mothership. I can’t speak to the intent of the publishers of some of those other toolbars, but the Dogpile one was an honest attempt to produce a useful app and to promote our search site.

After the toolbar market became tainted by underhanded techniques we pulled the product, not wanting to be associated with that kind of behavior.


> most mainstream software from renowned companies should be [...] classified as malware.

Most FLOSS has not fallen in this category.


Exactly. To keep being user-hostile and keep the user base, software needs to satisfy some requisites: being closed or depending on not reproducible proprietary services, or having no better competitors. A user-hostile software that happens to be useful and is open would be forked and cleaned in no time, or users would flee to the competition if there is any. The fact that the most user-hostile applications today live in closed proprietary PC or mobile operating systems, or proprietary services where there is no such thing as either openness or competition, gives an hint on where the problem is.


An interesting counterexample is Cheat Engine, which loads adware with its download unless you pay on patreon or build from source.


I never used it, however that seems a good approach, if not by encouraging learning to build software instead of blind installing.


But even a significant portion of FLOSS can be legitimately called spyware. Firefox, Chromium, Docker (although Docker Desktop is no longer open source), Homebrew, Mattermost, Netdata, Bitwarden - all of these are common, popular FLOSS that embed spyware, oftentimes operating silently (other than a little notice at install time that the authors think constitutes informed consent).

The spyware epidemic is real, and FLOSS is not immune.


With FLOSS, the culture often looks down upon telemetry so there's an incentive not to include those because of user outcry (Audacity, ahem). Forking or patching out the offending pieces of code is also possible (see Audacity again).

Caddy v1 also came with telemetry, but it was trivial to rebuild it with the telemetry switched off. The best you can do with closed software like Windows is to apply a hack and hope it's not undone after an update.


That's true, but still, the trend of embedding spyware in FLOSS is becoming normalized. On top of that, FLOSS spyware vs. proprietary spyware is a distinction that is useful only for software developers - a subset of "tech-savvy people". Until recently, tech-savvy people could just assume that FLOSS software is free from bullshit, and both use it and recommend it to non-tech-savvy people without checking.

FLOSS or not, most software is still products, with a name and an owner. The openness could, in principle, enable a "network of slightly different forks" model of software evolution, but it didn't. There's universally a single canonical repo, with the "real" owners, and occasionally some niche forks. A fork takes over only when it can win the marketing game against the repo it forked from. So, each time an owner of the canonical repo decides to include telemetry in their project, their users who aren't software developers are screwed.


Wait, what did Bitwarden do?


https://github.com/bitwarden/desktop/issues/552

Downloads and execs unexamined code released by the devs, potentially backdooring your whole machine solarwinds-style.

It also divulges to MSFT (GitHub admins) all the IPs of Bitwarden users (even ones using a selfhosted API).


Isn't this true for any app that has updates though?


No-interaction autoupdates, yes.

This is how the solarwinds hack happened.


This is what Mozilla says about data collection.

> By default, Mozilla collects limited data from Firefox to help us understand how people are using the browser, such as information about the number of open tabs and windows or number of webpages visited. This does not include data that can reveal sensitive information about users’ activity online, such as search queries or the websites users visit.

I think you are defining the term spyware too broadly.


Like other malware, they learned that it's best to not draw attention to yourself. Viruses don't put a big animation on your screen anymore, they silently enlist your machine in a botnet and steal your account number and credentials. Toolbars (now extensions) don't change your search engine, they silently add affiliate parameters and cookies.


We find ourselves in times where most mainstream software from renowned companies should be, by the standards of the toolbar era, classified as malware.

It's called Microsoft. Microsoft Windows 10, to be precise.


> Something weird happened over the past decade.

I blame free (as in beer).

If you can’t sell software you have to monetize in other ways. This creates a huge forcing function to push acceptance of surveillance, adware, and worse as hard as possible.

It’s hard to complete with free. A free thing can build a network effect fast, then monetize with roundabout methods like surveillance. Payment also adds friction, and I have a rule that “every step required to adopt something halves the adoption rate.”

Greed for both lightning growth and profitability tends to put conventional economic models off the table.


> If you can’t sell software you have to monetize in other ways.

For a piece of hardware I buy at a store I'd expect that the price I paid for it is sufficient to not require further monetization - mandatory cloud services (e.g. a web-available surveillance camera) excepted.

Anyway, there is another cause: continuous backward-compatibility breaks from OSes. Windows is ... relatively decent in that the only things that really broke drivers over the last decades were the shift in GPU driver architecture that came with Vista (IIRC) and the shift to 64-bit that began with Windows 7. The only change that busted old games was with Windows 8 and the DirectDraw removal, but other than that you don't need to do any maintenance for Windows drivers and software if you don't have new features.

Keeping software working on macOS or on Linux is a real pain in the butt, in contrast - Apple changes stuff around every minor release, and maintaining any support for Linux is just as a massive effort.

Kernel drivers pretty much have no choice but upstreaming (which is a hassle in itself when you have proprietary blobs/IP), and userspace stuff suffers from fragmentation (x11 vs wayland, flatpak vs deb vs rpm vs self-build/gentoo, systemd vs sysv, kde vs gnome vs ...).

And the worst of all to maintain anything for is Android, where an insane level of fragmentation collides with even more binary blobs, devices that are widespread in usage but haven't seen an upgrade for years if ever, shoddy (or none...) QA and preloaded crap from manufacturers and carriers.


If adware makes money, then even hardware is impacted since you can now undercut competitors. Two mice, essentially the same but $40 price tag. Which one do you buy? Can you smell the bloatware on them in the store?


> Which one do you buy? Can you smell the bloatware on them in the store?

This is why I prefer to shop online or at least do a quick search on the internet to show potential issues.

On the other hand, I would really prefer a requirement for products that are sold in a physical store to be reviewed by a government-run, independent organization on build quality and sustainability, and that this review be presented or easily accessible in a store next to the product.

We already have such a requirement in the EU for electricity usage of appliances, it could be extended to small electronic devices.


Government run? The EU is about to _require_ the sort of CSAM scanning that Apple is running on devices and the rest are running on the cloud. Also: https://www.reuters.com/technology/exclusive-facebook-tech-g...

Governments have a very long ugly history.


If enough people signal interest, products that do not ship with bloatware/adware could put a "no special software required" on the box/description. I would pick those in a heartbeat since vendor software is usually complete shit (even without adware).


> maintaining any support for Linux is just as a massive effort.

Is it? ALSA still works, even if routed through PulseAudio or PipeWire. X11 still works even if what you are talking to is XWayland. OpenGL still works even if there is also Vulkan now.

Even if you want to stay up to date with the audio/windowing API of the day there are libraries like SDL that will help you stay up to date.


> If you can’t sell software you have to monetize in other ways.

What do you mean, can't sell software? Lately you can't BUY software. Everything is either free or subscription based. And they sell your data even if you pay for a subscription.


This is the thing that makes me most upset. I'd very happily pay more of they'd stop selling my data, but since it's always there as an option I basically have to either selfhost, be robbed, or get politically active on the topic.


A similar thing happened in games. I'm old enough to remember horse armour in Oblivion. Ridiculous idea but look where we are now. Not only do most microtransactions cost more, they aren't only in free to play games. They're in full price games and those with monthly subscriptions. And they have enough people arguing that it's a good thing because more money = better game.

I can buy a mount in a game for USD$40... or I could buy another game.


At least horse armor in Oblivion was DLC - basically a tiny expansion - even if cut down and sold at price / value that was outrageous compared to previous expansions. Microtractions have grown to be way more egregious since then:

- Generally locked to an account, so either not resellable or only within the Developer's market where additional profit can be extracted for each sale.

- There seem to be more and more consumable microtransactions, so you have to keep buying to get the same experience.

- Lootboxes and other gambling mechanics that mean you are not even guaranteed to get what you want when you pay.


And then we got to add gambling mechanics into "microtransactions" which weren't so micro anymore. At least with horse-armor and DLC you see what you get. With gacha and lootboxes you can't be even sure about that.

And the money is gone forever. At least with Valve who kinda made it big you can recoup some of investment if you get lucky and use it to buy other games on their platform...


> If you can’t sell software you have to monetize in other ways.

If you can't sell software and have to monetize it somehow, sure you can steal user data. But you can also steal user data even if you sell the software, as has been demonstrated many times.

Only authors who have no intend to monetize the software could really be trusted.


The ability to directly sell software is necessary but not sufficient to enable a software ecosystem that is not about exploiting the user.

That's why I mentioned forcing functions. Once "free" became the norm, it became impossible to even think about doing anything else. The door to conventional honest business models was closed for most software authors and vendors.

The notion of all software actually being free is a fantasy, unless you are talking only about software that can only be used by nerds. The amount of effort required to make software usable by the general public is absolutely massive. Then throw in constant UI changes, ecosystem changes, and supporting a lot of targets.

In general once the app basically works you are 10% done. The other 90% of the effort is UI/UX.


Worth noting that 'crypto' creates an opening for new ways to fund open-source development. Let's try not strangling that in its crib? We're approaching the 40th anniversary of the GNU Manifesto, and if the older funding models were going to take free software beyond the niches it's found, we'd see that by now.


Precisely. Payment processors gatekeeping the collection of small donations is soon to be a solved problem thanks to cryptocurrency. I mistrust anything that purports to enable something like this via centralised banking, primarily because it will let regulators of unrelated jurisdictions and large corporations/banks control and surveil the transactions. It's either crypto, or this.


I'm skeptical if the problem is technical about micropayments.

Let's assume we have some hypothetical zero fee universal payment platform. You CAN send a developer 3 cents because you like his work.

But now you've got the psychological barrier-- people don't want to think about spending 3 cents, even if they aren't bothered by the cost in the abstract. Then you need to make it a cultural norm-- that sending 3 cents is a legitimate gesture of gratitude and not unintentionally offensive or sarcastic.


IMO, the lack of micro (and I mean micro on order of 3 cents, like you mentioned) payment platforms is what kept such tiny donations from being normalised. My theory is that it will become normalised in certain circles, now that it's technically possible.

Even if it's a very, very thin trickle of donations, I would still take it as evidence that someone appreciates my work enough to think "hey, I should really send some money this guy's way, he's helped me out with this software/blog post". Allowing transactions on the order of single cents mitigates the psychological barrier of making some donation at all to the highest extent possible.


> If you can’t sell software you have to monetize in other ways.

Somebody had to say it out loud...


> back then it was universally known that those toolbars and extensions are distributed by assholes.

Clearly not the case or they wouldn't have been as ubiquitous as they were.


Flash came with McAfee. Everyone knew that McAfee is being distributed by assholes, but they needed the assholes' product anyway, so they put up with it. Eventually projects like Ninite were created precisely to install software without all that included junk.


They were ubiquitous because your unwitting grandparents wanted into install some simple application and weren't savvy enough to read and uncheck all of the boxes that installed the new Ask Jeeves toolbar.


Right, that's partially my point. My unwitting grandparents are precisely in the set of "universally", and they didn't know nor care by whom these apps were distributed.


Oh, but my point is, they knew and cared after they got them installed and had to ask someone to have them removed.


Yeah, I think they fall into the same category as fad diets, MLM schemes, and those cold calls to buy real estate for less than market rate: incredibly popular despite "everybody" knowing better.


Just watch the movie Idiocracy, and you'll understand where it all comes from.


The smartphone era gave the internet as a whole its Eternal September.

User growth outpaced culture absorption so the tech leaders got to direct the new culture, at least wrt to expectations on companies in the internet.


This article is globally so true, but there is a major error:

It is not "needs of developers" the problem, but the "needs of product manager, marketing, c-level asshole".

Like for telemetry, most of the time the business side "can", so they do.

And again, for specific app and co, most developer would complain and not like release such user-hostile software but they are forced by business to do it.

Like this stupid project manager that thinks that his product/software is the most important in the world and there is no reason why a random user would not want to install it and also that the user computer belongs to him and to the company because he is using the product, without shame.


"Developer" here isn't being used to mean only the people who directly write code. It means the entire organization responsible for developing the product, which includes the managers, marketing, and executives. As in Microsoft the company is the developer of Windows, and Windows is made in such a way as to prioritize the needs of Microsoft over the needs of Windows users. They're not prioritizing the needs of any specific employee or category of employees. All stakeholder groups on the producer side may or may not be fighting for their own specific interests, but collectively producer-side stakeholder groups are given way more of a say than consumer-side, because the consumer-side only has the purchase as their tool to influence product decisions, and thanks to various forms of lock-in and information asymmetry, they can't or won't make informed purchasing choices that force Microsoft to care about them.


Isn't it sort of obvious that practically every product developed for profit is done for the benefit of the organization doing it?

"The needs of the user" is just one factor for satisfying the primary incentive, which is making money. The needs of the user needs to be met to the point that they are willing to pay money for it, anything more you're not maximizing your profit. I mean, why would you expect anything to be different.

I primarily blame the users. They're the ones who accept this shit and still give their money. If they don't want user-hostile software, they shouldn't use it. If people refused to pay for it, things would change. And yeah, that might come with some sacrifices.


> And again, for specific app and co, most developer would complain and not like release such user-hostile software but they are forced by business to do it

For every dark pattern, invasive analytics package, adware, malware, spyware that gets added to a product, there is an actual software developer sitting in a chair, voluntarily adding it. Maybe someone here on HN, reading this very thread! Nobody is putting a gun to our heads and forcing us to do it. I've quit jobs in the past where I was asked to work on something I considered unethical. Developers have options. The job market is evidently still going gangbusters now, so who can really say they are "forced" to develop anything?

It's so strange: On one hand, people keep saying developers have tremendous leverage, and high market value, and are being sought after, and then one thread later, developers are powerless victims, having to do the will of their evil "project managers". Which one is it?


Professional Engineers have to take ethics courses and have values which include protecting the public welfare.

I would like to see something similar for people writing software.

What keeps Professional Engineers honest is that they are accountable to the discipline committee and liable for negligence. This is in stark contrast to consumer software which comes with no guarantees other than a click through EULA.


Both, because different organizations prioritize different things. In some places, developers can run the show, in others, it is the marketing team calling the shots.

I think the early startup area is driven by developers, but once a product gets some traction they transition into the product manager/marketer driven mode where dark patterns start to show up.


At the end of the day even if all devs collectively decide they won’t implement these features (which already is utopian), there will be someone in a more desparate position who would just be too glad to take the job. You may have to go looking in other countries. Or raise wages. But it will get done.


At least that would slow it down and/or force assholes to pay more.


> It is not "needs of developers" the problem, but the "needs of product manager, marketing, c-level asshole".

Not entirely. Developers still make choices to use slow and bloated software stacks to save themselves time, which definitely negatively affects the user experience.


What stacks? I've yet to encounter a popular stack claiming itself as slow and bloated. React? Angular? Electron? There are very slim and fast apps built with those stacks.

And if someone built slow Electron app, I'm sure that he would build slow Qt app (not sure if Qt considered slim nowadays). It comes either from lack of experience or lack of focus on performance. And that does not depend on stack.


How slim can you really be when your stack bundles an entire web browser so you can push pixels on the screen? Focusing on performance probably requires running away from such bloat.

Remember: 25 years ago we were able to write relatively fast GUI applications. They may have gotten prettier, fancier, and screens have definitely grown larger. Still, computers are now much faster. And with M2 drives, starting a word processor or a drawing application should be instantaneous. Yet somehow it isn't.

You're right, the main problem is the lack of focus on performance. Here's the thing though: if we did focus on performance, we wouldn't have tolerated such bloated stacks in the first place.


IMO it’s the increase in platforms that have pushed people towards a cross-platform solution even though it’s pretty wasteful. In the 90s if I wanted to write an application to target most computer users I would have written a Windows application. Now, depending on the app you need to target MacOS, Linux, web, iOS, Android.

I think people underestimate how much stuff you have to learn to be an effective UI developer on a new stack. There’s layout rules, visual customization, state management, how to organize your effectively for large code based, debugging, accessibility, localization, visual effects. Not to mention how fleshed out the tooling and documentation is for the web stack. Browser dev tools are really good. It’s no wonder people want to reuse all those skills to build UIs.

If even companies like Spotify or Slack think they don’t have the resources to build custom applications per platform, smaller companies or teams won’t either. (I say think because I disagree with their strategy but that’s beside the point). We need a way for people to use their web stack knowledge without requiring a full browser.


Very much agree.

I think web-dev, for better or worse, has pioneered a lot of UI concepts and design strategies purely by being more accessible.

Getting those lessons into a more efficient compiled form would be a great step, and I do think TypeScript is slowly approaching a place where it might be able to bridge that gap.


> And if someone built slow Electron app, I'm sure that he would build slow Qt app (not sure if Qt considered slim nowadays). It comes either from lack of experience or lack of focus on performance. And that does not depend on stack.

No. Literall every Electron chat app (Signal, Discord, Element, Slack, etc) is slow, laggy and unresponsive, while every Qt chat app (Telegram, Ripcord, Nheko) is blazing fast.


Pardon me, but slim and fast? Xclock from the 1980s (long, long before Qt) was tens of kilobytes. "XClock" on Android is 2.6MB. "XClock" as an Electron app would weigh tens of megabytes.

This isn't progress, no matter how pretty those clock hands are.


I'll admit, this was my first chuckle out loud of the day. No stack would intentionally label itself as such, while basically all of them eventually become that. If you bundle the world in your package, expect bloated outcomes, in all of its cyclically-dependent glory.


How can you build something slim and fast on Electron? It's essentially Chrome running Javascript, isn't it?

For an example of what I think is slim and fast, consider Steve Gibson's DNS Benchmark tool[1]. I downloaded it a week ago and used it. It's 150 kB.

[1]: https://www.grc.com/dns/benchmark.htm


None of those frameworks are slim and fast. No framework is going to admit that they are bloated, and many will claim to be slim and fast, despite the fact that they are not.


Surely the genius software developers can just do away with the stupid and pointless project managers with their self inflated egos and release the great software ourselves? Why don't we do that? Surely there must be some reason if these useless business people only provide negative value!


The problem is that it's not possible to unbundle the business acumen and the "profit above everything" mentality. Developers need the former, literally nobody needs the latter.


OMG the pointless telemetry. I got asked to install some on a project I took over. I checked, and said "there is already telemetry integrated for account XYZ". Nobody knew who had access to XYZ. Like, they install it, and lose it. Its not even fulfilling a useful purpose.


Oh man, I just ran into this. I work on a product that has a 3rd party API so other people can write plug-ins to extend the functionality of the app. It's great for users and developers. We received a bug report related to a particular plug-in, so I went to download their demo to see if the problem was on our end or theirs before contacting them. Here's how the process went:

1) Go to their website and click "Download" 2) Prompted to enter email address with no way to opt out. Shit. Go to mailinator.com and create a fake email address to enter. Enter it. 3) Wait for them to send the real download link to my fake email. 4) It came in almost instantly. Great! Click on the link. 5) Click to download the installer package. Wait a few minutes. 6) Run the installer package. 7) It needs the same email address and password so it knows I'm a "legitimate user" just to install the thing. 8) After entering it, it kicks me back to the web page for some reason. No idea what it's looking for or what I'm supposed to do on the web site, so I go back to the installer. Oh it's not an installer. It's an installer installer. It's going to download the installer I want from a list of dozens of possible installers. Download the real installer. 9) Run the real installer - It lists dozens of products. Find the one I want. Install it. 10) Prompted for email and password again.

And keep in mind this is all before I'm actually a customer. I haven't paid anything and am trying to evaluate the software to determine if it fits my needs. (Or I would be if I were an end user.) Honestly, if this weren't for my job, I would have given up on step 2. Fuck these people. I'm trying to save them time by seeing whether the bug is ours or theirs, but they're actively wasting mine and everyone else's who downloads this crap.


Do you work on the Lumberyard engine? lol


You'll notice that all of his examples of user-hostile software lack a universally accepted standard. This is not new.

Do you need to install special vendor software to use your bluetooth devices? No - everyone follows the standard, so your OS just knows how to hook up your headset. With USB it's different, because the standards are insufficient for the gadgets that we use, resulting in specialized software for your extra buttons, light shows, sensitivity, etc.

Two prime older examples are graphics cards and printers. There has never been a driver standard for either that was universally accepted (after VGA and VESA local bus), and so the only alternative is bespoke software. Remember when game controllers needed specialized drivers (Sound Blaster)? I do.

And it's not like this is limited to software either. There are plenty of standards and lack-of-standards in construction, automotive, even electrical in some cases. One of the most expensive explosions in history was the result of a mismatch between metric and imperial measures.

Want to get away from this nightmare of custom-implementations-for-everything? Push for sane and comprehensive standards.


> Do you need to install special vendor software to use your bluetooth devices? No

Logitech and Samsung would like a word...


Oh? The Logitech G613 Bluetooth keyboard and M510 Bluetooth mouse were plug and play on Windows, Arch Linux and NixOS. Back in the day, sure, but I don't think custom drivers are much needed for anything but GPUs by now.


I think is impossible to standardise everything. You can do it only with products with limited use cases, like Bluetooth devices, USB HID devices, some "standard" USB devices like cheap mouses, sound cards, disk drives, or WiFi NICs.

I won't ever happen a GPU standard in a short or medium time, because deciding how it would work were giving their R&D to the competition, and AFAIK, Nvidia, AMD, and Intel have totally different types of architecture.

Printers maybe could have some kind of USB standard, but I don't think the different printer making companies are willing to do that, the same happens with some kind of "gaming" devices. That would mean not showing ads of cartridge or other products and letting the users be more outside of their "ecosystem". QMK keyboards are a honourable exception to this btw.


> everyone follows the standard

Try sharing a file via Bluetooth between an Apple and an Android device.


So everyone except Apple?


With all the praise Brother laser printers get for being just a damn printer, I wonder what the end game is for some of those businesses.

I can understand that monetisation and user well-being can be at odds sometimes (e.g. with free apps and services), but surely a generic hardware manufacturer wants to ensure a generic experience?

This is why I tend to buy things that use generic, open standards. I don't trust something that needs an app to work to last long.


> surely a generic hardware manufacturer wants to ensure a generic experience?

What they want, first and foremost, is to not be a generic hardware manufacturer.

Quite a lot of those user-hostile choices - custom apps, SaaS-ification, focus on collaboration features - are attempts to prevent the product from being a commodity.

For example, I can replace my current washing machine with any other model of any other brand. Independently, I can use any brand of detergent with my machine. Both the machine and the detergent are commodity products. They mostly compete on price and marketing bullshit, which offers very limited margins. Modern tech companies desperately want to avoid being in this situation.

The most common - but by far not the only - approach of ensuring you can't be easily commoditized is through network effects. Not just "I can't switch from Facebook to Diaspora because all my friends are on Facebook", but also the weaker forms: "I can't stop using Teams because everyone at work uses Teams, and we can't switch because of SharePoint integration - which also incidentally means we have to use MS Office and Windows". Or, "I can't stop using Google Docs because a bunch of non-techies I have to deal with don't know how to (or don't want to) use anything else".

This is why companies fight interoperability[0] tooth and nail - breaking lock-in for users threatens breaking the weak network effects they need.

--

[0] - Except "API interoperability", which isn't really proper interoperability for users, as it's governed by business contracts between API providers and API consumers.


> Or, "I can't stop using Google Docs because a bunch of non-techies I have to deal with don't know how to (or don't want to) use anything else".

Interesting example. I’ve worked with two organizations this year (one large, one small), both of whom happily use gmail, google docs etc. In both cases people expressed surprise that my address wasn’t gmail.com, that on a screen share my search was different etc.

Some of these people expressed concerns about privacy but clearly had no understanding of how pervasive the spy infrastructure is. And why should they? Their expertise lay in other domains.

The private sector has a lot to answer for and an government-driven response (driven by a combination of experts, ignorami, and grandstanders) will be their own fault.


> What they want, first and foremost, is to not be a generic hardware manufacturer.

Every once in a while I day dream about starting a company[0] called something like "Generic Products" where all we do is make the most basic bog-standard things with no extra garbage or marketing bullshit, striving to have as few different models as possible. Amazon basics and https://xkcd.com/993/ are similar ideas.

[0] Never let me start a company, I am not suited for this job.


You are eyeing at Muji, or dare I say IKEA. In the software world, to me Apple was that, until they gave up to become the 21st century Sony.


I've like Muji but find the pricing to be inconsistent. Some items pretty reasonably priced whereas some seemed pretty expensive for no reason.


I sometimes wonder if there is n’t import taxation involved in the disparities.

In Japan it’s mostly cheapish all over board, except for wood furniture which scrape the luxury range sometimes.


We can do a joint venture with my occasional day-dream company, which would sell appliances designed for longevity - e.g. an electric kettle or hairdryer designed to last you a 100 years. Featuring generic packaging[0], lifetime warranty, and extreme repairability - with CAD and circuit diagrams in the box, and spare parts available for as long as they can be manufactured. If any substantial change happens over the years (e.g. we change AC frequencies or switch from AC to DC mains), the company would also sell conversion kits.

--

[0] - Seriously, xkcd/993 is what I dream the shopping experience to look like.


If we are ever able to significantly increase human lifespans and/or birth rates decline, I wouldn't be surprised to see a business model similar to this eventually outcompete all others.

Even with the brief few decades of existence we might get (if we're lucky) now, the planned obsolescence and bullshit, mind-cluttering marketing gets really old for most of us well before we're halfway through it.


I share this dream. I also dream of manufacturing a single model of automobile that lives forever and never changes.


Which is better, to be a commodity, or to be a not-commodity but the thing that makes you not a commodity is a thing that nobody actually wants?


Market-wise? Obviously the latter, as can be plainly seen from company valuations.


> I can understand that monetisation and user well-being can be at odds sometimes (e.g. with free apps and services)

This is also the case in paid services, who are not known to be more user/privacy-friendly.

> This is why I tend to buy things that use generic, open standards. I don't trust something that needs an app to work to last long.

Same here. Unfortunately, it's becoming increasingly harder! Fortunately the second-hand market is inundated with hardware that has proved its reliability thus far... I feel definitely more at risk when i have to buy new hardware.


> With all the praise Brother laser printers get for being just a damn printer, I wonder what the end game is for some of those businesses.

Why does a company need an end game? That implies there are winners and losers, with the winner taking all. Shouldn't we be striving for a more diverse business environment, where there is credible competition to help keep the actions of businesses in check? Wouldn't this be a healthier environment for businesses as well, since they could focus upon long term sustainability?


Well, two thoughts. 1) long term sustainability matters more to stakeholders than it does to shareholders 2) you need an endgame because its compete or get out-competed, so a company that had better, more consumer focused practices holistically might close after a rough patch, leaving more competitively fit companies behind.

Tragedy of the commons. Its why we need government that isn't business controlled, to care for the common good and help steer against problems where local incentives drive everyone to a stable but sort of terrible state.


> I wonder what the end game is for some of those businesses.

The end game is often an annual bonus for a decision maker at the business that doesn't think they will be there in 2 years when there might be fallout. The incentive is short term gain for me, I wouldn't be here in the long run so whey should I care about the long run.


Printer companies make money band over fist. It's a razors-and-blades recurring revenue model.


I suspect one printer company is making money hand over fist. The rest look pretty sickly to me. They are all desperately trying to shift to services in an attempt to shore up their profits.


I hate my brother printer. Now I have to do some weird black magic that involves pulling out the power cable and paper tray and inserting the cable while holding some buttons in order for it to even turn on.

A year earlier it suddenly stopped being able to print wirelessly and, as with all cartridge printers, the ink is crazy expensive.

A month ago I bought an HP printer with an ink reservoir for my mother and it is great. You don't need apps to print and printing costs nothing compared to traditional printing. It comes with ink for about 10k pages and new ink costs around 10 euros.

The best in class for ink-tank printers are supposedly Epson and instead of buying new ink for my own printer, I'll probably just buy one of those.


When people talk about good reliable Brother printers they're always talking about their cheap laser line.

Inkjet printers exist in two forms: Quality photo printers and complete garbage.

They are not for documents or other normal printing, that's what laser printers are for. Your primary printer should not be an inkjet unless you only ever print color photos.


> Your primary printer should not be an inkjet unless you only ever print color photos.

And unless you print photos very regularly or sometimes need them right-this-instant-gods-damn-it, you are usually better off going to a local shop and having them printed there on better paper with better equipment, cheaper.

My main printer is a relatively inexpensive[†] laser, that has a true-black-only mode.

[†] not _absolutely_inexpensive, because I wanted the luxury of automatic duplex and the cheapest models out there are rather unreliable or nearly as expensive/inconvenient to keep running long-term as some inkjets.


> And unless you print photos very regularly or sometimes need them right-this-instant-gods-damn-it, you are usually better off going to a local shop and having them printed there on better paper with better equipment, cheaper.

If I had any need for colour prints, it would be a viable option since there is a shop a block away. For many people who regularly print in colour, the cost of the printer could be justified by the time it takes to stop off at the shop to pick up the prints. That being said, I don't see consumer grade colour printers fitting this role.

Convenience is why I maintain a relatively inexpensive laser printer. I could easily print off 10 pages per week of work related documents at work, but racing across the building only to discover the printer isn't working (which it isn't about 10% of the time) and having to work around that problem for a good chunk of the day isn't worth the trouble of saving about $50/year.


> For many people who regularly print in colour, the cost of the printer could be justified by the time it takes to stop off at the shop to pick up the prints

Agreed. Though for me, assuming an inkjet in full quality mode isn't at least an order of magnitude faster than they were last time I had a supposedly high-spec one, printing a few A4 prints (or more of a smaller size), even assuming no “need several head cleans as I've not used the device for a week or two” or “had to reprint as something went odd half-way through a page” issues or similar, would take longer than marching to the nearest shop with printing facility, printing there, and getting home! Time of day makes a difference of course, my nearest 24-hour place is a noticeably further walk.

> Convenience is why I maintain a relatively inexpensive laser printer.

Same, mostly. I like to be able to print things to annotate. Wasteful environment wise but I'll take the deserved selfishness accusation on the chin there! The main use for it ATM is printing custom maps and other notes for trail runs, on fancy “thin but indestructible” paper that I doubt a print shop would offer, and sometimes being able to make a late correction before heading out to travel to the start is useful.


Or just buy a laser printer and never have the issue again?


Better yet: get rid of all printers. Stop printing. I haven’t needed to print anything in the past 28 months. When I do need to print something it’s a 5 minute walk to the town library where I can print 100 sheets for free every month.


I was away when our printer ran out of toner. My son called me concerned that he had an assignment due and needed to print something out.

As I wasn’t home I had to resort to online. Amazon would deliver an entire laser printer in an hour for less than the cost of a new toner cartridge (no generic cartridges in the one hour service).

Five years later we are still on the starter toner cartridge that came with that printer.


If your life aligns with it, great (I also like that you're using the public library, I'm on my local library board and we also have b/w and color printer/copiers for patrons)!

To reduce my printing and improve my own convenience, I replaced my failing twelve year old Brother laser with a Brother laser multifunction. Now when I deal with paperwork for my accountant, lawyer, bank, etc. I scan and send them a PDF. I made a scan of my signature and apply it as needed. With a few exceptions this has been acceptable. The kitchen chromebook is still no substitute for printing out recipes, though :)


Some of us have use cases where this won’t work. :)

I happen to like my photo printer. Ordering a hundred 13x19 prints would cost more than all that I spent on the printer, ink, and paper.

I still use my ten-year-old laser printer several times per month. Usually for RPG character sheets or paper copies of notes. Sometimes I’ll print out a story I’m beta reading. If I need a printout at 7pm on a Monday, the library isn’t open.

I have gone digital with a lot of things, for instance: all of my handwritten notes go on a reMarkable 2 now.


Toner is bad for your lungs.


I am sorry you’ve had that experience.

My Brother has been running perfectly for years. Use cheap generic toner. It just works.


I saw my get kid prompted to pay $59.99 usd to buy in-game achievements for the hill climb racing game on Android. That's a f-ton of money to be soliciting from anyone, yet alone a kid. He's not quite at reading age and just clicks things. The game design and characters is clearly targeting kids. In my opinion, these aren't games any more, they are gambling.


I've played Hill Climb Racing, and it's a pretty awesome game, even for an adult. The varying gravity, and inaccurate but fun physics, and the variety, are what made it fun for me. I haven't played it in years, and after that moved on to Geometry Dash, which I see myself wanting to play in the future more than Hill Climb Racing. I've scoffed at Candy Crush, but wondered if people who play that might feel the same way I did about Hill Climb Racing.

I think the price is high, but not absurd. I don't know how you'd determine the maximum price in a way that was fair to everyone.


As a parent the volume of in-game purchase advertising and scarcity tactics are anxiety inducing for both myself and my kids.

Every game on every platform should have a global opt-out for in-game purchases, just like do-not-track on iOS 14.


Needing a password for every in-app purchase is the default on both Android and iOS, and only the password-holder can change that setting. Many change the setting because they get annoyed by the constant typing of passwords, and that's 100% on the user if they do that and their kid ends up buying the biggest coin package in their favorite game


Yep, I have passwords enabled. I don't want to see the in-game purchase features at all. The alternative right now is, don't install the game.

Used to be, you could get the ad-free version of an app for a small price, or the ad-supported version for free. I'd happily pay money for an ad-less, in-game-purchase-less version. Instead I have to teach money management and de-escalate an upset kid explaining why they can't have this amazing in-game-purchase feature that is only available for the next 30, 29, 28.. minutes else it is gone forever.

It's exhausting when it's supposed to be fun.


I think the entire argument falls apart at the Flowchart presented:

"Would any user benefit from this?"

Why? Because its trivially easy to say those shitty additions help a user, satisfying the check and throwing you into "Build It" territory.

Do users know how to navigate their local network to upload data to a folder? Not all of them, hook it into a cloud service. Do all users know how to download the right BIOS for their mobo and execute the update? No, make an app. Do users even know what version of OS they're on? Nope, better make something platform agnostic so electron it is!

I'm not all in on FOSS, but I do try to support them when appropriate. I think that ecosystem does a decent job of giving the user control over what's happening, but that comes with the obvious drawbacks of having a higher barrier to entry. I can figure these things out, but my wife can't... my mom can't.

At the same time some of the examples given live in two different realms. A calculator accessing your contacts & location is a different case than your dashcam wanting to ease the backup process. A mobo bios update is different than ads in your video driver installer.

I don't pretend to offer realistic solutions. I think I'm a bit pessimistic that our hacker culture will collectively decide we need to focus on user-first features and oust malicious developers looking to exploit the tech-illiterate. I've seen it too many times on hackernews that people will justify any action because it simplifies things now. I've never favored "move fast and break things" culture and butted heads with hackers who think regulation à la engineering code of ethics is detrimental to our profession.


Yeah, I had a broadly similar reaction. Some of the things the author points out seem like genuine attempts to make software less user hostile by adopting solutions that "just work" across all platforms even if the users have no technical knowledge. I think a lot of engineers think of user friendly as "I can configure it any way I want" whereas for the vast majority of people user-friendly means "just do what I think it should do and don't ask me any questions I don't understand".


> but that comes with the obvious drawbacks of having a higher barrier to entry.

Which isn't necessarily a bad thing. Many governments even raise the barrier of entry artificially for dangerous activitys by requiring licenses or training to operate heavy machinery, handle dangerous chemicals, install electricity etc. Using technology sometimes requires knowledge about the inner workings so users will not accidentally hurt others or themselves. Imo developers shouldn't infantilize users but give them tools to work with. Of course this naturally works better with FLOSS since there (more often than not) is no monetary incentive to get absolutely everyone on to use it.


The issue is that there's a reason software is so user-hostile: it increases profits for the software's developers. If we want to get better software, we need an economic system that changes the incentives.

One way to get there could be to encourage widespread adoption of copyleft licenses like the GPL, which would encourage more corporations to release their software as FOSS, thus exposing them to competition from more user-friendly forks.


One thing that could help, but obviously would not completely solve everything is some sort of "organic" label/certification for software. Basically have someone audit the software and check that it doesn't screw the user in any way. For many categories of software, if you could sell the software as not doing any of this or other bad stuff, it would make sense to stay within the bounds of the certification.

Of course some business models are fundamentally toxic and they could never not break some of the rules.

I wrote about the idea here https://keke.dev/blog/2020/11/29/organic-software.html


As someone who do operations, shitty software is increasingly pissing me off. We get software from customers and their suppliers with declining quality. The developers will try to “fix” or improve their work by bolting on things like ActiveMQ, Kafka, ElasticSearch, NoSQL and everything but the kitchen sink. They rarely give production deployment much though, and if they do it’s just a bunch of people yelling Kubernetes.

The sad part is that many of these problems aren’t THAT hard.

I’m really facinated by the lack of quality and that no one seems to care.


> someone who do operations, shitty software is increasingly pissing me off. We get software from customers and their suppliers with declining quality.

Not just you. Developer tools are slowly decaying into disasters also. Pretty much every enterprise development tool I've used is just... lacking basic QOL features. Or the workflows are strange to the point of being counter-productive. Atlassian and Microsoft are the biggest offenders.

I actually spend more time fixing things that Visual Studio messed up (ie: removing dependencies but destroying a config file in the process, deletions creating phantom files, ect) than I do actually resolving bugs I created by being asleep at the keyboard.


Working in security and seeing these systems just bolting boxes after boxes of various things sometimes I wonder what are we doing? Is all of this really needed? And how many messages etc. did we actually need to handle? How many resources we are allocating for all this?


> At the time of writing, this blog collects anonymized data with Google Analytics. Don’t want to send it? Have your browser send a Do Not Track request and no data will leave this page. It takes an if statement to do this, not a month of engineering work.

How is this consistent with the message to not be hostile?


OP here. You have an explicit option to opt out, no gimmicks.


Few sites respect Do Not Track. Some even use it for tracking. So you force people to opt in to other tracking to opt out of yours.


Is this default ON designed for the users needs? Or the developers?


Nothing new here !

The vast majority of Today's software is built by "Corporate Developers" and "Corporate Business Owner".

Generally these people don't have any background in UX or UI or simply commonsense about software ergonomics.

An example would be Stripe , as an Architect in Banking I've spend years explaining to Executives and Business Owner to invest in "Partner Experience" and good "Developer Ecosystem" , something they've always refused because the current model "Answer the Need"

This is the same problem , the people who are building are generally not using the product, the people in charge simply don't understand the "Added Value" of making a change to the current software so it's doesn't weight "150 MB" but rather "1MB" and has "auto installer" with it , "we have always done it this way , why change ?".

Add to that software legacy you end up with mess like those which are obscenely hostile piece of software.


Hear, hear! My disillusionment with tech is at full boil at this point. It's gotten to the point where I trust tech products about as much as I'd trust a wild chimpanzee.

Unfortunately, one person boycotting hostile tech is like one person trying to bail out the Titanic with a teaspoon.


> one person boycotting hostile tech

So I don't try to boycott; I assume I'm an outlier, and my choices won't make much difference to the supplier.

I just stay away from stuff I don't like or disapprove of. Of course, I hope that others -ercing the supplier is a path to unhappiness.will share my views, and that the supplier will notice and change; but it doesn't usually seem to happen.

But I'm not upset. I'm just exercising my preferences. Trying to use your preferences as a way of proving a point or coerce the supplier is a path to unhappiness. Exercise your preferences, and be happy that your preferences are satisfied. If your supplier receives a signal, so much the better - but that's the cherry on the cake.


I don't boycott, I try to check out whenever I can. I've been running a libre stack on my desktop computer for over a decade.


> Would any user benefit from this?

Corporate types will just self-delude themselves to always answer "yes" to this.

Recently, a telemarketer called me to sell me solar panels. Initially I thought he was calling me about my existing solar panels, so I asked, "Are you trying to sell me something, or do I already have a relationship with you."

His answer, "I'm not calling to sell you something. I'm calling to tell you about the blah blah blah."


I suspect this is mostly driven by the economics of the software business. The cost of software is driven by fixed upfront costs. The marginal cost is now pretty close to zero. This means that unless you have some kind of lock in like Photoshop or Office then competitive pressures are going to drive your prices down towards zero.

If you can't make any money selling your product then you will start looking elsewhere. That will include transactions that are against your customers interest like selling their profile to advertisers.


Ultimately, a developer's or a company's objective is not to provide good software, but to succeed financially (or in some other metric). This is somewhat aligned with the user's needs - if a user wants a calculator app, it should do arithmetics. But beyond that, The Dev is not a benevolent entity, and users are a means to an end.

It doesn't have to be cynical and exploitative, but when push comes to shove, The Dev will act in their own interest and not that of the users.

Maybe sad, but really that's how everything works. Are energy companies interested in a world with plentiful green energy? No, they want to make money and pay dividends.


Of course there are other motives. For most Free Software the motive is "Make something that is good for me." Still not optimal for other users but closer aligned.


Sort of. As much as I like Linux, I don’t use it on my own kit. Linux is made for tinkerers, or people who know it’s internals well. For me Linux is always slightly broken.

I guess that’s because the devs building it don’t care that much about 100% seamless work on all hardware; 95% is good enough. But that remaining 5% means I just can’t use it. By contrast, Mac is a non-free, limited walled garden (prison?), but doesn’t need the trackpad be debugged or kernel recompiled.

So here, libre devs’ work is less aligned with my needs than the commercial operation, whose key selling point is seamless UX. (Not complaining, just saying)


I've gotten a lot of flack for saying that advertising and marketing are terrible industries and need to be chopped down by 95% or more, but I think this only supports my point. They can't stop themselves from trying to hook into everything so that they can track and "engage" the user.

I've gotten a lot of stink eye by strongly pointing out that the users don't want to be "engaged" with your brands and that people are creepy for having that expectation. They just want a product or service that works well. Somehow along the way we convinced ourselves that all of this is normal.


I do think the flowchart needs one more diamond (if-statement): Between "Would any user benefit from this?" and "Build it" there's another state. "Would other users be harmed/disadvantaged by this?" (and draw the obvious lines out of that...)


"Would some users benefit from it?"

-> build it and allow them to opt in if they like it.


This flowchart is true for many things... even webpages:

How many users actually wanted to subrscribe to your newsletter the first time they visited your page, before they even read the first article there?

How many first-time visitors actually want to donate money?

...


I don't understand this. I visit a site I've never been to before and immediately a popup takes over along these lines. Do those really convert? I can't imagine they do, but they are also everywhere so they must be effective to some degree?

I feel like The Guardian's approach is better, after a while they bring up a banner down at the bottom that says (paraphrased) "hey you've read x articles, we want to stay independent, can you help us?"


> they are also everywhere so they must be effective to some degree?

I wouldn't assume that. I would bet most people enter a fake email address just to make the thing go away because they don't know you can just close most of them, or don't realize the passive aggressive "No I don't want great deals sent to my inbox every day because I hate great deals" text link is a button they can press to dismiss the dialog because they don't read it and it intentionally doesn't look like a button to discourage users from pressing (or reading) it.


Or ask me for feedback. Like I haven't even used your site yet, only feedback I can give is don't ask me for feedback...


How many users want to have to have the inconvenience of paying for the software too!


If you want users to pay for your software, put a price on it, and stop pretending it's free. Nagging pop-ups -> Close tab.


I do. I would much rather pay than see ads or be required to give up personal information. I can understand that not everyone wants that, but I do. I also have been very disappointed with usability of FOSS to the point that I rarely consider using it anymore. So yeah, I'm happy to pay (once per version I actually use).


I think it is correlated to the rise of free (as in $0) software.

People don't like to pay and developers want to make money. So the strategy is to make the initial cost low, preferably zero, and then make the user pay, directly or indirectly. It is not new, we had things like shareware in the past, but now, developers have more options, and they use them, because the most "user-hostile" thing is to ask for money, especially a large up-front payment.

I know some people prefer to pay, but they are a minority, and therefore, it is not the most profitable way to monetize.


This argument falls apart if you look at windows. You are (supposed to) pay for it AND you get datamined until you are dry.


This piece is a great idea, but I was disappointed at the execution.

New, but doesn’t mention Apple’s photo scanning. Forced Windows upgrades and telemetry mentioned but buried. Focuses on keyboard lights, which is fine but not exactly near the top of my list of concerns. Doesn’t mention ads in the OS.

Finally it blames “developers.” This phrase could include management from certain perspective. Honestly, I’m sure approximately zero engineers are pushing for this stuff.


> New, but doesn’t mention Apple’s photo scanning. Forced Windows upgrades and telemetry buried.

Those two things are different issues, the article is about software that makes it difficult to perform the actual task you are using the product for.

Apple's photo scanning doesn't make my camera difficult to use. Windows telemetry doesn't make Windows difficult to use. Yes, they are user hostile, just not in the way you wish the article was written.


> Disable telemetry? Not a chance - you better be ready to have seven layers of defense in /etc/hosts, Pi-Hole, and a custom-built DNS + firewall + URL filter + deep packet inspector inside a server rack in the basement. I am exaggerating, of course. You only need six layers of defense to make this all work.

That's in the post (and, incidentally, it appears OP works for Microsoft)


Yes, I think it could be better, and these hostile practices do overlap. Author does mention telemetry, although the lede is buried.


> they focus on the needs of developers instead of needs of the customers.

Oh this kind of software takes care of the needs of customers alright. Except their true customers are advertisers not users.

This adification of every single item we use every day is tiresome and will hopefully lead to a wide pendulum swing in the opposite direction once consumers truly have had enough. We're not there yet but I think it's coming.


> I think it's coming

Unless you make it come to yourself by boycotting adware, the fact that adware is everywhere is proof to the contrary.


Aaand if you follow the steps on the flow chart, your product will immediately be dead, forgotten; replaced by some competitor's product who, while being likely technically inferior to your product, did not hesitate to do all these types of shady things in order to gain that bit of extra market share.

"Natural selection" at work. Sad, of course.


Almost all of the examples listed are in relation to hardware. As far as I can see, hardware vendors see software as a cost centre and at best don’t care about quality and more often than not try to make up for the cost by bundling crapware with the drivers.

General purpose application software is leagues beyond the crap that hardware vendors pull off.


Well, I'd want to see it only be hardware but sadly it's also common in software-only too: Adobe applications being extremely slow/inefficient/buggy (not even mentioning the creative cloud app which insists on working in BG even if no Adobe apps are open), want a monthly fee, or Microsoft bloating its own OSes UI with ad of its own services are just a few examples.


Another example: Cue Health makes a rapid COVID19 test. They ship you a little box, and a set of wands to insert into the box. The box should literally be able to tell you whether the test passed or failed, like thermometers, and pregnancy tests.

But no, the stupid thing requires you to install an app on your phone, create a cloud account (because we all know we can totally trust the cloud with personal data) and it will refuse to work without any of this.


This strikes me as extremely generous.

I agree that on an individual level, developers may be just following an industry-trend path of least resistance. The trend is putting the developer first.

But as a general phenomenon, it's exploitative. The goal is to capture as much of the user's time, attention, and data as possible.

Sometimes I feel silly for prioritizing FOSS highly, but sometimes not. At least I don't ever put up with this kind of stuff.


I couldn't stop laughing whilst reading the entire article.

The one that really got me was the Electron-based “launcher”. I had to take a break for ten minutes.


OP here. Sadly a true story with a "shall not be named" software for optical media management. I just want a Win32 binary that does it's job. Instead, I had to wait 45 seconds every launch until the server "spins up" from working in the background.


I recently left iOS over the surveillance stuff and I was looking at a Nokia device to replace my Apple Watch. I read in the Amazon review that you had to create an account and their privacy policy explains that your location data will be synced with Nokia and you can't opt out, the device can't be configured without accepting that.

Nope.

I'm at my wit's end with ALL of this stuff. Most software, apps, digital life, everything related to technology or a computer or a phone - a good majority of it is frivolous. I will no longer exchange my privacy for these idle conveniences.

> Browsing a site through the browser and not the app? Half of the functionality is not available, just to force the user into the app for no good reason. I just want to read a comment.

reddit you absolute POS.


That seems to be the end result of companies seeking untapped income from harvesting and selling customer data, besides offering everything as a subscription service without any kind of end-user ownership or guaranteed ongoing functionality. Why just make money off the sale of the product when you can continuously gather telemetry, personal information, track their location, their usage patterns, their contacts, their photo albums, metadata and browsing activity?

Most people don't think twice to hit that "Accept" button prompting for permissions, allowing the envelope to be pushed further and further. The increasing ease of processing huge data sets allows all of this information to be aggregated, sold and used for whatever purpose whoever is willing to pay for it sees fit.


Yeah, this whole thing has been a big eye opener for me and you've the nail on the head. Moving from iOS to Calyx involved reading up and a few things and that's a community that's much more disposed to discussing privacy related concerns that I simply haven't been aware of. It's a bitter pill to swallow and infuriating, the degree to which we're surveilled and manipulated. Went back and paid attention to the Prism disclosures. It's all just fucking mental.

> Why just make money off the sale of the product when you can continuously gather telemetry, personal information, track their location, their usage patterns, their contacts, their photo albums, metadata and browsing activity?

This is the key issue, it absolutely makes sense for them to do it. I'm one of those people who just hit "accept" but no more. My new answer to any company that continues to ask that question is simply... because if you do that, you lose the sale. It's frustrating that basically amounts to spitting in the ocean but I simply can't participate any longer.


I don't think their S30+ (dumb) phones have that sort of ToS imposed...but then I can't imagine you want to revert to that sort of thing.


Ah, sorry, maybe a bit unclear - I was referring to a smart watch that Nokia makes. From iPhone 12 with iOS 14 I moved to a pixel 4 with CalyxOS.


The medium to broadcast ads has simply shifted over time. It used to be expensive tv ads, billboards, and print. All very expensive and you could not target population segments precisely, it was limited to what time or during what tv show the ads were shown, or in print political leanings. Retargeting was almost impossible and expensive.

Then people started watching less tv and reading less newspapers(or did so online). Then JS got mature enough to track users and then the marketing departments started instructing the devs for maximum efficiency. At the cost of user ui/ux. Almost every web page loads ads via ajax , consents popups, email list ctas with a lot of bloat. Nobody knows how to fix it, or the financial incentives are just not there.


Just use free software. Stallman was right.


"Either the user controls the software, or the software controls the users":

https://youtu.be/Ag1AKIl_2GM?t=57


Unfortunately:

- A lot of free software either sucks or is entirely non-existent for many use cases

- Free software is not entirely immune to this behavior either


I prefer to not use a feature instead of using a hostile one.

In my more than 20 years of journey in the free software world, I never came across a user hostile free software. This is in stark contrast to proprietary software I tried.


The point is that with FLOSS you can fix both of these problems yourself.


That is not the case for any software that is not trivial. Recompiling to remove ads from a free program may be achievable but something like adding the missing support for Excel VBA into LibreOffice Calc is beyond the capability of almost all users.


You can also pay competent developers to add it: https://libreoffice.cib.de/ Even easier if almost all users unite in crowdfunding.


To be fair, most of the examples in the post are about shitty hardware, or shitty mobile experiences. The option of using baseline commodity hardware with no RGB lights is somehow not considered.

Free software is indeed a breath of fresh air.


Isn't this a VC/investor problem? If you make a new device, say some GPS locator for hikers, isn't their very first question going to be, "Okay, this is cool hardware, but how are you going to generate MRR from each purchase?"


This is a really serious problem and a nice set of principles to go by. There's a big "but", however: Most of us here are hired employees and aren't really making the products for the end users. What really could be helpful are not some "oaths" but the strategies for dealing with our managers and employers and ways to uphold the ethics (and in some cases, aesthetics) of our work.

The mere market clearly don't work here, as the demand for these values is overshadowed by user's convenience, network effect and marketing brainwash.


Increasingly I am looking at purchasing my software, instead of using freemium or subscription services that lock you in forever. Here's what I've bought since 2019. All of the below were one-time purchases:

- Affinity Designer + Publisher (Photoshop + InDesign replacement, $35 each)

- Tumult Hype (Adobe Animate replacement, $100)

- SimpleMind (mindmapping tool, MacOS, around $40)

- Bootstrap Studio (WYSIWIG site builder, $59)

- YouCut (Android video editor, $11.99 full version)

- Sketch ($99 for 1 year of updates; more than enough for storyboarding and basic prototyping)


When I was a kid, TV came for free over the air, and the TV stations made their money selling advertisements. Then came cable TV, which you had to pay extra money for, but which included lots of ad-free stations. But after a while, cable caught on and almost everybody was paying for it, and the cable stations realized they could double-dip and not only charge you to get cable TV, but start putting ads into their previously ad-free stations. After a while, the "included" cable stations had as many ads as the old broadcast stations.

I suspect that the pay software products will follow a similar route and monetize every way they can.


It already has. Which is why it's important to highlight the remaining few iconoclasts that stick to the tried and true method of "I provide a product, you buy that product". Not rent the product as you would with Spotify, but be able to buy it permanently.


> All of the examples above have one thing in common - they focus on the needs of developers instead of needs of the customers.

Exactly. https://web.dev is prime example of that. Shiny new features for _developers_ all the time, as if any of that will make incompetent web developers write slick and fast applications.


This article needs a part two. It does a good job of pointing out the misalignment between user needs and organization needs, but fails to address why this misalignment exists.

The flow diagram assumes the naïve situation that this is a just a matter of awareness, education, or people becoming somehow a "better" person.

Whilst I don't have all answers, it's a complex problem set, allow me to speculate.

When you look at the type of products discussed, say a mouse, they are low margin products. Ultra quick time to market, yearly iterations, and hardly ever built to have a long time span.

That's not us though. We're "Good Corp". We do it properly. The mouse comes with a basic driver, no app needed. We do build an optional app for the lights. It's a native app, built from scratch. Smooth and fast. We build this app for 2 or 3 operating systems, natively. And we respect standards, the app can also control lights of devices from other manufacturers. Our enormous test lab tests every possible combination across operating systems and competing mouses, and will keep doing this as these underlying systems are constantly updated. Finally, we build our mouse to last, from better materials, and also design for repairability.

Our good corp mouse costs 120$. The evil corp mouse costs 50$. It has the exact same features, just a lot of cutting corners, but functionality is comparable.

Which mouse will customers buy? Will they recognize quality? More importantly, will they pay for it? Or will they just go for the cheapest and tolerate the annoyances, and buy another one 3 years from now?

I think you know the answer. When the market does not reward quality, quality will not be delivered. There will be no magical moment where developers turn "good", they cant do good, because good is expensive, and nobody buys it.


It is a universal and fractal problem: toolmakers make tools they don't use. They include a manual in the box because your intuition alone won't be enough to understand and use the tool (see React, especially React hooks where several blog posts later no one is finding them easy to use). The unhappy users make even more bad tools they don't use (and, mind you, the badness is exponential from one layer to the next).

The first toolmaker in the chain will be a user of the final product. They'll see all the badness in the product and rage about it. But they won't see their contribution. They don't make bad tools; it's their users who refuse to MTFM (master the [scrubbed] manual), they think.

The reward of doing the job is the money. Ergo, focus on what brings more of it, as patio11 advised. This is the natural destination of the "Profit Center" advise. Bad experience for the user, yes, but Excel is having a great time.


> they focus on the needs of developers instead of needs of the customers

I'm not sure what he means by "developers" - the people who actually wrote the code? This didn't come from them. Or the marketing people who create the JIRA tickets that the developers are supposed to "close" 10 of every "sprint"?


OP here. I should've clarified in the article. "Developers" is not meant to single out engineers. It's the collective "people who build, promote, and maintain the software"


I think the article is pretty kind and benevolent about what the companies do this kind of things. This isn't done simply because they don't care about users or care more about developers, they do it because they want to get more money after buying the product.

Some spy their users to sell their information, others ask a lot of personal information to do that. Usually they give you some "poisoned apples" in the shape of software you don't need, and even they are some cheeky who try to sell you other things, in a more polite way[0] or using the "erosion method"[1]. More infuriating are those who doesn't want you to control them and the only thing you can do about this is uninstalling[2].

The worse thing about all of this is the difficulty about avoiding this kind of software, like some printer drivers[3].

[0] Sometimes, after opening or using the software, they show you some ads of the same company

[1] The erosion method is what Avast do in their free software. Lots of pop-ups (yeah, in 2021) from the software asking you to buy some of their product until the users buy it to "shut it up". I don't think this works too much btw.

[2] Have you used any PC with a paid McAffee antivirus installed? They don't let you ad some exceptions to analysis because they want it that way. So, if you have some old hardware, with unsigned drivers, you might won't be able to install it because the antivirus says that is malware.

[3] When you buy an HP printer you have to install all of their software to have some kind of details, like reporting to you it doesn't have ink and that's why doesn't work, but to have that, you have to install a 500 MB package with a lot of things you don't need, a lot of ads about how HP original ink is the best, an HP Assistant icon in your task bar, and a lot of process, services, and programmed tasks who only make your PC slow. Meanwhile, Canon ones only need a 20 MB~50 MB installer who works fine without all the bloat.


Closed source software has always been built on an extortion business model. As long as we permit math to be patented and copyrighted this will continue to be the case. The issue now is that each of us as individuals uses much more software than we did, 5, 10, or 20 years ago.


> Want to get data from inside a device onto your computer? Nope, it’s not a mass storage device.

MTP exists, Windows and Linux can use it... but OS X still doesn't have a native MTP client.


Vendor lock-in absolutely figures into a hell of a lot of user-hostile tech. Even before Apple went full spyware, I refused to buy iThings on principle, just due to Apple's abuse of its customers and developers (ever-changing connectors, unrepairability, needing to get Apple's blessing, revocable at the drop of a hat, to even write software for them, etc.).

Android is very far from perfect, but for now it's at least still usable, except that manufacturers have decided to follow Apple's lead on unrepairability. But at this point I'm preparing myself to do without, as I'm not optimistic about the future of smartphones. I was a holdout for a long time anyway, and the whole "Install our app! <small>which, by the way, also sucks down your contact list and mines cryptocoins</small>" thing has gotten out of hand.


> ever-changing connectors

iDevices have had only two connectors over their life time - the bulky 30-pin lasted thirteen years (2001-2014), and the Lighting connector from 2014 to this day. The iPad Pro has USB-C, so I won't complain there.

Macs also have only used standard connectors since the Intel era.

> revocable at the drop of a hat, to even write software for them

You don't need a paid certificate to write software for your own Mac/iDevices, you don't even need Xcode to create software for Macs (as evidenced by Homebrew/Macports).

Fully agree with you on the rest, though.


Network effect. That is what I blame it on. Once people all have to go to the same place, they are trapped and the owner of that place can do what they like.

And what is the network effect really? The fact that people can't find each other easily on the network.

If we had an easy way to find each others devices directly I could send a "FB Post" directly to my friendship circle rather than via FB.

Maybe instead of a DNS we need a PublicKey <-> IP address system.


This isn't new. I was annoyed enough to write a rant about it on my website back in 2004, 17 years ago. http://www.stentex.net/~mwandel/rants/hp_scanjet_4600.html


One word that keeps coming up in all these objectionable scenarios is 'market'.

One word you never see is 'standard'.

All this isn't an exception, it's the rule. If you want stuff to not be wrecked by externalities, back away from free market concepts and look towards more centralized control from whatever source. No exceptions.

We could probably shift towards a sort of managed capitalism model and be just fine. It's the free market absolutism that causes this. This is what you get out of that. It's not increasing the evilness in the world, it's just that without accounting for externalities competitive pressure will always push this direction no matter what. There are no rules in 'competitive' unless you put them there.

Non-free-market systems don't naturally scale, while by definition free-market systems that ignore externalities can scale to unlimited extent, for 'free'. Again, this is what you get.

Figuring out how to make capitalism be managed and still scale nearly as well as free-market capitalism is just a problem, nothing more. It is only an area of possible disruption, work to be done. It's not some tautology.


I'd take it one step further: every market is a managed market, and we're only haggling over details. While you could find exceptions (local babysitting clubs using hours as currency), the vast majority of Actually Existing Markets use state currency, and state contracts, and property rights defined and enforced by the state. Markets are merely one tool in a political toolbox, and the details matter.

An excellent book on the history of property rights and policy (for good and ill), and which explores the tradeoffs between different forms of "ownership design": https://www.minethebook.com/


> However, the problem is becoming much more endemic lately, with everyone on the hunt for more data, more accounts, and a level of access to a computer that would make it seem like they’re using it as a giant bullseye for everyone on the Internet.

And I would argue that the main driving force for that is for selling your data to advertisers on software that is free (and sometimes paid), and maybe to increase sales on software that is paid. All this, quite possibly, at a privacy detriment to the user.

I don't think the fault lies directly and singly on developers, as mentioned in the article, but many are reacting to the way the software market currently works, and attempt to gain that edge. A lot of the big-name software may also likely be designed by committee, one of which may include the marketing department, growth analytics etc.


So, who of you earns their money that way?


“If I had asked people what they wanted, they would have said a faster horse.” – Henry Ford

If you have the users design a car you end up with a Homer bubble car.

A better strategy is don't be an asshole.

You know telemetry on by default is wrong.

Putting sane defaults that the users must opt in instead of opt out is right.

No one wants to make an account for your product, other login choices are usually available, but don't force it if you don't need it.


The author didn't say, "Let the user design the software." They said, "Would the user benefit from this feature?" That's a big difference.


But who will pay for this software? Not the author, they’ve made that very clear.

The things they’re railing against fall into two categories:

1. The OS vendor hasn’t built it into the OS.

2. Cost saving measures.

One the developer has little influence over. The other is business physics.


OP here. Au contraire - I am happy to pay a bit extra for software that does its job and gets out of the way. With hardware, one could argue that can be made a part of the price for the device - if I buy a "premium" component, I prefer to have a clean user experience that does not create a hole in my network to manage RGB lights.


Thanks for responding! I guess I was mainly reacting to your claim about the move to subscriptions. It costs $10/mo to make software these days. $0.33/mo (your stated price) isn’t tenable.

I expect the added costs apply similarly for other portions of the supply chain. Apple hardware provides similar quality to what you’re asking for. It is 2-4x more expensive and that’s with the advantage of scale.


I think this can be taken on a case-by-case basis. With software, where I am looking is a place where I can buy a "snapshot" - the current release that time and effort was invested in, that I can compensate for. That's it. I am not asking for constant updates, as I would be perfectly content with the release I bought. That is, until it can't work for my needs, and I need to buy another version.

But I do understand your point and I agree - it's not a cheap effort.


This is the perennial problem with pricing. You should pay for the value you get out of the software. At a fixed price, there’s a lot less flexibility. In this case that same software might decide to charge for 3y or 5y of value. Would you balk at paying $500-$700 for perpetual use?

The subscription is more efficient in the sense that the folks getting more value pay more.


If the software is worth it, absolutely - I would pay $500 and use it for years to come. Up until a couple of years ago, that was the model used by Adobe for their Creative Suite. Tools like Vegas Pro are in the same boat - it's expensive for a one-time fee, but I view it as an investment in my craft (if I really need the tool).

My hypothesis (and I have no data to back this up) is that most users leverage the same functionality over and over despite the updates and new features. As a hobbyist user of photo-editing software (and Photoshop in the past), I can't recall a single update to the stack in the past five years that was groundbreaking in my day-to-day usage of the tool. That's not to say this won't be the case in the future, but when it is, I will happily pay a premium for the next version.

There is, of course, the argument that subscriptions lower the bar of entry - a student can't afford $600 per tool, but they can much easier bear the $29.99/mo. My argument is less about "no subscriptions, ever" but more about "give me an option to give you money upfront and forget about updates until 5 years later."


Ok, that’s fair then!


I am using Ubuntu 20 and as far as I know I don't encounter any of these issues. If anyone is aware of user hostile things in Ubuntu, I'd love to hear it.


Natural selection will quickly weed out everyone who tries to follow the suggested path. Simply due to cost of traffic becoming lower than revenue.


Cost of traffic for a hardware monitoring/config utility? Not everything needs to be a service, and this is also a perfect example of why some things shouldn't be services, just plain old downloadable software.


Yet people will happily use frigging GOOGLE out of all services _as a calculator_ rather than their happily locally working and probably much more featureful calculator app.

People are using, for a simple two digit multiplication, a bazillion tons of hardware distributed thorugh hundreds of countries hundreds of miles away. Even the simplest microcontroller amongst all the hardware participating in this www query would be able to do hundreds of these simple multiplications _per nanosecond_. But no, people query google.


> probably much more featureful calculator app

Hum... I've got out of my way to install qalc, but Google is much more featureful than anything you find on Windows or that comes by default on most Linuxes.


Convenience. You can google the answer faster than your calculator app can even open.


If this was true for _any_ platform I would immediately throw it away.

But the point is that there is, for some reason, a pressure for platforms to be this way; convenience is not the cause.


Unfortunately it is true for almost any platform I've tried. Calculator applications have become as bloated as everything else.


The Windows calculator can take seconds to launch, if you already have a browser open C-t and then entering a quick calculation is much faster. Even on systems like macOS where the calculator opens quickly, again if you already have a browser open creating a new tab and querying is faster for any short calculation.


By cost of traffic i mean: cost of acquiring users/clients. Nowadays it makes everything which is not a clickbaity, addiction-based scam, pretty much futile. Slowly but surely, Internet becomes a land of sociopaths, no one else gets to make much money.


Is there a list of ethical software somewhere? It does not need to be free in any sense, just not implement the described asshole practices.


I notice someone else mentioned that software is a zero marginal cost product. This is an element that drives the cost down to zero when there is competition. But software is more than just zero marginal cost. An additional passenger on an airplane is zero marginal cost as well, but they can still charge for a ticket because it is trivial to keep someone off of an airplane.

The bigger problem with software is its a public good. I don't mean that as some kind of normative statement saying it should be or deserves to be provided free of cost to all users of a particular state. I'm saying it is non-rivalrous (some sequence of bytes copied onto person A's disk does not prevent person B from copying the same sequence of bytes onto their disk) and non-excludable (due to the nature of disks and bytes, you can't prevent a person from doing it.

Not all goods that are public goods by the economic definition need to be publicly provided. Media has this same characteristic, and they solve it by:

1) Making money off of live performances or theatrical experiences rather than the content

2) Selling ads

There is an analogy to selling live performances in the software world. At the company I work for, every product we make is 100% free-to-use, open source, self-hostable, doesn't require an enterprise edition to unlock features, and doesn't include any kind of user-tracking to sell ads. Instead, we sell support, and also embed developers as consultants into client organizations. This is why I currently work for the Air Force. We're monetizing the developers rather than the software, the same way rock bands monetize live performance.

The only other options are to either figure out some unnatural gating mechanism to prevent people from using your software without going through a payment gate (i.e. don't open-source it and only host it on your own servers, or distribute some of the software in encrypted form only and require a paid key to unlock it, or you sell ads.

In traditional media, ads were fine. They were annoying, manipulative, I don't think anyone really liked them, but some were entertaining (arguably a draw of the Super Bowl), it was always easy to avoid them, and they were entirely targeted based on context.

The problem with ads in the software world isn't the ads themselves. It's that companies relying on ads to monetize are never happy with the returns you can get purely from contextual ads. You can learn so much more about a consumer's purchasing behavior and preferences by installing spyware on every device they own and logging every action they ever take, all the better when most of them don't even know you're doing it.

But this is the classic Jurassic Park dilemma. All of your machine learning researchers were so preoccupied with figuring out what human behaviors they could predict given enough data that they never stopped to consider whether they should collect all that data. Market research used to be conducted on paid volunteer focus groups and paid volunteer Nielsen families. They consented to it. They knew what data you were collecting and how you would use it.

But not happy with the limits of profit margin imposed on what data can be voluntarily collected from consenting research subjects, we have instead built a panopticon to turn every single person in the world into an unknowing research subject.


Discord comes to mind.


[flagged]



[flagged]


> +(You can guess who's the Führer.)

To clarify, it's Lennart Poettering. This is a systemd joke in poor taste, but that's all it is.


Wow, I was unaware of this subtext, thanks for exposing it.

Germany has very tough laws against glorifying the Nazi regime, so if they are Germans it’s not just sick humor but deliberate.

Though Suckless vs. Poetering seems like a Hitler vs. Stalin evil-fights-evil situation best avoided by giving both a wide berth.


Germany does not have laws against Nazi jokes.


When is a joke a joke and when does it stop being a joke? Alt-right types are famous in their attempt to blur the lines by claiming sarcasm or dark humor. To be clear, that's fine in certain contexts: if you're with people you know well, and with whom you have a mutual understanding of when to understand the exact opposite of what just came out of your mouth.

However, when you're doing that with strangers in public, for example on the Internet, you're just sending the wrong message and building a space where such takes are normalized. See also "cultural hegemony".


I'm just referring to the previous comment. You have to be pretty overt to fall afoul of §130, blurred lines don't count.

(It says something about the intelligence of neonazis that the paragraph still finds frequent application.)


This seems like a lot of jumping to conclusions to fit your pre-determined opinion of them. Without derailing the thread, I do think we all need to extend charity to people who have openly declared what their affiliations are not.

We shouldn't normalise bad interpretations regardless of our own biases.

They have said they're not, so we should take them at face value. Let's now focus on participating to achieve the shared goals of good user-software without bloat, spyware, and other crap that makes up modern technology.


> This seems like a lot of jumping to conclusions to fit your pre-determined opinion of them.

Unfortunately, that's the opposite. I was very interested in suckless some years ago, and was very disappointed to learn their tolerance (if not sympathy) towards nazism.

> They have said they're not, so we should take them at face value.

Denying affiliation is a classic strategy in psyops. The alt-right and manosphere have established entire PR strategies based on that.

I'd be more inclined to trust a person/collective declaring they anti-nazi (or antifascist if you will), than a person/collective declaring they're "not a nazi" then leaving traces of nazi symbolism everywhere.


> Denying affiliation is a classic strategy in psyops. The alt-right and manosphere have established entire PR strategies based on that.

The same is true for attributing tainted characteristics to your ideological opponents - just call them "nazi" or "fascist" and anything goes. If they deny that they are nazis or fascists, well, that just proves they are nazis or fascists. This is called a Kafka trap. It is the same tactic used by so-called anti-fascists to legitimise physical assault on ideological opponents, they just simply call them "nazi" and start a "punch a nazi" campaign. It is also the tactic used by Ibram Henry Rogers (who took up the nom-de-guerre "Ibram X. Kendi") to be able to label people racist by stating that those who deny they are racist thereby confirm their racism. What all these tactics have in common is that they do not actually aim to confirm or refute the presence of a given trait, instead they are used to force another trait upon the accused - whether that be "anti-fascism" (which you referred to) or "anti-racism" (which Rogers refers to). Those forced traits tend to carry the name of the thing they supposedly refute while often encompassing elements of the refuted trait: so-called anti-fascists act like fascists, so-called anti-racists call for racism like the following quote from Rogers' "How to be an anti-racist": "The only remedy to racist discrimination is antiracist discrimination. The only remedy to past discrimination is present discrimination".

This can be generalised: the opposite of an extreme opinion is another extreme opinion, the opposite of an extremist is another extremist.

> I'd be more inclined to trust a person/collective declaring they anti-nazi (or antifascist if you will), than a person/collective declaring they're "not a nazi" then leaving traces of nazi symbolism everywhere.

Honest question: would you be more inclined to trust a person or collective declaring themselves to be, say, anti-communist than one declaring not to be communist? I have seen a glaring discrepancy between the trust put in so-called "anti-fascists" (who more often than not are all too happy to use the same tactics as the original brownshirts used to spread their ideology) and that put in those calling themselves "anti-communist" with the former being given the benefit of the doubt while the latter are watched with suspicion since they may be "right-wingers". Well, yes, they might lean to the right, just like those "anti-fascists" most likely lean to the left. Whether that makes the one better than the other depends solely on your ideological standpoint and as such is subjective, not objective.


FYI, I vouched for tofu's dead reply to my question on whether he'd be inclined to trust anti-communists. I might not agree with his stance on this subject but I think he should be able to answer the question - which he did. From reading his comment history I get the idea that we agree on many points related to technology but disagree on many political subjects. I'd much rather have an honest discussion on all subjects out in the open, without labelling or epithet throwing than to suppress parts of that discussion while allowing other parts of it to thrive. The former might lead to some useless political discussions but those can simply be ignored - just collapse the thread [1]. The latter inevitably leads to some politics getting through while other politics is killed.

[1] this could even be an option in personal settings, something like 'Show dead [ ]', 'Show politics [ ]'). It would also make the job of policing the forum easier since anything political can simply be flagged as such by moderators or users, just like users can flag posts and replies.


I'm sorry, but motivation and intent matters. "Software group dedicated to Nazism and user-friendly and non-bloated software" seems like a hell of a weird combination.

I think you're mistaken in your interpretation, especially given their own clarifications, however let's not derail this thread further, and let's agree that user-friendly non-bloated non-spyware technology is a good goal for all of us even if we pursue them in different groups.


> They have said they're not, so we should take them at face value.

If only it were that simple.


I've enjoyed your comments here, and have learned a bunch from them over the years, so I'm honestly surprised by your comment. Are you saying personal interpretation always supersedes direct clarification by the person or group in question?

Seems like a lot of what ails modern discourse is simply imagining malicious injury or oppression when we should work on finding commonalities instead of what differences are there.


What you are calling direct clarification can instead be deliberate misinformation. Should we consider North Korea to be a democracy because their official name includes "democratic"?


Well, besides the well-known fact that all countries with $adjective in the name aren't really $adjective...

... then yes, as a general principle, we should take people at face value on the Internet, unless there's a clear reason to do otherwise - which could be a reason to confront the person about their statements. Quite a lot of dysfunction in Internet (and increasingly, offline too) discourse comes from "they say X, but what they really mean is Y" pattern of thinking.


The opposite can also be true - if I said I met MereInterest in real life and you were behaving badly (shouting at wait staff and so on), and you claimed you were not, who should be believed?

If I wanted to slander someone, believing me, the accuser, over you, the accused, is a good way to break societal trust since nothing can be believed any more.


> I've enjoyed your comments here, and have learned a bunch from them over the years, so I'm honestly surprised by your comment.

I see this kind of remark every now and then and I interpret it as 'when we agree I like what you write but when we don't you must be wrong'.


So let me be crystal clear then: You post good comments generally, usually with articulation on your position and reasoning behind it. In this case, you handwave the question away with "it's not that simple" but don't make any attempt to engage with the reason behind it.

You certainly don't need to engage with every comment made online, but my surprise comes from the lack of articulation on this issue. I am happy to learn and expand my own knowledge where possible. I won't however take certain assertions at face value, especially those that cast aspersions (esp. accusations of Nazism) in an environment whereby it's easy to throw people into a Kakfa trap, accusing them of being racist, sexist, misogynist, or some other piece of slander, without any proper evidence behind it other than personal opinion and interpretation.



I like that, but unfortunately it's just for the web. My personal website could fit in there btw https://staticadventures.netlib.re/

I'd be interested to have a more generic community in the spirit of suckless, though maybe not as radical in its interpretation of minimalism.

From the recent threads about Haiku OS, i gather that implementing features/UX is not incompatible with respecting user resources. That's what i'm interested in.

I also follow gemini protocol development, the Jabber/XMPP community, and i'm also a member on rawtext.club (an SSH social network where i'm not as active there as i should be).

I'd be interested in a cross-project platform much like suckless to gather such lightweight programs/protocols, if you can think of any.


> pro-hitler neonazis

hyperbole?


See my other comment where i dug very briefly: https://news.ycombinator.com/item?id=28312725


Wow, it seems the discussion hit the https://en.wikipedia.org/wiki/Godwin%27s_law really quick.


That's unrelated. Godwin's law state that you would call someone you disagree with a nazi in order to discredit them.

In this case, i agree with the suckless arguments, but i'm considering serious evidence that key contributors to the suckless community are actual neonazis, and that the community at large seems ok with it because they claim to be non-political (see other comments).


What do you mean? I didn't know anything about them until this thread, and then there is this comment[0] where one of the devs clearly states:

1. They don't politicise in their group

2. The commenter literally says: "Torch hikes are nothing unusual in Germany and there was no political intent behind it."

What's the issue then? Serious question and relevant to the thread because I too would love to see more communities dedicated to user-friendly bloat-free software. Why shouldn't we participate with them?

[0]: https://lobste.rs/s/kpuj8p/why_i_use_suckless_tools#c_omk1bi


Torch hikes are nothing unusual, but when done by groups of young men with cleanly shaved heads in camouflage outfit it's a pretty clear statement.


Some of them speak German as well!

It's pretty clear that they are Nazis, and use the cover of a group about software to plan the invasion of Poland.


See my other comment where i dug very briefly: https://news.ycombinator.com/item?id=28312725


That's pretty upsetting except Apple is getting racist and attacking sexual deviants as well. The difference is vanishing and in that case I'd rather be using software I know I can throw out and replace.


I wish the article would be a little more documented, however matching its definition of hostile SW those two examples come to my mind:

- Origin, the game distribution system of EA, forgets the user's credential if she declines to upgrade

- at work, a piece of software contracted from a well known three-letter German multinational always warns the user she may lose unsaved work when quitting, no matter she just clicked "save" a second ago.


Not sure this author actually drinks their own medicine based on this comment. One would have thought that someone who just wrote what I read would not have tracking enabled _by default_ and everything would be _opt in_.

> Respect user choices. If someone doesn’t want to send telemetry (or any data for that matter), give them the option to not do it. At the time of writing, this blog collects anonymized data with Google Analytics. Don’t want to send it? Have your browser send a Do Not Track request and no data will leave this page. It takes an if statement to do this, not a month of engineering work.

"Respect user choices (unless it's my blog and I want to collect metrics)"




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: