This is an excellent way to get stuck with only the engineers sucky enough to have to put up with that, which is not the norm.
However, in this specific case, it looks like engineers were making a product decision, not an engineering one, and management decided to make a different product decision. That feels categorically different than "mauve has more RAM".
Obviously it isn't, but that's what Matt likes to pretend.
This is an example: the foundation's code gives special treatment to an Automattic product.
Were you aware of it and its relevance to this decision at the time you wrote the comment? My interpretation of your defence of it as just the CEO making a product decision was that you did not know. If you did know it seems to miss the point which is that he made a decision that was better for his company but worse for Wordpress.
It would be fine if Wordpress was developed by Automattic, but its not.
And I really don't see it as worse for Wordpress. It's the kind of thing I think they should be recommending because it benefits the whole ecosystsem.
To be super clear, I am far, far from a Matt/Automattic (same thing) fanboy. I think this was a good decision in spite of my opinion of him, not because of it.
The lead developer of a not for profit project said lets favour the anti-spam plugin that is provided by the company I am CEO of. Is that an entirely impartial decision?
> And I really don't see it as worse for Wordpress. It's the kind of thing I think they should be recommending because it benefits the whole ecosystsem.
All the Wordpress core committers apart from the two that work for Automattic disagree with you as far as I can tell.
A project such as wordpress(.org) depends very strongly on those who do the work. And in the case of Wordpress, that's some spare-time volunteers, some employees of other companies, but the biggest group is Automattic employees. If you do most of the work, as Automattic does, the project depends on you and you get to call the shots.
I don't believe the project would fold were Automattic to quit -- there's a lot activity outside of the core that is alienated by Matt's behavior. Might well be an improvement if the focus of .org isn't about what .com needs, but about what .org wants to offer to users.
This bush league kind of attitude is why people insinuate that most software development is not "real engineering".
When Boeing or NASA lets making money get in the way of good engineering practice, people die.
Most software development doesn't have anywhere near the real world impact of the Boeing/NASA engineering you reference.
Good engineering practice recognizes the risks and scales the effort to match it.
A CRUD app for internal users has a different set of requirements than a revenue generating SaaS app, just like a backyard fence has different building criteria than a highway bridge.
But being a professional means you do the thing even when the stakes are low. You don't decide to cut corners because you feel like it, or because it's more profitable. Mullenweg is not professional.
Being a professional means that you adjust what things you do according to the stakes.
For example, in software dev, you usually have tests for the code. Do you have tests for the tests? No? Why not? Why aren't you doing "the thing?"
In chip development, I usually had tests for the tests, because the stakes were higher. But I didn't usually have tests for the tests for the tests.
Not the way I understand "being a professional." All engineering, and all professions, entail the balancing of interests. There are some hard and fast rules*, like "don't do things that will kill your users." And there are some other things that are more guidelines than absolutes, such as "we don't ship feature changes in release candidates." Serious organizations understand that sometimes guidelines like the latter need to be violated for overriding business purposes.
*Even the "don't kill your users" thing is not an absolute. No car is perfectly safe, for example. We could add three more feet of crumple zone to the front and the back, but we don't, because even in safety tradeoffs have to be considered.
You adjust your approach depending on the stakes. That shouldn't be a controversial take.
You're using "cutting corners" as a pejorative, but ultimately if the stakes are low, you may -- perfectly reasonably -- decide to allocate less time/resources to particular activities, and more to others. You can call that "cutting corners", and you'd be right, but there's nothing necessarily wrong about that: it depends on the circumstances. And there's certainly nothing "unprofessional" about it.
For the mostly-vibe-coded script to reencode a bunch of my own video files to save disk space, I skimmed the result to make sure that it wasn't going to overwrite or delete anything it shouldn't. Cutting corners? Absolutely. Perfectly fine and sufficient? Absolutely.
For the software that I write that I intend to distribute to others, that could cause data loss or other unpleasant problems for them if I get it wrong, I write the code myself, I understand how it works, and I might write tests and/or get someone else to review it, depending on my own judgment of what needs to be done.
Recognizing the difference between the the situations in the prior two paragraphs is what it means to be a professional.
At no time have I suggested that one cannot adjust one's approach. That's a straw man you invented.
I'm refuting the point that business considerations should always trump engineering considerations because profit.
Blogging accidents, usually involving tik-tok videos, selfie sticks, and rugged terrain or wild predators, get all the attention, but probably pale in comparison to medical or mental health issues faced by the average blogger.
For comparison, studies of police officers in the US have found that heart disease, cancer, and suicide are the leading causes of deaths.