Ramiro's comments

Ramiro | 5 years ago | on: Instant dev environments for cloud-native apps

If your kubernetes cluster can support a 16GB pod, it will work with okteto.

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

There are challenges on this model for sure. A big advantage is that, by routing to the dev environments, you can have the dev interact directly with the webhook when they code, instead of having to wait for a shared environment to test integrations. This is pretty useful, specially if your application depends a lot on webhooks for it's main functioning.

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

Ramiro here (co-founder of Okteto)

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

> Even npm watch takes several seconds, let alone docker builds almost always take minutes

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

Hey, I'm Ramiro, one of the maintainers. We do several things to speed the whole cycle up.

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: Okteto – Kubernetes for Developers

We started building Okteto last year because we found that the existing tools were focused on speeding up the kubernetes cycle, and not on the end to end flow. Our goal with Okteto and Okteto Cloud is for most developers to be able to work on Kubernetes-based applications without even realizing they are on Kubernetes.

Ramiro | 6 years ago | on: Okteto – Kubernetes for Developers

Skaffold's focus in on automating the build, push, apply part of the development cycle. Okteto's focus is on moving development to a Kubernetes cluster, abstracting away Kubernetes and the container from your inner developing loop. (I'm one of the creators of Okteto).

Ramiro | 6 years ago | on: Easier Kubernetes Debugging with Okteto

Our goal with Okteto is create a experience focused 100% on the needs of developers building cloud native applications. Would love the feedback of the community on our new feature.

Ramiro | 6 years ago | on: Survey: Cloud Native Application Development

We're conducting a survey with the community to learn more about how you build Cloud Native applications, what you enjoy about it and the challenges that you're facing. We'll be sharing the results publicly once the survey closes.

Ramiro | 6 years ago | on: Bird Acquires Scoot

$25 million sounds pretty low. Guess they just bought the existing stock scooters and the SF permit? It would extremely funny if the city didn't allow for the permit to be transferred :P

Ramiro | 6 years ago | on: Why We Do Code Review

> The reviewer should download the branch to their local environment, follow the deploy instructions (if present) and make sure the code “does what it says on the tin”

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.

page 2