Live data from Hacker News

A History of IDEs at Google

laurent.le-brun.eu

131–140 of 333 posts

Re: A History of IDEs at Google

#131
post #59
post #35

Earlier quoted context omitted.

You want bazel. Once you've internalized the bazel (blaze) system, you want all builds and tests to work that way.

How do you internalize it? Our bazel system is full of custom skylark code so understanding the build means effectively reading a bunch of ad-hoc code written with varying degrees of competence and with confusing dependencies. I’m kinda ashamed I don’t have a deep understanding of a tool I use daily - but every time I try reading the documentation I quickly give up.

The first thing is hermeticity and and what it implies: caching. That if targets are a strict function of inputs, and inputs can be hashed, then you can reliably cache them - including test results!

The second thing is distributed caching. Done right, not only are your test results cached, but CI's test results can be cached too.

The third thing is distributed builds. This only starts to matter in big projects, but compilation is inherently a spiky load and if you can share a big pool of compute between a big pool of engineers, you get higher hardware utilization and lower latency to build artifacts.

The fourth thing, something that isn't really feasible outside big tech, is you could be bazel all the way down in a big monorepo. One of the niftiest things at Google is to be able to put a printf inside a database server and run your client test, and blaze knows that it needs to rebuild the database server and it will do it automatically, so that you can get extra insight at almost any level in the stack.

Re: A History of IDEs at Google

#132
post #35

The last year I’ve been doing all my dev on a vscode VM thingy my company set up. It’s just been getting better and better. It’s like local dev but, tbh, better. It’s at the point where I don’t even install dev tooling locally any more at all. My computer is just a thin client. The aspect I miss is the distributed compilation hinted at in the article. I remember back at the end of 1990s using distcc and things, but t…

You want bazel. Once you've internalized the bazel (blaze) system, you want all builds and tests to work that way.

Well bazel is a joy to use as a user but it’s painful to set up.

Re: A History of IDEs at Google

#133
post #64

Earlier quoted context omitted.

Do they have more success in software products than other companies, though? Most of the software many of us know from them, were acquisitions. They still do heavy acquisitions. Notable that they have double the acquisitions of Amazon. They are on par with IBM. A colossal amount of money spent to make things happen. So, again, are they that much more successful at software than other companies? They have more hilario…

Think for a large tech company, they did a really good job with success in software. For exammple, they were probably the first large tech company to realize AI was actually working, and made it their focus: https://www.businessinsider.com/sundar-pichai-wants-to-build... And yeah, they did/do a lot through acquistions, but seems like most major companies screw up acquistions. Google has it's fair share of failed acqu…

My point on the acquisitions was that a surprising amount of their successful software was not made in house. Again, I don't mean it as a knock against them, necessarily.

AI is an odd example. For one, a lot of the research there is from acquisitions. Somewhat feeding back to my first point. They also were seen as tripping up on a lot of the current AI race, no?

Re: A History of IDEs at Google

#135
post #121

Earlier quoted context omitted.

Hi Drew, I remember your "Show HN" from a while back and have been secretly rooting for you ever since! (I'm not a lawyer but for some reason I have many friends that are, and now I happen to do work for a firm in the legal publishing sector, so I often hear about how terrible "word processing" can be and think there've got to be better tools!) May I ask, how are things going? Also, will your IDE always be focusing o…

Hi! It's a super interesting time to be in legal tech. Thank you for asking. When this project got started, "VS code for transactional lawyers" was the target. We pretty well have that on offer at this point, but it sits in a weird spot making it harder to sell than it would be in, say, 2024. Right now, "AI forward" lawyers are spinning out of law firms in droves to start "AI native" firms backed for example by YC. T…

Wow, thanks so much for taking the time to answer my questions in detail!

> As I mentioned above, it's super hard to even set up a hands on demo because we have to get the desktop app installed on their infrastructure. But I'm shocked to learn that Googlers are happy to work in a browser, and distributing Tritium via browser is trivial, so we're going to 180 on that right here and now.

