DEV Community

Discussion on: JS Coding Patterns that give you away as a Junior Developer

Collapse
 
vonheikemen profile image
Heiker

misuse of functional programming techniques can identify you as a beginner.

No one should judge the experience based on this. If someone misuse an FP technique, the only thing that tells me is that they are learning functional programming.

And just a tiny note here: Array.forEach returns undefined. Keeping it pure wouldn't make any sense. If someone is using it, it's very likely they want to perform a side effect, and that's not bad.

Collapse
 
darkwiiplayer profile image
𒎏Wii 🏳️‍⚧️

I've noticed that the JS community has started using the term "functional" for everything that uses higher-order functions, which is really just a small part of it. Just using map or reduce doesn't make code functional, and forEach is about as un-functional as it gets (It literally is a nop without side effects)

Collapse
 
vonheikemen profile image
Heiker

I like to think they refer to a "functional style". At the end of the day that's all we can hope for in javascript. We can't even enforce a function to be pure, we can only have them by convention. Sometimes I think is sad that function composition doesn't get as much atention as the array trinity (map, filter, reduce).

Thread Thread
 
darkwiiplayer profile image
𒎏Wii 🏳️‍⚧️

I wouldn't even say "functional style", rather it's about picking some of specific functional tools that fit the intended domain of ES and ignoring those that don't really add enough value and/or are just not doable in ES.

Function composition, currying, referential transparency... there's lots of concepts that get ignored because they stray too far from how people want to write javascript for the most part.