Lorenze Hernandez
Lorenze Hernandez
September 7, 2022

Are we developing more or less remotely now?


In this Developer Happiness Hour the Stateful Panel discuss the evolution of remote development, the trend it’s going and some of the problems remote development has and the future of remote development.

To clarify, the team defined remote development as developing on a machine that typically lives on the cloud / server other than your own local machine instead of remote work which is the aspect of not physically working in a dedicated office, so working from home or co-working spaces.

Definition of remote development

  • Working on a machine that is not your own
  • Reproducible environments
    • Helps with the problem of “it works on machine why doesn’t it work on yours?”
  • Example: cloud server hosting a virtual machine that contains your typical development environment such as your repo, the languages you use and toolings - extensions, linters, bundlers… etc.

undraw_server_down_s4lk (1).png

How was remote development then?

  • Developers would SSH into a box and run their development environment through the companies data centers.
  • Internet speeds was a blocker. Latency would cause frustration as there was noticeable latency per keystroke versus what you see type on the screen.

The rise of remote development

  • Popularity in remote work has influenced the platform to grow.
  • Distributed teams needing to connect to the same project.
  • The running of complex toolchains made easier to maintain and run.

Are we developing more remotely now?

Yes and no. It comes to project toolchain demands. But overall, remote development is a space that is getting more traction and is being implemented on IDE’s to have that native feel.

With developer tooling getting better:

  • IDE’s are able to setup remote developer environments giving a “native / local” look, which developers are wanting when it comes to development.
  • People just need an internet connection and can connect to a computer that runs an entire setup for your development needs.
    • Using codespaces or gitpod as some examples.
  • Rise of containerization.
    • Docker
  • Convergence of remote and local development
    • Not a which one is better but why not both type of relationship.

Use cases for remote development

  • Guest Contributions
    • You don’t necessarily work on the project a lot and prefer not cloning the entire repo to your local machine.
  • Enable projects to be setup for you on the fly. Just connect to the env container and you can start coding.
    • Configuration and tooling are provided, you just need to spin up an instance of that project remotely and you can begin coding.
  • Moving vulnerabilities from your local machine to a cloud machine.
  • Better debugging experience.
  • Being able to test race conditions.

Fast Computer vs Fast Internet

The team opens a dialogue on which would they prefer - a really fast computer (M1 Ultra) but a spotty 3G internet speed or an older computer that’s dated years old but the fastest internet.

Lorenze - At first says a fast computer but changes his choice once the slow internet speed clarifies.

Adam - Chooses faster internet.

Christian admits that a slower internet would frustrate him more than a slower computer.

Sebastian also chooses the internet, realizing that he probably cannot use all the computational power from his Macbook to the extent of his available bandwidth.

Teams thoughts on remote development

  • There’s a notion that if remote development feels like you’re developing locally then it’s in a good place.
  • There is hope where members in a team or organization can create an instance of a development machine in any project and be able to tinker with the codebase with all the configurations setup for you.
  • Remote development is not ready yet when it comes to performance in terms of feeling like everything is running locally.

Also check out

Strava for VS Code
September 27, 2022
Strava for VS Code

We built an extension for VS Code to help devs understand, challenge and celebrate themselves as they work to be more balanced programmers. Go unlock your achievements now.

Use VS Code for Bug Reporting to Lower the Bar for New Contributors
August 16, 2022
Use VS Code for Bug Reporting to Lower the Bar for New Contributors

As Open Source projects become more popular and the number of files and features grow, contributing to a project becomes more difficult. Learn in this blog post about a new VS Code extension that enables you creating GitHub issues with code references to help new contributor pick up your issues in no time.

$ stateful standup | 🤔💡😆
January 18, 2022
$ stateful standup | 🤔💡😆

We are happy to announce Stateful Standup! Effortlessly pipe yesterday's progress back into your brain, just in time for daily standup.

© 2023 Stateful Inc. All rights reserved.