Google Launches Project IDX, A web-based IDE

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.

pythoneer,

Even if it’s very cool, the problem I have with newer google products is that they might just kill it at any time, even if it’s successful.

MashedTech,

Basically if it brings them enough data it stays, otherwise, it dies. Look at Google domains.

tatterdemalion,
@tatterdemalion@programming.dev avatar

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.

This has been a solved problem for decades. SSH.

sushibowl,

What’s bad about committing early? Do people not know about --amend?

dmrzl,

There is no such thing as committing early.

Spectacle8011,
@Spectacle8011@lemmy.comfysnug.space avatar

It’s not so much committing early, but pushing early. You don’t want to push early, then rebase your commits, and then force-push to a repository other developers are using too.

But as I’ve learned from all of the responses in this thread, there are many ways of avoiding this 🙂

Spectacle8011,
@Spectacle8011@lemmy.comfysnug.space avatar

Well, it’s what I use with Neovim, but not everyone uses a terminal-based editor. But other users had some other suggestions too: lemmy.comfysnug.space/comment/620209

firelizzard,
@firelizzard@programming.dev avatar

Fortunately for me, VSCode has support for running the backend remotely via SSH.

Mikina,

Ever since I’ve discovered Parsec (or any other remote desktop streaming solution that isn’t TeamViewer), I’ve switched from having to drag around a heavy laptop that still can barely run Unreal to just having a Surface, remotely WoL my desktop at home through a pooling solution that does not require any public facing service (my NAS is just pooling a website API for a trigger. Not efficient, but secure), and just connecting through Parsec.

RDP could also work I’d wager, but then I’d have to set up a VPN and I’m not really that comfortable with anything public facing. But if anyone asks me now for good laptop recommendations, I always recommend going the “better desktop for the same price, and small laptop for remote”.

I’ve yet to find a place where I couldn’t work comfortably through Parsec, it being optimized for gaming means the experience is pretty smooth, and it works pretty well even at lower network speeds. You still need at least 5-10Mbps, but if you have unlimited mobile data you’re good to go almost anywhere.

sjpwarren,

Thanks for sharing about Parsec, it looks interesting. How is the speed? They talk about it being fast but is it?

Mikina,

I’ve never had any issues, it’s pretty well optimized and it’s miles ahead of TeamViewer. So, in my experience, it is pretty fast - if your net can handle it. And if you have lower bandwidth then it’s pretty good at optimizing for speed instead of quality, if that’s what you want.

sjpwarren,

Turns out it won’t share a Linux machine.

Mikina,

Oh, you’re right, I’ve totally forgotten about that. It was one of the (many) reasons why I gave up my last attempt to finally switch away from windows and to Linux.

Sigmatics,

No.

jim_stark, (edited )

Aren’t we past that point?

VS Code is Electron based and it can even be deployed in the cloud. We are talking about one of the most popular IDEs.

Sigmatics,

You are talking about transmitting every bit of code you write to the internet. Go ahead if you want that, I don’t

jim_stark,

I am not saying otherwise. But do we still have a say?

firelizzard,
@firelizzard@programming.dev avatar

Yes. It is still entirely possible to run VSCode or VSCodium locally without any of that cloud crap.

jim_stark,

True, I myself prefer VS Codium but how many people use it? And some site like Coursera have VSCode on the web and it can’t be changed to VSCodium.

firelizzard,
@firelizzard@programming.dev avatar

My entire point is that you aren’t forced into using that cloud crap for normal development. And you aren’t forced into any specific IDE. You can choose whatever IDE you want unless your employer mandates something specific.

JackBruh,

Also VSCodium is entirely Open Source.

philm,

Is it good technically though? Or is it just really popular because it’s so well maintained and extensible?

I think the main reason vscode is so popular is, because there aren’t really good native alternatives (e.g. I wouldn’t compare e.g. vim because it’s kind of a different target audience).

So maybe something like zed or so will take the reign of this class of editors, but we’ll see, I just hope it’s not yet another electron or DOM based editor, DOM is bad enough in the web already…

jim_stark,

I just hope it’s not yet another electron or DOM based editor

Unfortunately, yes.

Dagamant,

I have a simple method for deciding whether or not to use something.

  • Is it a “cloud service”?
  • Is it made by google?

If either of these is a yes, I look for something else

cloudy1999,

This is a good method. I love technology, but tech companies have become increasingly icky. Trends over the last decade have finally soured me on Google. I just can’t justify using or buying their services.

realharo,

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.

knoland,

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.

Spectacle8011,
@Spectacle8011@lemmy.comfysnug.space avatar

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.

MantisWaffle,

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

github.com/syncthing

Spectacle8011,
@Spectacle8011@lemmy.comfysnug.space avatar

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.

MantisWaffle, (edited )

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.

Spectacle8011,
@Spectacle8011@lemmy.comfysnug.space avatar

Fair enough, thanks!

Spectacle8011,
@Spectacle8011@lemmy.comfysnug.space avatar

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.

sirdorius,

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

MooseBoys,

