I agree with some of these, but the very idea of listing them feels reductionist and offensive. It’s as if somebody made a list of the top 15 principles of Buddhism to incorporate into your everyday life, allotting three bullet points to explain each. Even putting them in order is bad, let alone the simplification. :)
Many of these - “fascinated by complexity” jumped out at me - seem more like descriptions of who you are than learnable things. You could change that trait, but it would be a major change of personal identity.
Lots of them are good advice, or at least good recognizers, and I suppose that’s all it’s claiming they are. Not being emotional about code is one of the first on the list, and is really important. So… I’m really giving my emotional reaction to this piece more than trying to rebut it.
A cubicle or desk populated with toys that came from ThinkGeek
Sponsored by ThinkGeek?
Really though, this point, among others, seems irrelevant.
Perhaps I’m being charitable, but I think that that is being used as a proxy for having playfullness. Then again, they could’ve just come out and said that.
Ugh, reading the bit about “Eager to fix what isn’t broken” kinda makes me cringe–it seems to really support chasing the new shiny. Maybe this isn’t so great after all.
I find that this article describes many aspects of me, for better or worse — including eager to fix what isn’t broken.
I don’t believe it is the new shiny, but rather a constant search for perfection. It is not always a good idea, but it has its moments of appropriate.
“Indifferent to the way the IDE wants to auto-format code, uninterested in "tabs-vs-spaces” arguments"
Personally I love go fmt. I think it makes code easier to read, it saves me time, it makes jumping between my own code, 3rd party libraries, google’s own libraries source code really easy.
I think generally this is aspect of coding is something you should spend as little time on as possible. I would not diminish its importance however.
Yeah, the thing about formatting is that it matters, it does need to be clear, but fighting over it is never worthwhile. Unless you’re fighting to get a shared codebase to be at all consistent… that has value. But very few particular conventions are sufficiently better than their alternatives to be worth holding one’s ground on.
I did hear an interesting perspective from an open-source maintainer, once - I think it may have been the author of parted, but I suppose it doesn’t matter - that letting everyone use different formatting conventions served as a useful way of knowing at a glance who had written any given part of the code. :) But I kind of suspect that strategy doesn’t scale!
git blame does that too without making the code look schizophrenic.
Personally I love go fmt. I think it makes code easier to read, it saves me time […]
Most importantly it saves time you would spend in C having a big argument about it.
Valuable time that can now be spent arguing about how go sucks. :)
Has tried every pick-up line there is and has the slap-marks on his cheeks to prove it
What does offending people have to do with programming?
I’m guessing the assumption built into not only the linguistic structure of the sentence (“his”) but also the very idea of it says a lot.
There’s more good than bad (and a lot of silly that I wouldn’t call “bad”) in this essay, but let me hit the weak points, not because I’m that way but just because agreeing isn’t as interesting.
Doesn’t become defensive when the boss mentions that they’re looking for an off-the-shelf alternative to what they’ve been writing for the past few years
That’s not a virtue. Often those off-the-shelf alternatives aren’t as good, and whether they’re used comes down to politics (i.e. whether the in-house developers are trusted to take that much of their own time to build something great) rather than merit. Learning that your Decision Maker Of The Season is considering an off-the-shelf replacement is stressful, because the odds are high that the decision will be made by someone less qualified to make it than the person whose work will be affected.
Of course, programmers should always be looking, on their own, for off-the-shelf products that can save them time… and then using them without asking for permission. If I’ve put years of work into something, then it better be my call that determines whether we keep the work or replace it with whatever Mr. MBA read about on Hacker News 25 minutes ago.
I once knew someone who thought it was good advice to “never teach everything you know” because they once lost a job after bringing a co-worker up to speed with all their skills. I stared at them with genuine incomprehension. A good manager would never get rid of someone who’s not only capable of all their tasks but also demonstrates ability to train new workers. It would be like shooting the goose that lays golden eggs. If you get fired, it’s probably for some other reason.
That “some other reason” is quite likely the 85% of managers who are not “a good manager” but flat-out negatively productive. I hold no “incomprehension” toward that story. There are a lot of really fucking stupid people in positions of power and they make comically bad decisions that, unfortunately, affect the careers of their intellectual betters. It objectively sucks and there is no easy solution.
That’s just pathetic.
Cashes-in their 401k to fund their next venture
… and that one is just stupid.
Fuck that zoosadistic Old Boy shit. Don’t look it up unless you want nightmares.