Coding in a Web Browser!
Intro to web IDEs
Learning Tools
Microsoft learning tool
JS, .NET, SQL, Regex, Elasticsearch, Python, R, GCC, Clojure, Logo, BF, Rust, Go, PHP, Scala, C++
REPLit - (Read-eval-print-loop)
52 Options, including Java, Lua, Rust, Haskell, Swift, Dart, etc
About 80 different languages (frontend/documents/coding)
click to edit
Streamlined web development. Code, then share website directly.
click to edit
Classic Website
Node.js
React Static Site Generator
Eleventy Static Site Generator
Self hosted alternatives, or pick your own cloud provider
Interviewing Tools
Free Cloud machine, start with source repo, web IDE
Collaboration-centric web tool for desktop IDE, includes collaborative code editing in web
click to edit
AWS Cloud9
GitPod
GitHub Codespaces
Google Cloud Shell Editor
The "notebook" for data or visualization sharing
Jupyter notebooks
GitPod and GitHub Codespaces in a little more detail
Demos
Questions?
Comparing GitPod and GH CS. Comparison Chart
GitPod available to everyone, Codespaces in Beta
GitPod has published Pricing, Codespaces free while in beta but may cost money
click to edit
GitPod has free tier, Codespaces free in beta, unknown in the future
GitPod:Use VS Code or Theia(deprecated) - Codespaces uses VS Code
GitPod connects to GitHub/GitLab/Bitbucket - Codespaces is GitHub-only
What do they BOTH do?
VS Code extensions
iPad Support
VNC Support (if your docker container contains VNC server)
GitHub integration
Your repo's environment can be customized
Codespaces - local VS Code can connect to codespaces - GitPod local companion is in preview, but currently less robust
Codespaces supports Live Share - GitPod lacks support but workspace some sharing options exist
GitPod can be self-hosted or hosted in GCP, Codespaces is linked to their own cloud services (presumably Azure, but not configurable).
Gitpod can open any repo in a browser by prefixing the URL with gitpod.io/# - I'm not aware of Codespaces being able to do this by default
Can a whole development team use this? Does it need to be purchased individually?
Both services appear to support using them and paying for them as a team, but I'm considering that out of scope for my session. My experience has been using the product as a single user, though I encourage anyone to open my public repos in GitPod/Codespaces if I've configured them.
Questions to ask before trying a web/cloud IDE
What am I coding? -- Certain programming languages have products tailored to them. Example: Jupyter Notebooks
Who am I coding with? -- Live Share is an option on Codespaces, though you may both need to be in the beta.
Where is my code? -- GitPod can connect to GitLab/Bitbucket, Codespaces cannot.
What is my output? -- If you're just trying a language for the first time, there may be a simplified REPL available for experimentation
Why am I using this? -- If there's a specific goal, like coding interviews, a specific product may be available.
When am I coding? Do I want to use it right away? --Codespaces is in a beta where you can request an invite, but GitPod is available right now
Do I have specific cloud credit to burn? -- Some services allow for putting the virtual machines in specific branded clouds, or simplified interfaces for cloud tools.