• 0 Posts
  • 326 Comments
Joined 2 years ago
cake
Cake day: July 3rd, 2023

help-circle
  • At one of my old jobs, we had a suite of browser tests that would run on PR. It’d stand up the application, open headless chrome, and click through stuff. This was the final end-to-end test suite to make sure that yes, you can still log in and everything plays nicely together.

    Developers were constantly pinging slack about “why is this test broken??”. Most of the time, the error message would be like “Never found an element matching css selector #whatever” or “Element with css selector #loading-spinner never went away”. There’d be screenshots and logs, and usually when you’d look you’d see like the loading spinner was stuck, and the client had gotten a 400 back from the server because someone broke something.

    We put a giant red box on the CI/CD page explaining what to do. Where to read the traces, reminding them there’s a screenshot, etc. Still got questions.

    I put a giant ascii cat in the test output, right before the error trace, with instructions in a word bubble. People would ping me, “why is this test broken?”. I’d say “What did the cat say?” They’d say “What cat?” And I’d know they hadn’t even looked at the error message.

    There’s a kind of learned helplessness with some developers and tests. It’s weird.




  • Many things. I mean, you could hack a lot of stuff into Excel but generally

    SQL has foreign keys and integrity checks. You can make it so like if you delete a user it automatically cascades to delete other rows like their addresses.

    You can prevent someone from entering the wrong type of data in particular columns. This one’s an integer and that one’s text.

    It’s designed to work on larger scales. Excel stops at 1 million rows per spreadsheet, unless my search just gave me AI slop.

    You can do queries, for selecting as well as updating and deleting. You can join tables.

    It’s much easier for other applications (such as a website) to talk to a SQL database

    You can do transactions.

    There’s a lot. That’s just off the top of my head.


  • I use pycharm at work for most things. Work paid for it. It has some nice stuff i like. I’m sure other editors do all of this, too, but nothing’s been causing me enough pain to switch

    • Database integration. Little side panel shows me the tables, and I can do queries, view table structure, etc, right here
    • Find usages/declaration is pretty good. Goes into library code, too.
    • The autocomplete is pretty good. I think they have newfangled AI options now, but the traditional introspection autocomplete has been doing it for me.
    • Can use the python interpreter inside the docker container
    • The refactor functions are pretty good. Rename, move, etc
    • Naive search is pretty good. Can limit it to folders, do regex, filter by file name, etc

    It does have multiple cursors but I’ve rarely needed that.

    I use sublime for quick note taking. Mostly I like that it has syntax highlighting, and it doesn’t require me to explicitly save a tab for it to stay open














  • Emotions aren’t good (or bad). They’re often like a heuristic. Fast but inaccurate. This is great when it’s like “a bear wandered into the house” and emotions say “RUN” and cold logic would be like “what? Why? How?” until you get mauled. It’s not good when it’s like “climate change makes me feel bad so I don’t believe in it”