4 ms·
> 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 impor
by 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.
- vlod 5y agoGood for you! Thanks for the reference caprover, I'll take a look.
- vlod 5y ago>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. Your assumption is that I can't build your infrastructure or I choose not to. My assumption is the OP is doing this for a personal project not working for a paying client which you've also said you'd use a VPS. Solo founders generally don't get paid until they get paying customers and generally don't have lots of runway (3-6 months?). They are also doing other stuff to bootstrap the business (sales/marketing/content). That may change your attitude significantly whether a few weeks worth of learning was worth it.
- intev 5y agoI guess our difference is opinion is when you want to invest your time learning at least the semi scalable infrastructure. It doesn't have to be docker, could even just be ansible. Or cop out like me and use App Engine/Beanstalk. I believe the initial time investment is worth it because if the project is even a little successful, I never even have to think about infrastructure. To me that's important because I hate spending time on it. I'd rather do customer discovery or feature building. And now that I know how to set it up, I can set up entire new projects extremely fast, and reliably. It's a life skill that I had to learn at some point (as an engineer) and I just did it earlier. SSHing into the machine and doing a git pull every time I deploy, and SSHing into the machine to make every minor environment change over time will drive me crazy as I'm iterating through the product. Isn't that the case for you? Currently one command takes care of everything. I just need to focus on business. To add to this, the strong infrastructure definitely "delighted" my customers. I would fix bugs in minutes because of the quick deploys/setups and nothing ever went down. Some automatically assumed I had this whole team behind me and I kinda went with it for more $$ lol.
- vlod 5y ago>I guess our difference is opinion is when you want to invest your time learning Yes I think so. I'm very focused on delivering business value as soon as possible. There is often a lull after the first version where the biz endless discusses and re-evaluates everything. I use this as time to learn. Of course, the next time around you start from the new point and learn something else to make things better/faster/automated. Now I'm at a point that I really don't do what I suggested, becz it's all second nature. However I think for early founders (especially with not much runway), that investment in time can be a time sink where they are thinking they are in motion, but it might not be that important for the short term. In my experience, short term user feedback is important as the number of very early pivoting I've experienced (at startups) is frankly ridiculous. Sounds like you did things more grown-up than I experienced.