Live data from Hacker News

The Serverless Revolution Has Stalled

infoq.com

261–270 of 670 posts

Re: The Serverless Revolution Has Stalled

#261
post #25

Kind of surprised the article didn't mention lack of reasonable development environment. At least on AWS, the "SAM" experience has been probably the worst development experience I've ever had in ~20 years of web development. It's so slow (iteration speed) and you need to jump through a billion hoops of complexity all over the place. Even dealing with something as simple as loading environment variables for both local…

AWS tooling is one pain point

Yes, SAM sucks. Boto3 sucks. I mean, yes, the AWS APIs are not the most obvious or ergonomics thing.

Re: The Serverless Revolution Has Stalled

#262
post #147

Earlier quoted context omitted.

Take a look at the [CDK]( https://aws.amazon.com/cdk/ ) if you haven't already. It lets you define your infrastructure using TypeScript, which then compiles to CloudFormation. You can easily mix infrastructure and Lambda code in the same project if all you're doing is writing some NodeJS glue Lambdas which sounds like what you're looking for. There's a couple of sharp edges still but in general it just 'makes sense'.…

This doesn't solve the general lack of observability, lack of logging, and slowness of CloudFormation itself.

AWS Lambda logs to Cloudwatch, and has monitoring out of the box.

Re: The Serverless Revolution Has Stalled

#263
post #241

Earlier quoted context omitted.

And I’d argue the mere possibility of the server breaking at any time contributes to non-negligible amounts of sustained psychological stress.

Yes, this exactly. The fact that I can guarantee that my code is running, and have entire massive teams at Amazon whose literal job title is to keep my code running, it is such a freeing feeling. I might be able to delete rows from Dynamo from my code messing up, but Dynamo will never go offline.

The psychological effects of technology seem often overlooked—and they’re hard to quantify.

I wish there was some easier way to quantify the “soft” aspects of everything that surrounds us, e.g. the long-term impact of beautiful and usable UI design, the reduction in “ambient” psychological stress, the impacts of chaos/consistency on how we feel, any robust measures of happiness, excitement, relaxation, etc.

They seem to be such important attributes, but not as easily measured as a latency. Which in turn makes reaching consensus harder—and probably why design by committee doesn't work?

Re: The Serverless Revolution Has Stalled

#264
post #241

Earlier quoted context omitted.

And I’d argue the mere possibility of the server breaking at any time contributes to non-negligible amounts of sustained psychological stress.

Yes, this exactly. The fact that I can guarantee that my code is running, and have entire massive teams at Amazon whose literal job title is to keep my code running, it is such a freeing feeling. I might be able to delete rows from Dynamo from my code messing up, but Dynamo will never go offline.

Are you really sure?

Re: The Serverless Revolution Has Stalled

#265
post #96

Earlier quoted context omitted.

I'd add on top of that, that it provides even more value when volume is usually low and sparse, but unpredictable. If you have a server that can handle up to 100 requests at a time, but you're only getting one or two a day, you could probably save money by switching to serverless. On the flip side though, you're also a bit screwed if 1000 requests all come in at once, since, even if you have some autoscaling solution…

> Serverless provides a solution for that case as well, since you have almost unlimited resources. Not really, since it takes a few seconds to spin up all the serverless instances, so your app response becomes really erratic. Then you need some magic to deal with database connections from 1000 lambda functions. All of them use their own since they cannot pool.

I've never understood why people who would never dream of using a single-instance application server are ok with using a single-instance datastore. Of course your datastore needs to autoscale just like your application does. Duh.

Re: The Serverless Revolution Has Stalled

#266
post #28
post #5

Serverless is the new microservice. Fortunately, for the most part it’s fallen flat on its face and for good reason - most companies don’t need it: it adds unnecessary complexity for minimal gains.

Wasn't the point of serverless to reduce complexity?

It is complex, but it makes things simpler. Kind of like Chrome is way more complex than netcat'ing html, but it makes browsing the web way simpler.

Re: The Serverless Revolution Has Stalled

#267

Earlier quoted context omitted.

soc2 compliance for Lambdas happens through AWS https://aws.amazon.com/compliance/services-in-scope/ not through our team's engineers. So for example, if we have a service deployed in an EC2 instance, we have to update the instance(s) every month by a certain date. Sometimes, we have to update early if there is a severe security issue. We also have to manage things like security software that has to run on every inst…

I guess in places where I've worked we've had Ops folks that handled things like access controls, managing secrets, servers, network, etc. Usually in space rented in a commercial datacenter, where the datacenter handles power, cooling, physical security, and where the building has a diversity of internet providers. Its a team effort. In my opinion, software developers shouldn't be responsible for OS level patches, OS…

I am an operations folk lol. Hence having to patch instances.

Re: The Serverless Revolution Has Stalled

#268

Earlier quoted context omitted.

To me, Google Cloud Run is the sweet spot between Heroku and Serverless. I pay as much as serverless but there's no vendor lock in or specialized programming environments. Fantastic job. By the way are websockets ever going to be supported on managed cloud run?

When you say there is no vendor lock in, are there other companies that will host the container for you? Can I just deploy my container to three different places and choose where to point my URL? I'm right now faced with re-wiring a Python 2.7 App Engine App and feeling the pain of the lock in.

Yes! I have an application I can deploy to Heroku, Dokku, Google Cloud Run, AWS Fargate, old-fashioned VPS host, and I suppose a bunch of other hostings like DigitalOcean's newly announced PaaS which I haven't tested yet.

It's just a 12 factor app with a Dockerfile.

What makes Google Cloud Run special between all these is that it's fully managed with an easy auto-scale model and only charges you only for the time requests are being processed.

Re: The Serverless Revolution Has Stalled

#269
post #2

"Limited Programming Languages" AWS Lambda can run all programming languages via layers. Cloudflare Workers can run all programming languages that compile to WebAssembly. "Vendor Lock" True, but being locked into Kubetnetes isn't a cakewalk either. "Performance" Cold-starts aren't a thing for Cloudflare Workers and can be mitigated for AWS Lambda. AppSync and API Gateway don't even have them if you directly integrate…

cloudflare workers has been doing very well for me too. the only problem is it's too tight down to CF

Re: The Serverless Revolution Has Stalled

#270

My workplace uses a lot of serverless features on AWS - Lambdas, SWF, SQS, API gateway, as well as auto scaling instances on ec2/eb. Some of it’s nice. Most of it isn’t. Here are the pros: it’s great for quickly scaling up or down, and we don’t have to worry about physical infrastructure. Here are the cons: Documentation is inadequate. The docs are often verbose, but outdated or incomplete in critical ways. There als…

If you're doing anything through the GUI, that is absolutely problematic - for all the reasons you mention. You should be using CloudFormation or Terraform exclusively and configure nothing through the GUI.

The Apache templating language is awful, no question.

Post reply on HN