Google Launches Project IDX, A web-based IDE

Spectacle8011@lemmy.comfysnug.space to Programming@programming.dev – 128 points –
Project IDX
idx.dev

What if your dev experience was entirely in the cloud?

These days, launching applications means navigating an endless sea of complexity. We felt this pain at Google, so we started Project IDX, an experimental new initiative aimed at bringing your entire full-stack, multiplatform app development workflow to the cloud.

Project IDX gets you into your dev workflow in no time, backed by the security and scalability of Google Cloud.

Project IDX lets you preview your full-stack, multiplatform apps as your users would see them, with upcoming support for built-in multi-browser web previews, Android emulators, and iOS simulators.

As a Vim fanatic, I can't say I'll ever feel comfortable working in a browser, but some parts of IDX seem interesting. I wonder what the implications are for proprietary code.

I do think it solves an interesting problem where you're working on your desktop and decide to move to your laptop and continue working on the same codebase, but don't want to commit early so you can pull down the changes to your laptop.

It reminds me vaguely of Shells.

94

You are viewing a single comment

I do think it solves an interesting problem where you’re working on your desktop and decide to move to your laptop and continue working on the same codebase, but don’t want to commit early so you can pull down the changes to your laptop.

You can just push the changes to a different branch and then merge it to your normal feature branch later. Takes like 5 seconds.

Exactly. And if you you're worried about dirtying your commit history with an unfinished commit, just rebase it out later.

but don’t want to commit early so you can pull down the changes to your laptop.

Someone needs to tell this man about rebasing.

I rebase! I just don't want to push to the main repo, pull it down, rebase and force push to it. Pushing to a disposable branch is an obvious solution I didn't see, haha. I tend to not use branching a lot in my projects...

...I guess I could actually set up my desktop as a remote too, huh.

If only there was some syncing thing that would let you move arbitrary files between devices.

https://github.com/syncthing

Thanks for the suggestion! If you can believe it, I already have Syncthing installed but haven't used it in ages. I didn't even think of using this for keeping git repositories in sync! I did find these forum posts that seem to recommend against using Syncthing for git repositories, though they're 6-7 years old:

Well, conflicting reports really, but it's enough to make me wary. Interestingly, someone recommends the branch solution as an alternative:

One of the objectives of git is to be decentralized. Just make a branch called uncompilable_mess and then clone the repo on your laptop.

Seemed to be working out well for the OP, though.

I've had no problem for years.

Biggest issue I've had was forgetting I committed something on one device before committing on another. Then I had two branches where one had " conflict" in the name. I just deleted all conflict files and everything continued as normal. If your repo is never corrupted before syncing worst case you should be able to find and delete all conflict files.

Syncthing conflicts include the source of the conflict so you could just choose to delete all files whose conflict is from one device and leave everything from the other.

If you're worried you could just ignore your '.git' folder in syncthing since you're purposefully not committing during this. Then sync through git when you finally commit your changes on a device.

Huh, fair enough. I guess I'm still not using git to its full potential. What I do now is SSH into my desktop from my laptop and work on it there. It's easy because I use Neovim.