• 0 Posts
  • 78 Comments
Joined 1 year ago
cake
Cake day: June 13th, 2023

help-circle








  • Just like any software design principle, it’s understood at a surface level by tons of bad developers who then try and solve every problem with that one principle. Then slightly better developers come along and say “ugh this is gross, OOP is bad!” And then they avoid the principle at all costs and tell everyone how bad it is at every opportunity.




  • This is a big reason why I personally like episodes 1-3 more than 4-6. It’s just more interesting because neither side is 100% good or 100% bad, and there’s a couple times where you’re like “wait, the bad guy actually has a point”, or “are the good guys really doing the right thing here?”. That sort of conflict makes for much better storytelling and more interesting characters, especially when compared to the run-of-the-mill hero’s journey story and characters in 4-6.




  • a more sensible default would be -A

    No it wouldn’t. You’d have git beginners committing IDE configs and secrets left and right if -A was the default behavior.

    vim, less a text editor and more a cruel joke of figuring out how to exit it.

    Esc, :, q. Sure it’s a funny internet meme to say vim is impossible to quit out of, but any self-respecting software developer should know how, and if you don’t, you have google. If you think this is hard, no wonder you struggle with git.

    it chose defaults that made sense to the person programming it, not to the developer using it and interacting with it.

    Just because you don’t like the defaults doesn’t mean they don’t make sense. It just means you don’t understand the (very good) reasons those defaults were chosen.

    Git has a steep learning curve not because it’s necessary but because it chose defaults that made sense to the person programming it, not to the developer using it and interacting with it.

    Git’s authors were the first users. The team that started the linux kernel project created it and used it because no other version control tool in existence at that time suited their needs. The subtle implication that you, as a user of git, know better than the authors, who were the original users, is laughable.


  • git add with no arguments outputs a message telling you to specify a path.

    git commit with no arguments drops you into a text editor with instructions on how to write a commit message.

    git push with no arguments will literally print the git push --set-upstream command you need to run if your branch has no upstream.

    Again, I recognize that git has a steep learning curve, but you chose just about the worst possible examples to try and prove that point lol.


  • I am not doing anything complex with it

    So basic, well documented, easily understandable commands like git add, git commit, git push, git branch, and git checkout should have you covered.

    the CLI surface area that’s exposed to me is by and large nonsense and does not meet me where I’m at

    What an interesting way to say “git has steep learning curve”. Which is true, git takes time to learn and even more to master. You can get there solely by reading the man pages and online docs though, which isn’t something a lot of other complex tools can say (looking at you kubernetes).

    Also I don’t know if a package manager really compares in complexity to git, which is not just a version control tool, it’s also a thin interface for manipulating a directed acyclic graph.



  • The best part is they don’t understand the cost of that retraining. The non-engineer marketing types in my field suggest AI as a potential solution to any technical problem they possibly can. One of the product owners who’s more technically inclined finally had enough during a recent meeting and straight up to told those guys “AI is the least efficient way to solve any technical problem, and should only be considered if everything else has failed”. I wanted to shake his hand right then and there.