Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I understand where you are coming from.

I'm just 'starting out' with a lot of this, despite a few years building/hosting websites, and these sort of services are the things I'm starting to look at.

I'm completely disinterested in Amazon's offerings chiefly because they're so obtuse. Why should I expend so much cognitive load just figuring out what each service is and what it could do for me?

It's undoubtedly possible to do, AWS has a hell of a lot of users, but I simply am not going to perform the mental gymnastics to work out what they could do for me, let alone work out the price (which seems cleverly designed to keep the final figure a total mystery).

Maybe I'm too early in my progression to really need this stuff yet ( I probably am TBH) and so I'm not motivated enough to really dig into it, but the point stands - why should I need to be?



Because when you figure out how to use them, you can save a tremendous amount of time and energy, and build sophisticated systems with simple code and little effort. When you have the need in a certain area, a lot of them will feel like "Wow, I didn't know that someone could automate this for me with so little effort compared to doing it myself". Most of it becomes increasingly valuable as you operate larger systems with many moving parts.

These AWS services are each solving a separate problem that people encounter, and usually embody a sort of "design pattern" like a distributed queue, or a load balancer, or a cache. Microsoft Azure and to a lesser extent Google Cloud Platform have similar lists of services (many services, each doing a different thing): https://azure.microsoft.com/en-us/services/

It's really just like figuring out any other software ecosystem, though. If you stacked up a list of open source libraries or commercial libraries in a certain area, I'm sure it will feel the same. For example, so you want to get one application to speak to another over RPC. Well, you could use Apache Thrift, or Google Protocol Buffers, or Cap'n Proto, or Swagger.io, or SOAP or ASN.1 or I'm sure countless other things, and that's simply to perform the same task. What if you wanted a message queue? RabbitMQ, ZMQ, IBM MQ, ... I don't know if anyone has tried to put all of these on the same page and product matrix, or even keep track of them.

There's just a lot of stuff out there to learn and take advantage of. Being an effective software engineer in business is just as much about reusing existing stuff as it is about building new stuff from first principles. I'd say it's actually more about reusing stuff, since all other things equal it saves a lot of time. Don't build yourself or manage yourself what you can use for free or buy unless it's your core competency.


"When you have the need in a certain area..."

I find this is the key to understanding a service, library or technology. It is very difficult for me to wrap me head around something if I haven't yet encountered the problem it solves.

For example, I'm sure Docker is awesome, but I don't really understand it yet because I haven't yet felt the pain Docker takes away. So I enjoy following new technologies, but when I don't really see the point I just assume I haven't experienced the pain the new technology takes away.


Did upvote your sincerity.

I've work with complex and critical linux firewalls, and I love some AWS networking aspects...

Your comment was like a fresh air of sincerity. We all need to deal with domain specific issues. You need to be practical to keep going on.


I know you are right (of course), I just wish is wasn't so much of an upfront cost (cognitively).

I do think the page shared here is fantastic though and has changed my attitude somewhat towards AWS.


Anecdote: after deploying and maintaining applications in Opsworks for a while I feel it's comparatively incredibly hard to do that anywhere else.

The services they offer are great. Remember that you don't have to learn them all at once though. I've worked with amazon services for a couple of years and I still don't know/haven't used most of them. Just use what you need, really.


You shouldn't. I've spent months trying to figure out a few services to launch some apps and it's been a complete and utter waste of time. Yes, there are a lot of services, but the platform is incredibly buggy, the docs beyond unusable and unsearchable, and the customer support extremely slow. Not only that, but you'll get stuck in a proprietary system that's going to charge you many times what more traditional hosting options would. Here's a different experience that's probably very similar to what you'll go through: http://lucianux.com/blog/2015/08/26/aws:-i'd-rather-cut-my-o...


In comparison to... (?) can traditional hosting scale vertically AND horizontally (worldwide)? can it downscale when there is no load?




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: