Hacker Newsnew | past | comments | ask | show | jobs | submit | diesal11's commentslogin

I've dealt with backends that refresh a CSRF token on each valid request and return it in the response as a cookie. In those cases a solution like this may be needed. Not optimal but, we don't always have control over the backends we use, especially then they're provided by a third party.


Eh, the implementation is all Javascript and can be approached in any language. They're just providing function signatures with types so the candidate knows what they're working with.

Also the signatures are Typescript, which really isn't that far off in the context of an interview. Even in a pure JS codebase it's not uncommon for IDEs to pull the TS definitions of packages to provide basic type checking. But even pure JS libraries will normally provide typed signatures in their documentation.

If anything I'd say this shows that the interviewer is prepared, by ensuring the candidate has what they need to complete the question.


My company doesn't make more $$$ because i decided to spend a day setting up an EC2 over Lambda or a similar PaaS solution. If anything i've lost valuable time that could be spent elsewhere. Especially when stuff starts going wrong or i have to schedule time to manually apply OS/Runtime security updates.

> The cloud has made otherwise smart people into unthinking drones.

The cloud has allowed smart people to focus their time on unsolved problems, not waste hours/days setting up linux for the upteenth time.


It’s fiction that configuring the cloud is easier than configuring a computer.

I’ve worked at big companies with smart people who burn days and weeks trying to get IAM, gateways, vpcs, firewalls and lambda to play together. Let alone the ongoing nightmare of ops/dev interaction.

Complete cloud fiction.

The worst problem is the giant pile of cloud spaghetti you end up with and no one has any idea what connects to what and what depends on what. Easier to just accumulate more and more resources which cloud companies love.

Just run a computer, it’s easier.


> It’s fiction that configuring the cloud is easier than configuring a computer.

We're arguing opinions and trying to apply logic.

Some people find lambda easier and it must be true that lambda fits certain workloads better. Some people prefer VMs or on-prem or other long-running services. I prefer both in different cases.

> The worst problem is the giant pile of cloud spaghetti you end up with and no one has any idea what connects to what and what depends on what.

Yes, it takes discipline to use the best tool for the job. "You should do X for everyting" is not the right approach, however. This argument is moot.

Right now I support:

* Lambdas for some very expensive infrequent number crunching

* Lambda-like on edge for fast response services that require low latency

* VMs for always-on services

* Computer in a closet for backups, logging, metrics, etc.


To be blunt that sounds like operator inexperience. Throw someone who's spent their life setting up Windows servers on a Linux box and you'd hear similar resentments.

At the end of the day you still need to configure the instances for things like auto scaling, security patches, logging and so on. IAM & VPC still come into the mix when running on EC2, so you've avoided nothing.


Having made money supporting both on prem, managed servers and cloud instances, my billable hours for cloud setups always ended up far higher, because the setups were invariable more complex.

You haven't avoided much of you replace lambdas with ec2. You do if you replace it with a rented managed server or even a colo.


Your people may be “smart”. But they aren’t “experienced”.

Did they use the CDK or even SAM?


I've experienced ansible for managing a fleet of multiple hundred on-prem servers and now I'm experiencing CDK for managing a large infrastructure.

Both suck real bad.

Infrastrucure is hard, thankless work. Complexity blows up whatever you do.


You literally can tell ChatGPT to create a CDK typescript app that deploys a lambda + API Gateway where the lambda works with Get request and a dynamodb table. The lambda should have permission to read and write to the Table and it will get you 95% there.

Edit: I just did it with ChatGPT 4 expecting it to just create the CDK app. It actually created inline Node sample code as part of the construct for the actual lambda to read from the database.

The last time I did that as a sample to show other developers I still had a little additional prompting to do


I've found that "permissions" are what bites most developers. It's always either IAM or security groups...


Using the ChatGPT prompt I said above, it did the permissions correctly

    table.grantReadWrite(lambda function)
Just as an experiment, I’ve thrown Lambda code I’ve written from scratch into ChatGPT and asked it what permissions it needed. It got it right.

ChatGPT is well trained on everything AWS related. It can transform CloudFormation to idiomatically correct CDK or Terraform.

I hate to say this because it sounds like an appeal to authority. But I really want to set context. I used ChatGPT for projects while I was working at AWS ProServe and since I left. They were generic utility scripts with no proprietary business related code.


Neat! I personally hate writing Terraform (Does anyone like it?)


