… classitis, which stems from the mistaken view that “classes are good, so more classes are better.” Classitis may result in classes that are individually simple, but it produces tremendous complexity from the accumulated interfaces. It also tends to result in a verbose programming style from all of the boilerplate for each class.
As a result, the cognitive overhead of processing the verbose function (and variable) names, mapping them into the mental model I’ve been building so far, deciding which functions to dig deeper into and which to skim, and piecing together the puzzle to uncover the “big picture” becomes rather difficult.
The problem with “small functions” though, is that the quest for small functions ends up begetting even more small functions, all of which tend to be given extremely verbose names in the spirit of making code self documenting and eschewing comments.
For every image uploaded to Unsplash we now automatically extract EXIF and colour data, and we run the image through a series of machine learning algorithms to understand the content of a photo, removing the need for the contributor to manually tag the photo.