4 ms·
Decent article but it's missing a lot of the things I expected to see, given the introduction. This seems really focused on the things I'd consider most analogo
by aji 10y ago
Decent article but it's missing a lot of the things I expected to see, given the introduction. This seems really focused on the things I'd consider most analogous to "physiological" and "safety" needs. Writing code is a very basic part of software development, like chopping vegetables is a basic part of cooking.
To me, Maslow's hierarchy of needs is interesting because it tops out at "self-actualization". Maslow is effectively saying that the most important need a human can fulfill in their own life is the need to have a purpose and to live out that purpose.
The top of the analogous hierarchy of software development needs in this post, on the other hands, fizzles out at "patterns". What about understanding how different patterns are used to make a working piece of software? What about fitting separate software systems together to make a functioning product? What about shaping a product to fill some kind of need in the world?
My hierarchy would look something like this (with less bad ASCII art):
/-----------\
/ Meeting requirements
/---------------\
/ Designing software architectures
/-------------------\
/ Manipulating software systems (e.g. implementing an HTTP service, setting up a database, etc.)
/-----------------------\
/ Writing code (e.g. accessing APIs, implementing a function, etc.)
/---------------------------\
with "meeting requirements" at the top since that is the most important thing to be done as a software developer, and it can't be done without addressing the needs below it. It's not as lofty of a name as "self-actualization", though.
- npunt 10y agoI like yours better, especially wrt reqs and the reason for the software to even exist, as it's not just in service of itself. To simplify even more, the pyramid goes What -> How -> Why