6 ms·
And I guess similarly if someone does care intimately about test ordering they also ought to care that method names are descriptive. Maybe they should have had
by tomlockwood 4y ago
And I guess similarly if someone does care intimately about test ordering they also ought to care that method names are descriptive. Maybe they should have had to call a method named "i_suck_and_dont_care_about_method_name_quality" to put "i_suck" in a method name? I guess its hypocrisy all around in that case.
- rgoulter 4y agoThe point of a method name like "I_suck_and_..." is to discourage misusage of the API,or at least provoke conscious thought about whether it's a good choice to make. That the name adds friction is an intended feature, not a bug. Writing or seeing "I_suck_" is obviously going to cause you to stop and think about it. I think there's some reasonable contention about whether "I_suck" is professional, though, sure.
- tomlockwood 4y agoIf the API can be misused I think the snarky code purity response here might be to say the API is flawed, and the underlying mechanism that requires "misuse" ought to be fixed. Also another problem is if the API can't sufficiently WARN developers when they're doing something dangerous. I think we all know there are already ways of doing this.
- rgoulter 4y ago> ... I think the snarky code purity response here ... I think if we can agree "taking on tech debt can be a good approach" and has dignity, we also have to agree that wishing for code without tech debt is also dignified. :o) Which is perhaps why the "I_suck_and" gets removed from this property. > If the API can be misused I think ... the API is flawed, and the underlying mechanism that requires "misuse" ought to be fixed. Which in this case would mean "minitest should only be able to run tests in random order". -- I think having an (inconvenient) option as a concession is a reasonable trade off.
- tomlockwood 4y ago> we also have to agree that wishing for code without tech debt is also dignified. I think then my question is how to achieve this wish given the realities of the production of working code as demanded by business. Is this really a realistic wish? I am yet to work for a company that had code and didn't have technical debt. I am yet to hear of such a company. > I think having an (inconvenient) option as a concession is a reasonable trade off. Exactly. Perhaps these specific minitest devs ought to have called their library "i_suck_and_wrote_a_testing_framework_that_allows_writing_tests_that_are_order_dependent_and_also_its_called_minitest". :D
- Dylan16807 4y agoI find it completely unreasonable that you would blame the testing framework here. No, that line does not make sense. It does the opposite of make sense: they made a very reasonable concession and you want to call that sucking? No. While code that needs this feature really does suck.
- tomlockwood 4y agoHey! I guess they should have just written code that didn't necessitate the need for this method, in the first place! Oh well, everyone has their flaws! The question is if they need to write "I_Suck" all the time as penitence.
- djur 4y agoWhat necessitated implementing the method was that _other people_ were saying that random test order didn't work with their existing test suites (written for Test::Unit). Not only did the minitest author compromise and add this method for people unable or unwilling to fix their test suites, but he even wrote minitest-bisect to help debug ordering issues. I think this is more than enough from someone working as a volunteer on an open source project.
- Dylan16807 4y ago
- kelnos 4y agoThere's a difference between "provoke" and "belittle", though. I don't think I would feel too bad about myself if I had to call a method starting with "i_suck_", but I can understand and sympathize with people for whom having to type in that method name would strike right at their impostor syndrome. The question is, of course: should we cater to those latter people? The author of this Ruby code clearly thinks not (or didn't think about it at all). I think that we (or at least I) should.
- Dudeman112 4y agoIf someone would feel bad for writing i_suck as part of a method call... I don't think they'll last in the real world anyway What's the upper bound on ego fragility that we ought to consider?
- tomlockwood 4y agoThe same could absolutely be said of people who get a little emotional when they are forced to write a method allowing tests to run in order.
- Dudeman112 4y agoI agree I'm not sure if it's always been there and I just didn't notice it, but it looks like there's been an increase of people who have an ego/spine that's as solid as your average jellyfish How the heck do these people go about life if even small things like that are sufficient to faze them? Do they just have a breakdown or shut down if anything actually taxing happens?
- schneems 4y agoRyan Davis, the author, is a well known figure in the Ruby community and has never been accused of being too subtle. This is a little tounge in cheek, but also he means it. He is kind and generous, though won’t shy away from being abrasive to get a point across.
- tomlockwood 4y agoI'd like to think I'm the same! He should definitely have to call the "i_suck_and_dont_care_about_method_name_quality", method :P