325
votes
Am I too 'clever' to be readable by Jr. devs? Too much functional programming in my JS?
In your code, you have made multiple changes:
destructuring assignment to access fields in the pages is a good change.
extracting the parseFoo() functions etc. is a possibly good change.
introducing ...
227
votes
Am I too 'clever' to be readable by Jr. devs? Too much functional programming in my JS?
If you are in doubt, it probably is too clever! The second example introduces accidental complexity with expressions like foo ? parseFoo(foo) : x => x, and overall the code is more complex which ...
103
votes
How to deal with a not-yet-implemented method that will be done by a co-programmer?
Ask for stubs.
Or write them yourself. Either way, you and your coworkers need to agree on the interfaces and how they're intended to be used. That agreement needs to be relatively solidified so you ...
89
votes
Accepted
PM opting for an overly-complex setup which nobody has experience with
Once we were halfway the project, the PM stated we had to use third party message queue capabilities instead of threads and had to implement load balancing
This isn't an appropriate thing for a PM to ...
89
votes
Accepted
How do you normalize coding style among multiple isolated developers?
Have a coding standard. If the shop you're going to work for already has one in use, that's the one you follow. Avoid coding standards that are dozens of pages long; it's not that complicated. ...
87
votes
Accepted
How to deal with 'almost good' code from a junior developer?
If you think the code should be fixed before merging, make comments. Preferably with "why" so the dev can learn.
Keep in mind code is read far more often than written. So things which seem "minor" ...
71
votes
What's the correct way to do pair programming?
If pair programming makes you feel like you're an air traffic controller trying to talk down an air plane piloted by a fidgety 12 year old you're doing it wrong.
The reason that's wrong is because you ...
65
votes
Accepted
How to effectively work with teammates whose fixes to bugs cause more bugs?
Test your code
Have an actual regression testing, so that when a bug is introduced, the programmer finds it right away.
This doesn't mean that you should just write the actual tests. Instead, it ...
53
votes
Accepted
Un-ticketed work, how much is too much?
If you work in a company that doesn't place any value in paying down technical debt, you may have no choice but to do unticketed work.
Stakeholders are generally not qualified to make decisions about ...
31
votes
Un-ticketed work, how much is too much?
In a few safety-critical industries, you need approval for every bit of code that goes into a product. Most people are not in that situation, and those that are, accept that condition.
In normal ...
30
votes
PM opting for an overly-complex setup which nobody has experience with
What would be stupid is to let yourself get death marched.
What you are describing is that you've lost critical feel. There is no sense of control and no clear way back to it.
The last thing you ...
30
votes
How to effectively work with teammates whose fixes to bugs cause more bugs?
Start by inviting people to pick apart your work.
You don't need management to create a command structure to fix this problem. You need teammates that trust you.
You build trust by showing you're ...
27
votes
Accepted
How to handle a TODO in a pull request?
When you say that they "generally stay in the codebase for the lifetime of the codebase" in your team/department/organization, consider the following:
Write it down in your DoD that TODO, FIXME, or ...
23
votes
Am I too 'clever' to be readable by Jr. devs? Too much functional programming in my JS?
This answer of mine comes a bit late, but I still want to chime in. Just because you're using the latest ES6 techniques or using the most popular programming paradigm doesn't necessarily mean that ...
23
votes
How to ensure that developers see only the project modules they are working on?
Why you shouldn't do it from a team perspective
The most important rules of project management regarding teams are:
The project can be a success only through intense teamwork.
Empowered teams that ...
20
votes
How to deal with 'almost good' code from a junior developer?
Keep the criticism on the code rather than the writer.
Any work produced comes with inherent emotional attachment. Consider easing this by disassociating the code from the writer as much as possible. ...
19
votes
What's the correct way to do pair programming?
The common pattern is that more senior devs generally end up handholding more junior devs throughout the whole process
First of all, pair programming does not inherently entail tutoring or mentoring. ...
14
votes
What part of development should a software designer do?
Preliminary notes about titles:
Sometimes, what you really do doesn't match at all your official title. As an example, years ago, I was hired as an “analyst-programmer in R&D department”; however,...
14
votes
Un-ticketed work, how much is too much?
should all work no matter how small be ticketed and go through sprint planning rather than be done as and when by developers if it is small?
There's certainly a point where the answer is no, right? ...
13
votes
Accepted
How can wrapping an expression as a function be Clean Code?
What constitutes "clean code" always depends on context. The exact same lines of code could be either perfectly clean or hideously over-complicated depending on the requirements of the application.
...
13
votes
How do you normalize coding style among multiple isolated developers?
The first step (and it sounds like you're already well on the way to this) is to get agreement from all of the developers that there is a problem, and it needs to be fixed. They all need to understand ...
13
votes
How to effectively work with teammates whose fixes to bugs cause more bugs?
You have two problems. One is that your team allows merges without code review. That isn’t just unprofessional, that is utterly stupid. I don’t even do that for private use code that I create on my ...
10
votes
Accepted
Where and when do design, architecture activities take place in Scrum
Design should be planned for, either as enough extra story points per story or as a separate story. And you should still have designers on your team who own and monitor the design.
The trouble is ...
10
votes
PM opting for an overly-complex setup which nobody has experience with
This should really be on workplace.stackexchange.com, because the problem is not really a software development question, but about workplace relationships.
If you are sure that your simple approach ...
10
votes
How to ensure that developers see only the project modules they are working on?
You are not Apple or Microsoft.
The reason why a software developer at Apple doesn't know about all of Apple's code is that there is a bloody awful huge amount of code and nobody can know about all ...
9
votes
How To Get A Junior Developer To Stop Bikeshedding
You have two different problems here.
One is: You make a change. Reviewer reviews it. Reviewer spots code that may or may not be objectionable near your change, and comments on it, possibly ...
9
votes
When code review becomes a formality what procedure can I take to amend it?
When people start treating part of the process as a formality that just needs to be ticked off, without paying any real attention, then the only way to resolve that situation is to find the root-cause ...
8
votes
Accepted
How does a sole developer answer the 'knowledge transfer' question?
I think the other answers, as well as your own suggestions, seem to make some unjustfied assumptions about what kind of answer your customer is expecting. If possible, try to find out what the intend ...
8
votes
Where and when do design, architecture activities take place in Scrum
Robert C. Martin had a talk about that you can find on youtube:
The land Scrum forgot
There he adresses this common issue that in Scrum architecture and design is never mentioned so it is up to the ...
8
votes
Accepted
Are pre-commit or pre-push hooks that run lint and unit test scripts worth it?
Yes, and no.
Is the action you are putting into the script worth it?
At work we have issues with git on windows environments. The file system is case-insensitive and leads to all sorts of fun. We ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
teamwork × 366communication × 34
team × 32
agile × 31
project-management × 31
code-reviews × 27
knowledge-transfer × 25
development-process × 24
version-control × 22
productivity × 21
management × 21
git × 18
scrum × 18
code-quality × 17
collaboration × 15
workflows × 14
coding-style × 13
testing × 12
team-leader × 12
programming-practices × 10
refactoring × 9
design × 8
continuous-integration × 8
self-improvement × 8
organization × 8