Hacker News new | ask | show | jobs
by inviromentalist 2327 days ago
My biggest concern is being dependent on these systems, the systems changing, and it breaking the process.

I have the mentality of self hosting and diy, cheap, better understanding, and imo more reliable.

Most these services have a learning curve anyway. Are the services really worth it?

3 comments

The mentality of DIY and self hosting is the default for most hackers, and in my opinion its the number 1 thing holding back most engineers who build businesses.

I have a buddy who’s an amazing engineer, he takes pride in doing everything himself and spent years building a platform from the ground up. Elegant, fully automated, built in his favorite languages and frameworks. 3 years in it makes 50k a year.

I have another buddy who is non-technical, 2 years ago he built an ugly, janky platform off Wordpress and some plugins in a month. He does nothing himself, outsources everything. His business does $4mil a year.

One of the problems that a lot of engineers have is failing to recognize that their time has a cost. Spending 4 extra hours of your own time setting up a mail server that will cost you $5/month to run instead of paying $10 per month for Office 365 or some other service is not really saving you money because that initial 4 hours of labor is time you could've spent doing other things for the business. It's not free time.

I find it really helps to put a dollar value on an hour of my time. In that context, if 1 hour of my time is worth $75 and I've spent 4 hours setting up this mail server, I've spent $300 on my labor in addition to the $60/year for the cost of the server. Obviously this doesn't work in all cases but it really helps me determine when it's worth it for me to spend my time doing something and when it's better to outsource it.

Counter points-

There is no telling if it will actually save time. You could be messing with configurations, have to learn their docs, etc... Or future migration could be expensive in both time and money.

The cost savings can/do exist. Especially as things scale or last a long time.

Custom is more configurable.

People overestimate their time worth? Sure you can theoretically work for 75$/hr, but can you get overtime/additional revenue that easily?

What is your value add? If it's software, I might suggest custom is best because that's your business. If you mash a bunch of software suppliers together, you become a middle man. I'm not saying that doesn't work, but I've seen companies go back and forth on this.

Another classic mistake is worrying about scaling issues and future configurability or migration when you don't even have a proven business yet.

There's a 95% chance your business won't last long enough to reach any scaling or migration issues. Tackle those problems when they start surfacing.

> There is no telling if it will actually save time. You could be messing with configurations, have to learn their docs, etc... Or future migration could be expensive in both time and money.

Sure. Every situation is different. This isn't meant to be universal. There absolutely are cases where rolling your own may be more efficient. However, my argument wasn't that existing solutions are no effort, just that they are often less effort than trying to do something completely custom or self managed.

Regarding future migrations, the same can be said in the opposite direction as well. You may get to a point where you need to migrate away from your custom solution to something more standard and you'll face similar time/money issues.

> Custom is more configurable.

Sometimes this is the case and sometimes it's not. Sometimes custom is very narrowly focused and as new use cases emerge requires significant rework.

> People overestimate their time worth? Sure you can theoretically work for 75$/hr, but can you get overtime/additional revenue that easily?

The number will vary for everyone. $75 may be too high for some and too low for others. If you're an attorney sacrificing billable time to do something administrative that could be outsourced, $75 may be low. The idea is to tie an actual realistic number to the value of your time.

> What is your value add? If it's software, I might suggest custom is best because that's your business. If you mash a bunch of software suppliers together, you become a middle man. I'm not saying that doesn't work, but I've seen companies go back and forth on this.

In software, I think it's important to know what your product is and to focus on your core competencies. I've seen lots of engineers decide that they need to build something from scratch that doesn't directly relate to their product. Could you build your own credit card processing system? Sure, but unless your business is credit card processing, it probably makes more sense to use something like Stripe. The same goes for lots of different aspects of your product and business.

I'm simply suggesting that you have a limited amount of time in each day and you should do what you can to get the most value out of that time. Don't ignore the value of your time and sacrifice it needlessly.

I was discussing lack of space in our office with my boss and how difficult it'd be to add extra people should we suddenly have such a need.He replied: these are nice problems to have. Same with scalability of your software: if you get to the point where it's an issue, you just hire much smater people with some of that momey you've been making so far and they'll solve it all.
> There is no telling if it will actually save time. You could be messing with configurations, have to learn their docs, etc... Or future migration could be expensive in both time and money.

This refers to self-hosted / diy tools: you have to do them all up-front. Most SaaS don't require configs or deep-learning compare to FOSS. Self-Hosted/DIY tools also require future migration. Especially when the self-hosted/DIY tools did not capture future requirements due to limited vision.

> Custom is more configurable

Technically SaaS provides API which allows folks to stitch up a few SaaS-es to automate their workflow if needs be.

I'd love to be the guy who outsources everything, but I don't have much cash to spend on these. Especially for someone based out of developing economies; $10 here and $25 there for a handful of SaaS services quickly builds up to 15-30% of your take home salary.
FWIW if buddy #1 lives in an area where 50k/year is enough, I would say it's still better off than most of the hacker-types, which also do this, but in their free time. At least he got to build a business around his hobby.

But I do understand the point you're trying to make. Obsessing over doing it yourself and perpetuating the NIH syndrome does more harm than good. There is a lot more chance that one's business will go out by their doing compared to going out because one of the services they depended on went out.

One is an engineer, the other is a businessman (salesman and fund raiser).
One is someone that over engineer, the other know where to put time and money to maximize returns.
Both are imaginary thou.
> Are the services really worth it?

Yes.

> self hosting and diy, cheap, better understanding, and imo more reliable.

What is the cost to get something that has a better uptime than the SLA's of the services you are replacing?

Focus on getting to paying customers. After that, you'll see where your time is better off spent.

Example: I just signed up for a trial for Stripe Sigma. I was going to build my own basic BI using their API. Instead it costs my business ~$10/mo at our size. Now I can spend what would have been time to build, test, deploy that service, to instead just answer the business questions I had.

The problem is no using a service and having it briefly be unavailable. The problem is that you use a service, get reliant on it, and then they 10x their price, remove key features, and then go out of business.
At that point, if you then build your own, you're still ahead.
Well, you could also be outsourcing your "build, test, deploy" to someone else and save even more time!
Actually, it would take me more time to write the spec, than it would be to just sign up for sigma.
It's the perennial Build vs. Buy debate.

The tradeoff of buying is that yes, you are at the will of the service provider, but the alternative is taking on all the technical debt of building your own services. For most, $N/month is cheaper than putting the maintenance hours in, even if it means needing to find another service provider if one is changing.