10,514 karma · joined August 27, 2018
contact me for mentorship, training or project work opportunities:
embee+hn at societyserver dot net
it's not like a car where you have the option to do without, you can't do without a place to live. i am pro renting, but unlike a car loan i don't see a mortgage less financially responsible because you can almost always just repay the mortgage by selling the house, in other words unlike any other loan mortgage is unlikely to put you into a debt that you can't repay because the house is your collateral. (unless the housing market crashes maybe)
on the other hand, a language with frequent breaking changes should not be considered production ready.
people are of course free to live on the edge, and if someone decided that zig is good enough and they are not bothered by breaking changes then they are free to use it for their production system, but that doesn't mean it's ready for everyone. so i prefer the zig approach.
“hooche Leit” is PA dialect for standard German “hohe Leute,” literally “high people” in the sense of “fancy” people
but that supports what i said, because upper class people are also fancy.
i remember a conversation with a php core developer who conceded that one of the problems in the php community is a large number of inexperienced developers. it is similar problem that javascript faces today, but that, thanks to AI is going to affect more and more languages.
php itself is not a bad language, i use it too if it is appropriate, but it also has improved over the decades. so nowadays i am more likely to use php than i would have been a few decades ago.
german law or courts operate more on common sense than the letter of the law. to be able to reject a task from your boss the task has to be unreasonable. training/mentoring is not unreasonable unless the work is dangerous and/or a trainer needs specific qualifications. running a class that teaches some generic topic like a programming language would probably be unreasonable because you could just hire an external trainer for that. the training has to be rather specific to the individual experience of the senior or some company internal knowledge to be reasonable. so this doesn't apply to the scenarios you seem to have in mind. in any case from what i read it is recommended to talk to a lawyer before refusing.
but also, if the request interferes with your ability to do your normal work then you can and should speak up and you can reasonably refuse if your boss doesn't make accommodations for that. if he doesn't then refusal is reasonable, not because training wouldn't be your job, but because your workload has increased, which is not ok.
every job i had, every developer i hired. it is also backed by german law for example, refusing to mentor/train others in the work you do is a fireable offense in germany. in any job. not just software development. i doesn't need to be explicit in the contract. it is a natural and expected part of your job. and in the US with at-will employment, what's in your contract doesn't matter as much either. if it seems like a reasonable request they can just let you go if you refuse. the idea that you should not ever have to pass on your knowledge to others in your company seems very entitled to me.
that's my opinion on the matter. you can find more diverse opinions here:
https://softwareengineering.stackexchange.com/questions/8627...
some even fully agree with you.
i already acknowledged the 70% problem you mention. that should not happen unless it is known and intentional. i'd be horrified too if i were surprised by that.
what doesn't work is the assumption that mentoring doesn't take any of your time and that you are expected to manage the same workload with and without mentoring. that's not ok. and spending 70% of your time mentoring may also be a bit to much, but if that is what the company needs then it is still your job.
when someone joins a team they should be assigned a mentor whom they can ask any question, no matter how dumb, and the mentor then guides the new team member in how to approach such a question, which at that point can include asking the LLM. it is the mentors responsibility to point out when it is ok to ask another senior developer. daily standups can also help with this sort of thing.
in a close knit team i would also expect that either everyone can ask anything from everyone else, and that everyone learns when it is ok to ask questions. the situation you describe should simply never arise. if it does, then something is going wrong
that's the point where i would want to start firing people. not because i want to replace them with AI, but because if they use AI to answer without contributing their own thoughts they make themselves replaceable.