250 points by elixircoder 6 months ago flag hide 20 comments
elixir_master 6 months ago next
Fantastic write-up! The real-time multiplayer aspect is particularly interesting. Any chance you can share your repo? I'd love to take a look and learn from your implementation.
code_connoisseur 6 months ago next
@elixir_master: I second that! I'm curious about how you architected chat communication between players. Care to elaborate a bit more on that?
author 6 months ago next
@code_connoisseur: Sure, I'll go over the chat communication in another post shortly. I'll tag you when I do. Thanks for your interest!
code_connoisseur 6 months ago next
@author: Sounds interesting, looking forward to the follow-up post!
open_source_enthusiast 6 months ago prev next
@elixir_master: Great job open-sourcing this. I've forked the repo and can't wait to dive into the source code! Any recommendations for similar projects in Elixir I can check out?
elixir_samurai 6 months ago next
@open_source_enthusiast: Check out this Elixir project: https://github.com/elixir-lang/elixir. It's their official implementation and has a fantastic community behind it.
helpful_dev 6 months ago prev next
@elixir_master: I'm curious about performance. Have you performed any benchmark analyses? I'd love to see some metrics how it handles high load and stress tests.
author 6 months ago next
@helpful_dev: Haven't run specific benchmarks yet, but I've run some tests and the system seems to handle significant load nicely. I'm making a note to benchmark and share more details soon.
junior_dev 6 months ago prev next
This is fascinating. I've always wanted to build a game utilizing Elixir/Phoenix. Any advice you'd give to a newbie?
web_scale_guru 6 months ago next
@junior_dev: I'd recommend focusing on learning the basics of Elixir and its concurrency model before diving into game development. The 'Elixir in Action' book is a great resource to get started.
junior_dev 6 months ago next
@web_scale_guru: Thank you for the recommendation! I'll grab a copy of the book and get started with Elixir basics. Really appreciate that.
web_scale_warrior 6 months ago prev next
Incredible work! I'm impressed with its real-time capabilities and the potential it has for scaling horizontally. Have you thought about deploying this to Kubernetes or similar?
elixir_maverick 6 months ago next
@web_scale_warrior: I've been evaluating various deployment options and have had success with a serverless architecture utilizing AWS Lambda and API Gateway. I'd be happy to share more about that if you'd like.
web_scale_warrior 6 months ago next
@elixir_maverick: serverless sounds interesting! I'd love to learn more about it and your experiences optimizing so far. Thanks for offering!
web_scale_guru 6 months ago next
@web_scale_warrior: I've deployed similar systems on Kubernetes, and it works like a charm. You might want to try it out and compare the experience if you find the serverless model interesting!
web_scale_warrior 6 months ago next
@web_scale_guru: I'll definitely try that, thanks! I have a few months to experiment so I'm excited to see the differences.
learning_leroy 6 months ago prev next
Great project! Elixir is in my list to learn as I want to focus more on functional programming. Do you think Elixir is ideal for a project like this and would you recommend it for beginners in functional programming?
author 6 months ago next
@learning_leroy: Elixir's a great choice! I'd recommend it for beginners in functional programming as it has good resources and a friendlier ecosystem, unlike other FP languages. Give it a try, but prepare for a paradigm shift!
efficient_erin 6 months ago prev next
Really cool multiplayer game! I'm curious about your decisions behind using Elixir instead of other popular choices (e.g., Node.js). How did Elixir win the battle?
author 6 months ago next
@efficient_erin: I wouldn't pick a technology just because it's popular. Elixir/Phoenix was an excellent fit for real-time requirements, it provided better architectural choices than Node.js when it comes to concurrency and redundancy, and I liked Elixir's FP features.