Ramiro | 5 years ago | on: Instant dev environments for cloud-native apps
Ramiro's comments
Ramiro | 5 years ago | on: Instant dev environments for cloud-native apps
That said, the pattern we recommend to follow is to split it into smaller dev envs. That makes it easier to manage, and allows you to have dedicated dev envs for different parts of your app (e.g. your API dev env and your frontend dev env).
Ramiro | 5 years ago | on: Instant dev environments for cloud-native apps
This is an area where I'm particularly interested in. We are constantly experimenting in ways to better integrated it into our idea of remote development environments.
Ramiro | 5 years ago | on: Instant dev environments for cloud-native apps
I agree that "developers should be sympathetic to the environment there code runs in". But that's about where the code runs in production, not where the developer runs it while coding. That's why we are pushing towards using remote clusters, so that you are developing on an environment that's as close to prod as possible.
In my opinion, Minikube, Docker for Desktop, Kind and others present two big challenges: First, it's not trivial to run them locally. They require extra memory, cpu and battery, they have issues starting/stopping (I don't use my local cluster that often, and I've spent way more than 5 minutes just starting/stopping/troubleshooting it). And, at the end, they have different components (load balancers, disk, network) and configuration from a remote kubernetes clusters, creating more dev-prod skew.
Second, the feedback loop is not that fast. You still need to either mount volumes (which is slow if you handle multiple files, like node's node_modules folder) or end up building containers to validate your changes. Sure, you don't have to push and pull them, but what if you didn't have to even build them?
Ramiro | 6 years ago | on: Okteto Push – Your Code to Kubernetes in Seconds
That's where caching, container layers and build stages can help a lot. Specially for development, where you might be rebuilding the same container over and over.
Ramiro | 6 years ago | on: Okteto Push – Your Code to Kubernetes in Seconds
We have a fork of buildkit where we are implementing multitenant protections, authentication, etc ...
Ramiro | 6 years ago | on: Okteto Push – Your Code to Kubernetes in Seconds
When you are using Okteto Cloud to run your apps, you get all this:
- Build is run in big servers in the Okteto Cloud infra. It's based on buildkit, and it's heavily cached and optimized towards development scenarios. The build context is sent from your local machine to the service and everything else happens there. - The registry in the same infrastructure as the build services. The image is pushed from the build service to the registry, instead of from your machine. - The deployment runs in the same cluster as well, to speed up the time it takes to pull the image.
You can also use "okteto push" with your own infra, by providing your own buildkit service, registry and k8s cluster. Depending on where they are located with respect to each other this might be slower or faster (e.g using dockerhub for registry will be slower than using a dedicated one in your own cluster, mainly due to network speed and proximity).
The biggest benefits of this approach are being able to move all this to the k8s cluster, where you can leverage more compute power and faster network transmission. That way you are not pulling and pushing images across the internet.
Ramiro | 6 years ago | on: Ask HN: What do you use to start your dev environment faster?
We recently wrote a post on how to integrate Okteto with NodeJS apps, in case anybody wants to try it out: https://okteto.com/blog/how-to-develop-node-apps-in-kubernet...
Ramiro | 6 years ago | on: Okteto – Kubernetes for Developers
Ramiro | 6 years ago | on: Okteto – Kubernetes for Developers
Ramiro | 6 years ago | on: Easier Kubernetes Debugging with Okteto
Ramiro | 6 years ago | on: Survey: Cloud Native Application Development
Ramiro | 6 years ago | on: Survey: Cloud Native Application Development
Ramiro | 6 years ago | on: Survey: Cloud Native Application Development
Ramiro | 6 years ago | on: Bird Acquires Scoot
Ramiro | 6 years ago | on: OpenTracing and OpenCensus are merging into OpenTelemetry
Ramiro | 6 years ago | on: Why We Do Code Review
This looks like a very onerous requirement for reviewers (although tools like gitlab or getdockup.com automate it), I wonder if a) is really useful in catching issues, b) the process they used to convince the team to spend this extra time when reviewing. In my experience is that devs don't really want to spend more than a few minutes skimming through a PR.
Ramiro | 7 years ago | on: K3s – Lightweight Kubernetes
And Okteto Cloud (https://okteto.com) our development platform for Kubernetes Applications, that integrates everything you need to build cloud native apps (development environments, a build service, a private registry, SSL endpoints, etc...)