Yes, but everyone knows that scaling will come and how costly rewrites are (many wonât happen). Phoenix is already known to scale and should just keep its current performance characteristics.
I think Chris will continue to tackle the hard challenges of advanced distributed systems and JosĂ© continues to increase the quality of life for us alchemists even further. They (and all contributors) already are extremely nice, so letâs also be nice (one meme that made ruby great!).
The key aspect of rubyâs success was rails, many people come for frameworks first and learn the language later. So, Phoenixâ Performance, scalability, features and ease of use is already on a great level. The âotherâ frameworks have just one advantage: getting started initially may be faster due to the availability of plugins for common tasks. This is where we as a community can make the difference. Eg:
- drop-in Admin panel like django (exadmin is pioneering here, but still not as automated as it could be)
- zero config users/auth plugin. JosĂ© doesnât want just another Devise clone. But we should experiment and pick a single winner, fragmentation on this critical functionality is very bad. Have a look how this topic is solved in meteor.js directly in the core, the best and most dev-friendly solution iâve seen.
- many small packages that make rails great
I have seen many people choose their tech stack based on those two points alone. For example:
âhey, in meteor i have the complete User Account system with login via email/facebook/⊠already available without a single line of code! Start a Project, choose a place for the login buttons, done!â
Yes, I know its just 10 minutes in phoenix to get going by hand (as seen in the phoenix book), and there are some plugins that require quite a bit of setup time. But do not underestimate the importance of zero-config here. Many projects get started as âwhat ifâŠâ Throwaway stuff and almost everyone requires user logins, maybe even at late night when I donât feel like configuring for minutes before trying my idea. The accessible accounts functionality right in the core is the primary reason why my colleagues and me pick Meteor for fast prototypes (which often end up in production). And you see how often people ask for this exact feature.
This is an example of something that we as a community can tackle, and it WILL make a difference if done properly. I personally canât do this right now, but I will give back on topics where Iâm good at (eg my elixir-scrape and more to come).
Sorry for the long post, but I just wanted to highlight that weâre not far away from being a great âgetting startedâ framework with phoenix and it is in out hands to achieve it. This is the last huge advantage of the earlier frameworks. And if phoenix wins by raw objective advantages across the board, elixir will win, and great things may happen.