Live data from Hacker News

Cloud, Why So Difficult?

winglang.io

141–150 of 158 posts

Re: Cloud, Why So Difficult?

#141

(Please take my opinion with a grain of salt, as I might be biased - I'm a founder at a startup that solves a very similar problem). The cloud (and by "cloud" I mostly mean AWS) in general is indeed insanely complex. Not only is it complex and hard to use for dedicated and trained DevOps/Cloud experts, it's even more overwhelming for developers wanting to just deploy their simple apps. This statement is in my opinion…

those 150 cloud experts have a serious conflict of interest wrt cloud complexity.

those 250 developers are likely entrapped by the cloud experts.

this is fine, and is a rich market that should be served.

regardless, perceived complexity or generated complexity are not the same as actual complexity. all of these complexities are real, some are optional.

Re: Cloud, Why So Difficult?

#143
post #45

We decided to use DynamoDB as a cache for our expensive-to-compute statistics from the data warehouse so we can show them to users without putting a big read load on the data warehouse. DynamoDB scales really well right? And big statistics tables don't belong in the main app database. I'll build the statistics in our postgres data warehouse and use a little ruby script I wrote to push them from postgres to Dynamo wit…

lots of learning! also sounds like a bit of pre-existing aws state.

for round two, try:

- spinup a new subaccount to ensure you have total control of its state.

- data goes in s3 as jsonl/csv/parquet/etc.

- lambdas on cron manage ephemeral ec2 for when heavy lifting is needed for data ingress, egress, or aggregation.

- lambdas on http manage light lifting. grab an object from s3, do some stuff, return some subset or aggregate of the data.

- data granularity (size and layout in s3) depends on use case. think about the latency you want for light and heavy lifting, and test different lambda/ec2 sizes and their performance processing data in s3.

lambda is a supercomputer on demand billed by the millisecond.

ec2 spot is a cheaper supercomputer with better bandwidth on a 30 second delay billed by the second.

bandwidth to s3 is high and free within an AZ, for ec2 and lambda.

bandwidth is so high that you are almost always bottlenecked on [de]serialization, and then on data processing. switch to go, then maybe to c, for cpu work.

dynamodb is great, but unless you need compare-and-swap, it costs too much.

Re: Cloud, Why So Difficult?

#144
post #53

I don't understand what that solution brings when you have Terraform? Also linking your code with you infra code, who thought this was a good idea? Last question how actually the simluator works, is it one of those case where it try to emulate some high level concept but then your prod code break because the simulator was 40% accurate?

I wrote about comparison to Terraform here: https://docs.winglang.io/faq/differences-from-other-solution... About the simulator, it is a functional simulator to be able to test and interact with the business logic of the application. There are other solutions, like LocalStack to simulate the non functional parts too.

I mean your comparison is weird, in one line you create a bucket what are the permissions exactly? Why is there no region?

Edit: after reading: "Generated automatically from intent", well it's a red flag for me.

Re: Cloud, Why So Difficult?

#145

Earlier quoted context omitted.

>Less if you use lambda and api gateway. There's the slippery slope into vendor lock-in via combinatorial explosion of complexity

what op means is that for low traffic or no traffic services, lambda scales to zero where ec2 and rds do not. scale to zero is very good when zero usage is regularly reached.

"Run your own container" offerings also scale to zero, all clouds have something to that effect and it doesn't require you to embedded your logic into their tar pit.

Re: Cloud, Why So Difficult?

#146

Earlier quoted context omitted.

Great, now do Linux. Or cURL. Or Clojure. Or Perl. Or Python. Great tools can, and often do come from solo developers without large corporate backing.

So the top contributors of modern Linux are large corporations. cURL is not a framework And isn’t that the ultimate in survivorship bias? How many other languages and frameworks would you have left you screwed if you jumped into whole hog in before they had popular uptake?

Linux was started by one man, and the qualification as “framework” is immaterial to your point.

Re: Cloud, Why So Difficult?

#147

Earlier quoted context omitted.

I heard this described as the "200% problem": when you introduce a new layer to solve your annoyance with learning the layer below it, new users likely have to do 200% of the learning because now they have to learn your new layer and the layer below it because your layer is leaky. I first heard this from a great recent talk by the creator of Chef, Adam Jacob -- What if Infrastructure as Code never existed [1]. This a…

Unless.. you do a really good job, like heroku, vercel etc. Also why is AWS so complicated? That’s where the money is: enterprises!

I believe businesses like Microsoft, AWS, etc. all make their enterprise stuff super complicated as an excuse to sell support contracts. I remember trying to set up Windows Deployment Server, and the whole thing was very unreasonably complicated. I got it working, but I can see why businesses would pay for support contracts just so they have someone to call to walk them through all the esoteric steps, menus, options spread across the whole OS. The other side of it is, if you make your cloud offering super complex then you're pretty much locked into that platform because of sunk cost. Switching from Azure to AWS or whatever would be a huge undertaking.

That's really what frustrates me the most about modern technology. It's like tech and software developers love to rube-goldberg things, and everything is vastly more complicated than it needs to be. The thing is, tech people seem to like complexity for the sake of complexity. It gives them a fun [read: masochistic] puzzle to work on and makes them feel smart.

Re: Cloud, Why So Difficult?

#148

The cloud is renting someone else's computer at a way higher price than it would cost you to use your own. If it makes things difficult, you shouldn't be using it. It is overhyped and it sucks for most use case.

That's basically just the definition of the word "renting". If the owner is doing their job right, it's always more expensive than owning, but it still makes financial sense to rent in many scenarios.

Re: Cloud, Why So Difficult?

#149

Earlier quoted context omitted.

So the top contributors of modern Linux are large corporations. cURL is not a framework And isn’t that the ultimate in survivorship bias? How many other languages and frameworks would you have left you screwed if you jumped into whole hog in before they had popular uptake?

Linux was started by one man, and the qualification as “framework” is immaterial to your point.

And was it actually used or became popular before it was adopted by and had contributions from major companies?

Re: Cloud, Why So Difficult?

#150
Was in agreement until I drilled down to the following statement on the Wing GitHub page and in the docs (https://docs.winglang.io/faq/why-a-language#very-cool-but-wh...):

“In existing languages, where there is no way to distinguish between multiple execution phases, it is impossible to naturally represent this idea that an object has methods that can only be executed from within a specific execution phase.”

This is not true. Several languages (Haskell, OCaml, F#, Scala, etc) allow you to define and use monads. Granted, monads are not something many developers know about … but it may make sense to learn about them before writing a new language.

Otherwise, this is a great read.

Post reply on HN