"Trivial" in the sense you can just compile everything to WASM? I'd be curious to know what such an IDE would feel like in the browser. I think the only WASM-based GUI apps I've tried in the browser were Flutter apps and those were… weird.

> I should probably do a post on this, but there's actually a topic we're working on that perhaps the HN audience will find even more interesting... coming soon!

I'll keep an eye out for the next Show HN! :-)

Re: A History of IDEs at Google

#136

Meanwhile Google acquired windsurf, released antigravity, and recently handicapped it for Google business workspace users by removing the AI Ultra plan for workspace. So the only real way to use antigravity is either being a Google employee or using a personal account and AI Ultra. https://knowledge.workspace.google.com/admin/gemini/ai-ultra...

Google employees can’t use antigravity. There is an internal version of it which has an agent which is shared between Cider and it.

Re: A History of IDEs at Google

#137
post #59

Earlier quoted context omitted.

How do you internalize it? Our bazel system is full of custom skylark code so understanding the build means effectively reading a bunch of ad-hoc code written with varying degrees of competence and with confusing dependencies. I’m kinda ashamed I don’t have a deep understanding of a tool I use daily - but every time I try reading the documentation I quickly give up.

Probably not in the way that you might mean it, but for me (Xoogler, 2010 - 2023) internalizing bazel means: "Hey, where's your tool's code in $MONOREPO?" " " Cool: g4d my-citc-client # moral equivalent to `cd ~/repos/stuff` blaze run path/to/stuff:target ... and you get a running version of whatever $stuff is, immediately built from head, quickly - no matter the set of dependencies, or which language they were built…

Probably it's just down to a different understanding of the word "internalize".

I know how to _use_ bazel effectively to do my work. I'm comfortable with its well-designed surface but whenever I've tried to understand the inner machinery I've given up - especially when presented with a bunch of custom skylark rules code.

It's like an anti-git in some regards - the surface of git (the CLI) is an abomination in many ways but the the mechanics of the tool are so ingrained and the model is so clear and simple - I never feel uncomfortable.

I've a need to have some comprehension of the inner machinery or the underlying model of my tools.

Re: A History of IDEs at Google

#138

Was there 2009-2014 and then again 2020-2026. I think there are a lot of aspects of IDE use and culture at Google that this post omits. My recollection from 2009-2011 is that emacs and vim were the dominant editors (just as the TV show Silicon Valley depicted), and there was a decent-sized minority using Eclipse and Intellij, both of which had official support for Google tooling. The command line still largely ruled…

How many new googlers use vim or emacs do you think? I can imagine at least a small amount of new vim people since vim will always be popular, but I would love to know if more than a handful of new googlers a year use emacs

There is an internal website that tracks statistics of tool use, where “tool” is defined liberally and includes emacs. It would be tracked if you just (require 'google) somewhere in your initialization code.

Re: A History of IDEs at Google

#139

Meanwhile Google acquired windsurf, released antigravity, and recently handicapped it for Google business workspace users by removing the AI Ultra plan for workspace. So the only real way to use antigravity is either being a Google employee or using a personal account and AI Ultra. https://knowledge.workspace.google.com/admin/gemini/ai-ultra...

As an employee, I'm using Antigravity (CLI version) every day (because we can't use Claude) and it rules. I am way more productive than I was with CIDER-V, which itself was very nice.

Re: A History of IDEs at Google

#140

Meanwhile Google acquired windsurf, released antigravity, and recently handicapped it for Google business workspace users by removing the AI Ultra plan for workspace. So the only real way to use antigravity is either being a Google employee or using a personal account and AI Ultra. https://knowledge.workspace.google.com/admin/gemini/ai-ultra...

Google employees can’t use antigravity. There is an internal version of it which has an agent which is shared between Cider and it.

It's the same thing with a different name and different default settings.
Post reply on HN