Live data from Hacker News

Uncomfortable Truths in Software Engineering

buttondown.email

221–230 of 400 posts

Re: Uncomfortable Truths in Software Engineering

#221
post #92

Earlier quoted context omitted.

The difference here is usually leverage. A teacher spending an hour to teach one child teaches one child, but a programmer who spends an hour writing code to generate a dollar’s worth of value can have that run thousands of times a second or 24/7 even when they’re sleeping. Of course teachers who understand this also make money, see Miss Excel ( https://www.instagram.com/miss.excel/?hl=en ), who was/is making $100k a…

Classic tech guy response. Teachers teach multiple kids, hundreds a week of not a day, and can inspire many to go on to do great things (money-wise or not). Why are we tech people so arrogant about our career? We already make good money, no need to think we're better than others.

Nobody suggested greater leverage meant "better than others".

If you write software in any given year that gets used by thousands or millions of others, you may also be enabling great things - either in capabilities or reduced friction shipped.

Also, successful software gets used for a long time, with additional work adding value on top of previous value.

So software work is leveragable without fundamental limits across both space and time.

This space-time leverage is true of all automation design.

In contrast, well done online courses can "automate" learning, but not as completely. The highest quality teaching involves meeting many students individual needs. And there is nothing automated about most teaching.

Re: Uncomfortable Truths in Software Engineering

#222
post #133

Earlier quoted context omitted.

Agreed. I spend a lot of time on TikTok (my main interests tech-wise are HCI, digital discovery, and social computing so it's like catnip) and a LOT of younger people are going into tech for the money. I'm 33 and I started programming in the 90s (I was raised by two geek parents a la Larry Page who were supportive), so I'm sort of in-between the two 'generations'. At age 37 and above, pretty much everybody is either…

I’m 31 and at least in my age bracket most of the people I was in CS with weren’t the money crowd. I’d believe it’s true now (I don’t really know), but it’s likely more recent than the OP thinks.

Post 2008, I'd say. I was a 2010 graduate, and the change between 'do what you love' and 'College is for MONEY' was like a culture bomb going off.

Re: Uncomfortable Truths in Software Engineering

#223

Earlier quoted context omitted.

This is some of the first I've heard of mobbing. Is it generally (or in your positive experiences) done remotely, in-person, or could be either?

I've only ever done it in person and I can't imagine it would work particularly well remotely. Maybe you could attempt to recreate the experience in VR but I don't think we have anywhere near the technology level to accurately recreate 7 people physically in the same space as each other constantly moving around, having side conversations and whiteboarding things

I've experienced it working well-enough in groups of 3-4, depending on everyone having decent internet at that time and on the software used. Just like regular mobbing IMO there's some circumstances where it'll feel like the right method, if it's a method you've occasionally practiced.

Here's some free marketing, I am not affiliated with any of these co.s: The best tool I've used for multiple users was CoScreen, because it shows everyone's cursors and allows simultaneous sharing of windows from multiple coworkers. So per that point in the OP that the major benefit is "trivia" knowledge, if you have one coworker who can quickly solve subproblem X from their terminal, and another who can quickly solve subproblem Y from their terminal, both terminals can be shared simultaneously and everyone can gain that context.

Re: Uncomfortable Truths in Software Engineering

#224
post #222

Earlier quoted context omitted.

I’m 31 and at least in my age bracket most of the people I was in CS with weren’t the money crowd. I’d believe it’s true now (I don’t really know), but it’s likely more recent than the OP thinks.

Post 2008, I'd say. I was a 2010 graduate, and the change between 'do what you love' and 'College is for MONEY' was like a culture bomb going off.

I think the real calculus should be do something that interests you, but also consider ROI and if education cost is worth it.

Most of the people I know with the worst financial outcomes overpaid to study stuff they didn’t care much about (and isn’t marketable or often even valuable) because they thought it was what they were supposed to do.

Re: Uncomfortable Truths in Software Engineering

#225

> Pairing is probably better than two solo devs if both pairers can handle it. Man, am I the only one that absolutely detests pair programming? Not only do I find it socially awkward, it completely kills my productivity. Software development is often about building a very complex model in your head and then figuring out the changes that need to be made. Having to dedicate half of my mental bandwidth to handling socia…

I just want to be able to fart at my desk in peace.

I haven't tried pair programming. It sounds miserable. I figure I'd end up paired with one of those people that can't stand to see you looking for something. You know the type: you're looking through cabinets for something and they demand you tell them what and they demand you go directly to the right place. Sure, I'm looking for something, but I'm also learning where other things are.

Re: Uncomfortable Truths in Software Engineering

#226
post #87

My Own Addition: 14. Those who code for a living make good money. I have a lot of friends who went into various fields, and it seems relative to the number of buttons we press daily, anyone who works on software makes great money. We didn't spend a ton of $ to go to medical school and 3 years of residency. We didn't go to law school and take the bar. Most of us went to 4 years, or less, of school, and here we are mak…

You’re not wrong, but I’ll say the part about not going into it for the money is becoming less and less true all the time. For developers who are ~35 and up, almost 100% true, once you get younger than that you’ll find that there are a large and growing minority of people who are very much in it for the money alone without any particular interest or affinity for computing. Their parents, advisors, etc saw how much mo…

> For developers who are ~35 and up, almost 100% true

I'll come up with one of the few exceptions to the rule, i.e. me. I'm in my very early 40s and I went in it for the money 20+ years ago, I hadn't even played with a computer as a kid or as a teenager for the simple reason that my parents couldn't afford to purchase me one (and I wasn't really thinking of becoming a computer programmer back as a teenager, I found the work boring).

Pretty soon though I discovered that I liked this, I even, in a way, avoided a career path that would have brought me into larger companies so into management (I think it's harder to remain a computer programmer in a larger company once you pass a certain age, I can't explain the reason for why that happens).

Either way, I'm almost 100% sure that no-one can spend 15-20-30 years in this job if they don't like it, i.e. only for the money alone, at times it can be really draining on one's mental condition.

Re: Uncomfortable Truths in Software Engineering

#227
> TDD/FP/Agile zealots

So his phrasing is a little hard to follow here, but I take this as being part of the ongoing TDD backlash, which is unfortunate because in my 30 years of experience, the opposite of TDD is "not testing anything at all". Or rather, when somebody pushes back against TDD, they usually push back against any form of unit testing. The net result is that the code itself is difficult to impossible to actually test... so nobody ever does outside of QA who does end-to-end black box testing and just kind of hopes they've covered all of their bases (hint: they didn't).

I guess I'd have to understand better what his definition of a TDD "zealot" is because I've been accused of being one for insisting that non-trivial code that doesn't have unit tests (and doesn't even allow for them) is unacceptable.

Re: Uncomfortable Truths in Software Engineering

#228

Earlier quoted context omitted.

I don't understand this weird fetishism with getting X demographic into software/tech. Naturally I don't think that any demographic should be restricted from entering the field, and everyone should be equally encouraged and provided the same opportunities, but more and more I see these pushes for trying to pump the numbers of specific demographics. If someone wants to join the industry, great. If not, also great. I t…

It’s hard to know if an environment is hostile to you or not if there are no examples of safety. For example I would hesitate to join a magic the gathering group if I didn’t first check that they’re friendly to newbies. Especially because I know magic the gathering can vary in experience and that a group that isn’t friendly is not an outlier. If I think about it this way I can understand why a woman might not want to…

> It likely worsens broadly if a woman knows exactly 0 women who are engineers as she grows up and considers a career for herself. She might not know any engineering is a viable path.

This was why I didn't get into STEM initially. It's not that I thought that engineering culture was toxic per se, but rather because the women I knew growing up didn't have careers, much less careers in technology.

Re: Uncomfortable Truths in Software Engineering

#229
post #72

Earlier quoted context omitted.

While that may be true, I'm not sure that's evidence that DSL's are the reason. I would argue the explanation is: JavaScript. I think many people are compelled by the idea that you can learn one language, and handle both back and front-end development. As the language has improved over the past ~10 years, this angle has only become more compelling, and has eaten into the popularity of other "traditional" web framewor…

I myself am one of these people. But even if Ruby worked anywhere and I could share all my code, I would still prefer TypeScript because of its support for typed JSX and excellent typing system overall. The IDE can help me in most cases, while it stays silent a lot with Ruby. I just don't see what more Ruby offers - and I'm saying that as someone who really likes OOP and really wanted to like Ruby.

I think JavaScript benefits from typing a lot more than Ruby does. Ruby is at least strongly typed, so doing something like `[] + {}` or `4 + {foo: "bar"}` will raise an exception instead of return you a seemingly-arbitrary value.

As far as what Ruby offers over JavaScript? It's a bit personal preference, but I prefer Ruby for several reasons:

- More stable ecosystem. There are more canonical "best" tools for the job. There's one dominant web framework, one dominant background job processor, one dominant task runner, debugger, testing framework, etc.

- More robust standard library. Enumerable rocks. And rolls.

- Better fits "OO" definitions—everything is an object in Ruby. It supports public/private/protected instance methods/variables.

Re: Uncomfortable Truths in Software Engineering

#230

Earlier quoted context omitted.

I think the general perception is that women often get turned off not by the work, but by the male-dominated environments. This can be due to subtle issues and sometimes due to non-subtle issues. You want to go out of your way to make it a friendly environment in those cases. Basically, do you want women to have the same shitty experience when they were breaking through various male-dominated fields in the past (e.g.…

The issue is the same in reverse. I've heard horrible anecdotes by male friends in female dominated industries such as teaching, nursing, etc. Why is the same societal push not happening in those industries? I never said we shouldn't strive to be welcoming and to cultivate a friendly environment for all, just that the intentional push for more of any specific demographic seems strange to me. Shitty people are going t…

(Rereading, I'm not actually sure we disagree, but the tone of the parent post seems to be that I can't change things because people won't change, ...?)

I'm in tech, I work on fixing tech.

> the intentional push for more of any specific demographic seems strange to me I believe the skewed demographics is a reflection of actions and pressures I don't agree with. I think there is pretty-open discrimination and steering of qualified candidates away from the field. (Read the news, sadly.) I'm morally against that. The demographics are an imperfect measure of our progress, but in my opinion it's a useful indicator.

> Shitty people are going to exist everywhere regardless Yeah, and in my workplace I'm against shitty behavior.

Without speaking to whether this is true or not, the parent's argument seems to me to be a kind of "whataboutism".

I don't choose to spend my time working to improve the work environment in other fields, not because I don't care but because I can't do everything.

Post reply on HN