> It’s fiction that configuring the cloud is easier than configuring a computer.

> Just run a computer, it’s easier.

Statements made confidently while also being totally untrue.

> I’ve worked at big companies with smart people who burn days and weeks trying to get IAM, gateways, vpcs, firewalls and lambda to play together

Working with incompetent people is not an excuse.


They probably do make more money… actually. At least in net profit.

Cost in time to setup a bare metal, production quality k8s cluster with all the bells and whistles from the cloud: 2 weeks and a skill I will have forever. In fact, the second cluster took 4 hours.

Monthly cost: $240 per month.

Time to spin up a new worker, using cloud compute for elastic load beyond base load: 5 minutes.

Base load capabilities: 120ish cores, 1tb ram, ridiculous terabytes of storage.

Cost to run on managed k8s in the cloud: $5-20k per month.


We are talking lambdas here, not 1TB ram workers.

I had to run a authenticated webhook forwarder outside of the out firewall. Yes, I could have made a real machine, but I've made a lambda instead. It's costing us less than $2/month and I spend zero energy on maintenance, security checks, etc. And all config is in a single git repo that anyone can read and understand - there is zero chance of someone ssh'ing into server for a quick fix, then forgetting to record what they did.

Real machines are great for heavy loads, but you just cannot beat lambdas for the lightweight stuff.


> They probably do make more money… actually. At least in net profit.

It's my company so I think I'd know :)

Also what exactly are your estimates here? Where are you getting that kind of capacity for $240 a month?


Out of the box lambda costs $0 when not in use, built in autoscaling, automatic runtime security updates, stdout straight into Cloudwatch, docker support...the list goes on.


I'm pretty sure they outsource/fund a fairly large amount of the work, the article mentions Igalia & from memory Codeweavers are largely responsible for Proton.

Valve itself is a pretty small shop. Although their own efforts & funding absolutely should be praised.


> I'm pretty sure they outsource/fund a fairly large amount of the work, the article mentions Igalia & from memory Codeweavers are largely responsible for Proton.

Userspace stuff for sure. But the drivers are mostly Valve.


Take a look at the PDF of the talk from the article. There are numerous examples of Igalia contributions to the kernel.


In 2008 they outsource all the kernel work I read


Function components with MobX Observers are a godsend and far better than anything Redux. MobX doesn't get enough credit imo.


Massive fan of Secretive myself. Use it for all my SSH keys.


> The platform is open source.

Android is Open Source, Google Play & Google Play Services are not. Developers are free to build Android apps that don't use anything related to Google Play.


And, as far as I can tell, Google is the one making most features and patches to AOSP. Just because it's OSS doesn't mean it is operating independently, running only on donations.


Naming things can be hard.

How would you describe the distinction between these two command types?


How about "infrastructure" and "interface"?


Infrastructure is certainly not unambiguous here.


Less than "porcellain", which doesn't have an obvious meaning in this context. Other terms could be "implementation" or "internal".


From the primary git manpage:

      GIT COMMANDS
         We divide Git into high level ("porcelain") commands and low level
         ("plumbing") commands.


There's Checkboxes for iPhone, iPad & Mac, if Mac is unselected then this error will appear.

Very much up to the developer


Except the checkbox is not called "prevent to run on M1". Actually, bringing up the iPad is the perfect counter example since unchecking the iPad checkbox does not prevent your app to run on the iPad, it just will run on the iPad as an iPhone app scaled.


Dude, why are you still arguing? You were shown to be wrong and talking out of your rear end.

Just stop already.


I haven't seen any counterargument yet to what I said so far. I do get it, Apple's does whatever they want anyways, it's their decision, but at least they should own up to what they chose.


It’s very clear how developers can decide to limit the targets for their apps. What are you missing? Maybe I can help explain further.


The checkbox does not say it prevents to run it on the M1 but states about the availability on the store, it's called "Make this app available", I can also help you by providing actual screenshots if you want if you don't believe me.


As a developer, if I untick that checkbox. I expect it not to run on mac M1. I don't want users to be able to run it, from store or otherwise.

I unchecked that box because I haven't developed with mac in mind and don't want to provide bad experience.


And?

Do you think a developer who ticks that checkbox is going to be unhappy with this functionality?


I don't know, nobody asked them? Hence why this error message is poorly worded.


Literally nobody but you cares.


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

Search: