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

What are the benefits of having local dev experience on a remote box vs coding locally and sending the code to the remote machine to run it there (e.g. Pycharm remote deployment)?


Some companies, like e.g. Google or Facebook do not allow company code to be stored on a laptop, even if it's company laptop. And even if they did have code there it would not be practical, because everything above the kernel is compiled from source and it would take forever without build artifact cache. That, BTW, affects you even if you work with Python, because Python has to pull in a bunch of custom C++ libs to call the various services, and guess what, those are also built from source. Add to that the fact that your laptop is usually a Mac, and you're developing for Linux, and not just any Linux, but a Google/FB flavor thereof, with custom hacks, custom toolchains, etc. The code you work with is mapped to your workstation using a custom filesystem, so you don't store it there either. It's all transparent to you, of course.

So it's not really practical to do "local" development even if that were allowed.

But even if you aren't at a FANG, your company workstation often has the "right" set up and it's much more powerful than a laptop, so if you're dealing with compiled languages it might just be easier to deal with it remotely, as long as the experience is seamless.


Ok, but what if you want to run the same code on multiple remote machines (e.g. launch several deep learning simulations)?


At Google you run it on Borg. At companies which have non-trivial on-prem compute you'll probably find k8s being used for cluster management nowadays, same idea. Without cluster management you'll have to copy it to the remote machine (and set up deps there)


Ok, so it seems like Pycharm is still the only tool which can do that


... you're using pycharm as a cluster management tool? I'm not sure if I'm impressed or horrified :P


Not a cluster, just three independent GPU servers. Each one has a remote interpreter configured in Pycharm.




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

Search: