TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: What's the best technology for a CRUD website to minimize maintenance

4 点作者 MrPowers超过 2 年前
The first website I ever built (CodeQuizzes) still has some users and I&#x27;d like to migrate it to a tech stack that&#x27;s easier to maintain: https:&#x2F;&#x2F;www.codequizzes.com&#x2F;<p>It&#x27;s a Rails app that&#x27;s hosted on Heroku. It&#x27;s a simple CRUD app that&#x27;s backed by a Postgres database, only a few lines of JavaScript. I am a data engineer and don&#x27;t have the time to keep up with the constantly evolving Rails ecosystem. I don&#x27;t need a web framework that makes breaking changes to add new features.<p>* I know Python, but guess that Django is a constant maintenance effort after looking at all the releases<p>* I also know Scala, but find it really difficult to maintain, as I noted in this thread: https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26539508<p>* I&#x27;m working on a Node &#x2F; React app right now and it seems it will also require constant maintenance<p>I&#x27;m leaning towards Go. From what I understand, Go really cares about backwards compatibility and lets you build a CRUD app that&#x27;ll continue to work with minimal maintenance. Interested in thoughts on the best technology for this.

7 条评论

rlawson超过 2 年前
I&#x27;ve had a Django app running for 3+ years (stick to an LTS release) and it requires a very occasional security update (months in-between) but generally it&#x27;s a 5 minute change to update the version, run the test suite and then push to prod
vhodges超过 2 年前
<a href="https:&#x2F;&#x2F;postgrest.org&#x2F;en&#x2F;stable&#x2F;index.html" rel="nofollow">https:&#x2F;&#x2F;postgrest.org&#x2F;en&#x2F;stable&#x2F;index.html</a> for the backend? You&#x27;d still need to write the front end of course.
VectorLock超过 2 年前
Other than security updates why can&#x27;t you just freeze your dependencies as they are now? Or am I understanding you want to continuously work on it but don&#x27;t want to have to fix forward version incompatibilities?
评论 #33482603 未加载
anoojb超过 2 年前
I think you’re describing needs similar to an Enterprise, which primarily use .Net and Java.<p>I might encourage you to look at ASP.NET if you really want minimal maintenance and a modern-ish experience.
juanse超过 2 年前
Out of curiosity: Which change in Rails broke a part of your system? I am also interested since I use also Rails.
solardev超过 2 年前
This website seems simple enough that you could conceivably write the whole thing in plain HTML + vanilla JS, with the quiz data stored as plain JSONs that you either inline or dynamically fetch() as needed. You can do all that with or without a (frontend) web framework, up to you. I don&#x27;t think you need a relational DB at all, unless there&#x27;s some hidden feature I didn&#x27;t see at first glance?<p>What&#x27;s the CRUD aspect? If it&#x27;s just the user login + progress saving, you could probably outsource auth and then store their progress as user-specific metadata, tied to individual question IDs. Doesn&#x27;t seem like you need much of a backend at all. Maybe a cloud KV store at most (Cloudflare, etc.) or the free plan of some headless CMS.<p>If you really prefer a relational backend, services like ElephantSQL and Cloudflare D1 and DigitalOcean offer low-costed hosted Postgres that you don&#x27;t have to maintain yourself (no updates, OS to manage). Instead of a full-blown backend, just write a serverless function that your frontend can talk to which will fetch from the database. But again it&#x27;s easier (as in lower maintenace) to just use a preexisting solution or headless CMS.<p>Host your frontend anywhere, like Vercel or Netlify, since it&#x27;s just static HTML + JS.<p>TLDR eliminate the backend parts that you don&#x27;t need, and maintenance becomes a lot simpler. You don&#x27;t need a backend stack or any other languages except HTML and JS.
aregsar超过 2 年前
Flask could be one option