5 ms·
That top quote is enough to turn me off reading this article, and your comment perfectly explains why. Ironically, telling everybody else to think about what th
by l0b0 5y ago
That top quote is enough to turn me off reading this article, and your comment perfectly explains why. Ironically, telling everybody else to think about what they're doing is something a lot of people have been doing since forever, seemingly without realising that thinking about everything you do is the ultimate analysis paralysis. I'm going to bloody well learn the best practices, thank you very much, practice them until I notice the flaws and then figure out whether the practice was anywhere from plain bad to needing a few exceptions for corner cases.
- mbrodersen 5y agoIf you can’t explain why a so called “Best Practice” is useful in a specific context, and what the pros/cons are, then you should honestly just keep quiet and wait until you have more experience.
- zpeti 5y agoThis is why Bruce Lee I think is so right with: - Learn the rules - Master the rules - Break the rules You can't go in straight away into life, or anything, and break the rules. Because you know fuck all about why those rules are in place, and what purpose they serve. The only people who really should be breaking rules are those that have mastered them and understand everything about them. The most obvious place to illustrate this is art generally. You can't as an 18 year old paint a canvas red and say its art, people will laugh at you. But once you've built a reputation of being a master, like Mark rothko, you paint a canvas basically red which doesn’t need much skill. But you might be able to get away with breaking all the rules.
- PopGreene 5y agoThe Bruce Lee quotation is like Chesterton's Fence: https://en.wikipedia.org/wiki/G._K._Chesterton#Chesterton's_fence https://en.wikipedia.org/wiki/G._K._Chesterton#Chesterton's_...
- zpeti 5y agoIt's also the basis of Burkean conservatism IMO, but I didn't want to bring politics into it :)
- SkipperCat 5y agoThe hubris you reference is the same that Elizabeth Holmes used to burn so much money into ash.
- ebiester 5y agoI'd say the opposite. Elizabeth Holmes subverted the rules because she thought she knew better, and never learned the rules, much less mastered them.
- trabant00 5y agoThis is excellent, but I do want to add one thing: very few people can/will reach the level of mastery required to break the rules with benefits and no significant downside. And we should also keep in mind that Bruce Lee himself likely died rather young as the result of some unconventional choices - https://en.wikipedia.org/wiki/Bruce_Lee#Death https://en.wikipedia.org/wiki/Bruce_Lee#Death (a combination of substances used, over-exertion and the surgical removal of his sweat glands)
- AussieWog93 5y ago>thinking about everything you do is the ultimate analysis paralysis One thing I've noticed is that people who try to live according to a particular philosophy or philosophical understanding tend to be less effective than people who either ignore it entirely or only apply it to limited situations. This observation seems to hold even amongst public intellectuals, which one would assume would skew heavily towards philosophers. I wonder if this is the reason why.
- cjfd 5y agoI am not so sure regarding the top comment. I think I am probably about as old as the person who wrote that but I find it rather abstract and not very relatable. I would like to hear an example to decide whether or not there is merit in this comment. In software, I think the so-called best practices really don't deserve the status of traditions. Take the git flow. Some random person writes a blog post and now we have for some reason suddenly a 'best practice'. Also, you do not really need to think that much about 'everything'. The KISS principle tells us to first try the simplest thing that could possibly work. Maybe KISS should be a best practice, I suppose.... What is rather interesting (and questionable), though, about the so-called best practices is that they generally lead to less simplicity and more stuff that all needs to be maintained. The cynic in me suspects a large overlap between 'best practice' and 'someone is trying to sell something'.
- l0b0 5y ago> Some random person writes a blog post and now we have for some reason suddenly a 'best practice'. That's not giving other developers much credit for critical thinking. Famous articles such as Git Flow or The Joel Test are usually written by experienced developers (or a representative of a team of such), often with more understanding of the subject than the vast majority of other developers. They present a reasonable case for why the practice is better than what came before, and don't pretend that they are presenting some sort of universal, timeless solution. What happens next is the same thing that happens to every innovation: a messy, slow, mostly random walk from the original idea to something better, which may be closer to the original practice than the recommendation. But it's often worth trying. > Also, you do not really need to think that much about 'everything'. How do you work out which things to dig into though? You can't possibly dig into everything, and if you don't have much experience you have no reason to think that any particular rabbit hole is going to lead to somewhere better. And that leads straight back to best practices: they are probably going to work for a reasonable fraction of the problems being solved, because most of us (let's face it) are solving extremely similar problems over and over again. > What is rather interesting (and questionable), though, about the so-called best practices is that they generally lead to less simplicity and more stuff that all needs to be maintained. That's not been my experience in general, but I try pretty hard to make sure I understand why they are considered best practice and when it's OK to ignore or go against them. For example, a lot of shell scripting "best practices" are terrible remnants of the dawn of time when ASCII ruled the world and nobody had even heard of Bobby Tables: assuming every filename matches ^[A-Za-z0-9_-]{1,8}\.[A-Za-z]{3}$ or something similarly naive, that limited error handling is worse than no error handling at all, or that portability is more important than maintainability. > The cynic in me suspects a large overlap between 'best practice' and 'someone is trying to sell something'. Buy my book[1]! ;) Or slightly more seriously, read these[2][3][4][5], spend too much time figuring out how to loop over any files safely, find a blog post explaining how someone else came to the same conclusion, realize how bonkers the solution is, weep a bit, and long for something better than POSIX. [1] https://www.newline.co/books/fullstack-bash/welcome https://www.newline.co/books/fullstack-bash/welcome [2] https://pinboard.in/u:l0b0/t:bash/t:read https://pinboard.in/u:l0b0/t:bash/t:read [3] https://unix.stackexchange.com/search?q=user%3A3645+%5Bbash%5D+is%3Aquestion https://unix.stackexchange.com/search?q=user%3A3645+%5Bbash%... [4] https://stackoverflow.com/search?q=user%3A96588+%5Bbash%5D+is%3Aquestion https://stackoverflow.com/search?q=user%3A96588+%5Bbash%5D+i... [5] https://victor-engmark.gitlab.io/advanced-shell-scripting-with-bash/ https://victor-engmark.gitlab.io/advanced-shell-scripting-wi...