For a long time, functional programming wasn't a discipline that you could benefit much from. Today there is a new methodology Alexander Granin calls 'functional declarative design', which is a counterpart to object-oriented design, and which helps in building real programs with functional programming.