A good development environment is likely much more about soft-skills than anything else
Posted by No_Tea2273@reddit | programming | View on Reddit | 20 comments
StarkAndRobotic@reddit
A good development environment is a room with four walls, a door and no one else, and no interruptions while coding.
Hacnar@reddit
Maybe for your own code it is good. But for the cooperative work in larger teams, you need effective communication. Soft skills contribute to that a lot.
I have a senior colleague with a brilliant mind. But he does too much work solo, and he quickly becomes a silo. He can't effectively distribute the work among the less experienced teammates. Meanwhile another team with less experienced people is able to do more in the same time, just because they cooperate well.
StarkAndRobotic@reddit
While being a good team mate is important, some complex problems require a person to focus in peace and quiet, uninterrupted for extended periods. No amount of soft skills can solve those kinds of problems, because the nature of the problem requires a lot of variables to be simultaneously held in working memory so a person can figure out a solution. An interruption and all that is lost. A team cannot solve those problems because instead of all the variables being in one persons head, you have people interrupting each other, so no one solves the problem, or does so in a sub optimal manner. That requires an undisturbed environment, not teamwork.
The best teams are the ones where each person is an effective contributor that takes initiative, is highly motivated, and rather than take instructions from anyone, is so in sync that everyone knows what everyone else is doing, so can collaborate effectively. That is team work, not the environment.
Yes, a team can accomplish more than an individual, if they are effective. But some individuals accomplish more than teams or even entire companies, because they dont have to deal with stupidity, interruptions, and unnecessary processes that exist to manage ineffective contributors, and non-team players.
mirvnillith@reddit
Well, if you’re alone you’ll never have collaborations but if you’re in a team you can always ask not to be disturbed. A team, to me, is a super set of an individual.
That said the dynamic is important and there is never a silver bullet to anything (and there are plenty worse things than werewolves to kill anyway).
StarkAndRobotic@reddit
The topic of discussion was what a good development environment is, not whether one is part of a team or not. Only solo developers are alone. Everyone else works in a team. My point if what a good development environment is one where one can work undisturbed and without distraction, not whether one is part of a team or not.
mirvnillith@reddit
It sounded to me like you assumed being in a team was always disruptive and that being solo scaled across all problems. Not in any way denying that there sure are ”deep” problems that require utmost singular focus to solve I also know there are things only solveable by the varying perspectives of a group.
And, as I said, I see a team scaling down to individuals but no individual scaling up to a team.
Hacnar@reddit
Some uninterrupted time is needed just for the comfort and peace of mind. But I still had more success working through complex problems in cooperation with someone else, than working them out completely alone.
Regarding the individuals accomplishing more - yes, I've seen it in practice, but always only in the short term. Long term it always led to knowledge silos, burnout and slowdown when the individual moved on from the project. The individual can always deliver the initial value quicker, but the long-term maintenance usually suffers for it.
StarkAndRobotic@reddit
If that is the case, then you havent worked on the kinds of problems which require lots of working memory and uninterrupted time. Just because it suits your work, doesnt mean it suits others.
Perhaps you find it easier working with others because you are unable to solve certain problems easily on your own. Code is self documenting. I have worked with large codebases where i have never met the authors, or have any way of contacting them, but reading the code is sufficient to know what it does.
There is a difference between “environment” and “teamwork”. They are not the same things. A person who cannot work independently will be limited in their work and career. A person should have some soft skills to be a good team played. But a person who can work independently can still contribute. A person who cannot is weight.
Hacnar@reddit
I've worked on some tough issues, like ones dealing with 3rd party apps, where I didn't have a single line of their source code. If I was lucky, I could get a memory dump of that app. Every time I worked on such issue with someone else, it made the whole process smoother and faster, no matter how easy or difficult the issue was. The sentiment was almost always the same when coming from my colleagues.
From my point of view, if you find it harder to work with others rather than solo, then maybe you lack some soft skills which could enhance your productivity.
StarkAndRobotic@reddit
You proved my point. You just dont understand it yet because you lack experience.
Hacnar@reddit
What do I not understand?
Working with others has always made things faster and better. If it was only my experience, then maybe I'd have given your opinion more thought. But this experience was universal everywhere I've worked for the past 10 years.
StarkAndRobotic@reddit
Come back after ten more years. Then you will understand.
Hacnar@reddit
So you just disagree with me for some reason. You don't know how to argue against the fact that I haven't seen your opinion become reality in practice, so you turn to belitlling me. Looks like I might have been right about your lack of soft skills.
StarkAndRobotic@reddit
No, i have stated my reason, you just dont understand it because you lack the ability to do so. This conversation has run its course, and is over.
Hacnar@reddit
That is your intentional misinterpretation of what I've said. I never said I struggle solo. I said that that working with others always makes the process faster and less error prone than if I've done it alone. I've heard the same for my coworkers. Matter of fact, the best coworkers in all my jobs were always the ones who cooperated with other people the most.
You can dress your belittling in all the nice words, but it doesn't change the fact you try to put me down by creating strawman arguments.
StarkAndRobotic@reddit
So in your own words, without someone to hold your hand, you take longer and make more mistakes. And in your own words, your coworkers share the same opinion, indicating your colleagues are equally mediocre. Hence you have only worked with mediocre people in mediocre jobs, so you have inadequate frame of reference for comparison, and lack of experience working with skilled persons on challenging problems. I dont have to put you down - youve done that to yourself. There isnt anything more to discuss because you have a point of view based on inexperience, and you expect people who know better to agree with you. Have a nice day.
Mrzozelow@reddit
Amen!
fanglesscyclone@reddit
But sometimes my cat needs belly rubs.
al3xth3gr8@reddit
Misleading title. A development environment is the virtual realm (computer system) where applications are executed.
This blog post only talks about the real-world working environment of developers.
GabeFromTheOffice@reddit
Are you stroking out?