Why I'd never host my apps on a VPS

Sdílet
Vložit
  • čas přidán 24. 09. 2023
  • Diagram miro.com/app/board/uXjVMiRMzr...
    Chapters generated using ytchaptersgenerator.com
    ----------
    00:00 - Introduction
    00:01 - Services for Building a SAS Product
    00:12 - Discussion on the Need for Services
    00:40 - Cost Analysis of Hosting on Versel
    01:35 - Importance of Logging in a Production System
    02:24 - Considerations for Setting up Logging
    03:40 - Benefits of Using Logging Services
    04:39 - Challenges of Hosting Databases on VPS
    05:37 - Advantages of Using Database Services
    07:28 - Authentication and the Use of Auth Services
    09:32 - File Storage and the Importance of Offloading
    10:34 - Anxiety with Hosting Node.js on VPS
    12:00 - Conclusion
    📘 T3 Stack Tutorial: 1017897100294.gumroad.com/l/j...
    🤖 SaaS I'm Building: www.icongeneratorai.com/
    ✂️ Background Cutter: www.backgroundcutter.com/
    💬 Discord: / discord
    🔔 Newsletter: newsletter.webdevcody.com/
    📁 GitHub: github.com/webdevcody
    📺 Twitch: / webdevcody
    🤖 Website: webdevcody.com
    🐦 Twitter: / webdevcody

