alice
Hey,
For a business like Shopify being able to add new features in a Paul Graham’s viaweb style would be very important (aka using a powerful expressive language). Additionally since Shopify is an all in one solution that includes hosting, payments etc, the platform needs to be secure and use the cloud efficiently to optimize profit margins. Thus I am curious whether you would choose Elixir/Phoenix/Ecto or some other stack to write something like Shopify today? If possible please share your reasoning as well.
Thanks.
Trending in Discussions
As the title says, please share what you’ve been up to with Elixir. Whether that’s been learning it, looking into it, making stuff with i...
New
Hey there,
It’s been more than a year since we started using LiveView as our main UI library and building a whole library of UI componen...
New
I am happy to introduce the very α version of the new programming language compiled to BEAM.
Welcome Cure.
It has literally three kille...
New
Quite interesting article Google brought me. Didn’t find any mentions about it here.
What do you think in general? Would you use togethe...
New
:warning: Security advisory: Decimal DoS vulnerability
A vulnerability has been published for decimal where very large exponents can cau...
New
It would be helpful to have a list of companies worldwide that hire engineers without prior experience in Elixir. Often, it can be quite ...
New
What IDE or editor are you using for Elixir development?
Personally, I use Zed, and I really like it, but sometimes I wish there were a ...
New
Other Trending Topics
Hi there! We created Gust: A task orchestrator inspired by Airflow.
For those who have never heard about Aiflow, it’s a Python-based wor...
New
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Xamal is a deployment tool for Elixir apps that deploys native releases to bare metal servers over SSH. It’s a port of GitHub - basecamp/...
New
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself.
My main conc...
New
Aludel - LLM Evaluation Workbench
Aludel is an embeddable Phoenix LiveView dashboard for evaluating and comparing LLM prompts across mult...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixirconf-us
- #ai
- #blog-post
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #hex
- #security
- #metaprogramming










Showing Posts 1 to 9- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
dimitarvp
I think your comparisons between languages and frameworks is looking at the problem from the wrong angle.
As has been said in other threads – you should look for the real selling points in the runtimes themselves.
I have just recently answered you here. Is there anything unclear? Anything that didn’t leave you quite satisfied with mine, and others’, answers?
For a quick answer, Erlang/Elixir’s runtime (the BEAM VM) is a perfect fit for any network service – especially web! – except for the cases when you need the last drop of performance per watt, in which case you should go for C++ or Rust or D. The reasons why the BEAM is excellent for web have been already very well documented and my compressed linked answer is, I dare saying, not a bad summary.
alice
Thanks for replying,
I am still learning so please excuse me if some of my questions are redundant to the community, they are not redundant to me because I am not yet aware why they are redundant. I am creating these topics in the chat sections where I am assuming a higher degree of potential redundancy is acceptable. The reason why I am asking what seems to be a similar question from different angles is because I am curious how different infrastructures could benefit from the same implementation. Aka a chat app is totally different from a content management system (in my eyes). Also it’s possible that someone could have different experiences in this particular context and share stuff that wasn’t shared in the previous thread. This wasn’t meant to mean that I am dissatisfied etc. I am just being curious.
andreaseriksson
These kinds of questions are a little strange for a few reasons.
With that said, I would pick Phoenix everyday of the week. But if someone asked me if they should switch from Rails or Laravel for their new startup, I would most likely say no. It’s hard enough to create a startup and learning a new language should not be one on your mind.
But also, your chances to succeed will be higher if you pick a mature tech stack with a large(-ish) eco system that suites your needs.
alice
Thanks. I like to ask strange questions. IMO it’s irrelevant whether I am actually trying to build a shopify app or not. This being in the casual chat category should be treated more like a philosophical discussion on programming rather than a serious “help needed”-like question. If you think it’s a stupid question (which it very well might be) that’s okay with me. As for not able to get an objective answer here, not sure if that’s true. I understand that some members here are biased as probably most who frequent this forum appreciate Elixir, but that doesn’t mean they appreciate only Elixir so I am still willing to give smart people the benefit of the doubt as opposed to categorizing them as biased and incapable of producing an objective thought. I would also expect people who really love Elixir to be aware of its weaknesses therefore letting me know if using Elixir for x is good or a bad idea.
dimitarvp
It is different only in a business sense and from the point of view of the normal human. They share quite a lot technologically:
So to help you understand why asking similar questions from different angles could be redundant, ask yourself if the app you have in mind:
If you answer “yes” on all these the chances are very good that Elixir will serve you fantastically.
Conversely, with PHP / Ruby / Python, the web deployments need to resort to all sorts of finicky tricks like keep 20 workers waiting for HTTP requests. What happens when there are 21 or more requests? Those beyond 20 simply wait their turn. If the server is beefy enough you will never notice but the problem is there and will manifest itself in the most inopportune of times.
Elixir’s Phoenix won’t do that. If you get 10_000 requests they all get an OTP process and they all work in parallel (some restrictions apply to database pools but that’s separate).
Lastly, nothing that Elixir can achieve is impossible to be imitated well enough by many others (see Java’s Akka framework for one example). Hell, people write their web apps in C++ even.
But many of us want certain guarantees (fault tolerance, lagless operation, huge parallelism and concurrency abilities etc.). They help us focus on actually delivering value. Our time isn’t 50% - 80% dedicated to operations and system administration. Our time goes to make our customers succeed.
Ask away if anything more is still unclear. Don’t think me hostile, I was legitimately confused about the goal of your question here at first.
dimitarvp
That’s not objectively true. If you spend enough time around here you’ll see people like me and several others who regularly tell people NOT to use Elixir for problems X or Y.
andreaseriksson
Sure. Good point.
andreaseriksson
I don’t hink its stupid. Sorry if it come off like that. You will have an easier day if you pick the right tool for the job. But there are enough examples in the world of successful businesses that where build with the wrong tool and made it anyway.
its hard to anticipate the future struggles of your company/app.
But since you are here, and seems to be interested in a web facing app, I definitely think Elixir / Phoenix it the right fit for you.
kokolegorille
It’s probably not the main purpose of Elixir/Phoenix to replicate what has been done with other frameworks.
When You compare frameworks, You might be more productive with OOP, something that is more common.
If You use Phoenix, You need to learn FP, and it’s a brutal change. So if You do it, make something different, and try to benefit from the BEAM power.