6 ms·
> That's from a birds eye view and is totally irrelevant to the current question. Really? You don't think speed of execution is far more important? Getting som
by vlod 5y ago
> That's from a birds eye view and is totally irrelevant to the current question.
Really? You don't think speed of execution is far more important? Getting something to your users, validating assumptions and failing fast is also kinda important? IMHO using the latest tech is not.
Now I know docker/docker-compose, but would I use it for my own projects?... meh.. probably not. It doesn't take THAT long to set up a box manually (apt install postgress redis nodejs nginx, will get you a LONG way) or with an ansible script if you know it and want to get fancy-pants on me).
Spending time doing AWS/GCP, your users don't care. Whether you can scale to 100M users like Facebook, your users don't scale. If you know docker and can deploy faster than me writing all this, then great use it. 95% of these projects will die within a year. My approach is everything within the first year is disposable.
If it takes you a weekend to hack something in php (not the most shiniest thing around, but if you know it great) and push it to prod in a weekend that's better than learning rustlang (although subjectively better in some eyes) and it taking you 6 months. IHMO.
> The state deployments are in right now, there's so many viable, and somewhat easily accessible options.
Here's one that takes you about 1/2 hour (or less) to learn: `ssh prod; git clone github.com/foo/great-project.git; cd great-project; npm run prod:build` (or the equivalent)`.
Done. Standard no frills get-shit-done. Crappy, yes. But faster than your competitors.
> but I'm finding GCP cheaper.
I'm a tight wad. I like cheap. That's why I think AWS/GCP are too expensive for what you get (AFAIK). Spin up a DO/Linode 4G instance for $20pm. Is is cheaper than that? I doubt it.
> I need to do one of 2 things and I just need help making the right choice.
The POINT is, which I wish someone told me at the start of my journey, is that you DON'T NEED (at least not in the beginning) anything but a strong attitude to get stuff done and released as fast as possible.
Now you may think learning GCP and AWS is great for your long term career and there is truth to that. Whether it's valuable to learn something for scratch to do a startup, I would question that,
- intev 5y ago> Really? You don't think speed of execution is far more important? Getting something to your users, validating assumptions and failing fast is also kinda important? IMHO using the latest tech is not. It is but not if you are using outdated tech that will cost you many more hours just even months down the line. Let's say I'm working with a co founder who knows delphi really really well. You think we'll build anything in delphi or spend a little time to learn any other modern language to ensure our speed stays stable in the future? > My approach is everything within the first year is disposable. Interesting approach but I respectfully disagree. I built a side SaaS app that's really important to stay up 24/7. I didn't want to go back and set up server infrastructure multiple times, especially not with the amount of information available online. Your code of course will keep changing but there's no reason you need to keep changing your infrastructure if you make the right choices in the beginning. I never once changed my infrastructure in the 4 years I've been using AWS (beanstalk). > Done. Standard no frills get-shit-done. Crappy, yes. But faster than your competitors. So so so so much more crappier. I would never do this for my paying customers. I have been running a somewhat critical piece of infrastructure for about 4 years now on AWS. I primarily use beanstalk, so in a way less work than a straight VPS but yes can be a bit more expensive. You know how much downtime I've had? Probably 3 hours TOTAL, and that too because I pushed something that had bad build commands. 3 hours over 4 years. I know because I have a monitoring service. I never had to restart a single server, upgrading has always been one click and deploying has always been one command. The peace of mind has been incomparable. You system would leave me nervous every time I take a vacation. I go on vacations without a worry in the world. My system just took a couple weeks to learn the ins and outs and costs a little more. Mine over yours any day of the week. If I'm just messing around with a personal project, then I use a VPS because literally no one relies on it.
- vlod 5y ago> You think we'll build anything in delphi Haah of course not! :) but doesn't mean you should flip to the other extreme and learn how to do k8 and spend a whole bunch of time on it. >Interesting approach but I respectfully disagree. I built a side SaaS app that's really important to stay up 24/7. From the get-go? Did you spend a whole bunch of time learning it or did someone else pay you? (As an employee). Most solo projects are not like this. > I would never do this for my paying customers. I have been running a somewhat critical piece of infrastructure for about 4 years now on AWS. Of course not, neither do I anymore. For paying customers who can afford it, AWS is a great solution. Most small timers with low traffic are happy with DO/Linode. You can be fancy and have CI/CD or webhooks of code checkin on the master branch. As a side note, back in the day, I've used Capistrano, which is pretty much the the above commands wrapped in ruby script. The OP has said he is going to use this as it's a Rails project. However this is the crux. You're most likely having someone else pay for hosting. You're probably getting someone else to pay for you to learn how to do XYZ. Most likely you're not even aware of how much this infra is costing the client. I really don't have a problem with this. Good for you. However the person who posted the question was a solo-founder trying to understand whether to learn Docker. This probably is a person who is not a super techy. (A lot of people here know docker just becz of curiosity) and I would hazard a guess not a big runway. These reasons alone, IMHO I would suggest getting something out there, learning to see if there's a market and reiterating.
- intev 5y ago> k8 and spend a whole bunch of time on it. I fully agree and no one said that you should do it. But these days there's so many abstraction layers that it's not nearly as complicated as it was 2 years ago. 2 years ago I wouldn't have even considered it, but now it might be on the table. > from the get-go? Did you spend a whole bunch of time learning it or did someone else pay you? Yup. Business SaaS product that had day and night use. No investment, no one paid me. Became "ramen profitable" year 2 but it's not much. I'm not interested in growing it any more for various reasons and right now it's just "side income". > However this is the crux. You're most likely having someone else pay for hosting. You're probably getting someone else to pay for you to learn how to do XYZ. Most likely you're not even aware of how much this infra is costing the client. Might be so but not in my case. I pay for everything and customers pay me a monthly fee depending on different params that aren't even very closely tied to how much it costs me. > However the person who posted the question was a solo-founder trying to understand whether to learn Docker. When I started, I was a solo founder too. Have you looked into caprover? I came across it recently and it looks really interesting. It uses docker internally but it seems to be a somewhat mature product and has so many nice bells and whistles. Best of all, very little time investment (or so they promise). If I was restarting today, I would look into that. It would help me run everything without relying on AWS/GCP and will end up being cheaper if everything works as advertised.