Thank you @ArthurDoler for your talk on burnout at #NDCOslo, great breakdown of the subject! Quick question, at the end you mentioned two books worthwhile reading. First was Give and Take by Adam Grant, but can't recall/find the second book about women's burnout, which was it?
@martingbrown@akarpov89@RickStrahl@sandord I'd say the refactoring makes it clearer when there is a double negation, e.g. going from !xs.Any(x => !IsValid(x)) to xs.All(IsValid) — unfortunately ReSharper suggests this even when there's no double negation.
@RickStrahl Thinking about this a bit more, the refactoring usually makes sense if the initial predicate also contains a negation, because rewriting it to 'All' removes the double negation. If that double negation isn't there in the first place, the refactoring doesn't always make sense.
@RickStrahl The predicate is also negated, which makes it logically the same. In some cases it makes things clearer: 'none are invalid' becomes 'all are valid'. But in this case I find 'none equal to' easier to grasp than 'all unequal to' 🤷
@shanselman It's not just deaf people they forget, but people period. Text is much easier to digest, scan and search than audio in most cases. Same reason I prefer to scan through articles when looking for information instead of watching videos on the subject.
@ID_AA_Carmack In the end, people should ask themselves: "Can I afford to lose this money?"
If no: stay away from speculative trading and only go for long-term investments. Only use fake money to play with.
If yes: why would you need fake money to play around with then? 😉
@ID_AA_Carmack Safe exploration and investing real money have completely different risk profiles and emotional responses. Mixing these two can be very dangerous and could attract people who aren't emotionally fit for investing.
@ID_AA_Carmack That's why there is a lot of regulation in the Netherlands to 'screen' people to establish their risk profile and competence before they can trade. And some platforms, including the ones we build, focus on education in a safe environment.
Browsing through the SortedList implementation in @dotnet and it perfectly demonstrates comment rot. The comment at the indexer claims it returns null for an unknown key, while the code throws. Keys and Values properties also have wrong comments. https://t.co/F9aT8a6sZn
@marcgravell@Tyrrrz Which means it's still their problem to deal with, either by paying for support or by not being a jerk. If you keep catering to these jerks using your libraries, there is no incentive for them to change their behavior. They'll continue to be jerks 🙃
@ploeh "A type system […] embeds those rules in types instead of in tests." A static type system is very powerful yet so underutilized. Sure, automated tests are useful, but the compiler deserves more credit as a powerful first automated test pass. Throwing exceptions = design smell.
@FransBouma What surprises me is how many people write (and maintain) code irrelevant to the problem they are solving. Libraries can remove irrelevant details, but only so much. Language constructs can help with this too. Async/await is a good example of this, making code easier to read.
Communication gaps between developers and clients are quite common in software development. How to bridge them? Through domain-driven design! https://t.co/4DCK7uf28X
This is good and lines up with modern thinking based on how humans *actually* create and manage passwords. Fast clap for Microsoft!
More on dropping mandated expiration and other modern password management practices: https://t.co/BYuK0brgg5
A thank you to @RoyOsherove and @reverentgeek for their inspiring talks at #ndcporto. After following some of their tips and continuing to pursue change within the company, my talk on DDD was received well by business. Felt like a small victory!