Hacker News new | ask | show | jobs
by thefounder 2643 days ago
Bollocks! AWS has had few horses(i.e aws ECS) in this race so they waited to see if they can win. Obviously K8 wins over ECS so now they have no choice but embrace K8. The last thing Amazon wants is to be easy replaceable with a different provider. I guess this is same with the underdogs as well(i.e Google/Microsoft) and that's why they do all they can to lock you in with proprietary services(i.e Appengine, Datastore etc).
3 comments

AWS no other choice? I am not sure if you are following what AWS does (like for example the MongoDB story).

>> The last thing Amazon wants is to be easy replaceable with a different provider. I guess this is same with the underdogs as well(i.e Google/Microsoft) and that's why they do all they can to lock you in with proprietary services(i.e Appengine, Datastore etc).

Datastore has S3 API and it is trivial to replace it with other products.

https://cloud.google.com/storage/docs/interoperability

Datastore can't have an S3 API and is not easily replaceable. You linked to a different product(Cloud Storage).
There is some lock-in with Google Datastore, but not with App Engine, at least with the new "standard environment" based on gVisor. I run perfectly standard Go or Python HTTP services.
The thing with Appengine is that even if you run the standard env(which is more expensive and has some limitations) you are highly likely to use Datastore and other proprietary services that are tightly integrated in the appengine environment. The whole thing feels like a bait to lock-in, just like the initial pricing which went off-rails.
The new version of the Standard Environment removed most limitations (and you can still use the Flex Environment when required):

https://cloud.google.com/appengine/docs/the-appengine-enviro...

And using the proprietary App Engine API is not recommended anymore: “We strongly recommend using the Google Cloud client library or third party libraries instead of the App Engine-specific APIs.” (source: https://cloud.google.com/appengine/docs/standard/go111/go-di...)

You can use App Engine with a standard MySQL or PostgreSQL database and S3-compatible object storage.

Like you, I used to avoid App Engine because of lock-in, but they radically improved things with gVisor.

Yet, I agree about the price, especially with the Flex Environment compared to standard Compute Engine :-(

I feel like this is quite a cynical view. Amazon and other cloud providers want to attract and keep users by providing the best product possible. This may come in different forms so some people want easy-to-setup databases (AWS RDS) others want auth (IAM) handled for them, others scalability (Appengine) or maybe email (SES). In order to create these services and to make life easier for those who want them, it may require proprietary technology that results in lock-in. Don't get me wrong. They would love some lock-in but it is not at the forefront of their minds when creating a service.
> They would love some lock-in but it is not at the forefront of their minds when creating a service.

I really find that assertion hard to believe. AWS is notoriously expensive and oddly enough its added value comes in the form of proprietary technologies which require non-transferable tech skills. The lock-in overload goes to the extreme of leading technicians to specialize exclusively in AWS services which leads to the infamous title of AWS engineer. This doesn't happen by chance, but by design. It's like a very expensive mousetrap designed to help victims get in but being practically very hard if not impossible to get out.

The most expensive parts of AWS for us are:

RDS - hosted non proprietary databases.

EC2 - Standard VM hosting

Redshift - a proprietary OLAP database that uses standard Postgres drivers

S3 - object storage. But there are so many S3 API compatible storage providers, there is little “lock-in”

But the fact is that lock-in is overrated. Your CTO is statistically as likely to move their entire infrastructure just because a few engineers promised it would be “seamless” as your DBA is going to move away from their Oracle installation because developers “used the Repository Pattern to abstract database access”.

I feel like often people want to have their cake and eat it. As in they want both freedom to switch services easily and easy-of-use. What I am saying is that ease-of-use sometimes comes at a cost and that cost is lock-in.

No one is forcing you to use AWS. You could build your own private cloud datacenter, implement OpenStack, configure k8 and deploy your docker containers. If a server fails, replace it. Install your updates etc. To me that sounds like a lot of work (assuming I don't have a large organisation behind me) and I would rather have some of that setup for me. It's a trade-off...

What stops Google from open sourcing Datastore, or AWS from open sourcing dynamoDB? These cloud providers with proprietary services are the new Oracle. They are actually worse than Oracle b/c they can cut off your access to your database in seconds.

Google open sourced k8 so that they can get a pie from AWS and then lock you in with other proprietary services.

> What stops Google from open sourcing Datastore, or AWS from open sourcing dynamoDB?

They have invested millions into creating cloud software. If they open source it, what is stopping other firms from taking that software and creating their own cloud offering?

Would you work for free? Would you open source all the work you have done?

Its 2019 and people still confuse the different kinds of "free" when talking about open source software.

(Also, yes, I open source as much of my work as possible, and I'm paid to write it)

Also, AWS is BUILT on open source, they just don't open source the extra bits they added on top. Just like how Microsoft took an open source tcp/ip stack and open source web browser, added some stuff, and called it their own.

They are also using millions worth of open source software.

Why would they open source it? To provide a way out to customers. They don't even provide a mongo-like license.

I can't forget a session at Google I/O how they were insisting that appengine is not open source because we are too dumb to understand it....yeah sure what about k8, now? I can run it on my Mac, I even contributed few commits.

DynamoDB is dependent on many of AWS’s services and infrastructure.