Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I've had to embed a distributed cache into our product, which is a server customers run themselves... I got it working pretty quickly, then spent lots of time testing everything on Docker containers to make sure the distributed part of it was working.

Finally, I started testing it on Kubernetes because a lot of customers seem to use that in production. That forced me to work on the following things (after I had to learn details of how the cache works and how to configure it correctly, use its API, design a good integration for it into our product etc.):

- Kubernetes basics, like what a pod, service, deployment etc. is.

- Helm charts for configuring everything (lots of YAML).

- Terraform to kick off the infrastructure in the "cloud".

- Minikube to run things locally.

- Using Docker K8s as Minikube didn't work well on my Mac M1 for some "reason".

- Installing Lens, a UI to make sense of the hundreds of pieces I was now juggling.

- Configuring the cloud environment with the right permissions for devs to be able to use it.

- Network configuration so nodes can "talk" to each other, without exposing things on the Internet for no reason.

And probably a few dozen more little things that ate up all the time I had. Designing and writing the code to make things work locally and in a Docker container (running Docker compose) was pretty easy and took me a couple of weeks, including a lot of testing.... but once I started with the k8s, cloud stuff... I've been on it for a few months now :( and things are still not working reliably in "certain cases" (everything that changes seems to break something). It's a real nightmare and took all the fun out of the project for me. Really makes "programming" something else entirely that I would be very happy to leave to a good sysadmin to handle.



Consider applying for YC's Winter 2027 batch! Applications are open till November 2.

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

Search: