Live data from Hacker News

Things I’ve learned in my 20 years as a software engineer

simplethread.com

241–250 of 745 posts

Re: Things I’ve learned in my 20 years as a software engineer

#241

> I’d rather someone give me opinions that I violently disagree with than for them to have no opinions at all. I've been a developer for 15 years... anybody else feel like the further they get into their career, the more they want to keep their opinions to themselves? I feel like as a junior dev I had way stronger opinions and I was a lot more vocal about them. Now, I still have opinions, but I've learned that nobody…

All said and done I think you tend to learn that opinions are just that - opinions. Often a team doesn't need more opinions, they need to make decisions and come to consensus, so helping them decide on which opinion is best is more important than bringing yet another complicating-but-not-discussion-progressing vote to the table

Re: Things I’ve learned in my 20 years as a software engineer

#242

Earlier quoted context omitted.

Agreed, I don't know why the industry (or people?) in general have a problem with accepting this abilities gap. It's as if the notion of people being arbitrarily born more or less with a knack for something is evil. Let me tell you the story of when I realized I was (at best), a "not-mediocre" dev: 1. I've been programming for fun even as a kid. That's what got me into it: If you count kid-programming as "programming…

> Agreed, I don't know why the industry (or people?) in general have a problem with accepting this abilities gap. I don’t think it’s that people have a problem admitting that there are significant outliers. It’s that there’s a backlash to the fetishization of “hiring 10x programmers” and most people claiming to be one really aren’t. I know I’m good at it, but I am not and will probably never get to 10x on just writin…

If there are 10x engineers, it's a right place, right time situation. Very good engineers with the right experience, luck, a good idea, and the relentless desire to execute. Miss any of those things, and you can still be a a multiplier, just probably not 10x.

Even so at my companies the difference between between good engineers and bad is massive (a lot of the difference is talent and motivation). Imagine you had a company full of shitty engineers, a motivated good engineer in the right could deliver 10x the value of some shit engineer

Re: Things I’ve learned in my 20 years as a software engineer

#243

Earlier quoted context omitted.

Agreed, I don't know why the industry (or people?) in general have a problem with accepting this abilities gap. It's as if the notion of people being arbitrarily born more or less with a knack for something is evil. Let me tell you the story of when I realized I was (at best), a "not-mediocre" dev: 1. I've been programming for fun even as a kid. That's what got me into it: If you count kid-programming as "programming…

> Agreed, I don't know why the industry (or people?) in general have a problem with accepting this abilities gap. Bias and poor processes. When people become reliant upon a technique or process to attain viability that means of execution becomes more important than the thing you are producing. As a result people will defend slow unproductive means of execution to the death. This is also a socially reinforced phenomen…

It's harder to achieve 10x in a vacuum, but if you make 10 engineers twice as productive, there ya go

Re: Things I’ve learned in my 20 years as a software engineer

#244
post #152

Earlier quoted context omitted.

The more I learn the more I realise everyone else is wrong too. Especially when it comes to general purpose tools - there's so many tradeoffs even in an ideal world but really often the original author just did things wrong, but right enough that his solution stuck and everyone kept piling on and building on top. PHP and node come to mind immediately. Ruby is down right retarded with promoting Concerns for modeling c…

> Dealing with python environments and packages makes me want to avoid python if at all possible. I see this a lot, and I don't blame folks for having this stance. It's taken me over a decade to dial in my workflow. Quick rundown: - don't use python2. Ever. - don't use the system python, or brew python for anything other than bootstrapping - only use `pip install --user` for exactly one thing: `pip install --user pip…

I think the fact that you feel working with python requires adhering to a specific 12-step programme may go some way to explaining why I've never gotten comfortable with it.

Re: Things I’ve learned in my 20 years as a software engineer

#245

Earlier quoted context omitted.

Agreed, I don't know why the industry (or people?) in general have a problem with accepting this abilities gap. It's as if the notion of people being arbitrarily born more or less with a knack for something is evil. Let me tell you the story of when I realized I was (at best), a "not-mediocre" dev: 1. I've been programming for fun even as a kid. That's what got me into it: If you count kid-programming as "programming…

> Agreed, I don't know why the industry (or people?) in general have a problem with accepting this abilities gap. Bias and poor processes. When people become reliant upon a technique or process to attain viability that means of execution becomes more important than the thing you are producing. As a result people will defend slow unproductive means of execution to the death. This is also a socially reinforced phenomen…

[deleted]

Re: Things I’ve learned in my 20 years as a software engineer

#246

Earlier quoted context omitted.

What's the quote? Knowledge can be taught. Wisdom can't be taught or told... it can only be learned through experience? Edit: Ah, found it. "Wisdom cannot be imparted. Wisdom that a wise man attempts to impart always sounds like foolishness to someone else ... Knowledge can be communicated, but not wisdom. One can find it, live it, do wonders through it, but one cannot communicate and teach it." - Siddhartha

"Wisdom can't be taught or told... it can only be learned through experience" I recently had the thought, that good education guides you to certain experiences to really learn the subject and not memorize some definitions.

Problem is that people learn the wrong things from their experiences, not that they lack the experiences.

Re: Things I’ve learned in my 20 years as a software engineer

#247
> We should be far more focused on avoiding 0.1x programmers than finding 10x programmers

Exactly my words two weeks ago: https://news.ycombinator.com/item?id=28640661

We as an industry really should put a lot of effort into helping 0.1x coders improve their skills to 1x level.

Re: Things I’ve learned in my 20 years as a software engineer

#248

> I’d rather someone give me opinions that I violently disagree with than for them to have no opinions at all. I've been a developer for 15 years... anybody else feel like the further they get into their career, the more they want to keep their opinions to themselves? I feel like as a junior dev I had way stronger opinions and I was a lot more vocal about them. Now, I still have opinions, but I've learned that nobody…

The longer you are in a career, the more you realize opinions are one of those things that always change (and should). Strong opinions weakly held

Re: Things I’ve learned in my 20 years as a software engineer

#249
post #184

40+ years of experience here, and I'll tell you the #1 thing I've learned: * Software is a social service. Its for other humans. Incredibly, it doesn't matter how educated the developer, they still seem to have to learn this lesson themselves, over and over, until it sinks in...

I do a lot of dev work with non-profits and such. About a year ago I was working on an extremely difficult project as a volunteer where I was insistent that a specific part was vitally important to getting the project to move forward (generalizing tables extraction from scanned OCR docs) and I was spending a lot of time on it. One of the devs I worked with, with 40+ years of experience, basically told me this exact t…

As per the blog's opening statement: context is key.

The industry (and really, it's not specific to the industry) is rife with people who take pearls of wisdom out of their context and apply them without the context to serve their own ends.

Re: Things I’ve learned in my 20 years as a software engineer

#250

The 10x programmer is a silly myth. The idea that someone can produce in 1 day what another competent, hard working, similarly experienced programmer can produce in 2 weeks is silly. You know, 10x is an optimistic number here. Some programmers will do in 1 day what you wont achieve in a life time. And not understanding that makes you a bad programmer by my book simply because this is the foundation of the job. So let…

I don't know about producing in one day what it would take another person 2 weeks to accomplish, but I do know there are some core features of my company's app that were created by a very talented developer that I don't think could be reproduced by some of our junior developers in a year.

I think it's a mistake to conceive of the difference as one between the tortoise and the hare, where the tortoise gets there, eventually. There are bits of this code that the tortoise just wouldn't ever end up producing if you gave them all the time in the world.

Post reply on HN