Doc Avid Mornington

Not actually a doctor.

  • 0 Posts
  • 207 Comments
Joined 1 year ago
cake
Cake day: July 5th, 2023

help-circle
  • If your SQL model has nulls, and you don’t have some clear way to conserve them throughout the data chain, including to the json schema in your API contract, you have a bug. That way to preserve them doesn’t have to be keeping nulls distinct from missing values in the json schema, but it’s certainly the most straightforward way.

    The world has more than three languages, and the way Java and Python do things is not universally correct. I’m not up to date on either of them, but I’m also guessing that they both have multiple libraries for (de) serialization and for API contract validation, so I am not really convinced your claims are universal even within those languages.

    I am not the other person you were talking to, I’ve only made one comment on this, so not really “hellbent”, friend.

    Yes, I am pretty sure I read the comments, although you’re making me wonder if I’m missing one. What specific comment, what “case specified above” are you referring to? As far as I can see, you are the one trying to say that if a distinction between null and a non-existent attribute is not specified, it should universally be assumed to be meaningless and fine to drop null values. I don’t see any context that changes that. If you can point it out, specifically, I’ll be glad to reassess.


  • Is that an act of an insane person? It’s apparently legal, now. Do you broadly think that using violence against tyranny is insane? Our founders committed their lives and fortunes to the violent overthrow of tyranny. It would be much easier, sitting in the oval office, with legal authority granted to him by the very people he would be targeting, to authorize the extrajudicial execution of a few traitors. Do you think that extrajudicial execution is insane? Then you’ll have to admit that most presidents in the last few decades were insane, especially Obama. Is it only insane when the target is white people in power, rather than brown-skinned people overseas?

    I’m not commenting, at this time, on whether it would be moral, or wise, but insane? I can’t see how.






  • At the (SQL) database level, if you are using null in any sane way, it means “this value exists but is unknown”. Conflating that with “this value does not exist” is very dangerous. JavaScript, the closest thing there is to a reference implementation for json serialization, drops attributes set to undefined, but preserves null. You seem to be insisting that null only means “explicit omission”, but that isn’t the case. Null means a variety of subtly different things in different contexts. It’s perfectly fine to explicitly define null and missing as equivalent in any given protocol, but assuming it is not.







  • Pretty sure they meant to not have review. Dropping peer review in favor of pair programming is a trendy idea these days. Heh, you might call it “pairs over peers”. I don’t agree with it, though. Pair programming is great, but two people, heads together, can easily get on a wavelength and miss the same things. It’s always valuable to have people who have never seen the new changes take a look. Also, peer review helps keep the whole team up to date on their knowledge of the code base, a seriously underrated benefit. But I will concede that trading peer review for pair programming is less wrong than giving up version control. Still wrong, but a lot less wrong.





  • Saying that some projects, at some point in their lifecycle, don’t need certain things, is not saying that those things have no place. Also, if one can’t design a monolith that isn’t bloated and tightly coupled, one definitely has no business designing microservices. Using microservices is neither necessary, nor sufficient to achieve decoupling.

    Monolithic services are the ideal way to begin a project, as using basic good practices, we can build a service that does many things with minimal coordination, and as it grows and requirements change or are discovered, we can easily refactor to keep things simple. As the software matures, we find the natural service boundaries, and find that certain pieces would perform better if they were separated out and could scale independently, or act asynchronously. Since we have followed good practices, this should usually be a simple matter of removing a class or module to a new service, and replacing it with a facade, such that the rest of the monolith doesn’t have to change at all.




  • Party leadership on both sides play all kinds of games to keep the balance of power, to keep voters scared of the other guys, in order to maintain control of their own parties, but that system isn’t infallible. Bernie almost won the primary, twice, and Trump actually did. If he weren’t so abysmally bad at placating centrists liberals, he’d still be in the Whitehouse. I think that’s a terrifying prospect, but also, both hopeful, and instructive. A true left-populist candidate, who respects the rule of law and democratic consent of the governed, once in office, would be almost impossible to remove.

    Overall, your assessment of the current system isn’t bad, but you are very wrong to describe that as fascist. It just isn’t, definitionally, what “fascism” means. Not yet. Certainly, significant aspects of fascism have been put into place, or have been there since the beginning, but our current system is not, overall, at the bar of fascism, and saying it is cheapens the critique of, and warnings against, actual fascism. In the big picture, our current system is actually much more democratic, and further from fascism, than it was not that long ago, even though there have been some specific, and worrying, steps backwards.

    Being vigilant against fascism is good. Being defeatist about it is not.