from Hacker News

AWS Tools Suck

by heldsteel7 on 12/17/21, 9:07 AM with 72 comments

  • by angarg12 on 12/17/21, 10:52 AM

    > This is not a case of “not enough resources'', this is a case of the project not getting the internal priority to invest in improvement.

    This is only partly true. Fun fact: Amazon is so big and the churn so high, that hiring talent has become the bottleneck.

    So yes, parts of Amazon have prioritised new/more features over improving existing ones, and some are drowning in a sea of legacy. But also parts simply don't have the number of experienced engineers they need to deliver all their goals.

    Disclaimer: I work for Amazon.

  • by cle on 12/17/21, 10:49 AM

    Long ago AWS reached the point where feature prioritization was discussed in terms of millions of $$ in revenue. When you have CTOs at Fortune 500 companies waving 10s of millions of dollars in front of your face to build a feature, it's much much easier to prioritize building that over one that is requested by smaller developers with uncertain revenue impact.

    > The only conclusion is: bad tooling isn't affecting their sales.

    I actually think bad tooling does affect their sales and long-term growth, but that they're blind to it because they can't easily measure it, and they have an obsession with data-driven decision making.

    I suspect this is also exacerbated by hiring problems due to their reputation as an employer, forcing them to make tradeoffs that sacrifice dev UX more often than they'd like.

  • by decidertm on 12/17/21, 11:06 AM

    Yes they might suck, but that's because of its success and the complexity of the problem - it'll get better over time.

    However aws-sdk doesn't need to be 70mb, the console doesn't need to be slow and they don't need over 10 unique services to deploy containers.

    We're working on a much improved dev ex for cloud providers and Kubernetes at https://northflank.com - with a fast real-time console, a well documented and useable API with auto generated CLI and API clients. 30 seconds of fun - can I get a production ready CI/CD setup for a repo(s) in 30 seconds? Can I get a HA Redis, Postgres, RabbitMQ provisioned and connected to my code in 30 seconds? These are the questions and solutions that developers will be asking for more and more.

  • by jillesvangurp on 12/17/21, 11:43 AM

    Actually they can't easily fix their mess of tools because they have so many customers vendor locked into them. Vendor lock-in is actually the primary reason for the tools sucking so much: it's a feature not a bug and it's intentional.

    It prevents customers from leaving and it prevents customers from lowering their amazon bills by making more effective use of what's on offer. Amazon makes it really easy to spend money on their platform but very hard to save money by simplifying or more effective use of resources. That is their business model. They always offer an easy and expensive and slow/convoluted, slightly less expensive path for doing anything.

    If it was easier, countless companies would be saving a lot of money and Amazon's profits would be decimated. Or worse, they might be tempted to jump ship to a competitor. The primary goal of complexity is to keep customers after they buy into that.

    Of course, over time it has exposed them to companies trying to compete with them with a better developer experience. To mitigate that, they invest continuously to ensure those companies never quite catch up. And of course that keeps on adding complexity. Which is good for them.

    Most big software companies work with the same business model. IBM, Oracle, Salesforce, SAP, etc. it's all about vendor lock-in through complexity with those companies. It's how they make money. Lure customers in with whatever they need, sell expensive stuff, consultancy, training, etc. and before you know it you are in a decades long relation ship with your customer where you basically cream off their revenue on a monthly basis. AWS is here to stay. However, that doesn't mean it is the smart thing to be using right now for small new companies.

  • by moltar on 12/17/21, 12:15 PM

    I don’t know, maybe I’m In the minority, but I quite like the tool chain around AWS.

    AWS CDK is a breakthrough in infra as code. It will be the standard in a few years to come.

    AWS SDK v3 is quite ok and will get better soon.

    AWS CLI is maintained and has everything well documented.

    Most popular services work well together.

    IAM is very powerful and a well thought out solution.

  • by 2ion on 12/17/21, 12:12 PM

    > Reason 2: AWS doesn't sell based on Dev Ex

    AWS's core is developer experience.

    AWS is an API. Anybody who does not realize or can not exploit this fact this pays massive premiums for using it (probably a lot of businesses which should have no business using AWS directly).

    The application tooling is extra. And as far as I can tell, AWS is the only major public cloud that has decent coverage by tools of any flavour against their API, and they have the most decent set of language SDKs available. I am not familiar with GCP but anything Azure puts on the table is a catastrophe when compared to the ease of using boto3 to get a certain flow working.

    Admittedly, their console has some defects it ought not to have, but with some systems and software development knowledge, you can grok all of the tooling AWS releases pretty easily.

    The biggest of my problems with AWS that besides their API, some of their managed services are just not on the quality level as their core services (ec2, s3, ...).

  • by jsmith99 on 12/17/21, 10:56 AM

    My favourite example is that if you have insufficient permissions the CLI may just give you a detailed but completely random and incorrect error. Eg if you are setting MFA Delete but you are not root, the error message it displays is the one for Dev Pay which is a nice way to waste users' time.

    Eg https://stackoverflow.com/questions/45602558/devpay-and-mfa-...

  • by sparsely on 12/17/21, 10:50 AM

    Even their console has really basic bits of weirdness and friction. Like if you want to view the logs from a fargate container running in ECS (possibly one of the most boring things you can do on AWS): * For some reason, the log viewer within the ECS console has worse filtering capabilities than the Cloudwatch one * Attempting to view logs for an instance which crashed more than a few minutes ago is very risky - sometimes the last ones are either missing completely or very hard to find in the UI (Cloudwatch will have them though!) * They tried removing it in their ECS console revamp briefly
  • by xmodem on 12/17/21, 11:21 AM

    I got bitten recently by AWS documentation. Several pages strongly imply something to be true, which in practise was 100% false. If I'd wanted to make a living reading text between the lines to work out how they're trying to fuck me, I'd have gone into law.
  • by rpsw on 12/17/21, 11:18 AM

    It only has to be as good as it's competition. Haven't used GCP, but would pick AWS over Azure when it comes to tooling (and a few other categories). AWS documentation tends to be better - for example, Azure fails in giving quick example output for CLI commands. The AWS Console is better than the Azure Portal.
  • by mschuster91 on 12/17/21, 12:02 PM

    > Reason 2: AWS doesn't sell based on Dev Ex

    Hard disagree here. The reason why AWS can get away with shoddy tooling is that the competition is orders of magnitude worse. Azure's web UI is an unmitigated desaster, and while I never used GCE I can say I won't ever use it for the simple fear of some "AI" running amok and killing off my Google account - too many horror stories here on HN for my taste.

  • by mehukatti on 12/17/21, 12:43 PM

    I'm quite surprised at this blog post, since AWS has popular tools like CDK that make creating cloud resources developer friendly, while leveraging familiar programming languages and high level constructs. A lot of the partner and 3rd party options are more targeted (imo) for supporting multi-cloud use case with a unified tool and to provide an alternative to AWS native tooling.

    Disclaimer: I work at Amazon.

  • by hzlatar on 12/17/21, 6:39 PM

    I agree with points 1 and 2, but not with 3.

    AWS isn't a developer tools company. It is ops tools company. In particular enterprise ops tools company. Their customers are IT managers and system administrators from large companies. That explains 1 and 2.

    Famously, AWS is organized as huge bunch of two pizza teams. Essentially, it's a huge incubator for internal startups. That's how they manage to churn out new features so frequently and try out and discard unsuccessful products. Also, that is why their tools looks so damn inconsistent and why you never know what's working with what.

    Regardless of money, they can't make the tools better without sacrificing something. And that is a space for competitors. Work on developer centric tools for small and medium sized companies.

  • by Ozzie_osman on 12/17/21, 11:40 AM

    I think there are a few things going on. First, it's tools designed by people who work at big companies. So the tools are insanely powerful, but there's high overhead to use them. Simplicity matters a lot less

    Second, there's an arms race in cloud infra. So it's more about adding functionality, ticking the box, being ahead, than being simple and usable.

    Finally, frankly, poor design. The AWS console is a usability nightmare.

    That said, AWS is awesome. It's just infuriating to use if it's not your day job and you don't know it in and out and aren't willing to spend days reading their docs.

  • by robmoorman on 12/17/21, 10:54 AM

    And still the and miles ahaead of "user experience" than their competitor (they are pretty much unworkable for developers, it's insane how bad that ux is).
  • by marstall on 12/17/21, 1:28 PM

    Have been an AWS user by default since launch. Basically try to muddle through, have had some good experiences (RDS, S3, EC2, Amplify hosting) and some frustrating moments where I threw up my hands (other parts of Amplify, doing custom stuff with Route 53).

    Now I'm using Firebase and Google Cloud Storage on a new project, and I've generally found the UIs to be clearer and better-organized than AWS, and the documentation more accessible and easier to understand.

    These GCloud tools really do feel tailored with the average hacker in mind, something I often don't find at AWS.

    UI/docwise, AWS kind of expects you to to come to the mountain, not the other way around.

    As an example, getting Firebase Auth up and running was worlds easier than Amplify Auth, which I flailed helplessly at and gave up on.

    Curious to learn more about GCloud, see if the rest of it is this good.

  • by tobltobs on 12/17/21, 1:09 PM

    > If the decision maker cared about developer experience why do they keep choosing AWS?

    If you have to go to the cloud what else is better. Google, MS? If you press hard enough the same amount of shit drops on your feets.

  • by whoknew1122 on 12/17/21, 3:28 PM

    Catchy title that's sure to gain interest with the hate-everything-Amazon-does crowd. But the only tool they point out is IaC.

    CloudFormation works in both YAML and JSON. Don't like that? Use the CDK to write in your favorite language and that will be transformed into CloudFormation template. I'm not seeing what sucks here.

    The reason most people use Terraform or Pulumi is because they want something that's cloud agnostic. That doesn't mean CloudFormation itself sucks -- it means that people have a different usecase.

  • by manojlds on 12/17/21, 10:46 AM

    Was just playing with Amplify Studio and have no clue who it's targetting and who will be happy and for what use cases.
  • by buzzwords on 12/17/21, 11:00 AM

    So how does this work? Features are delivered then another team adds capabilities to the cli/console?

    Say the eks team responsible to deliver a cli/console tooling?

    It's an interesting problem to solve. Any insight on how to go about managing this is greatly appreciated.

  • by TruthWillHurt on 12/17/21, 11:24 AM

    Uh... what?

    Have you tried the serverless tooling from GCP? doesn't hold a candle to AWS SAM.

  • by AzzieElbab on 12/17/21, 12:55 PM

    Comparing Aws tools to Terraform and Pulumi doesn’t feel fair. Compare against Azure and Gcloud. IMHO all cloud devops tools kind of suck, third parties included, but man do they cover a lot of complexity
  • by jmacd on 12/17/21, 1:39 PM

    AWS once tried/looked at/toyed with buying my company, mostly on the basis of the 'developer experience' we had created.

    In the end they didn't buy us and the aped everything they learned and launched a carbon copy product 18 months later. rages

    ... but...

    one thing that caught me off guard during the process was that their teams had no idea about developer experience, didn't understand workflows outside their own domain, and didn't pretend to understand any of it.

    Honestly the only card they really had to play was being aloof and condescending. Of course we were very deferential to them the entire time, because AWS.

    This was one group within what is a massive organization, so YMMV, but if they come knocking my suggestion is to be aloof, kind of a jerk, and don't share anything that isn't on your www. My guess is that would really be what gets their juices flowing.

  • by adabaed on 12/17/21, 11:02 AM

    IMO in this case the documentation is what sucks. AWS works if you know how. The problem is precisely that, make it work.
  • by minus7 on 12/17/21, 4:40 PM

    Does this article not need to say more than the <title> and a picture of tools? Because that's all I see
  • by Aeolun on 12/17/21, 10:44 AM

    They do suck.

    They also have everything.

    As long as there are other companies building on top of AWS, I’m pretty happy with them.

  • by hericium on 12/17/21, 11:01 AM

    It seems that JavaScript is required to read this post?
  • by k8sToGo on 12/17/21, 11:17 AM

    Seems like this website is blocked by Cisco Umbrella.
  • by qingwei91 on 12/17/21, 4:02 PM

    I wonder how AWS compare with their competitor
  • by mobutu on 12/17/21, 1:25 PM

    what a stupid rant