DEV Community

Cover image for What environments do you use to work on GitHub projects?
Madza
Madza

Posted on

What environments do you use to work on GitHub projects?

Developers often spend significant time manually managing a single dev environment on their local machine and waiting for builds and tests to complete before coding on a daily basis.

My favorite tool to automate this is GitPod. With it you can work on GitHub projects remotely with a click of a button.

What environments do you use to work on GitHub projects right away without any cloning, syncing, etc?

Top comments (14)

Collapse
 
yaythomas profile image
yaythomas

The important thing for me is that the developer setup should be the same as the CI setup. In other words, if the CI is automated, which it should be, the developer should be able to run that self-same CI sequence locally to test and quality control their work before a PR.

All my (personal) projects I fully automate dev dependencies/build/lint/packaging, so jumping to a new machine is pretty much just this:

$ git clone arb-url-here/new-repo
$ cd new-repo
$ pypyr lint-build-test
Enter fullscreen mode Exit fullscreen mode

This same automation sequence runs on the CI/CD.

This does assume the core language framework/run-time exists on the machine and the CI/CD server, though, unless you're fully docker-izing everything.

GitPod looks very interesting, thanks for sharing!

Collapse
 
coopthebuster profile image
Andrey Cooper

I would say the CI should be the same as production, first. Dev machines should be brought as close as possible to it, of course, but in many cases, it is hard to do as CI may run on different platforms to reflect all the production environments.
Dev team ends up having VMs on their local machines or multiple stations within their reach.

GitPod sounds interesting though. I will definitely check it myself too.

Collapse
 
madza profile image
Madza

My pleasure, hope it helps πŸ™β€

Collapse
 
_garybell profile image
Gary Bell

I don't (I'm a GitLab user!) but I wanted to join in and say that Gitpod is something people should try. It's free (for a period of time each month) and can be run with very few resources on a client machine.

I tried Gitpod a few weeks ago when I was getting started with contributions to GitLab and found it to be really good. Takes a little getting used to, and remembering that F5 isn't for refreshing the pane you are working on, but the entire IDE.

I want to use Gitpod more, so I can use my work machine to tinker with personal projects on lunch without having to clone everything locally.

Collapse
 
madza profile image
Madza • Edited

Tbh, I still wonder why GitHub was not designed like that initially πŸ˜‰
I use different machines often (working from home and an office) and tired of cloning everything and syncing between local and remote repos πŸ™

Collapse
 
_garybell profile image
Gary Bell

Probably an age thing. Most web IDEs until fairly recently have been useless. Stick to storing code and helping teams work together first, and then partner with other specialist applications to reduce onboarding.

Collapse
 
louislow profile image
Louis Low

Such a gem to me! Gotta give GitPod a try.

Collapse
 
madza profile image
Madza • Edited

Chances are you gonna like it πŸ˜‰
Co-founder of DEV also supports it:

Collapse
 
louislow profile image
Louis Low

We should probably create a clan or cult for this!

Collapse
 
rberrelleza profile image
Ramiro Berrelleza

We're building Okteto to help solve this problem. Add a file, one click, and you have have your environment running in seconds (here's a sample of how that looks like on a repo).

We are just getting started, would love to hear what you think!

Collapse
 
aghost7 profile image
Jonathan Boudreau

I don't really find there's a need to remotely develop if using virtual machines or containers. I remember way back trying out cloud9 - this isn't a new idea. I guess my question would be what does this service in particular have which makes it stand out to all of the others?

Collapse
 
peter279k profile image
peter279k

I just use the Git commands via Linux Ubuntu Terminal to work on GitHub projects.

Collapse
 
shreyansh_ag profile image
Shreyansh Agarwal

Learnt about GitPod. Thanks! It's awesome.