7 ms·
Well that depends a bit on what the MVP needs to be. Anything web related I'm probably going the Elixir/Phoenix route. I'm no web dev, but this combination mak
by LeonenTheDK 4y ago
Well that depends a bit on what the MVP needs to be.
Anything web related I'm probably going the Elixir/Phoenix route. I'm no web dev, but this combination makes me actually kind of like doing web-things with how batteries included it is, and the tools it provides to really jump start a project. Then I'd host it "old schoolish" in a VPS or similar since that's what I know best. Might consider being fancy and investigating if Fly is a good fit. If a DB is required I'd use SQLite unless some constraint pushes me into Postgres.
If we're talking command line tool, the correct answer for me would be C# since that's what I know best. The answer I'd want to give though is Go since I want to get deeper into it, but that's not a good business decision.
Desktop application, best I've got in my kit is WinForms with C# and prayers that it never need run on anything but Windows. Maybe Linux with some Wine trickery, but that's not something I've done before either.
- nelsonic 4y agoTotally agree! For almost all web-based MVPs the PETAL Stack (Phoenix with LiveView & TailwindCSS) deployed to FREE Fly.io is an epic choice for both response times, realtime features, dev speed (time to market). We're currently building our MVP with it and it's fully Open Source so anyone can learn from our journey: https://github.com/dwyl/mvp https://github.com/dwyl/mvp
- danielvaughn 4y agoNever heard of phoenix but sounds interesting. What's the persistence layer of the stack?
- finder83 4y agoTypically Postgres
- stevenhuang 4y agoI really wanted to like LiveView but starting from 0 in the Erlang world meant learning a whole bunch of language semantics and idioms. In fact I found it perhaps harder to get started than learning Rust, especially because the language server seemed unable to offer as rich completions compared to Rust. In the end I did manage to understand most of the primitives and concepts in the basic sample app, but it did make me re-evaluate if it is the best choice in terms of technology adoption when it departs from most typical Python/JS/C family style conventions.
- LeonenTheDK 4y agoI can sympathize, it was a huge jump for me coming from C# land, and I see this sentiment repeated a bit for newcomers so it might be the nature of the beast. I definitely wouldn't recommend it for an MVP if someone isn't already into it, but then I don't think MVPs with tight business requirements are generally a good place to explore new technology anyway. I think there's a lot of room for nuance there though.
- nelsonic 4y agoTotally agree that the learning curve can feel steep learning Functional Programming style, Elixir Syntax and Phoenix framework in one go. But if it’s any consolation, our company has taken people who only JS or Python and got them fully up-to-speed in less than a week using the open/free tutorials we’ve written: https://github.com/dwyl/technology-stack https://github.com/dwyl/technology-stack HN feedback very much welcome.
- stevenhuang 4y agoThat looks like a fantastic resource, especially appreciate the update you've provided here https://github.com/dwyl/learn-elixir/issues/102 https://github.com/dwyl/learn-elixir/issues/102 I'll definitely have to keep at it and play around more, thanks!
- veqq 4y agoThanks for this link, I'll give it a go!
- mrdoops 4y agoAgreed Elixir/Phoenix + Tailwind is at the sweet spot of scalability, performance, and bonkers productivity. Real time? Need to go distributed? Maximize # of features / developer bandwidth? Cutting edge machine learning training & model serving? Mobile? JSON APIs and GraphQL tooling is great, but https://github.com/liveviewnative https://github.com/liveviewnative is moving fast so this stack almost has the exodia of full stack, one language, and distributed actor model based scalability.
- nazka 4y ago> Cutting edge machine learning training & model serving? I am curious about this. Do you have more infos?
- LeonenTheDK 4y agoHonestly I continue to be amazed with each year of developments. The increased robustness of the greater Elixir ecosystem is unreal. The best part to me too is despite how active it all is, progress overall is very measured and sane. It also doesn't develop at such a pace that it feels exhausting to keep track of, despite all the great work.
- selfmodruntime 4y agoWhat I like about elixir is that it feels like developing with javascript, but you're not delivering megabytes of js to the client
- el_nahual 4y agoLiveView is great but IMHO it's easily abused. "No JS, ever" is a mistake. IMHO it works best when there's very clear rules with where one should use LiveView vs JS.