Or just use vscode remoting.

csolisr,

If I’m not able to self-host it a la VS Codium, then it’s very much a honeypot.

Osnapitsjoey,

Like for stealing your code?

Also vscodium vs vscode-server. What’s the difference? I’ve heard the ladder has Spyware or something?

shinobizilla,

Hell no, no way I’d trust Google with my code. Personal or otherwise. Let me guess this would work only in Chrome.

Hector_McG, (edited )

All your codebase are belong to us.

Spectacle8011,
@Spectacle8011@lemmy.comfysnug.space avatar

Hell no, no way I’d trust Google with my code. Personal or otherwise.

Ditto. But at the risk of playing devil’s advocate, if you were writing free software code you were going to stick on a code forge somewhere anyway, would you still be against it?

Are there Google services that only work in Chrome? I don’t use any of them, so I don’t know. I do know Google is generally less annoying than Microsoft in that department.

rodolfo,

Are there Google services that only work in Chrome?

this is the gateway to this

I do know Google is generally less annoying than Microsoft in that department.

how this? through Firefox I experience ms websites the same as with edge. google websites? experience is full of small differences from chrome

Edit:formatting

floofloof,

Microsoft don’t allow Bing chat to run in anything but Edge. I don’t know if there are others, but that’s the one I’ve noticed recently.

rodolfo,

true, but bing chat isn’t all ms services. although I’ve heard of plug-ins that could do that, dreadful as it is just the idea

Spectacle8011,
@Spectacle8011@lemmy.comfysnug.space avatar

how this? through Firefox I experience ms websites the same as with edge. google websites? experience is full of small differences from chrome

Firefox is my main browser. In my experience, Microsoft services don’t work at all on Firefox. I can’t say I use much of either company’s services, but Google tends to be more lax in some departments. For example, the Google Pixel is the only Android device that allows you to securely unlock the bootloader and install another operating system on it, rather than forcing you to root the device.

I’m not a fan of either company, but I get the impression Google is less actively hostile toward their customers than Microsoft. For the most part.

rodolfo,

i work for a company that produces dotnet software. I’m my comments you’ll find this, and that firefox is my browser of choice. so we obviously manage access via ad, we use azure, etc. . when it comes to develop Linux native code, i fire up my vm, and I can even use the teams web version on firefox (tbh, only chat though) , so

In my experience, Microsoft services don’t work at all on Firefox

i don’t really know where this is coming from. would you like to elaborate?

the idea that ms is hostile towards its customers is so apple propaganda from some 20 years ago… I mean, a very old refrain… just please stop beating this now decomposed horse. had u written something like

ms like apple like google/alphabet are private ruthless faceless us corporations, ready to suck the soul of anything that got one

that, i could agree on. anyways, peace, obviously.

Spectacle8011, (edited )
@Spectacle8011@lemmy.comfysnug.space avatar

i don’t really know where this is coming from. would you like to elaborate?

As I said, I don’t deal with a lot of Microsoft or Google services, though I do run my email through Microsoft Exchange. It took me roughly three hours to figure out how to download the Microsoft Office executable from the Microsoft website. I tried everything on Firefox, Brave, Chrome, even on my Mac. In the end, I needed Microsoft Edge to get it. I don’t remember the exact details because this was 2 or so years ago, but requiring a particular version of a Blink-based browser just to download Microsoft Office seems…unnecessary.

I remember needing to use Brave for Microsoft Teams, but I could be remembering wrong. When I think of Microsoft being actively hostile toward their customers, I think of about ten years ago when Microsoft tried to prevent Xbox owners from sharing physical disk games with the Xbox One, essentially killing preowned games (not that they went through with it). Of course, Apple is an easier target than Microsoft for customer-hostile behavior. Frankly, these megacorporations all blend together for me.

I don’t have any particular feelings about Microsoft, and after using Windows for 20 years, I don’t have any major complaints with it (from memory; it’s been a while), aside from the obvious. If there’s any particular corporation I despise, that would have to be Amazon.

rodolfo,

on mac i can’t honestly argue about anything. apple policies, practices, hw, sw, services, etc. are something i try to stay as far away as possible. dunno if it’s still the same, but as an example VLC on mac was practically nothing and broken compared to linux and win version, because, you know, quicktime (or what it was/is called the native media player). also is it possible that mac makes really hard to access ms services (or that ms makes really hard to access their services on a mac? although they already make sw for that os… mmh…)? anyways, just for completeness, on win I had no trouble managing office (again, don’t recall what that iteration was called, but it was the one that allowed you to install office in 5 machines with one license) with firefox. have a nice day

Spectacle8011,
@Spectacle8011@lemmy.comfysnug.space avatar

I use mpv on macOS and haven’t had any trouble to speak of. But you might have installed VLC from the App Store, which is a common mistake—unless you’re installing Apple’s own software, you probably shouldn’t use the App Store. It usually only carries inferior versions of the software to comply with Apple’s terms, haha.

