DEV Community

Discussion on: What are the least intuitive fundamentals and best practices in software development?

Collapse
 
juliusdelta profile image
JD Gonzales

Abstraction and DSLs practically.

Process more non-practically.

Everyone has opinions on what a good product development process is, but because people vary so much it's hard to say with any certainty that "[insert your favorite thing here] process is best." So many things impact process, from the very people themselves to the business model of the company. It's very hard to determine a good process, experiment, iterate, and improve upon it because it requires time, planning, and a significant amount of thinking. It's even worse if the team you work with is large but the process isn't working. Stakeholders who are unaware of the product life cycle might just see it as a broken machine that needs "motivation" rather than optimization of some kind.

I graduated from a boot camp a few years ago, and this is definitely one of the things they don't tell you about ;).