• 20 Posts
  • 418 Comments
Joined 1 year ago
cake
Cake day: July 8th, 2023

help-circle








  • TLDR: When you commit a crime for an employer, you and the employer are responsible and must both receive the consequences. Even if you signed a contract saying you’re not liable – doesn’t matter; you can’t choose to be “not liable”.

    However, when you commit a not-a-crime for an employer, only the employer gets the consequences (aka gets 100% payment/income from that work). They’re treated as if they’re the only one responsible/liable for that action. Somehow, this time, you can separate yourself from liability with a contract.

    The argument is: Either liability is totally inseparable from a person or it is totally separable. We can’t have “its inseparable but only if the person is committing a crime”.


  • I’m usually the one person in the Solarpunk lemmy who debates “capitalism==bad” titles. This was a solid video; I don’t think I have any critiques of the arguments. It gives me a lot to think about. The speaker does a good job at not being polarizing or sensationaliazing the topic; he simply presents the information without getting emotionally charged.

    That’s in contrast to the Lemmy title, which I think is senasionalized/polarizing and a bit of an insult to the listener; telling them the conclusion they should have instead of assuming they’re smart enough to understand the consequences themselves. “Why workplace democracy is an inalienable right, and its incompatibility with capitalism” would be more appropriate title IMO.

    Either way I’m glad this was posted.






  • Its a tough problem. You have to find something that you want to exist; like an app or a website or a game. For example, try making a GUI for managing SSH keys. You know, like the ones github makes you create in order to clone and push to a repo. Make a visual representation of those keys (stored in the .ssh folder), and tools to add/delete them.

    Along the way you’ll find tons of missing things, tools that should exist but don’t. Those are the “real” projects that will really expand your capabilities as a developer.

    For example, I was coding in python and wanted to make a function that caches the output because the code was inherently slow.

    • but to cache an output we need to know the inputs are the same
    • hashes are good for this but lists can’t be hashed with the built-in python hash function
    • we can make our own hash, but hashing a list that contains itself is hard
    • there is a solution for lists, but then hashing a set that contains itself is a serious problem (MUCH harder than hashing a list)
    • turns out hashing a set is the same problem as the graph-coloring problem (graph isomorphism)
    • suddenly I have a really deep understanding of recursive data structures all because I wanted to a function that caches its output.





  • I agree, and here’s a few different avenues of examples:

    1. If trying to get past interviews, Leet code and hacker rank can be great. They’re not so great for real world problems, but not bad.

    2. Advent of code is a good middle ground between theory and practice in my opinion.

    3. To really learn real world problem solving, I’d recommend implement a specification, without looking at existing implementations. For example, make a basic regex engine (formal Regular Expressions not PCRE expressions), or try to implement the C Preprocessor, or the JS event loop.