But i never use domain, driven, design,... as vocabulary. I use function all the time. "Hey guys, just use function, that's all you know to make usable software."
What's the problem with NOT following "weird, confusing" patterns and vocabularies.
And the result is, all of my students actually make useful code, simple code.
Also, most of software recruiters will tell you: You lack of experience in making complicated/complex software ! No, it's you lack ability to produce simple software, it's your fault.
Teaching-scale and production-scale programs are very different. Teaching-scale, where students start with a blank sheet of paper, are better served by simple approaches. You can't put enough complexity in there to warrant a complex framework.
I would like to see a course with a "maintenance" module, where students have to make changes to an application that's maintained over the several years of the course running. Including dealing with mistakes made by previous students.
Breaking complexity, and ensuring it stays broken. "This data is read only, you shall not corrupt our state, deal with it" is an even more important design pattern than a shared domain vocabulary.
You surely don't know if there exists a practical real world application which only uses function. (Because you don't have access to codebase of all real world applications).
That's why your statement is logically wrong. I have no more word to say here.
I never said that. I said you can’t _only_ write functions. If you model properly, you absolutely can have a purely function based system. But if you skip the modeling and listening step, you will 99% end up with junk.
Hehe, actually, i intentionally use the "useful software", instead of perfect, good design, scalable,... software. If you skip that details, all furthur logic will be in wrong context.
But i never use domain, driven, design,... as vocabulary. I use function all the time. "Hey guys, just use function, that's all you know to make usable software."
What's the problem with NOT following "weird, confusing" patterns and vocabularies.
And the result is, all of my students actually make useful code, simple code.
Also, most of software recruiters will tell you: You lack of experience in making complicated/complex software ! No, it's you lack ability to produce simple software, it's your fault.