Why I'd never host my apps on a VPS

Поділитися
Вставка
  • Опубліковано 5 жов 2024
  • Diagram miro.com/app/b...
    Chapters generated using ytchaptersgene...
    ----------
    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....
    🤖 SaaS I'm Building: www.icongenera...
    ✂️ Background Cutter: www.background...
    💬 Discord: / discord
    🔔 Newsletter: newsletter.web...
    📁 GitHub: github.com/web...
    📺 Twitch: / webdevcody
    🤖 Website: webdevcody.com
    🐦 Twitter: / webdevcody

КОМЕНТАРІ • 462

  • @irfanMiral
    @irfanMiral 2 місяці тому +143

    A great Example to not listen everyone on internet.

    • @YoKKJoni
      @YoKKJoni 18 днів тому +12

      100%
      this video is like WTF?

  • @etagh
    @etagh Рік тому +303

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

    • @siya.abc123
      @siya.abc123 Рік тому +80

      That's what the UA-cam influencers don't seem to understand

    • @WebDevCody
      @WebDevCody  Рік тому +66

      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 Рік тому +54

      @@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 Рік тому +20

      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  Рік тому +29

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

  • @theLowestPointInMyLife
    @theLowestPointInMyLife Рік тому +109

    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 Рік тому +17

      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 Рік тому

      @@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 Рік тому

      Yeah fully agree

    • @maksymdudyk1718
      @maksymdudyk1718 10 місяців тому +2

      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 10 місяців тому

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

  • @f4ls381
    @f4ls381 Місяць тому +65

    I believe your argumentation is flawed because you set those things up once on a VPS and then basically never have to do it again and you pay a fixed price no matter how much usage you have.

    • @stavroskois9656
      @stavroskois9656 21 день тому +10

      That’s true, but you also have recurring tasks being done on that VPS. Security patches, maintenance, etc.
      I believe plain usage of vps does not worth it nowadays.
      Throw docker in there, deploy your stuff. Something gone wrong? New vps restore backup run docker.
      You get more users and want to scale? Move your containers if a bunch of nodes with k8s

    • @artistry7919
      @artistry7919 19 днів тому

      Maintainance is a thing, and the bigger your company/service is, the pricier maintenance gets

    • @f4ls381
      @f4ls381 19 днів тому

      @@artistry7919 If your company or service reaches a certain size you could go for more than just a vps. Basically any hosting provider out there offers a managed hosting service where they take care of all the maintenance of your machines. Hetzner for example even offers hardware replacements within minutes. So I wouldn't count that as a real strong argument for Vercel etc. but still a good point to keep in mind. And I won't deny that this kind of stuff is more time intensive to set up.

  • @yaghiyahbrenner8902
    @yaghiyahbrenner8902 21 день тому +14

    People need to keep learning how to manage and build things on their own no matter what. there will come a time when everyone will be required to do so.
    Everyone forgot how to grow their own food and complain that the cost of food is high and keep getting higher.

  • @roguesherlock
    @roguesherlock Рік тому +43

    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.

  • @gnorts_mr_alien
    @gnorts_mr_alien 5 місяців тому +12

    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

  • @WebDevCody
    @WebDevCody  Рік тому +116

    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 Рік тому +7

      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 Рік тому +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 Рік тому +7

      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 Рік тому +4

      @@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 Рік тому +1

      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)

  • @_romeopeter
    @_romeopeter Місяць тому +10

    This is often a skill and time issue. If you or the business don't mind the time and you have the skills (which I belive isn't as scary as it made to be) then you can configure a VPS to host product-ready application. Modern alternative to Vercel and Netlify for VPS can help as well. Solutions like Coolify are open-source GUI administrative platforms/tools that allow you configure your server without having to do the nitty gritty bits.

    • @depralexcrimson
      @depralexcrimson День тому

      Dude, there isn't a single fkin reason why you can't do it all on a VPS, but if I were to expect more than 2-3k users I'd actually get a VDS instead, and just pin docker instances to individual cores, the only bottleneck you may face is probably bandwidth.

  • @zi_t
    @zi_t Рік тому +60

    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  Рік тому +7

      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.

  • @Jeanpierrec19
    @Jeanpierrec19 Рік тому +17

    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  Рік тому +1

      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 Рік тому +9

      @@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.

  • @mycode0
    @mycode0 Рік тому +23

    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  Рік тому +7

      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 Рік тому

      @@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.

  • @Ziko2687s8
    @Ziko2687s8 21 день тому +9

    Where do you host the db, the s3 bucket, logs. All of a sudden you're paying at least $100-$150 / month + usage + overhead

    • @everyhandletaken
      @everyhandletaken 21 день тому +3

      Exactly.. it adds up very quickly, especially for managed db's.. they are super expensive.
      Vendor lock-in too.

  • @justinwlin
    @justinwlin 6 місяців тому +62

    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 6 місяців тому +8

      hahaha same... aged well 😅

    • @randallnet
      @randallnet 6 місяців тому +6

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

  • @havocthehobbit
    @havocthehobbit 21 день тому +4

    you just convinced me to stick with a VPS. Just too many services , too many things to hook your credit card into , and I just run a setup script or custom program to setup everything I need once off , that acts as all these tools that you plugin into . Your file storage scenario because it just like setting up a service , you just create a system that sets limits . Also the server crashing is bad connection and down time because you can isolate everything and have multiple VPS on same internal network in clusters for redundancy . There are solutions for all of this and the way we know is because the company you are paying have already implemented them and most of them have an opensource system to help you manage them . But I get it , any additional layor is hard when youve never delt with it but after 2 times and seeing how much control you have , you start to see its actually better .

  • @marble_wraith
    @marble_wraith Рік тому +7

    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  Рік тому +1

      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.

  • @dontwanttousemyrealnametol6765
    @dontwanttousemyrealnametol6765 Рік тому +18

    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 Рік тому +4

      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.

  • @Yorgarazgreece
    @Yorgarazgreece 19 днів тому +3

    still not worth it. because if you go for these services, their convenience locks you into their ecosystem, and good luck escaping it once your app scales. Also, once things scale the 100$ easily becomes multiples of 1000$. You pay for horizontal scaling, with horizontally scaling pricing.
    Start small, deploy a vps with docker compose. if app scales, spin up a rke2/k3s cluster and put your containers there. it's not as hard as you may think.
    Also, a lot has been said about reliability and maintenance. In theory your service plan includes sla uptime and all that, but do they compensate you if they actually go down? if planetscale for example has a major outage, who's to blame? who's to blame if your third party paas decides to change the api for whatever reason and for the framework you're using they no longer provide support for it?
    In the end these services are just masking a relatively good for production deployment - that you don't need as much time to setup yourself as you may think

  • @josephajibodu2377
    @josephajibodu2377 Рік тому +6

    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.

  • @maksymdudyk1718
    @maksymdudyk1718 10 місяців тому +3

    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.

  • @AbuBakr1
    @AbuBakr1 2 місяці тому +13

    This video is sponsored by Serverless

  • @gbrllnz
    @gbrllnz Рік тому +18

    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 Рік тому +2

      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 Рік тому

      @@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.

  • @yuni_cs
    @yuni_cs 6 місяців тому +15

    this video aged well

  • @eshw23
    @eshw23 Рік тому +2

    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 😀😀😀

  • @BlackThorne
    @BlackThorne 29 днів тому +133

    This entire video is a skill issue lol

    • @barry_wastaken
      @barry_wastaken 20 днів тому +14

      fr though, i mean imagine paying for an external logging service 💀

    • @austincodes
      @austincodes 19 днів тому +2

      NGL I'm pretty tired of seeing this comment

    • @barry_wastaken
      @barry_wastaken 19 днів тому +8

      @@austincodes I don't even know how you opened your computer without an assistant 💀

    • @malcolmn.5222
      @malcolmn.5222 18 днів тому +6

      It's more of a time and effort issue. People are so quick to say "you can build this yourself". While this is true, if you're a team of one, you can potentially be spending hours on building and maintaining parts of your application that have nothing to do with core business logic.

    • @kratosgodofwar777
      @kratosgodofwar777 18 днів тому

      Exactly ​@@malcolmn.5222

  • @anointingogalabu-maxwell4288
    @anointingogalabu-maxwell4288 Рік тому +6

    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  Рік тому

      What about using aws with serverless? It costs pennies

    • @anointingogalabu-maxwell4288
      @anointingogalabu-maxwell4288 Рік тому +2

      @@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  Рік тому +2

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

    • @vickylance
      @vickylance 15 днів тому

      @@anointingogalabu-maxwell4288 In your case if you are running multiple applications and too much work load you might end up having multiple medium to large VPS's running which will be even costlier. In that case you might even try to go full on prem if cost saving is your only concern. And just get a lease line for network and use a home server rack.

  • @PauloSantosk
    @PauloSantosk Рік тому +10

    VPS solve 90% of the problems, in real world most of the time you will work in projects that will be used in a limited scope with limited user base.

    • @Lexaire
      @Lexaire Рік тому

      What real world is this you live in because actual companies can't just host their infra on a shared 512 MB VPS.

    • @PauloSantosk
      @PauloSantosk Рік тому +9

      ​@@Lexaire In fact, they can. There is a strange trend nowdays that everything should be hosted in the cloud, with horizontal scalling, microservices and etc. But in fact, just the "big ones" in the industry have that kind of necessity as a "must have" (just in case).
      Most of the systems acomodate very well in a VPS with basic PHP and a Angular front or similar.
      People are using a canons to kill cockroach.

  • @achaabni
    @achaabni 20 днів тому +4

    "Serverless might bankrupt you (and how to deploy to a VPS instead)"

  • @Necromancer-kz4rx
    @Necromancer-kz4rx 12 днів тому

    Thank you WebdevCody. This is helpful and brought up good arguments! Keep up the good work!

  • @IvanRandomDude
    @IvanRandomDude Рік тому +5

    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  Рік тому

      For sure

    • @maksymdudyk1718
      @maksymdudyk1718 10 місяців тому +3

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

  • @n8mo
    @n8mo Рік тому +4

    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  Рік тому +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 5 місяців тому

      @@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.

  • @ajaaoka6364
    @ajaaoka6364 2 дні тому

    I think this is very valid in a lot of business contexts, but misses two major areas.
    1. Small and heavily regulated businesses. These two groups typically have more available time capital vs growth capital and are happy to roll their own for either. A. Security Compliance - everyone claims to be HIPAA and SOC2 and that's not really trusted or even verifiable most of the time, especially since most companies go "We're compliant because it's hosted on AWS"
    2. Projects - a lot of us roll out our own topping on a vps for hosting projects and personal tooling because $20 a month times the 10-15 services it takes to get started is unreasonable for just wanting to build something simple or even just for fun.
    To be fair for the context of tech startups and large company development where time is money and development cost is paid by developers multiplied times hours this is super fair. It's just that a lot of situations don't look like that, and outside of the US that cost can be comparatively unreasonable.

  • @havoq8257
    @havoq8257 6 місяців тому +4

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

  • @codinginflow
    @codinginflow Рік тому +1

    This was a very useful overview

  • @jbarriossandrea
    @jbarriossandrea 20 днів тому +3

    1:00 This salary is for US based devs, I live in Colombian and I make 30k per year, so those prices are insanily high for me, I'm better hosting my apps on a 200$/year VPS

  • @MuhammadHussain
    @MuhammadHussain 3 місяці тому +2

    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.

  • @hackmedia7755
    @hackmedia7755 Місяць тому +1

    I like learning to do it myself, then I can create services and features that are not available anywhere else. I'll have a better understanding overall about servers. Also a lot of devs need to learn about software security in general.

  • @DoNsMaK190
    @DoNsMaK190 8 днів тому

    Thanks for sharing Diagram in the description 😊

  • @Floww111
    @Floww111 14 днів тому

    A not so secret secret about devops is that you can just copy paste from previous projects, 90% + of everything here is just going to be the same no matter what you are building. However it’s great advice to be realistic about what you’ve accumulated in your IaC toolbox vs the project’s ambitions, realistically it’s going to be an hybrid in the end.

  • @npc-drew
    @npc-drew 2 дні тому

    This expanded my horizons, however, I feel like if we put the lifespan of a start-up from beginning to mature, at first, there is no justification your app will be successful and most apps fall in this category, then as you grow and generate money, then these services are worth it, and finally when you get too big you actually hire devs, you start moving services back home. But again, most startups fail, minority reach that sweet spot, and very few hit the jackpot.
    If anything I learned from this video is the importance of micro-services, to build in a way where you can switch at any point specific purposes like economically speaking, I'd probably containerize multiple micro-services into a single VPS, except perhaps for the database, and as the start-up grows, I'd switch to these other solutions.

  • @ivorycloudofficial
    @ivorycloudofficial Рік тому +2

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

  • @MuhammadhammadSohail
    @MuhammadhammadSohail 19 днів тому

    that's very clever to use these things as it saves much time, i have used almost every service you have mentioned and can say that these are effiecent, i have aslo setup on the VPS and yeah it takes more efforts.

  • @tiagosutter8821
    @tiagosutter8821 Рік тому +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

  • @ProphylacticGizzard
    @ProphylacticGizzard 2 години тому

    A lot of these are good points, but it's not like the only cost for these services is money. You also have to learn whatever interface the service gives you, like now I gotta learn the AWS CLI and figure out how to integrate it with all my stuff, that takes expensive developer hours too. Also not everyone is writing apps in javascript

  • @RealGabeMcGuire
    @RealGabeMcGuire 7 днів тому

    I agree with most of your points. I think it makes sense to use these services in a production application but for a hobby app some of them really just aren't needed. I think that no production app should roll their own auth, there are so many ways to get it wrong it's not even funny. ~$100/month is really nothing for you if you have paying users.
    The only concern I see is vendor lock-in and then being at the mercy of their price increases. For example auth0 recently increased their prices by 300% - from $0.023/MAU to $0.07/MAU which is insane, especially considering the difficulty of switching auth providers.

  • @TheFeli73
    @TheFeli73 28 днів тому +1

    9:54 perfect example of why not to use SaaS, one malicious user, and you have an infinitely scaling bill

  • @fakebizPrez
    @fakebizPrez 19 днів тому +1

    Hearing your reasoning as to why someone should be paying for all of these services, is the same feeling I got when I moved to New Jersey for work, and the locals explained to me why pumping your own gas is dangerous and that's why it's illegal in New Jersey.
    Go get an R730 for $250, setup automations, and enjoy the the surplus in funds. Or does it pay more to make silly videos like this for views?

  • @harryhack91
    @harryhack91 18 днів тому

    There's one very important reason why I would rather use a VPS over any cloud service. I don't want to wake up with a $2000 AWS bill for my hobby project. The main problem with almost (if not all) those cloud hosting providers is that you can't set a hard spending limit, the bandwidth is uncapped and every single bit is billed.

    • @Kitulous
      @Kitulous 15 днів тому

      ah, the good old denying of wallet attack

  • @amrrahmy123
    @amrrahmy123 3 місяці тому +1

    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.

  • @St0rMsk
    @St0rMsk 4 місяці тому +4

    This video aged like fine milk :D

    • @zeeeeeman
      @zeeeeeman 3 місяці тому

      Yeah - you live and learn.

  • @somenamesome
    @somenamesome 3 дні тому

    The entire logic of this video is based on the presumption that price is the only thing you are optimizing for. VPS are reasonably priced and give your product a chance of pivoting to another hoster if prices change. Service dependance can kill a business on the spot with a single pricing change

  • @theithedgehog
    @theithedgehog 21 день тому

    Good advice, as someone who grew up in the wild west times of the internet running servers and services for others, the biggest thing you're doing is outsourcing the problem to someone else which is worth the cash where you can stump it up.
    I spent years doing things myself, got hacked, learned the hard way that an unpatched VPS is a liability and slowly but surely upped my skills. I'm not sure I could do that now, one zero day and your entire database will be in someones hands in minutes and as you said - it can land you in some serious legal trouble.
    For those saying they can't do it now, that is fine. You don't have too - just be aware that this is the direction you want to head in as you bootstrap and generate income. The jump from a single dev doing it all to running a business is insane and one of the first things I had to learn was that my time was far more precious than I realised.
    All in all good advice, just maybe not for the stage everyone commenting is at.

  • @hamoodrex
    @hamoodrex 4 місяці тому

    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.

  • @jonathanbaird1633
    @jonathanbaird1633 9 днів тому

    Those services are great, until they aren't. Either a feature you need doesn't exist, the company you're using changes policies, or unexpected overages. Sure it doesn't happen all the time, but having all of that in-house on a VPS is a long term cost savings. I'd only go with those services if I needed to get up and running quickly. Then as I grew I would quickly start planning out my own system. Yes maintenance is a pain and the upfront cost of a VPS is a lot, but if planned out properly can be easily done. Plus any tools you develop yourself can be sold as a separate product to other people looking to do what you did.

  • @EduardKaresli
    @EduardKaresli 21 день тому

    I don't live in the US and I'd rather host my app on a physical Linux server in my appartment under my control for a one-time purchase fee (300-400 USD) than host my app in any of these services where suddenly I might get an invoice of 30000-50000 USD because I forgot to set a limit hidden somewhere in their terms of services or because my traffic spiked up for some reason.
    Get a small mini PC, ask ISP for a static IP, get a domain name and basically these are all the fees that I would pay for.
    And that small Linux server would be under my nose, controlled by me, and I would sleep well at night. 🤷

  • @TheFeli73
    @TheFeli73 28 днів тому

    People forget that getting started with any SaaS service also takes some time integrating into your current systems.
    And on a 6 month scale, the SaaS is likely a lot cheaper, but basically any SaaS is more expensive than doing it yourself, if you assume you will still be using it 2 years from now.

  • @LucasFariaDev
    @LucasFariaDev 4 місяці тому

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

  • @CarlMonnera
    @CarlMonnera Рік тому +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  Рік тому +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

  • @skaffen
    @skaffen 2 місяці тому

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

  • @keshavakumar9828
    @keshavakumar9828 Рік тому

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

  • @craigasketch
    @craigasketch Рік тому +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.

  • @Necromancer-kz4rx
    @Necromancer-kz4rx 14 днів тому

    This is awesome! Thanks for sharing 🙏🏻

  • @zamarinen
    @zamarinen Рік тому

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

  • @cowabunga2597
    @cowabunga2597 Рік тому +3

    There are no regional pricings lmao. Live in a 3rd world country and try to host it in differenr cloud providers. One month of your fees would pay for 2-3 weeks worth of food for a family of 2-3

    • @WebDevCody
      @WebDevCody  Рік тому

      ok, then look around your country for third party services that provide hosting. If they don't, then that's a problem you and your countries engineers and business leaders need to work on solving. Why would anyone think vercel is a viable option if they live in a third world country where $20 a month isn't possible. That's the cost of a hamburger and fries in the US in many places.

  • @cirtey29
    @cirtey29 7 місяців тому +2

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

  • @asdasdaa7063
    @asdasdaa7063 8 місяців тому

    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.

  • @prompt_shark
    @prompt_shark 9 місяців тому

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

  • @itsme3217
    @itsme3217 21 день тому +3

    this aged very well

  • @gunnarthoreson2280
    @gunnarthoreson2280 15 днів тому

    Saying "your VPS will crash because you dont have infinitely scaling storage" when someone repeatedly keeps uploading a 1mb file, is nonsensical. This should not be solved by paying for more storage of some cloud provider, it should be solved by having a soft or hard userbased upload quota and or rate limiting with the correct observability. Also selfhosting s3 is a task that takes five minutes of setup, where you get terrabytes of storage for a few dollars.

  • @ThomazMartinez
    @ThomazMartinez Рік тому +4

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

    • @malikabdcom
      @malikabdcom Рік тому +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 Рік тому +1

      @@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 Рік тому

      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  Рік тому +3

      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.

  • @figloalds
    @figloalds 21 день тому +1

    Yeah, but you're comparing 20 + 100 + 60 etc dollars EVERY MONTH, to a few hours of an engineer that will make that thing save 175 dollars every month
    Besides, a lot of these things are very very easy to spin up in a VM, you just have to install docker and write a bunch of docker run
    Now for horizontal scaling, yeah, configuring Kubernetes on an array of VPS is a little bit more work, and you have to configure each new node manually, there's that
    BUT, not all applications are going to that scale; Most startup applications can do with one single VPS for a long time. Vast majority of applications don't really need that automatic scaling
    Also, if a user is sending 1MB on a loop, you don't want an automatic scaling to inflate your service and charge you for that junk data without a warning, that's HUGE L

  • @sohansingh2022
    @sohansingh2022 Рік тому +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 Рік тому +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 Рік тому +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  Рік тому +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 Рік тому

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

    • @sohansingh2022
      @sohansingh2022 Рік тому

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

  • @polioann
    @polioann Рік тому +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

  • @googlekonto5397
    @googlekonto5397 Рік тому +2

    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  Рік тому +2

      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.

    • @vickylance
      @vickylance 15 днів тому

      @@WebDevCody I agree, as an SRE for an banking application we have huge list of downstream services and many of them in turn run on multiple cloud infrastructures and other vendors. And our own application run on AWS and other multiple vendors and also some parts of the infra is still running on our on-prem data center. Achieving a near zero downtime over the last couple of years has been a roller coaster ride. But yes as of today we main rely on the reliability provided by AWS and Cloudfare for most of our core services to be up and running.

  • @yunyang6267
    @yunyang6267 Рік тому +8

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

    • @WebDevCody
      @WebDevCody  Рік тому +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 Рік тому

      ok thank you@@WebDevCody

  • @spicepirate
    @spicepirate 6 місяців тому +2

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

  • @emanuellugo8193
    @emanuellugo8193 18 днів тому

    You are skipping an important point and that is that you would still need to hire a data engineer to use your SaaS + the service. And then you are vendor locked or you cannot use all the features if you dont take the highest service tier. Your engineer gets better yhe more he does it and there are tools to quickly deploy over amd over what you need. You have to only set it up once successfully.

  • @amenofisch
    @amenofisch Рік тому +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  Рік тому +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.

  • @pajeetsingh
    @pajeetsingh Рік тому +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  Рік тому +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 Рік тому

      @@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  Рік тому +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 Рік тому +1

      You just wrote down The Bell Curve meme for us.

  • @neociber24
    @neociber24 6 місяців тому

    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.

  • @em11l
    @em11l 6 місяців тому

    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

  • @jackfrosch
    @jackfrosch 19 днів тому

    Jeff Bezos, the founder of Amazon, is credited with introducing the concept of “Undifferentiated Heavy Lifting” in a 2006 keynote speech at MIT. He discussed the challenging and often unseen tasks associated with managing a digital platform, which online business owners must confront.

  • @harryman0412
    @harryman0412 Місяць тому +1

    It's disingenuous to represent vercel hosting as a flat $20 per month with no overages or side fees. Show us your vercel bill at $20 per month. Nobody with traffic is paying that in production.

  • @DMSBrian24
    @DMSBrian24 5 місяців тому

    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.

  • @habong17359
    @habong17359 3 місяці тому

    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

  • @Kitulous
    @Kitulous 15 днів тому

    the key here is balance. i can easily deploy my stuff to vps but i won't write my own solution for bugs like say sentry

  • @trailblazer3889
    @trailblazer3889 3 місяці тому +1

    If your business serious you should have at least two infra guys they'll keep everything running smoothly. They can selfhost anything and have full control over your stuff. It's always better to pay people than making capitalists richer.

  • @tansven8760
    @tansven8760 19 днів тому

    Edge store looking cool for file storage as well

  • @jsantos1220
    @jsantos1220 Рік тому +2

    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 Рік тому

      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 Рік тому +1

      ​@@Lexaire thats my point, im not there

  • @robgeach8105
    @robgeach8105 Рік тому

    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  Рік тому

      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.

  • @ashimov1970
    @ashimov1970 Рік тому +1

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

  • @chrisholland6366
    @chrisholland6366 21 день тому +1

    How many people in your audience are developing a production level applications to justify not using a VPS?

    • @WebDevCody
      @WebDevCody  21 день тому

      No clue. Deploying serverless or vps both work fine

  • @simbarashemaunga5575
    @simbarashemaunga5575 19 днів тому +1

    Not only is the entire video a skill issue, you can tell straight away it's also a Javascript ecosystem issue. Authentication really??, these are all just Javascript dev issues.

  • @tiisetsontsoane5809
    @tiisetsontsoane5809 Рік тому +1

    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  Рік тому

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

  •  21 день тому

    what ever works for anybody is good, however i must say that hosting a production app it's more easy then what people think on a vps, also host your own database is more easy than what it sounds, i really don't understand when become the norm that for everything you need to pay for a service, also dev needs to understand that unless you are a devops, or do fullstack, your job is not to know how or where to host or deploy your website, or your web app, thats the job of someone else, and if is your own app, i think it woul give you lot of benefist to know how to host on a vps, how to do deployment, and no need to pay for any extra service, also self host is more easy than what the industry wants you to belive

  • @xali2008
    @xali2008 10 місяців тому

    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.

  • @maciejmotawski9887
    @maciejmotawski9887 Рік тому

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

  • @arytiwa4351
    @arytiwa4351 15 днів тому

    I am from the future, and you will indeed use a VPS, with the one who sponsor you.

  • @xali2008
    @xali2008 10 місяців тому

    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.

  • @cg219
    @cg219 5 місяців тому +6

    So skill issue