• 0 Posts
  • 21 Comments
Joined 2 years ago
cake
Cake day: June 19th, 2023

help-circle
  • Elixir in Action is a great way way to learn the core language, and it’s pretty up-to-date with its latest edition. Elixir as a language has been declared feature-complete, so it doesn’t change that much anyway (the major libraries are a different story).

    If you wanted a book to walk you through LiveView after that, I can recommend Programming Phoenix LiveView. The book is currently in “beta”, with the final version expected in a month, so it’s very up-to-date. We have a book club at work and just finished it this past week. It does a good job of showing how to make live-updating CRUD pages along with building a pentominoes puzzle game that’s rendered with SVG. You build up the project chapter-to-chapter and have a pretty cool little app at the end.

    As long as you don’t need offline support, then a monolith webapp seems like a perfect use for LiveView, especially for a solo dev!








  • I used to feel this way. Over the course of building out 2 calendar systems in my career (so far) and having to learn the intricacies of date and time-related data types and how they interact with time zones, I don’t have much disdain for time zones. I’d suggest for anyone who feels the same way as this meme read So You Want To Abolish Time Zones.

    Also, programmers tend to get frustrated with time zones when they run into bugs around time zone conversion. This is almost always due to the code being written in a way that disregards the existence of times zones until it’s needed and then tacks on the time zone handling as an afterthought.

    If any code that deals with time takes the full complexities of time zones into account from the get-go (which isn’t that hard to do), then it’s pretty straightforward to manage.









  • I’ve gotta go with Elixir. I’ve been using it professionally for about 7 years now, and it’s been amazing to see it grow in the way it has. It’s very well-designed, based on a rock-solid foundation (Erlang/OTP), has an amazing standard library with fantastic documentation, and has a strong culture of pragmatism and developer friendliness.

    I personally work in web dev, and Phoenix has consistently shown itself to be an extremely capable web framework. LiveView has kicked off a new paradigm for making web applications that most major languages are copying.

    There’s a solid embedded story with Nerves, and serious foray into ML/AI with Nx. It’s obviously not suited for the lower level stuff, but that’s when Rust integration with Rustler comes in. Many wouldn’t be interested in Elixir because of it’s dynamic typing, but there’s serious effort by the creator and a research team into developing a gradual type system for the language.

    Just an overall solid language that’s extremely pleasant to use with a really healthy and (slowly but surely) growing community.


  • I really love Elm, and it challenges the common notion of what it means to be a “healthy” language/ecosystem. It’s a beautiful passion project that can really only be used if you adhere to the vision of its creator, but it’s a really admirable and utopian vision.

    The reasons for it not being very popular are pretty clear (slow language evolution, “one way to do anything”, perfectionist design), but it’s an extremely cohesive and friendly language. I’ve never used it for anything serious, but I hope it stays around. Clearly the creator isn’t aiming for widespread adoption, but I hope that the niche it’s created grows nonetheless, because it’s a lovely ecosystem and community.