Language | Packaging | IDE | Types | ORM | Admin | Advantages over Python |
---|---|---|---|---|---|---|
Python | ✅ Poetry | ❤️ PyCharm | ❤️ Django | ❤️ Django | ||
TypeScript | ✅ npm | ❤️ WebStorm | ✅ OOP | ✅ TypeORM / Sequelize + Umzug | Types, developer base | |
C# | ✅ nuget | ❤️ Rider | ✅ OOP + 🤢 | ✅ Entity Framework | Types, LINQ, speed | |
Rust | ❤️ Cargo | ✅ RustRover | ❤️ ML | ✅ diesel + barrel | SeaORM | |
Haskell | ❤️ stack | ❤️ HaskForce | ❤️ ML | ✅ persistent | ❌ ask joeyh? | Types!!!11, testing!, speed |
Kotlin | ✅ maven / gradle | ❤️ IDEA | ✅ OOP | ✅ ktorm + alpas | ❌ | Types, speed |
Clojure | ❤️ Leiningen | ❤️ Cursive | ✅ OOP | ✅ built-in + drift | ❌ | Types, speed |
Scala | ✅ IDEA | ✅ slick + forklift | ❌ | Slow compiler, shit types 🤮 |
- ❤️ - full of awesome
- ✅ - can live with it
⚠️ - problematic- ❌ - not available
- It seems that there are no automatic code-based migration generators for platforms other than Django, the rest can either not generate anything at all, or only raw SQL.
- In as far as Haskell is concerned, I can probably get stuff relevant for us contracted out to joeyh - that would be
spec2api
anddjango-admin
. Good, fast, inexpensive.
I'm missing a column "availability of developers".
Regarding 1) in C#: https://docs.microsoft.com/de-de/ef/ef6/modeling/code-first/migrations/ . It generates code-based migrations automatically.
C# / admin possibilities: