5 ms·
After a few years' break from professional s/w dev, I'm really trying to get into the docker-based dev mindset. You can use docker (or, less efficiently, a ful
by fizixer 6y ago
After a few years' break from professional s/w dev, I'm really trying to get into the docker-based dev mindset.
You can use docker (or, less efficiently, a full-blown VM) for any purpose, but it looks like the killer app that has emerged appears to be devops. I guess same goes with k8s, as well as Chef/Puppet/Salt/Ansible/whathaveyou.
However, I'm noticing there is a new way of doing s/w dev emerging, let's call it modern software development, which utilizes some of these tools to maximize s/w dev productivity. I'm just not clear what is the best way to approach this.
The core issue is obviously dependency hell, and install-reinstall-reconfigure hell.
I guess a useful way to think is, what if I want do to web-dev, and android-dev, and, iOS dev, but I don't want these dev environments to interfere with each other, and all these dev environments should be available accessible on a single workstatation or powerful laptop.
I guess I could have docker for web-dev, docker for android-dev, and so on. I came across docker compose, and then I heard it's known to be cumbersome for dev-environments, and someone created binci to address those problems (though it's not a well-known tool).
- harpratap 6y agoThe solution for this is to do your development in cloud directly. Projects like Skaffold, tilt and VSCode in browser are one step in this direction. Developer machines would become just thin clients and GUIs for these remote machines.
- fizixer 6y agoSo you mean fire up an instance at AWS/Azure/GCP/etc that acts as an android-dev vm? So dev environment is on the cloud? and all the data (working dir, data files, pdfs, whatever is involved during the dev phase) is also on the cloud storage? That would be expensive, especially if you're a indie dev, and a tremendous waste of local compute/storage capabilities. Again, I'm really not sure what near-future looks like in this space.
- harpratap 6y agoIndie devs are small minority, majority of the folks work in companies. You are already paying 2000-4000USD for your laptops, plus you also have to cost in lost productivity because of not being able to replicate your stack locally. Eventbrite is already doing this for all their employees - https://kelda.io/blog/eventbrite-interview/ https://kelda.io/blog/eventbrite-interview/ So the economics of this does check out.
- jdmichal 6y agoLarger companies can do this with virtual machines in their own datacenters, which cuts down a lot on the cost. Especially for developer machines, which have relatively high requirements on memory.