Komentáře • 303

  • @etagh
    @etagh Před 10 měsíci +120

    If you don't live in US then suddenly those prices are a serious cost

    • @buddy.abc123
      @buddy.abc123 Před 10 měsíci +34

      That's what the CZcams influencers don't seem to understand

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +45

      do your countries not have existing SaaS products that do similar things to Vercel, AWS, etc? If y'all are concerned about price, use a service in your country that provides these features. Also, don't call us influencers. I don't care how you host your stuff, I'm just sharing how I host mine.

    • @abdirahmann
      @abdirahmann Před 10 měsíci +22

      @@WebDevCody most cloud providers are american, there is no chance of me using a local service provider because 99% of the time, they suck and also, they can become potential competitors, then ruin your service and then come up with their own version, i don't think aws will come after my startup idea! so yeah!

    • @wykydytron
      @wykydytron Před 10 měsíci +11

      It's actually hard to find some services outside of the USA. If app is making money that's not issue, but if just want to live test your app because you are junior like me so I want to test if it even works I simply don't have any options, I do have to spend money to simply test stuff and frankly speaking it's too much. It's suprisingly hard to find any host for like simple node app. I even had trouble to find local service to host simple static www and only one that works great requires to use outdated node, commonjs etc because they are stuck in 2010... obviously you show what you use so I'm completely fine but for us living outside of USA or just poor guys trying to build something it's problematic.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +15

      @@wykydytronthat makes sense, thanks for sharing your perspective. I wish y'all had more options than depending on US products.

  • @justinwlin
    @justinwlin Před 4 měsíci +45

    lmao. YT recommended this to me prob bc of the irony of ur new videos 😂. Keep up the great work tho! 🔥 Resources u make are awesome for people actually in the weeds of it all

    • @AGalassi1900
      @AGalassi1900 Před 4 měsíci +7

      hahaha same... aged well 😅

    • @randallnet
      @randallnet Před 3 měsíci +3

      lol, same, I laughed so hard, I was like: wait a minute, didn't he just....🤣🤣🤣, well, we live and we learn 😄

  • @WebDevCody
    @WebDevCody  Před 10 měsíci +72

    Y'all need to keep in mind that I live in the US where I can easily spend $20 just by buying some milk and two boxes of cereal for my family, so when I say I'd rather use a third party service, these prices do not seem crazy. If you have a real product that makes money, you won't care if you are spending $100 a month on services because those are just operational costs you can write off as losses in taxes. A good engineer will always keep in mind migration paths for if a service becomes too expensive and will NOT allow their application to succumb to vendor lock in.

    • @wriddhihazra
      @wriddhihazra Před 10 měsíci +3

      For real, some of us gung ho devs who seem think they're talented enough to build production software from the ground up using no dependencies believe that everything should be done in the good ol fashioned monolithic way, when that isn't practical unless we are talking about billion dollar companies that have an extremely experienced and talented group of senior engineers to provide some level of abstraction as the company's internal tooling over cloud, shifting from 3rd party services to 1st party ones. But other than that, these SaaS products are so good for getting a software hit the ground running with so less effort.

    • @adriandeveraaa
      @adriandeveraaa Před 10 měsíci +4

      This. $20 is literally a McDonalds meal for two people these days. Very cheap relative to US pricing. US product = US pricing guys. Like cmon now this is NOT expensive in respect to us. If this is expensive in your country then that is a local economy problem and not the product pricing itself. Id rather pay $20 than $100+ that SAAS charged 5 years ago.
      I have several amazon servers and $20 is peanuts with a lot of room for optimization.

    • @Phaceial
      @Phaceial Před 10 měsíci +5

      I think most of this opinion comes from the inexperience of using these services at scale. If you have an app where you're able to abuse the free tier, then you're not operating at scale.

    • @perc-ai
      @perc-ai Před 10 měsíci +2

      @@adriandeveraaa dude most of us are not in the US you do realize most software engineer are offshore right, we cant be paying that much money for services lol...

    • @GatoNordico
      @GatoNordico Před 10 měsíci

      Hahah I do a very similar conversion, in my case I say: “alright this is two beers” and then I pay for the service (I live in Sweden where alcohol is heavily taxed)

  • @roguesherlock
    @roguesherlock Před 10 měsíci +17

    I think having a good migration path is the key. You start with these services, and have a strategy to migrate in case it becomes too expensive.

  • @theLowestPointInMyLife
    @theLowestPointInMyLife Před 10 měsíci +42

    The decision is easy for me because I have no money, so I have to do everything myself. But I think a lot of the effort for backend stuff is way overstated, pretty simple to set up NGINX, fail2ban, postgres, and then run whatever server framework you want. Guess it depends on your foundation as a coder and what knowledge you have. I think a lot of the more modern devs, from JS/bootcamp path, with no low level foundation, probably lean more towards services.

    • @NubeBuster
      @NubeBuster Před 10 měsíci +10

      Yeah it's easy to setup a web solution on a vps in one hour. If you code halfway decent a 3€ vps will support like 100 concurrent requests

    • @theLowestPointInMyLife
      @theLowestPointInMyLife Před 10 měsíci

      @@NubeBuster yeah, oracle cloud free vps is pretty powerful, 4 virtual cores and 24gb ram, more than enough for any small app (99%)

    • @istipb
      @istipb Před 10 měsíci

      Yeah fully agree

    • @maksymdudyk1718
      @maksymdudyk1718 Před 7 měsíci

      Hi, I am like you developing without money. I am a former teacher of the Ukrainian language, so it's hard to learn all of this stuff to build out the project on VPS. I wonder what do you need fail2ban for?

    • @theLowestPointInMyLife
      @theLowestPointInMyLife Před 7 měsíci

      @@maksymdudyk1718 fail2ban is for security, it watches log files for suspicious behaviour, like brute force attempts to log into SSH, and bans the IPs

  • @zi_t
    @zi_t Před 10 měsíci +51

    Disregarding the voices of other ppl agreeing/disagreeing with you, I genuinely thank you for making these types of videos. Everything you say are things I wish I learned in school.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +6

      sure thing! I'm ok with people disagreeing with me. My needs and budgets for building, hosting, and maintaining software are probably just a lot different than their needs or budgets.

  • @eshw23
    @eshw23 Před 10 měsíci +1

    I love the guys on youtube like you, who just drop constant knowledge for us, instead of videos where half of it is a promo for their course, etc 😀😀😀

  • @mycode0
    @mycode0 Před 10 měsíci +19

    Building software is always subjective to the situation you are in. For example currently our company works for small budge clients that would really appreciate if the don't have to pay for everything authenticated user etc. Most of these things you uave to nail down only the first time for the next implementation you will not spent more than couple of yours to set up ( talking about general functionality, like emails, authenthication etc)

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +4

      Agreed, if your client can't pay $20 a month, then use django and host on a VPS, but I don't work with clients that don't have money.

    • @mycode0
      @mycode0 Před 10 měsíci

      @@WebDevCody I work with charities and communties and non-profit organizations that would never have paying customers and their whole budget is allocated towards, design, development and managing of the whole project not only the web part. And If I tell them that for the 1000 users that we have they will have to pay 25$ per month for authenthication, 10$ for admin panel, and so on and so on for the rest of the project lifetime (the oldest project is 10yrs the only upgrades we do is with the core framework ruby on rails). I think it will really hurt their budget.
      Where on the other side rails provides me with all the tools to built my email system and pay almost nothing for sending, tools for managing images and user uploaded files, all kinds of tools for authenthication which require a little bit of work but then are free etc, etc. That is why I said that paying for tools and services is relative and subjective to the project and the resources of a company.

  • @zamarinen
    @zamarinen Před 10 měsíci

    really like your content, your way of brake downing technologies and strategys is awesome!

  • @ivorycloudofficial
    @ivorycloudofficial Před 10 měsíci +2

    These new videos are awesome. Can you do a video discussing the use of different databases with different hosting options?

  • @dontwanttousemyrealnametol6765
    @dontwanttousemyrealnametol6765 Před 10 měsíci +12

    As a Linux enthusiast and a production factory worker, I want to help solve our company's problems by complementing and slowly replacing their ERP software and to roll my own. I'd expect no more than 100 users. Most features of the ERP software are not even used and there are huge discrepancies in stock keeping, resulting in a cascade of problems. At the same time, there is a need to document packaging processes digitally, and to better track orders in different stages of production. I don't want my app to be SaaS, and I want it to work entirely offline.

    • @dontwanttousemyrealnametol6765
      @dontwanttousemyrealnametol6765 Před 10 měsíci +2

      There's already a local mail server, a database server, etc ... I would just configure ZFS storage, a GitLab instance for CI, integrate portable devices like barcode scanners and a mesh of sensors that use LoraWAN... "rotating" docker images could be built and tested by temporarily connecting to the internet.

  • @tiagosutter8821
    @tiagosutter8821 Před 10 měsíci +1

    Thank you for bringing this info and sharing your perspective, I don't have much experience with server side systems in production. I will be using a VPS to host some stuff to learning about the moving parts involved, but i will definitively be always considering using third party services, they had years to perfect their services for that specific niche, I won't have that time nor dedicated engineers

  • @keshavakumar9828
    @keshavakumar9828 Před 10 měsíci

    I really like the way you explain. So simple and concise.

  • @MehediHassan-pn5uc
    @MehediHassan-pn5uc Před 10 měsíci

    Where can i find the graph used in the video?
    There's no link for that in the description :")

  • @gbrllnz
    @gbrllnz Před 10 měsíci +12

    You can use something like Dokku or Tsuru to abstract a lot of things that you’d have to manage by yourself using a VPS.

    • @julian_center
      @julian_center Před 10 měsíci +1

      Yes! I use caprover for some personal stuff and it works great, but it's pretty much maintained by one guy and not backed by and organziation so I wouldn't put any production workload on it. Have you had any experiences with Dokku and/or Tsuru and how was it?

    • @gbrllnz
      @gbrllnz Před 10 měsíci

      @@julian_center Projects maintained by one guy are always a risk factor. I agree with you.
      Sadly, I have never used any of them before. For personal projects, I used Digital Ocean’s app platform, and at my day job, I use AWS (which is overkill for small projects).
      The Tsuru project is maintained by a big Brazilian company called Globo. It has a TV show (BBB) that always brings a monstrous amount of traffic to their systems.
      If I’m not wrong, Dokku is the biggest open source PaaS. That’s why I recommend it.

  • @maksymdudyk1718
    @maksymdudyk1718 Před 7 měsíci +2

    Thank you for the video. I don't have much experience, but I think, that we may start with a VPS, and later, as the project develops, we gradually take infrastructure modules out to cloud solutions - for the sake of security and scaling.

  • @prompt_shark
    @prompt_shark Před 7 měsíci

    Thank you sir, excellent points you're making here.

  • @itsanishjain
    @itsanishjain Před 6 měsíci

    Hey man thanks for these vedios, I am currently building my saas and Vercel is not the way to go because I am running a process which takes a lot of process in summary I have user uploaded CSV and I process it and put it into a PDF, so what you recommed? AWS lambda , I thought before this vedio DO will work but I guess it's not the ansewer.

  • @maciejmotawski9887
    @maciejmotawski9887 Před 10 měsíci

    Very educational video, as always. Keep up the good work 🙌

  • @yunyang6267
    @yunyang6267 Před 10 měsíci +8

    do you have any videos for logging, please make a video about using different approaches to implement logging

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +1

      I don't think so, but I may be able to make one about ELK stack since we use that at work.

    • @yunyang6267
      @yunyang6267 Před 10 měsíci

      ok thank you@@WebDevCody

  • @guillaume5623
    @guillaume5623 Před 10 měsíci +1

    Love the vidéo Cody ! Do you have the link to your micro chart ?

  • @VladyYakovenko
    @VladyYakovenko Před 10 měsíci

    Amazing video. One of the best development channels out there!

  • @soufwra2396
    @soufwra2396 Před 10 měsíci

    What about a junior dev that wants to build a product while learning stuff about deployment and servers. Would you say that one has got to pick between learning and building (quick) ?

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      Of course it’s fine to learn, i spent a lot of time playing around with ssh into a virtual machine to do stuff

  • @LucasFariaDev
    @LucasFariaDev Před měsícem

    hey Cody loking forward to the VPS video later this week thanks love your content

  • @asdasdaa7063
    @asdasdaa7063 Před 6 měsíci

    Another great video, I've love to see a more in depth video on how you made your logo start up video you did recently. As a developer trying to understand cloud hosting, it'd be nice to see what you do yourself to further learn the processes architecture wise. For example how did you keep costs so low? I think you mostly use a serverless approach? Would love a video breaking this down.

  • @seve-fn1mo
    @seve-fn1mo Před 10 měsíci

    will vendor-lock be an issue in this case? one of the fear I have when using all these services is that they might be out of business and I would have to migrate everything into another service. Any thoughts?

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +1

      Vendor lock in is always a concern, and one should think about migration strategies before blindly using everything from their service without properly wrapping their apis with proxy functions.

  • @googlekonto5397
    @googlekonto5397 Před 9 měsíci +1

    How do you see it? By diversifying you make yourself dependent on x other providers. What if the authentication service fails as an example. Do you think that you always be better off in such cases with diversification?

    • @WebDevCody
      @WebDevCody  Před 9 měsíci +1

      There is risk with trusting third party services. For example we’ve seen the entire internet stop working when aws s3 has issues, and there is nothing you can do when they happens other than wait. But let’s be honest building a system that never has down time is a hard problem to solve and often not worth the engineering unless you’re a bank or Amazon scale. There are SRE experts who spent a lot of time designing resilient systems, so doing it yourself isn’t s trivial task.

  • @josephajibodu2377
    @josephajibodu2377 Před 10 měsíci +4

    He's actually valid. I enjoy devops and tinkering with servers alot, but if I had the budget, I will save my time with third party services.
    When you run a business, you'd understand the importance of saving time with good third party service.

  • @havoq8257
    @havoq8257 Před 4 měsíci +3

    Top Video on my feed haha, the YT algorithm is taking the piss

  • @scott_itall8638
    @scott_itall8638 Před 10 měsíci

    Pocketbase? Wound you host it on a Digital Ocean Droplet and host Sveltekit on Vercel?

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      if they have a docker image I could run, I'd just run that in a managed container host service.

  • @Jeanpierrec19
    @Jeanpierrec19 Před 10 měsíci +5

    So as a saas staring up, I could spend even a week setting up half this stuff in a VPS and then not have to touch it apart from a few updates every now and then, or I now need to generate, at minute 7 in the video, $60 a month for services + $56 dollars an hour to pay myself the engineer who I would be paying anyway.
    And yes I am capable of securely setting up the services discussed this far, if you had started off with Auth + payment then there would be an argument.
    How many dedicated users would you at this point need a month to just cover your services fees before you even begin making any money yourself?
    $100-$150 seems a decent bet to spin up one of your "save yourself an hour" stacks, per month. That's a fair amount of money every month when you are trying to build up a client base for a SaaS which may fail, I mean you could probably buy a fair amount of groceries every month for that amount

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      It’s worth mentioning that every service has a free tier which will let you operate with no costs until you get a decent amount of paying customers. So technically it’s $0 a month while also investing no time with a lot of various tooling you’ll need for your app.

    • @Jeanpierrec19
      @Jeanpierrec19 Před 10 měsíci +1

      @@WebDevCody I'm not against the services being offered. I was against the way it was argued... Also you have now been lured into their specific service, as much as people claim that switching providers, whether it be SaaS or cloud, the very fact that they all still offer a free tier means in reality it doesn't happen.
      May I ask, in your video you mentioned that the VPS could crash causing an outage if a malicious user keeps uploading a file repeatedly, what happens if instead that happens when I'm using S3?
      Instead of having to explain an outage to customers and implementing some needed logging and reporting, the company is bankrupt, all the customers now lost a provider and I learn I should have implemented needed logging and reporting.

  • @armant11
    @armant11 Před 14 dny

    What about dokploy or coolify? Basically drop in replacements for vercel/netlify?

  • @codinginflow
    @codinginflow Před 10 měsíci +1

    This was a very useful overview

  • @IIllIIllIIlI
    @IIllIIllIIlI Před 10 měsíci +2

    What service would you recommend to host a nodejs server?

    • @offYears
      @offYears Před 10 měsíci

      +1, trying to follow the advice from Cody's beginning of 2023 vid to stick to lower level ops when learning!

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +1

      Railway works pretty well for a node server. I’d personally use an aws lambda express wrapper and host it via lambda and api gateway

    • @offYears
      @offYears Před 10 měsíci

      @@WebDevCody You may have touched on this elsewhere, but do you have a take on middy vs express?

  • @medAmineRg
    @medAmineRg Před 10 měsíci +1

    thats really a great subject thanks man

  • @gnorts_mr_alien
    @gnorts_mr_alien Před 2 měsíci +1

    your point has enormous merit but two things you don't mention: 1) those are recurring expenses so multiply that monthly price by however many months your service will stay active - if service is successful, should not matter much and 2) many of the services are priced in a way that if your project takes off you will have to pay out of the nose or slowly move away

  • @oned0t385
    @oned0t385 Před 10 měsíci

    Can you share the link for the diagram, please?

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +1

      miro.com/app/board/uXjVMiRMzrc=/?share_link_id=955286846560

  • @laptopuser5198
    @laptopuser5198 Před 10 měsíci

    Great points this video, its important for the one man show type operation, value your time properly.

  • @abhiramsatpute
    @abhiramsatpute Před 10 měsíci

    I had similar thoughts about this, especially taking security care of to-and-fro of requests between Frontend, Backend, and Databases, and all the services of the app MANUALLY.
    I also wanted to know one thing:
    When you are developing for a Client, do you host and test stuff on YOUR AWS/Vercel/etc account first, and then change the env or other variables, or is it another challenge to serve the credentials to the Business Client ?

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +2

      Depends on the contract. On our team our client has their own prod aws account which they deploy all our code onto, and we have a separate aws account we use for our team to develop with. It’s probably best to keep your stuff separated and create IaC they can run to create your same environment

    • @abhiramsatpute
      @abhiramsatpute Před 10 měsíci

      @@WebDevCody that makes sense, terraform to the rescue haha! It feels like to just start with SaaS just a Cloud Practitioner cert is enough

  • @yuni_cs
    @yuni_cs Před 4 měsíci +7

    this video aged well

  • @anointingogalabu-maxwell4288
    @anointingogalabu-maxwell4288 Před 10 měsíci +3

    I completely agree with you, the thing is that as a freelance developer here in Nigeria, those costs aren't a light burden. Factored in with penny pinching customers, i hardly see any other way

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      What about using aws with serverless? It costs pennies

    • @anointingogalabu-maxwell4288
      @anointingogalabu-maxwell4288 Před 10 měsíci +1

      @@WebDevCody even though it costs pennies having to add on those 3rd party services then boosts the cost. Paying between $30-50 a month for vercel, database hosting, storage etc (pls note that Im not sure of the pricing of these services, might have to check and edit this) Vs paying $7.50 on average for a VPS makes more sense to the customer. So what am I to do?
      I just have to put everything on the VPS cause I'm not gonna post for it from my pocket

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +1

      @@anointingogalabu-maxwell4288 yeah I mean in that case you do what you have to do. A vps is probably your cheapest option.

  • @hamoodrex
    @hamoodrex Před 2 měsíci

    I will stick to my VPS approaches. But I completely agree with you on the database and file storage part. It is stressful to always think about those and implement defensive measures in your backend for them.

  • @em11l
    @em11l Před 4 měsíci

    There is one thing that I think is a nice to have and is a good answer to your why would you do it? It's basically this - you know everything that's going on and thus you can optimize and act accordingly. Having all of these services can quickly become way to expensive and limiting for what you are trying to achieve. In my case I was running on vercel for a while and used cockroach db as a postgresql db but Vercel isn't very good with handling *not frontned related stuff* and there the rabbit hole of workarounds began. Quickly switching to a vps setup gave me the ability to do whatever I want because I was the one in charge you can say. In the end your approach is not bad, but it heavility depens on the usecase of the system your are building. Sometimes this might be overkill :D

  • @chris94kennedy
    @chris94kennedy Před 10 měsíci

    Interesting take, thanks for laying out your thoughts. However it doesn't fit well for the stack and design choices we've built our API with and the long running tasks each request triggers (typically a lot of dicomweb i/o and then transcoding, sometimes gigabytes per request. Medical imaging can be large when uncompressed)
    There is almost no UI (apart from static docs) because our api is consumed only by developers and their 3rd party systems, and splitting all the components out into like independent services on serverless infra just doesn't make sense when the components are so tightly coupled. Would love to hear your thoughts on this approach Cody if you read this

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      Your domain is out of what I have had experience with. I'd still find a way to use K8S or a managed docker container runner to run your application over renting a VPS or VM and setting up all the required dependencies on the machine manually (or via puppet, ansible, or chef). I just think there is a lot of overhead associated with managing, monitoring, and maintaining virtual machines that just isn't worth the operational cost savings that is hidden by developer hours. I'd honestly see if serverless could handle the processing because the max memory of a lambda is 10gb, and if you do the processing using streams, it might be possible.

    • @chris94kennedy
      @chris94kennedy Před 10 měsíci

      @@WebDevCody Thanks Cody. I will explore the options.

  • @craigasketch
    @craigasketch Před 10 měsíci +2

    This is basically only simple JS/PHP form based application kind of stuff IMO. To me using a VPS is mainly for compute intense workloads which honestly the cloud kind of sucks at. Think any SAAS that does image transformation, data transformation possibly crazy SQL setups (paying AWS for Aurora/RDBMS is more expensive). Even trying to use Lambda and ingress and egress of large amounts of data it just all cascades down hill making the cloud and generalized form applications the only kind that can use these services without a lot of overfitting.

  • @iHate2x
    @iHate2x Před 9 měsíci +1

    Great video ! In my country though a basic software engineer salary is 60 euros per day, so it's worth it to set up a VPS myself.

  • @IvanRandomDude
    @IvanRandomDude Před 10 měsíci +4

    Infrastructure/DevOps is hard, don't do it yourself. However, certain software features are fine to implement on your own. For example, there is nothing wrong with simple cookie authentication if that's all you need.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      For sure

    • @maksymdudyk1718
      @maksymdudyk1718 Před 7 měsíci +1

      I agree that Infrastructure/DevOps is hard, but if you learn them, you are a free man :)

  • @sjjhfbbehehxuwb
    @sjjhfbbehehxuwb Před 4 měsíci +6

    😂🤣

  • @SeibertSwirl
    @SeibertSwirl Před 10 měsíci

    Good job babe!

  • @habong17359
    @habong17359 Před měsícem

    so recently, you're promoting for VPS. maybe it'd be great if you can clarify each use cases for VPS vs serverless . i know there are many contents/resources out there, but wanted to hear from you and specificaly regarding your usages for side projects

  • @abdullahislam
    @abdullahislam Před 2 měsíci

    Cody - can you please make some videos on logging please 📿

  • @alessandrorigobello3670

    Sorry Cody, I watch this video and then I see some other new videos and I'm confused. Do you use a VPS or not?

    • @WebDevCody
      @WebDevCody  Před 23 dny

      I use both, but for simple side projects or personal projects, vps.

  • @xali2008
    @xali2008 Před 7 měsíci

    one more thing I forgot to mention, in serverless services you can't save data in memory for later use (because every time you run an app, it executes in a different node on the edge).
    your only option is to use some sort of external data storage, which is gonna be much slower compared to memory.

  • @n8mo
    @n8mo Před 10 měsíci +3

    The negativity in these first few comments perplexes me. I think of literally every purchase I make in terms of how many hours of my life it costs me to purchase vs how many it’ll save me.
    I do these exact same comparisons all the time. And, more often than not, the answer is just to pay for it rather than do it myself.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +2

      I think people angry about this video are those who really enjoying trying to ssh into a machine and configure it, or those who can't afford to pay for real hosting or services. If you have a real product, $20 a month is a joke, especially in the united states. I can easily pay $20 in an trying to buy fast food for myself and my wife.

    • @justanaveragebalkan
      @justanaveragebalkan Před 2 měsíci

      @@WebDevCody If your product actually costs you 20 bucks a month, you don't have clients lets be real. We had a big brain guy on our team that did the entire company structure on Vercel, our bills were close to $60 000 a month, we got together, sent him on his happy way to hack stuff and re wrote the whole thing in GO, hosted on Azure, couple of load balancers, few vms to replicate our bill is $2000 before the first round of optimizations, we will most likely bring it down even more, saved enough money to get a new guy on staff.
      In the long run, when you have clients and want to expand those costs add up, you can't simply tell people it's fine because it makes money, it's a business at the end of the day, i am not building a charity to feed Vercel employees.

  • @neociber24
    @neociber24 Před 4 měsíci

    The irony, but I still agree with a lot of your points like hosting the database on the same VPS that your app, I saw it a lot of times but always feels wrong.

  • @user-no2ku7sp7m
    @user-no2ku7sp7m Před 10 měsíci +2

    I agree in some area, but globally I feel held hostage when I host critical things in a third company hand. I prefer resiliance over simplicity / rapidity. But I don't think we are in the same area of work so I should be biased.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +1

      I guess it depends on what services you are depending on and how well you structure the code to not have a don’t of vendor specific libraries sprinkled all in your code

  • @osherezra131
    @osherezra131 Před 10 měsíci

    very valuable thanks

  • @Squanchy_Live_On_Twitch
    @Squanchy_Live_On_Twitch Před měsícem

    good info

  • @Sebastian-zs8cp
    @Sebastian-zs8cp Před 10 měsíci

    how can i learn how to create a software from 0% Engineered?

    • @ThomazMartinez
      @ThomazMartinez Před 10 měsíci +1

      youtube

    • @vardale
      @vardale Před 10 měsíci +1

      Coursera

    • @Sebastian-zs8cp
      @Sebastian-zs8cp Před 10 měsíci

      @@vardale What course can you recommend specifically for Spring Boot and Angular?

    • @Sebastian-zs8cp
      @Sebastian-zs8cp Před 10 měsíci

      @@ThomazMartinez What youtube canal can you recommend specifically for Spring Boot and Angular?

    • @vardale
      @vardale Před 10 měsíci

      @@Sebastian-zs8cp Why it has to be Spring Boot + Angular? Try PHP + React, easier stack

  • @kumardeepanshu8503
    @kumardeepanshu8503 Před měsícem +1

    I got recommended this video today, irony...😂😂

  • @obapelumi
    @obapelumi Před 10 měsíci

    It's actually really to set up all these services if you know your way around AWS or Google Cloud. Most of my GCP projects in production cost less than $20 until they scale. And I never have to worry about scaling.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +3

      yeah, my icon generator app is making maybe $1,000 a month and I pay $2.75 for operational costs on AWS because I use serverless and a free tier database 🤣

    • @seve-fn1mo
      @seve-fn1mo Před 10 měsíci

      talking about scaling, when it auto scales, how much would the price be for a comparison?

  • @skaffen
    @skaffen Před 14 dny

    Interesting point about security, but as others say it's much cheaper with a VPS as a non-US resident.

  • @chrisbirkenmaier2277
    @chrisbirkenmaier2277 Před 10 měsíci +1

    Serverless databases: check
    Serverless frontends/frontend-apis: check
    But: What would be a good way to implement a backend service, that constantly listens on a, lets say, mqtt connection for data and based on that parses it and saves it to some external database? Afaik there isn't a good solution for almost constantly running services (as most serverless applications a paid per second of invocation, and this can sum up rather quickly).

    • @OA00000
      @OA00000 Před 10 měsíci +1

      heroku

    • @BarisPalabiyik
      @BarisPalabiyik Před 10 měsíci +1

      There is, it's railway.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +2

      I'm sure AWS has a managed solution for that need

    • @dandogamer
      @dandogamer Před 10 měsíci

      I've used inngest for serverless queues and background jobs. My use case was very simple and not much traffic so cant vouch too much for the product but it did the job for me

  • @cirtey29
    @cirtey29 Před 5 měsíci +2

    20 usd is just the right to access, the reality is much higher when you start getting serious traffic

  • @xali2008
    @xali2008 Před 7 měsíci

    about your last reason (the app exits on unexpected errors), not every language are single threaded with shitty error handling like javascript.
    in most modern language you can properly manage errors without disturbing other users, unless you do something resource heavy (which is not the case for serverless services, because of limited resources) that crush the entire system, you won't have any problem.

  • @sohansingh2022
    @sohansingh2022 Před 10 měsíci +8

    I am junior, so I will trying building a lot of abstracted things on my own, instead of relying on 3rd party services

    • @ThomazMartinez
      @ThomazMartinez Před 10 měsíci +2

      this is good, build on your own so you start understanding hwo things work, and then you can decide if you need 3rd party service, starting with 3rd party only is just lame

    • @rand0mtv660
      @rand0mtv660 Před 10 měsíci +2

      I think this is a good thing. Build those things to understand what they do and then you can see what value do 3rd party services provide. I think people jump too fast to 3rd party services for everything.
      I mean, 3rd party services are mostly about convenience, time saving and responsibility. There are some things like email service that I wouldn't want to roll on my own in production, but deploying a website or a web app doesn't always require Vercel/Fly or whatever else. Deploying it to a simple VM could be more than enough and cheaper in the long run.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +2

      I agree you should do that so you understand what is going on. I've been doing this for 10 years so I don't care to keep re-building stuff from scratch.

    • @eshw23
      @eshw23 Před 10 měsíci

      What do you mean? What are some examples of building it yourself? Not using Vercel? Im so confused lol

    • @sohansingh2022
      @sohansingh2022 Před 10 měsíci

      @@eshw23 create your own Auth service and use it, instead of using services like clerk. Trying to understand how things work internally

  • @browsermage
    @browsermage Před 10 měsíci +1

    Don't agree with everything but was nice listening to your point of view 👍

  • @RemotHuman
    @RemotHuman Před 10 měsíci

    yeah but couldn't you use libraries instead of SaaS and host them on a vps, it would probably be almost the same amount of work to integrate libraries as it is to integrate SaaSs right? And that way you don't have to pay for someone else's profit margin or be quite as vulnerable to lock in (since if they ever try to price gouge you, the community can just fork the project and make a free version). If you don't like libraries, you might even be able to find some equivalents to these SaaSs as open source projects that you can self host, ie host them as microservices

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      yeah you could just do your own thing

  • @oSpam
    @oSpam Před 10 měsíci +1

    I love your explanations, but for me for example my first client app has a tiny budget. I couldn’t afford for any of that unless I paid out of my own pocket. Which I can’t afford. But that’s the trade back that I have to work more hours myself. That’s the issue with one man jobs

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +1

      every client has a "tiny" budget 🤣. I mean that makes sense. If the client has a small budget and can't afford paying monthly for a service, then I personally would charge them more up front if I'm the one needing to maintain the server for them.

    • @oSpam
      @oSpam Před 10 měsíci

      @@WebDevCody yeah they paid me like 30 extra months upfront aswell as monthly. But I can’t afford anything on anything but the vps. My hours are voluntary in my eyes where as big companies dig out my bank

  • @prasaddalvi6426
    @prasaddalvi6426 Před 4 měsíci +3

    This aged well

  • @germangamboa3421
    @germangamboa3421 Před 10 měsíci +1

    Requests to a serverless function in node are not really isolated.
    You still want to have a graceful shutdown process in any scenario btw.
    (Ask me how I know lol )

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      I’m curious what bug you ran into… I know your lambda will cache modules and code will be reused between hot lambda executions, but I’m curious what scenario you ran into that causes issues

  • @milosCivejovidar
    @milosCivejovidar Před 10 měsíci

    It is going to take at least a decade for medium size companies and larger corporations to change the idea in their budgets that software is something with zero overhead and that you only need to make a one-off payment to the cheapest outsourced team to make it work. For them software is something that only needs to get cheaper as time goes, and why pay for something when you could make the reports in MS Excel also?

  • @robgeach8105
    @robgeach8105 Před 10 měsíci

    in so many cases the client is the employer and the VPS is the infrastructure that another team manages, so you still have to justify the cost of the services because they're additional costs beyond what the client is already paying for.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      sure, I mean you tell them it's either going to cost them $20 / month for your application to run in production with maybe $100 of developer hour costs, or it's $1,000+ in developer costs plus you'll have to wait until we implement it so that you can prevent that $20 a month charge.

  • @and_rotate69
    @and_rotate69 Před 10 měsíci

    for me, a vps is only cool for hosting game servers and routing dns traffic, having an email server, rdp service coz u may need to do some tasks with ultra fast internet connection or even a vpn service, and finally on my mind, storage hosting but that's outdated and storage isn't expensive as it used to be, anything else just dont go watch a tutorial on how to self-host web apps

  • @neunistivlija
    @neunistivlija Před 9 měsíci

    VMs are shared so can be very slow. Dedicated machine recommended

  • @polioann
    @polioann Před 10 měsíci +2

    I use VPS for young projects so I don't loose money on start (5$ / month). And later I can switch to big cloud provider

  • @Techi-TrailBlazer
    @Techi-TrailBlazer Před 10 měsíci

    Cody telling me his dark Secrets , Me: going to his profile to sue the company by finding the first company he interned inn.. 😂😂

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      I think that company closed down a long time ago 😂

  • @shakapaker
    @shakapaker Před 10 měsíci

    railway or render?

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      Railway from what I’ve experienced so far. Aws serverless instead of either of possible

    • @ooogabooga5111
      @ooogabooga5111 Před 10 měsíci

      keep in mind railway only have servers in us, its hosted in gcp us-west.

    • @shakapaker
      @shakapaker Před 10 měsíci

      @@ooogabooga5111 They are now offering deploy regions, but it is only available on the pro plan, making it expensive to have a hobby project in the EU, I hope they will change this in future

    • @guitar2935
      @guitar2935 Před 10 měsíci

      I haven't used railway but render has given me a lot of headaches. Be sure to check out their support forums for recent problems (last 1-2 years) that might apply to you.

  • @tiisetsontsoane5809
    @tiisetsontsoane5809 Před 10 měsíci

    I don't think the person meant doing everything themselves on their own lil VPS. You could use it in combination with other services that are critical to not do it yourself

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      Idk some people are talking about running a database on their vps with their applications

  • @pajeetsingh
    @pajeetsingh Před 10 měsíci +1

    Solopreneur: VPS
    Small team: Single VPS
    Medium team: AWS/GCloud
    Large team: AWS/GCloud
    Very large team: VPS
    Subsidiaries of large team: AWS/GCloud
    Banking/Finance/Fed: VPS

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +1

      I kind of like this breakdown. I use AWS for everything at work, but I personally would use AWS (with serverless) for myself (solopreneur) over a VPS any day. But even for your Fed category, I work on a federal project (not the FED as in money FED) and we use AWS.gov, so I don't think that's accurate?

    • @pajeetsingh
      @pajeetsingh Před 10 měsíci

      @@WebDevCody Good to know that.
      Do VISA, Amex, SWIFT payment system, NYSE use Cloud for their core service? I don’t know but I doubt they use commercial cloud. I know Telecoms don’t use commercial cloud for mobile networking.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +1

      @@pajeetsinghI'm not sure about those financial institutions, but I would bet money they are using some form of cloud providers for some features of their application. The core application might still be using mainframes, but I'm assuming some parts of their system are trying to shift to cloud.

    • @IvanRandomDude
      @IvanRandomDude Před 10 měsíci

      You just wrote down The Bell Curve meme for us.

  • @abdirahmann
    @abdirahmann Před 10 měsíci

    the last point you made about node crashing is the only reason someone needs to use a SaaS, if you really don't care about your users to the extent that its ok for a req to fail mid processing, then its safe to say that's not a profitable enough business you are running!

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +1

      yeah, I mean the only work around for that is using serverless. There is no guarantee your app server won't crash or run out of memory, even when using go, java, c#. Which means you'd need monitoring (another 3rd party service or you'd roll it yourself) to see when machines are running low.

  • @St0rMsk
    @St0rMsk Před 2 měsíci +1

    This video aged like fine milk :D

    • @zeeeeeman
      @zeeeeeman Před měsícem

      Yeah - you live and learn.

  • @spicepirate
    @spicepirate Před 4 měsíci +2

    Vercel is good until you hit the additional bandwidth of $40/100GB

  • @helmutweinberger4971
    @helmutweinberger4971 Před 10 měsíci +1

    You say you save 3 hours setup but actually that makes you spend the next 5 years 140 USD per month -> 8400 USD
    And I mean I had 400 projects in the last 15 years.. lol the cost.
    But ok what you explained about following makes really sense:
    - user upload spamming to bring down server
    - serverless making nextjs servers not crash and loose sessions on error 500 (very fragile server toolset if you ask me)
    Also you can never rely on these very modern webdev services to not be aquired and repriced, repurposed, or shutdown within the next years because all of them operate at a loss and are startups whose investors look for exits. Examples from Jira, and so on.. Sure I do believe AWS will stay with us. But anything that is aquired by Google for example is a different type of risk.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      How much money did your 400 project generate? How many users used your projects?

  • @amrrahmy123
    @amrrahmy123 Před 22 dny

    first comparison, you are comparing a one time cost to a recurring cost. Also, you chose to compare a service that is also a saas working on aws.

  • @DMSBrian24
    @DMSBrian24 Před 2 měsíci

    Thing is, this might make sense when you're a business owner with actual users and employees. What if you want to start your business and just need a basic website where people can buy your stuff? I don't mind spending an hour or two setting stuff up on a VPS, I have the time to do that, I don't have the money to pay multiple monthly subscriptions to save myself an hour or two making a product that for the foreseeable future will have close to no users.

  • @ThomazMartinez
    @ThomazMartinez Před 10 měsíci +4

    Not to use your own auth because password not being hashed is lame excuse really

    • @malikabdcom
      @malikabdcom Před 10 měsíci +1

      that's because the consideration to build everything on your own takes money, time, overhead, and risks. users don't care what technology u're using. and to make sure u are doing it right, takes time, experience, and money to keep us 'make sure we doing it right' rather that building what user really need. from developer perspective, yeah maybe that's just an excuse, but from business perspective and to gain investment as fast as possible, that's not applicable. good news, when you get money to hire good dev to make your owh auth. you can always migrate later. instead if we use 3rd party services and by cutting down the time to make a MVP. you can test whether your app is really what users need. so intead wasting 1 month to build auth, configuring server, and ect, 1 month to make MVP then iterate, improve, and so on. i think that's the point. wdyt?

    • @ThomazMartinez
      @ThomazMartinez Před 10 měsíci

      @@malikabdcom for me this shows people dont know scale, thinking to just use everything for 3rd party services will save them time, but in long run it will cost time, that time is going to be figuring out what the hell does that and why 3rd behave and trying to work around it. instead of just doing this yourself.
      adding auth email and password is not difficult but the benefit you get how it works and control, you still think 3rd party services is better then sorry you are fool and in long run you will know. for me this show some people just dont have that experience to understand

    • @ThomazMartinez
      @ThomazMartinez Před 10 měsíci

      i used supabase for auth email and password and i moved to my own, why because control, with supabase they do their own way and figuring their way will take more time then me just writing my own

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +1

      I've done my own auth, and I'd rather not have to handle it again. It's not that I'm not smart enough to get it correct, but I rather not waste time doing something that a service provides EVERYTHING for me in 5 minutes.
      it's not just the passwords, its, proper encryption of the database, setting up password reset flows, setting up MFA flows, setting up email confirmation flows, liability if you screw up auth, time to set this all up, setting up forgot password flows, setting up forgot email flows, etc.
      But if you want to use whatever your full stack framework gives you, thats cool as well.

  • @kathenae
    @kathenae Před 10 měsíci

    I agree, don't dump everything into a single vps.

  • @mysterio7385
    @mysterio7385 Před 10 měsíci +1

    The problem with some of those SaaS products you mention is you would lose some of the control over how things work. Also, it's worth to differentiate big corporations from single person startups. But I think your take on "software engineer salary for an hour is X, you should outsource everything else where the price is less then X" is flawed. With the same logic, you also shouldn't do the dishes, take out the trash, etc. because you can hire someone for lower amount to do it.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      Out sourcing for doing the dishes (hiring a maid) isn’t the same as paying someone to use their database hosting service because they’ve worked 15+ years in the industry and understand how to correctly manage and host a database. Sometimes it’s worth hiring a maid to do the dishes if it helps save you an hour a day where you can make 10x more in that hour than you spend paying the maid.

  • @shadowspyes
    @shadowspyes Před 10 měsíci

    12:00 that is why you do not use js for backend lmao

  • @MuhammadHussain
    @MuhammadHussain Před měsícem

    I don't like being reliant on all these third party services. That is why I'm going the Laravel route, which has lots of great first party implementation ready to go. Seems like a great choice, instead of this web of services you have to implement.

  • @michalzarddev
    @michalzarddev Před 10 měsíci

    honestly its more worth it to pay for US based infrastructure in certain cases of development because they are more established and can guarantee true 99.99% uptime unlike certain eu companies

  • @ashimov1970
    @ashimov1970 Před 10 měsíci +1

    My current salary is $1k/month. The highest salary I have ever earned is $2k/month

  • @jsantos1220
    @jsantos1220 Před 10 měsíci +1

    Living in Dominican Republic i can tell you that i much rather prefer than spend a whole day in a $10 vps that spend 100+ a month in services, because if i were to make one app, its ok to pay the 100+ but what if i want to make several apps and try a lot of things? it add up, to put you in perspective, i pay 300 a month for my apartment, and this is a good one hehe, so yeah, i rather do it my self

    • @Lexaire
      @Lexaire Před 10 měsíci

      You are working for yourself though. If you start making $50+ an hour, business owners are not going to want you to be spending a whole day rolling your own VPS over paying for a service.

    • @jsantos1220
      @jsantos1220 Před 10 měsíci +1

      ​@@Lexaire thats my point, im not there

  • @skapator
    @skapator Před 10 měsíci

    All these arguments are true and comprehensive.
    But we can;t just disregard full stack "frameworks" (Laravel, Nestjs, Ruby).
    Logs, File storage, Auth, Schedules, Cache, Monitor, Databases, Deployment, Notification chanels, migrations, all these things are battle tested and if prototyping/mvp/mmp you can, for sure, roll your vps, no second thought. Fastest 0 to mvp.
    All these things are out of the box, no config no overhead. There is no way to "not do auth well".
    So, yes there is a time/value benefit for sure for some companies, but there are also companies that inhousing is no brainer, devops is a solution.
    Context is what is missing in these kind of "opinions".
    If you can offload these services, and your roster is a match and your business/product structure/construct allows, yes.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +1

      I guess I don’t see what using larval or rails has to do with a vps? If I coded an app using rails, I’d still host it on an existing host provider that containerizes my app, adds load balancing, automatically restarts, adds ssl cert rotations, has a way to stream logs out of their service into a better logging system. I’m just saying trying to create your own vps and configure it to run your app is a waste of time; use an existing service (heroku for example), which handles a large part of the infra related concerns.

    • @skapator
      @skapator Před 10 měsíci

      I guess I got confused as to what "roll your vps" means. Yes, of course use whatever managed service you like (Laravel for eaxmple forge, ploi, others) to manage building/maintining the server, my point is you do not need 1 3rd party for auth, 1 for logs, 1 for db, 1 for queues and so on, pilling up to what? ~150/m for a prototype/mvp + setup and maintenance of setup ?
      All I want to say is that the arguments in the video make absolute sense on why you would use 3rd party but it does not make a case for not using Laravel for example.
      And depends on what product are we talking about? Is it a side hustle you are trying to make a business out of someday? Is it a client for a freelancer, is it a architect for an established product/business? I mean it is hard to not compartmentalize the needs and scope.
      I end up sounding negative towards the video which is not what I think of these solutions at all, just merely trying to validate other options and inform. We do not want people to know only one language/setup ideally.

  • @dandogamer
    @dandogamer Před 10 měsíci

    Back in the day we used to just rsync onto the server, no deployment pipeline needed (not saying that's what people should do tho aha)

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +1

      I remember just doing an FTP transfer for my asp / php files. It worked perfectly fine 🤣

  • @lollol012
    @lollol012 Před 10 měsíci

    I'm thankful for this video, because I always like hearing this type of takes, especially when they're this hot.
    This whole video is peak JS/bootcamp mindset - "everyone is stupid, everything is hard, just consooom big company service that costs 3-5 times more and does your job for you".
    I'm not gonna reply to most of this, since it'd take way too long, so I'll just leave those 2 general points here:
    1. You said that unlike self hosting, using those services is just a one time hustle, after which you just need to keep openong your wallet every month. But literally the same thing can be said about learning how to properly set up the open source, self hosted versions 80% of those services jave.
    2. Everything you listed here was "hard" at some point - until (most of) it wasn't. That's a process called learning - something people taking this videos advice to heart aren't gonna experience, so they'll be forever stuck paying for overpriced services, praying to god any of those companies doesn't suddenly decide to follow Oracle / Microsoft / Unity /Etc, and squize thw shit out of the vendor locked shmucks, who are in too deep to afford to switch.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      I appreciate your comments. I’d say I didn’t suggest anyone was stupid; people can learn how to do a lot of this stuff.
      1. The argument is you can either delay your project by trying to learn all the things, or you can pay other experts for their service. This is the same outside of software, I can learn to change my own oil and spend my own time doing it and spend time taking my old oil to a place that’ll accept it, or I can just pay someone more who will do it all for me. Overall, you’ll be either paying more to spend less time, or you save money by using your own time.
      2. Don’t write code that produces lock in if that’s a concern. It’s simple to wrap third party apis or services to prevent lock in for most cases

    • @lollol012
      @lollol012 Před 10 měsíci

      @@WebDevCody
      1. Only that in this example, assuming you're an SWE, it means you're also a mechanic, and have a small garage in your yard. All you need is to set up the tooling, and you'd be able to change your oil faster than it'd take you to drive to the "enterprise garage", leave the car, and return for the car. All it'd require is a one time investment in something that's highly relevant to your job anyway (PS Im not a mechanic, so idc how accurate this analogy is IRL, but it sure does apply to software).
      2. Of course, you can (and should) write modular wrappers that integrate with various similar APIs (e.g. Mailgun, Mailtrap, AWS SES, etc).
      But people who tend to just throw in disproportionate amount of 3rd party tools into the project, also tend to not write any modular integrations, with the exact line of reasoning of "why would I build a Mail module with standard wrappers that allow seamless multi-vendor interfacing, and a baseline SMTP library as fallback? Those are all hours I could spend adding 'features' to the project. Let those very smart people with too much time on their hands write modular and vendor-free code."

  • @amenofisch
    @amenofisch Před 10 měsíci +5

    Yes 3rd party SaaS is good, but now combine all of those services (logging, monitoring, hosting, database,...) and now you pay atleast 100 bucks/month just for hosting a simple app.
    I'd say if you're making apps that are meant to make you an income, then yes it's fine to use those SaaS. But if you're just a beginner/hobby software developer then you're totally fine with using a VPS and setting up everything yourself.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci +3

      I agree, a VPS is fine for a hobbyist or a product that plans to make no income. Remember, most of these services provide generous free tiers anyway for your hobby applications that there is still no reason to use a VPS.

  • @dandogamer
    @dandogamer Před 3 měsíci +1

    @WebDevCody never say never 😂😂

  • @marble_wraith
    @marble_wraith Před 10 měsíci +2

    Your math is backwards 🤣 $60 a month and saving an hour of dev time pays for itself on the first 3?
    You are assuming the admins / devs working on those parts of the stack will need to more than an hour a month configuring / updating stuff, which i don't think is realistic at all. Provided things are architected correctly and it's built for scale, maybe 30 minutes total a month, and that's assuming automated cron jobs can't handle things for some reason.
    I agree the initial setup time for a roll-your-own solution for the first month, would be expensive, but here's the thing. Even if you blow out the initial setup time to 10 hours ($600), that's *still* going to end up being cheaper after 12 months then paying SaaS and PaaS providers.
    The correct answer is, neither approach is best. You do a hybrid of both.
    Figure out which parts of the app are most difficult to scale / will require automated horizontal scaling. Logging and database automatically fall into this category. But compute? That depends on what kinda thing you're running in prod as to whether you actually need to scale this aspect. CI/CD? Same thing, does this need to be horizontally abstracted to an API / auto scaled? Most of the time no.

    • @WebDevCody
      @WebDevCody  Před 10 měsíci

      How is my math off? If a dev gets paid $60 an hour, and three services charge around $20/month each, that’s one hour of dev work will pay for 3 of these services.
      But yes, if you know how to set these things up, like production ready logging and system monitoring, sure, do it yourself.