Live data from Hacker News

Ask HN: Easiest way to build a CRUD app?

news.ycombinator.com

121–130 of 239 posts

Re: Ask HN: Easiest way to build a CRUD app?

#121

.NET, razor pages, sqlite, entity framework. Its hard to build anything non-trivial with a gui without involving a few languages these days. You can package your .NET server as completely self contained and run it on anything, just need a web browser. Edit: python might get you close with a simple html framework.

I would use EF core (code first) even if my app wasn't in dotnet. Migrations and deployments just. work.

Re: Ask HN: Easiest way to build a CRUD app?

#124

If this isn't a business application, ignore this entire comment. If it is a business application, you probably shouldn't build a CRUD app, at least not the way that's commonly understood. Stick with me for a minute. First off, you must never delete business data (except per GDPR, retention policies, or other legal requirements). I'm sure someone will pipe in with a contrived use case where you would want to, but in…

Durable records are actually legally mandated in France under "NF525": https://www.ikosoft.com/en-gb/all-knowledge-about-the-nf525-...

Re: Ask HN: Easiest way to build a CRUD app?

#125
Your requirements are contradictory and incomplete:

  - No single language can do all of that successfully, unless you ditch GUI and client-server models
  - Without external dependencies you will either be reinventing the wheel or adding lots of layers
  - All software will require maintenance, more layers equal more maintenance
  - All software can be compromised or hacked, more layers equal more attack surface
  - If it has to last a long time, it cannot use anything that moves fast (or without LTS releases), but it depends on what you define by 'last' and 'a long time'

This doesn't mean your question is stupid, it's just not something that is simple and resilient while also being those other things.

If it is a single-user, single-machine "app", you could use a plain UTF-8 text file which can be read and written to by any relevant text editor. No app is the best app in this case. This does depend in what kind of information you intend to CRUD.

Re: Ask HN: Easiest way to build a CRUD app?

#126

I’m surprised nobody had said MS Access. You don’t need to learn any programming languages, it comes with everything you need, and every Access app has lasted way longer than anyone wanted it to. ;)

I started my CRUD with MS Access, then moved to SQL Server > MVC > .Net 6 web app. MS Access was a great launching point.

Re: Ask HN: Easiest way to build a CRUD app?

#127

If this isn't a business application, ignore this entire comment. If it is a business application, you probably shouldn't build a CRUD app, at least not the way that's commonly understood. Stick with me for a minute. First off, you must never delete business data (except per GDPR, retention policies, or other legal requirements). I'm sure someone will pipe in with a contrived use case where you would want to, but in…

We ended up with a system like this too but came at it from another angle - building offline sync. After reading your comment though I realise it can be more widely applied.

Re: Ask HN: Easiest way to build a CRUD app?

#128
several years ago i took a feature-rich object-storage platform (written in pike) as a backend, added a RESTful API and then built various SPA sites on top of that. once the API was sufficiently feature complete i didn't need to touch the backend at all anymore.

besides the backend itself, the only other dependency is a database.

as a result, building a site nowadays is drastically simplified. javascript and my favorite frontend framework is all i need.

Re: Ask HN: Easiest way to build a CRUD app?

#130

Your requirements are contradictory and incomplete: - No single language can do all of that successfully, unless you ditch GUI and client-server models - Without external dependencies you will either be reinventing the wheel or adding lots of layers - All software will require maintenance, more layers equal more maintenance - All software can be compromised or hacked, more layers equal more attack surface - If it has…

If I were to make a lot of assumptions, you are probably going to need something that can compile statically into a (mostly) self-sustainable binary. That means Java and C# .NET are out. You can use a GUI, but only if you pin yourself do a single OS and single GUI system. For a macOS/iOS target, I would say: Swift. It mostly compiles down to a single application (well a bundle...) and the native frameworks supply persistence and UX methods that last long enough to be considered 'a long time' by my personal vague concepts. For Windows, you'll be stuck with something like Win32 C++. For Linux, you'll probably be stuck with a choice between GTK and Qt, and again something like C++. If you don't need to target any of those systems specifically, or you don't need to make use of a UI, you can do Rust or Go for all/any of them.

If you want to do something for the web, you are screwed. You'll always end up targeting a scoped set of browser versions, use something that either is or compiles down to CSS, JavaScript and HTML (3 languages at least), and if you run a server component, that requires maintenance too (even static file serving). Nothing on the web really 'lasts a long time' as-is.

Post reply on HN