First design the data. This will tell you how this part of the solution integrates with what everybody else is doing, and will make very obvious some problems that otherwise you may only discover after the system is mature into usage.
Then design the UX and users processes. Programmers get to design only half of those, but both have to be set at the same time.
Then you can do everything else.
And yes, letting an ORM dictate migrations guides people into a completely wrong sequence.
First design the data. This will tell you how this part of the solution integrates with what everybody else is doing, and will make very obvious some problems that otherwise you may only discover after the system is mature into usage.
Then design the UX and users processes. Programmers get to design only half of those, but both have to be set at the same time.
Then you can do everything else.
And yes, letting an ORM dictate migrations guides people into a completely wrong sequence.