The perfect stack, currently

Поделиться
HTML-код
  • Опубликовано: 5 авг 2024
  • Excuse the hyperbole. Hopefully the joking nature of the intro comes across loud and clear.
    Some Elixir, Phoenix, SQLite and Litestream. Also some really poor autofocus on occasion. That's on me. I've figured it out but wasn't going to reshoot this talky-talk. Hope you can enjoy anyway and I promise to try better next time :)
    Anyway, I felt like talking through my current stack and shake some of the rust off of me as I pick back up in the video production.
    Tools:
    elixir-lang.org/
    www.phoenixframework.org/
    esbuild.github.io/
    tailwindcss.com/
    www.sqlite.org/index.html
    litestream.io/
    www.postgresql.org/
    ubuntu.com/
    www.ansible.com/
    Elixir jobs: underjord.io/jobs.html
  • НаукаНаука

Комментарии • 51

  • @kotzblitz7716
    @kotzblitz7716 Год назад +24

    I love your video style. Mild, professional but personal, concise. Nearly meditative

    • @underjord
      @underjord  Год назад

      That is so kind to say. Thanks for letting me know. Glad it hits that note for you :)

  • @MickGardner-vc4us
    @MickGardner-vc4us Год назад +2

    omg, Lars your production quality is out of the roof!

  • @skryonline5825
    @skryonline5825 Год назад +8

    Im so glad that im not the only one with similar views on stack and simplicity. Keeping everything together

    • @underjord
      @underjord  Год назад +5

      There are dozens of us! Dozens I tell you!
      Actually think there's a decent groundswell of this.

    • @Loki_Dokie
      @Loki_Dokie Год назад +1

      I have been learning for about 9 months now on the traditional frontend roadmap, html/css/Javascript. I have been getting increasingly frustrated with the fact that everyone says learn react to get a job, if you don't it'll be hard to find one. I have been looking at Python, due to its flexibility, but was just put on to Elixir. With that said, Elixir seems so outstanding and I, like yourself, prefer to keep things simple.
      Thank you for this explanation! I want to take this path, but I started learning about 9 months ago when I turned 40, so I'm just worried about job opportunities that come with what I'm learning, but at the same time I honestly don't care for all the bloat that seems to come with JS frameworks. I haven't looked much yet, but are there opportunities for Elixir? Thanks!
      Sorry for the dissertation, I'm just trying to figure things out and have 4 kids, so sometimes my brain is a fog hah. Cheers.

    • @skryonline5825
      @skryonline5825 Год назад

      @@Loki_Dokie I admire people like you, that "despite their age" endeavor in learning new things. I am sure there are opportunities out there for you. Seek and you shall find

    • @Loki_Dokie
      @Loki_Dokie Год назад +1

      @@skryonline5825 ill never stop learning! I know much just from being so curious, from fixing cars, fixing things around the house, and even setting up an off grid solar system and gardening, to now picking code back up. I started with python about 5 years ago, then some html/css, but I never saw great explanations on how much easier it is than it seems, despite all the seemingly difficult amounts of things you have to learn. In reality yes it is not easy to do this, but it isn't impossible and only takes one step at a time and repetition as with anything else.
      It's never too late, never let anyone tell you as much. Next on my list is some Qigong or Tai Chi to keep my body young lol

    • @underjord
      @underjord  Год назад +2

      @@Loki_Dokie There are opportunities in Elixir. Plenty of work that I see. Unfortunately getting over the beginner-threshold is perhaps slightly harder than other languages. It is hard in every language but the Elixir ecosystem currently skews a bit towards experienced developers so companies haven't had to get used to bringing on juniors. I see a shift but it'll take time.
      And of course you can learn this stuff after 40. I've worked with people who did. Youth is just a shortcut to putting the time and effort in.
      Nothing wrong with doing Python either. Follow your interest, I find that works best :)

  • @adrianfaciomedina6611
    @adrianfaciomedina6611 11 месяцев назад +1

    I found this channel a great resource to get into Elixir.

  • @adamsernheim2746
    @adamsernheim2746 Год назад +1

    This is my favourite stack at the moment as well. Good job with the video!

  • @michaelsydenham2918
    @michaelsydenham2918 3 месяца назад

    Thanks for your very nice video & style - your comments about SQlite resonated with me. I'm curious about Elixir, especially hearing you're an ex-Python dev. Subbed.

  • @djsnakeyes
    @djsnakeyes Год назад +3

    Great video! For deployment, nothing beats the simplicity of a handful of shell scripts. :)

  • @carlheinz.conradie
    @carlheinz.conradie Год назад

    Excellent video. Thoroughly enjoy them! Please keep em coming 🤓

  • @oransoi
    @oransoi Год назад +1

    Great video. Thank for sharing.

  • @skogsdrake
    @skogsdrake Месяц назад

    Awesome video! If you haven't already you should make a short tutorial building a simple web application in Elixir/Phoenix (like a todo-app or something similar) and then showing the process of deploying it and using siteencrypt to get a certificat. Would be so helpful for someone coming from Laravel/Django.

  • @jonopens
    @jonopens Год назад

    Found you because of a post on HN. Subbed!

  • @tevoj
    @tevoj Год назад +1

    Really cool channel, with a great content! Subscribed.

  • @InvZz
    @InvZz Год назад +3

    distributed scalable applications are quite hard to be fully understood. The ideal tools and stack for a specific software really depends on how it operates with the data ( batch on all records? Search and process? ), or what level of failure tolerance/resilience we need to achieve, not to mention the sync of all the "moving" parts. For this kind of complexity I find orchestrators and containers in microservice fashion very fitting and pretty easy to manage through ansible/jenkins. I do share all the "abstract" and "KISS-like" considerations you moved, if 20 lines of a bash-script can enclose the deploy steps, well, just use that!
    Thanks for the video

  • @AndrewHacking
    @AndrewHacking 6 месяцев назад

    Nice video, very principled and considering factors that matter.
    Vultr are decent cloud service available across many regions and FreeBSD is supported.
    For S3 object storage and backup Wasabi can be very cost effective with no metering on reads, only on data changed (can be 4x cheaper than AWS and highly resilient).
    Another option for cost effective log storage analytics and monitoring is BigQuery storage via LogFlare self hosted (or cloud) and BigQuery analytics.

    • @underjord
      @underjord  6 месяцев назад

      Thanks
      I have heard worrying things about Wasabi not living up to the promises. I don't recall the details but yeah, there are certainly options on that front.
      I don't enjoy the idea of cloud-specific storage but the BigQuery stuff does seem very practical in certain ways. I've used Logflare, so far haven't loved it. It does okay and perhaps I should just learn it better.

  • @joustava
    @joustava 8 месяцев назад

    Thank you for your insights! Still using this as your preferred stack? Or have some things changed?

    • @underjord
      @underjord  6 месяцев назад +1

      I would have to rewatch it to remember what is in there. No dramatic changes.
      I am exploring Ash Framework with some clients. I want to try FreeBSD and Nix respectively.
      For professional understanding I want to poke k8s more but don't think it suits me overall.
      Still Elixir :)

  • @krsgoss
    @krsgoss 4 месяца назад

    Hi, with regards to multitenancy SQLite, have you had success with any libraries to help manage this? Thinking along the lines of database migrations or coordinating writes for multiple users within a given tenant. Thanks for the great content and articles!

    • @underjord
      @underjord  4 месяца назад

      I have not used any libraries for it but I know akoutmos made something around this at one point. Not sure if he put it on hex. He did make a litestream library for using that. There is some library that helps with dynamic repos and tenants. I think I reference it in my ooold blog post about dynamic repos and ecto.

  • @David-iq1kd
    @David-iq1kd Месяц назад

    While Litestream replicates back-end SQLite, can it be used to synce a client side SQLite to an SQLite back end? An example use case would be local-first applications syncing their backups to a server, or for multiplayer applications.

    • @underjord
      @underjord  Месяц назад +1

      I would look at Electric SQL for that, see other video I made :)

  • @Oswee
    @Oswee Год назад +4

    When some chooses some of the 3 biggest cloud providers he shoots in its own foot. By not supporting smaller ones, there will no be competition, innovation and strive for a "honest business". Personally i prefer to run my own servers. That evil "self-managed servers are expensive" beast we was brainwashed about all around is not that scary. In fact, how do you think, how much it would cost you to run 36 core machine with 512 GB RAM and few terras of SSD storage in the cloud? In one year? I think selling your kidney for a such resources will not even make Bazos happier. But such bare metal server relatively costs pennies. In comparison. And i have some servers who runs more than year without reboots. Maintenance is not an issue. You will spend more by accidentally running recursion on a googles server, or just by learning their service abstractions.
    So... my point is, that don't feed the oligopoly cloud providers. Support smaller ones or jump into your own hardware. Don't buy into their marketing scary stories.

    • @underjord
      @underjord  Год назад

      "A few terras of SSD storage."
      This would be such a wild spec once upon a time. Cool thing is most backend app servers aren't more demanding now for normal usage.

    • @gonzalooviedo5435
      @gonzalooviedo5435 Год назад

      Yeah, something that I was questioning myself exactly, why all this Cloud things if we have perfectly big machines at our hands, a Xeon is very cheap, 2 TB of NVME is cheap, a computer is cheap, a Raspberry PI is also cheap, so, why bother with this big companies?. That big companies goes to big software companies, and that's all.

  • @serpent213
    @serpent213 Год назад +2

    Hetzner is really good. They used to have FreeBSD support, but dropped it some time ago. Service desk is always helpful, though, they just flashed an image of my choice on a USB stick, so I could have a FreeBSD rescue system. 👍🏻
    Debian is fine as well. Ubuntu it a bit too “smart“ for my taste, at least on a server.

    • @underjord
      @underjord  Год назад

      Yeah, I flip-flop between Debian and Ubuntu because Ubuntu is often more convenient with newer packages and such but Debian doesn't bring any trouble.
      Cool to hear that Hetzner have been that flexible and helpful.

  • @davidmccrea1232
    @davidmccrea1232 Год назад

    Dokku is a nice option for simple deployment. It uses Docker though which might be a deal breaker for you.

    • @underjord
      @underjord  Год назад

      Thanks! I've seen it pop up now and then.

  • @mark-nz8xc
    @mark-nz8xc Год назад

    i am very interisted in elixir, nowaydays i am using python with aws lambdas, i wonder if elixir soon will be available there

    • @underjord
      @underjord  Год назад

      Until Firefly (WASM implementation) is properly ready I don't think Elixir makes a ton of sense for Lambda. The runtime is not optimal for quick startup or short-lived use. It might do fine, I don't generally f with Lambda so can't say for sure.

    • @gonzalooviedo5435
      @gonzalooviedo5435 Год назад

      Elixir is functional, so, why do you need lambda in tha language, I don't get the question.

  • @guilherme.bermeo
    @guilherme.bermeo Год назад

    🇧🇷

    • @underjord
      @underjord  Год назад +1

      That is a certainly a country.

  • @user-cz9hh8cu5m
    @user-cz9hh8cu5m 10 месяцев назад

    I'm a bit surprised you're not using kubernetes...?

    • @underjord
      @underjord  10 месяцев назад +1

      If you knew me you would not be surprised :)

    • @user-cz9hh8cu5m
      @user-cz9hh8cu5m 10 месяцев назад

      @@underjord Since I don't know you, I'd love to find out more about your deployment practices. Say, for a simple web app with a reasonable amount of traffic and limited number of instances, managing servers yourself does not seem too much of a on overhead. However, what would you do to scale your deployments up to several dozen/hundreds of app instances without the abstraction layer provided by kubernetes (or any orchestration platform for that matter)?
      Regards :)

    • @underjord
      @underjord  10 месяцев назад +1

      @@user-cz9hh8cu5m at this point the question is "what would you use at massive scale which is Kubernetes sweet-spot?" and the answer there is certainly to use Kubernetes. I generally do not deal with hundreds of nodes :)

    • @user-cz9hh8cu5m
      @user-cz9hh8cu5m 10 месяцев назад

      @@underjord Thanks for sharing. And the video production is amazing. Keep up the good work.

  • @lifeofdandotme
    @lifeofdandotme Год назад

    You are pretty.

  • @serpent213
    @serpent213 Год назад

    VictoriaMetrics is on my list to check out. Currently running Prometheus.