Hacker News new | ask | show | jobs
Ask HN: How do I start building a CRUD application?
1 points by bag531 2560 days ago
I have an idea for a CRUD application and a general idea of the technology stack I want use.

I'm wondering what people think the best way to start a project like this is - should I start designing the user experience, and see what requirements come from that? Or should I start by designing a database and some queries around that?

I'm more of a backend developer so I'd probably find myself being more productive with the second approach, but I'm worried that without having a clear idea of the user experience, I'll constantly be changing things. Thoughts?

2 comments

My definition of a good database design is that it models the domain well and will be flexible to support the user experience that you want.

The one constant is that your idea of the ideal user experience will change -- changing the database design is expensive once you have data in it, so you want to design it so future changes won't be hard.

I take inspiration these days from Ruby on Rails and Lotus Notes; in fact I am working on a "Lotus Notes in the Age of A.I." using arangodb as a back end and python asyncio on the front.

I find a nice solid API can be turned into any sort of application front-end and is very testable (and in your case might help simplify any 3rd party integrations you might be interested in)