Live data from Hacker News

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

simplethread.com

691–700 of 745 posts

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

#691
post #571

Earlier quoted context omitted.

Have you ever had a date where the first thing someone talks about is something like having babies, or going on and on about their ex, or they want to know how much you make in the first 15 minutes? It is not a pleasant feeling, and makes it pretty clear what their priorities are (and aren’t). Namely that having some idea who YOU are and if they like you doesn’t really matter much. If someone starts the interview pro…

Interview is not a date. Its a formal meeting where parties are trying to acheive something concrete. Hire a good employee, find a good job. If someone starts off with asking about essential thing that is important factor for them it means that its a dealbreaker issue for them. Whats the point of interview if they know there is no flexi time, and you only look for flexitime jobs?? Its actually a matter-of-fact approa…

If properly delivered? Sure. As many folks seem to be indicating in these threads, as the primary or even sole topic of interest to them?

Would you then consider that a plus?

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

#692
post #355

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...

> Software is a social service. Its for other humans. I deeply disagree with this Calvinist utilitarian sentiment. Its akin to saying sex is for making babies. Maybe its an academic thing - When I went to grad school for CS, on Day 1 my Algorithms Professor paraphrased Perlis's famous quote on the blackboard - "Shaft the paying customer!" You can find the whole quote on the first page of SICP[1], or elsewhere[2]. imh…

> imho the best software is written to scratch a personal itch. Not to appease this customer. Not for other humans.

This statement shows you partially understand, but don't understand the why. You recognize that people working on software for things they truly care about can write better more successful software, but you miss the final step of why that software is more successful.

The reason why Linus can write such great software for software engineers is because he is a software engineer. Fundamentally the software you love is successful for other people, it is for other people and because your idols are one of those people part of that group, they understand it as well as anyone.

Linux was made for passionate hobbyist programmers by a passionate hobbyist programmer. And because it is made for those people, and met their needs perfectly is why it caught on. The reason it met their needs is because Linus understood their needs, because he shared them.

That's the key piece - that great software is written by completely meeting users needs. The easiest way to understand and meet other people's needs is by sharing them. That's the final step of it.

Fundamentally software becomes successful by meeting other people's needs. Anything else that doesn't, you've never heard of.

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

#693
post #184

Earlier quoted context omitted.

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…

minuscule anecdote: my most cherished lines of code were an 8 lines vba excel macro to count duplicates for a non tech colleague. Turned her day from hell to cool (she had to filter duplicates by hand and quadratic formulas over 2000+ lines spreadsheet. That's what computers are for.

Hah, this is something I've done when trying getting data from a government agency that can't run or write code themselves. It's usually in some awkward meta-adversarial context and they tend to be fearful of macros and such, but it's possible to get around that fear by writing everything in excel functions.

Sometimes those damn excel sheets take hours and hours to make even though it would otherwise take me less than a minute to write in SQL or unix. But it pays off every time and pushes a clear message that they can do better.

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

#694

Earlier quoted context omitted.

and also importantly people who have family to take care of. If someone comes to me and asks for time off because they have children or partners or parents to take care off and they take that seriously that certainly deserves some respect would make a better impression on me than someone showing up with a Patrick Bateman business card in hand

If I ask for time off to sit on my arse all day and play games what would you say?

… hopefully you would be told yes. Paid time off is a basic right in most countries.

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

#695
post #390

Earlier quoted context omitted.

plenty of people have families and abuse the crap out of them, and people without families that want one still need to socialize enough to meet people to eventually have a family book != cover

We interviewed someone a while back and she said (without being asked - asking questions on this line is illegal) she was prepared to leave her husband and kids to move here. It didn't affect our results, but we all agreed in the discussion after that was a negative sign if we were allowed to consider it. She probably would have been good, I hope her search went well.

> It didn't affect our results

I laughed - HR and legal approved this comment?

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

#696

Earlier quoted context omitted.

I've heard the "unlimited PTO" policy referred to jokingly as the "no PTO policy" at some shops. Most companies are great about it though and encourage PTO.

I once asked hr from a position advertising "unlimited PTO" what was the average of PTO days in the team. She panicked a little bit

Great question.

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

#697

Earlier quoted context omitted.

Predicting the future is hard. You were both right. You only have the outcome to judge the decision, not the full probability distribution.

This is so important - it's so hard to gauge what another person's mental model of a scenario is compared to yours. As in - perhaps OP and 40+ year person had the same, accurate mental model of the probability distribution of success, but OP and 40+ had different attitudes towards risk/reward. Or perhaps the OP happened to have a much more realistic picture of the probability of success, and 40+ was unnecessarily pes…

Yep! If I wasn't successful, he would have been right and I can't really blame him too much for thinking it his way. The problem was particularly tricky because it combined bunches of distinctly esoteric domains (OCR, text/vector maps, image processing, fuzzy string matching).. recursively. There were no boundary lines and inconsistently sized black redaction boxes. If I hadn't worked on problems in each domain in separate projects, I doubt I would've been able to do it and he had no way of knowing my experience.

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

#698
post #686

Earlier quoted context omitted.

What would they be instead?

Communicators. (Writers, marketers, teachers, ...)

Then they'd make less money.

Why would they choose less money

(Unless of course if they like those other jobs better)

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

#699

Earlier quoted context omitted.

> This thread's extensive non-quantitative usage from many people is evidence of that. Even putting aside comments like mine complaining about the actual number, this thread's extensive use of 10x to mean as many different things is a good reason to avoid the term altogether. The whole thread is just "10x programmers don't exist because X" and "10x programmers exist because Y", where X and Y are unrelated. > "10x man…

> It sounds like 10x is the equivalent of putting 2.0 on everything (and also as meaningless) What do you mean by that ? If I write a cooking book titled, "pizza 2.0" everyone in the world will understand what the 2.0 means.

It's 2 the latest version of the book?

Or a new better pizza

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

#700

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…

The point is 10x what? Compared to who? We all know people who code faster than the rest of the team but they always cut corners. Part of the reason that everyone else is slower is because they're trying to work around the under-tested tightly coupled mess left behind by the 10x guy. Then there's the 10x complexity discussed in the parent comment. Plenty of people will take years to solve a problem, if at all, that s…

Mess creators that slow the company down isn't what's meant with 10x.

What you're describing sounds more like a -0.5 developer

Post reply on HN