I very rarely use Microsoft Office nowadays, but once it’s installed, it’s (mostly) fine? I’ve heard from a coworker that there are some significant missing features in some software in that suite. I just remember struggling to find the page to download the Setup.exe file. I went to the exact same page in Microsoft Edge and a download button that wasn’t there in any other browser suddenly appeared! Maddening! This was a 5 or 10-license verison, I think.

rodolfo,

well the first part is super interesting…common mistake installing from official store non brand apps!? that’s something on the line with win store. if I’m told I’d die if I do not install Inkscape through win store, well, you know, I’d either stop looking at the insides of a svg or die. not so tough of a decision ah ah

Blackmist,

What if your dev experience was entirely in the cloud?

What if your dev environment could disappear completely one day when we get bored of maintaining it after it doesn’t immediately displace github?

catch22,
@catch22@programming.dev avatar

this

realitista,

That would be annoying.

yogsototh,
@yogsototh@programming.dev avatar

I don’t see how this could be positive for any Software developer in the long run. I totally see how this could be positive for CEO/CTO, Project Managers, in the long run, and I see a few short term advantages for Software developers.

Let’s be clear, I saw that coming since Microsoft bought Github, and I am scared by the direction this is taking. The end goal is to move more and more control and power to non-software people about Software development.

By forcing every developer to not use their own tools this will have a lot of advantage for CEO/CTOs but this is terrible for software developers:

  1. telemetry: they will try to find a formula to assess who are the best performer in a team. And as with SEO, any formula could be gamed, the best at this game, will not be the best software developers, but the one that will learn how to cheat.
  2. global team tooling enforcement: vim vs emacs etc… ? Forget about it, the only way to work on a project will be via this unique allowed editor.
  3. assets protection: impossible to download the code on your local computer to use external tools on it. The only way to have analysis tools will be via these “allowed” analysis tools. This will make code analysis and experimentation a lot more difficult.
  4. Locked by promoting vendor-specific applications. As you will focus to make your code/app/product work only for Google Cloud for example, you will naturally use Google-Cloud-only features that will make your code difficult (or impossible) to move to another Cloud provider, or god-forbid, host your product on a non-cloud or private made cloud.

And I can think of other possible drawbacks but my comment is already long enough.

stephenc,

I mean, 2 and 4 have been true already for quite some time in my experience.

fibojoly,

“Hey you guys, come and use our totally free online thing. We promise we won’t use anything you do for our own gains! Pinky swear!”

philm,

So cancer + a different form of cancer = …?

I really don’t get why you want an editor to be based on DOM, it feels just like sluggish … cancer…

Mikina,

I’m avoiding google as much as I can, so this definitely isn’t for me. But, does anyone knows of any self-hosted similar solution? I’m already mostly working remotely on my desktop through Parsec, but having something like a FOSS web IDE running at home would be a little bit better solution for cases where the network speed/quality isn’t good enough to work for the whole streamed desktop case.

Sonotsugipaa,
@Sonotsugipaa@lemmy.dbzer0.com avatar

These days, launching applications means navigating an endless sea of complexity.

  • Meta + D
  • "vsco"
  • Enter

Damn, I’m exhausted, why does launching an application have to be so hard?

blackbird,

Hey, there’s always double-clicking the icon too. Now that is exhausting.

iByteABit,
  • ctrl + t
  • nvim
  • calls ambulance
myersguy,

I imagine they mean launching in more of a release sense (IE: Announcing the launch of new app XYZ). I sure hope so, anyways.

Sonotsugipaa,
@Sonotsugipaa@lemmy.dbzer0.com avatar

Probably, I don’t really know how a web IDE would make it any easier but perhaps that’s because of a lack of personal experience.

myersguy,

It’s selling itself as more than an IDE. The idea is to have templates for common languages/frameworks. Ideally, this would mean not having to learn how to init a project in a given framework, not having to learn the build tools, not having to learn deployment, ci/cd, etc. Just open this new webapp, pick a framework, develop, and click a “launch” button to have it spin up in GCP.

Sonotsugipaa,
@Sonotsugipaa@lemmy.dbzer0.com avatar

That sums up, I could use sensible CMake templates in my life.

omgitsaheadcrab,

Meta+e … emacsclient pops up instantly

lemann,

CTRL + T terminal opens

Ddhuud,

Eclipse che has missed the train by tying itself to red hat.

some_guy,

You know they’ll be saving every line of code and analyzing it and feeding it into their ML models.

Fuck that. Anything I do is staying right here with me unless it’s something I choose to share on GitHub.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • programming@programming.dev
  • osvaldo12
  • DreamBathrooms
  • InstantRegret
  • magazineikmin
  • tester
  • khanakhh
  • everett
  • thenastyranch
  • Youngstown
  • slotface
  • tacticalgear
  • kavyap
  • ethstaker
  • mdbf
  • anitta
  • GTA5RPClips
  • ngwrru68w68
  • provamag3
  • Durango
  • rosin
  • cisconetworking
  • normalnudes
  • modclub
  • megavids
  • cubers
  • Leos
  • JUstTest
  • lostlight
  • All magazines