Hacker News new | past | comments | ask | show | jobs | submit login
A Pissed-Off Tutorial for Google Wave (2010) [video] (youtube.com)
174 points by DonHopkins 58 days ago | hide | past | web | favorite | 159 comments

I love the collaborative features of Google Docs and Google Sheets.

The thing that's missing from "Google Docs" is a decent collaborative outliner called "Google Trees", that does to "NLS" and "Frontier" what "Google Sheets" did to "VisiCalc" and "Excel".

And I don't mean "Google Wave", I mean a truly collaborative extensible visually programmable spreadsheet-like outliner with expressions, constraints, absolute and relative xpath-like addressing, and scripting like Google Sheets, but with a tree instead of a grid. That eats drinks scripts and shits JSON and XML or any other structured data.

Of course you should be able to link and embed outlines in spreadsheets, and spreadsheets in outlines, but "Google Maps" should also be invited to the party (along with its plus-one, "Google Mind Maps").

More on Douglass Engelbart's NLS and Dave Winer's Frontier:


I guess one issue these tools have had historically (collaborative outliers, and Wave along with it) -- was what are they actually for?

Google Docs is for writing documents, letters, school essays, etc... The output is a document of some kind.

Sheets is for performing calculations, modeling numbers, etc... the output is normally some calculated value (or values). The benefit of this over just writing a single function/program is that you can potentially have more insight into the way that calculation is performed, but in general, the output is some calculation.

But outliners are different... what is the result? The NLS demo describes a shopping list. Which is nice, and you can slice and dice the data around, but fundamentally, it's a shopping list. And that function can be achieved with Google Docs for 80% of the functionality. Sure, it doesn't make moving bananas and carrots into a 'produce' category easy, but with copy and paste, it's a pretty well solved problem.

But the basic outliner functionality you're describing -- what's it actually used for? What's the payload that you're organizing?

Even Dave Winer's tools were used not for making lists, but for making websites. There was a "payload" present. You were managing data for websites (at least, as far as I can understand it, I didn't have a Mac at the time, so never used most of the UserLand programs).

So, would you say the "point" for these tools is making other tools? For example, using Frontier to manage websites? Or Wave to make a chatting tool?

In my mind, this was the problem that Wave came across... it wasn't easy to describe what it did in a simple way. It wasn't email. It wasn't chat. It wasn't collaborative writing. It was the backend that made that all work. It was incredibly ambitious, and that made it difficult to get people to use.

If it was "just" chatting -- I think that would have made a huge difference. Users don't care that you're using OT to write messages on the fly... they just want to be able to chat with friends or colleagues.

So, what is the killer application for a collaborative outliner? Why would I need one? I'm genuinely curious as to your thoughts, as you've clearly spent a lot of time thinking about this.

One thing an outliner lets you do that you can't do with something like Wave or a tree structured discussion group is to arbitrarily rearrange the tree.

You're right, you can represent tree-structured outlines in Word or Docs (or JSON in Excel or Sheets as I described here [1]), but it's clumsy and not well supported by the user interface.

[1] Representing and Editing JSON with Spreadsheets: https://medium.com/@donhopkins/representing-and-editing-json...

Where Frontier really shines is in its user interface and feature set, which makes navigating and creating and editing outlines very easy and efficient.

Frontier's main use was (tree structured) content management and scripting, and making websites is a popular application of that. It was extremely useful for making tools, and like Emacs, its power came from its extensibility.

Its pre-web predecessors [2] were ThinkTank (which started on the Apple ][ with a keyboard based interface) and MORE (which added a mouse-based drag-and-drop interface, that made it much easier to use without spoiling the ease of use of the keyboard interface, and also formatted graphics for making charts and slide shows).

[2] MORE (application): https://en.wikipedia.org/wiki/MORE_(application)

Beyond obvious stuff like content management, blogging, and scripting, I think there are many other killer applications of programmable outliners (just as emacs and spreadsheets have many applications), some old hat, and others undiscovered!

I wrote some more [3] about Dave Winer's work on Frontier, and linked to some screencasts he made that show how he uses it to organize his thoughts (about the history of outliners, in this case, which is beautifully self-referential).

I think the most important point that comes through in Dave's demos is that the operating system and user interface shell should support generic outlining and scripting at a very basic, built-in, ubiquitous level. But I believe Windows, OS/X, iOS and Android have a hell of a long way to go!

[3] https://news.ycombinator.com/item?id=20672970

Dave Winer's second outliner screencast:


Dave Winer's the many lives of Frontier screencast:


Dave Winer on The Open Web, Blogging, Podcasting and More:


>UserLand's first product release of April 1989 was UserLand IPC, a developer tool for interprocess communication that was intended to evolve into a cross-platform RPC tool. In January 1992 UserLand released version 1.0 of Frontier, a scripting environment for the Macintosh which included an object database and a scripting language named UserTalk. At the time of its original release, Frontier was the only system-level scripting environment for the Macintosh, but Apple was working on its own scripting language, AppleScript, and started bundling it with the MacOS 7 system software. As a consequence, most Macintosh scripting work came to be done in the less powerful, but free, scripting language provided by Apple.

>UserLand responded to Applescript by re-positioning Frontier as a Web development environment, distributing the software free of charge with the "Aretha" release of May 1995. In late 1996, Frontier 4.1 had become "an integrated development environment that lends itself to the creation and maintenance of Web sites and management of Web pages sans much busywork," and by the time Frontier 4.2 was released in January 1997, the software was firmly established in the realms of website management and CGI scripting, allowing users to "taste the power of large-scale database publishing with free software."

Programmers love trees but they really aren’t the basis of good user experience.

I spent years building tree oriented uis before realizing.

The specific application envisaged in the parent post is a solution without a problem, that scratches the programmers itch.

Can you share some experiences and insights? Maybe UIs that you think are better alternatives in specific contexts

Essentially all the existing Ui paradigms are better.

Trees are fiddly and poky things to navigate.

Tree oriented uis leave information hidden and require lots of clicks. Ugh.

Special cases and complexities constantly arise in tree oriented uis and clear consistent solutions are often hard to fit in to the system.

Programmers love trees though because truth is a lot of data is in tree form so the assume that data structure should be surfaced to the user.

It not correct though. Simple flat uis are much better.

My obsession with trees culminated in building a major business system that realized my dream of a fully tree oriented ui. It was shit.

I totally redesigned and rebuilt it several years down the track.

Now I don’t put trees in uis.

I agree that generalized trees require too many clicks.

What I really like are the limited depth, non-collapsing trees in a lot of UIs now. Like in Slack, where the left nav has few top level nodes—pinned channels/chats, channels, and chats—that make it easy to get exactly what is needed. It’s not perfect (like I would prefer an aggregated pin that simply shows everything from all pins in one conversation dialog), but it is visually clean and efficient. And instead of a giant tree to enumerate all channels, you use a dedicated search interface that makes it easy to add entries to tree with a single click (without having to interact with the tree).

GUI based file system navigation is another example where surfacing a tree works well.

When I worked at Google, we made a prototype of a non-grid spreadsheet-type thing. More graphical than tree-like, but the same underlying engine could be used for other purposes.


1. The FLOW Shell: https://drive.google.com/file/d/0B6Qg3A0fSZHoNk5EX3ZkREEwbUk...

2. FLOW 2D Turtle Graphics: https://www.youtube.com/watch?v=4wO_RrftJTE

3. Background: https://www.youtube.com/watch?v=-fbq-_H6Lf4

Here is a short demo of a prototype of a tree-based spreadsheet I'm working on: https://youtu.be/pphY94boHq4 I intend to make it collaborative at some point, but I'll have to study OT and CRDT first :-)

This looks interesting, but the syntax seems like a major obstacle. "( /( * --->n( +--->n1 ) )2 )" instead of just "n * (n+1)/2" seems very unwieldy. Why the big arrow prefix on variables?

Yes, the syntax is a problem. I'm working on it, but I have not yet found a consistent and ergonomic design of the structure editor that covers the infix notation.

All function parameter usages in function bodies are just "ordinary" links to their corresponding declarations, and it just happens that links are rendered as "-->" followed by the name of the cell pointed to by the link. Instead of the arrow symbol I could render the link with some distinct background pattern or color. I might also make the arrow shorter, I guess.

Here's your tree-like spreadsheet (with no collaborative features): http://strlen.com/treesheets/

I have read about this idea many times and wonder how it hasn't been made yet.

I personally feel like lisp in the right clothing could accomplish what you describe. I am currently working on http://colortree.app to do some of this, but it is still in its early stages.

not tree - graph. graph is universal. tree is MongoDB. Thats not what you want. Graph is what makes this problem hard.

Are you really implying Google Sheets has killed Excel?

No, where did you get that idea? Google sheets and docs simplified, cloudified, and collaboratified their predecessors. No more emailing around and renaming multiple copies of different versions of the same spreadsheet or document.

To be fair, Google did a really bad job of explaining what Wave _actually was_ when it was launched, which was not helped by the naughties tech-tradition of being "invitation only".

Had they simply said it was a cool chat application and given everybody access then it may well have caught on.

Exactly. At that time I worked for a large educational institution that was introducing online learning (hot topic those days). When I read about Google Wave I said to myself - it looks great, we are ideal usecase for it. I asked for invitation explaining who we are (very big public edu institution), what we do, how much users we have (thousands), etc. But, obviously, my e-mail was ignored. Finally, after more than half a year I finally got the invitation, but Google Wave was already ridiculed by those invited earlier for its slowness and messy interface, we have chosen other software solution, so I haven't even checked what it can provide.

A year or two later Google Wave was "opensourced" and "donated to the community", so I was very happy I didn't invest more time investigating it.

Yes. Wave is a perfect example of great idea, great product, poor - really really poor - roll out execution.

To have a group of say six, five have Wave, one does not and can't get an invite...group can't use Wave. What wes Google thinking?

Long to short, I bet there are plenty of great ideas/products in the startup graveyard waiting to be revived and re-executed. It's not the idea/product that failed but the marketing/growth.

I don't think it was killed because it didn't catch on - almost everyones whom used it viewed it is positive and it was hardly even launched before they killed it. All of it's features are now in almost every chat application. Look how long they let the ghost town of Google+ linger on around for before sticking a fork in it. I think it was pure internal politics that killed wave and nothing else.

I got an invite to wave, but no one else I knew was on it, so it had no value at all to me. It didn’t have that attribute that PG ascribed to reddit: the ability to be valuable with a small number of users.

They also didn’t have explain how it was different, if at all, from similar chat systems of the past, like PowWow or ICQ chat. Those were both see-typing-in-real-time-systems that were, IMHO, not at all useful in business.

Perhaps you joined wave before I did, but IIRC by the time I got an invitation each invited user had 5 inivitations to share among their friends/peers.

So forming a group wouldn't have been a problem because you could invite your friends who could invite their friends.

This sounds familiar. I don’t remember if my friends/colleagues didn’t want to join or what. So it might have been my fault. Still, the system seemed useless as single user.

Sure Wave gets a lot of hate but our team enjoyed it a lot.

After it was shutdown we migrated to Hipchat, then Slack, and finally Keybase.

It was positioned as an 'email killer' - and as validated by Slack I think that was pretty clever and spot on marketing.

The last sentence of the video is “google wave, because... because... fuck you exasperated sigh”.

I burst out laughing at that and I’ve been trying to figure out why.

Laughter is an act of destruction, an emotional declaration that this thing is not part of reality and wiping it out of existence.

A lot of what tech companies do feels like a fuck you. Killing Google Reader without explanation, disabling the full capabilities of ad blockers, removing headphone jacks, letting third parties exploit our social data, hiding the full scope of data collection behind a vague “we will use your data to improve the service”, and so much more.

The relationship between tech companies and customers wasn’t nearly so adversarial 20-30 years ago. In the 1980s, it felt like Microsoft was really on a mission to bring computers to everyone. Sony was creating tech to allow us to listen to our existing music collections. By the late 90s, Apple’s big idea was basically “candy color are pretty, they will make our users happy, so let’s make good colorful cases”.

And up to the mid 00s, google really seemed like a champion and advocate for internet users. It felt like (though in hindsight it was an illusion) that when policy decisions were being made, we could trust Google to be our voice when we weren’t in the room.

“Because fuck you” would not have been at all funny back then.

I loved Google Wave, was pissed when it was terminated, happy again when I installed and played with the slightly derivative Apace Wave project, then was unhappy again when Apache Wave was retired January 2018. In retrospect, I wish I had volunteered some effort on Apache Wave - lesson is if you like something contribute.

>I wish I had volunteered some effort on Apache Wave

The point of the video is that products don't fail for lack of developers

I've worked on UC for most of my career and loved Google Wave. Conceptually they were right, but it required imagination on the part of the user and there was no bridge to the past. Instead of addressing this, Google killed off the product, and then all of their collab products over and over again. I've lost track and gave up on them now, and I think you really have to love Google to even bother with their UC stuff now, but Wave was a joy while it lasted.

Does UC stand for Unified Communications here?


I had such high hopes for Wave. I thought it was an idealized union between IRC and NewsGroups. Real-time interaction, plus threaded conversations, and For The Real WIN: no more top-posting.

Web-forums could finally be re-invented.

I also saw it as a great platform for things like 'Remote D&D', and a "rich media" that was hinted at in the 90's.

I was in grad school when Wave hit. I was dumb founded when they cancelled it. I've heard only a very few people whom tried it say they didn't think it was awesome, which leads me to believe they didn't kill it because of a lack of viability at all - they killed it because it competed with other strategic initiatives, imho. This would have been the pre-slack killer easily. Looking at it's features (in conversation threads, drag and drop photos, adding folks to conversations, etc) one almost thinks it was the inspiration for slack even.

Anyway, Wave wasn't killed because it wasn't viewed as viable, it was killed for politics, which is probably why it's creators and engineers were so pissed off. Shame.

I think that video was made by a comedian, not actual engineers.

They didn't even give Wave 2 years??

Nope, and it was invite only. By the time my friends were getting access, they were shutting it down. We would've loved it for remote gaming, in particular.

My D&D group used it for collaboration, mainly debating how bad 4th edition was :-) We liked it, but it didn't break anyone's heart when it was shut down.

I worked on a (non-D&D, quite niche/indie) RPG managing bot in Wave. The ability to work gameplay into a document draft, with the GM and player directly collaborating on revisions and bot-based rolls/mechanics directly inline, had a potential to be fantastic for certain types of story-heavy, written narrative-focused RPG playing.

I keep debating revisiting something like it for Discord/Slack today, but the style would still be quite different from that "threaded, collaborative Word document with revision tracking" feel of Wave.

It's actually creepy that other contacts can watch you live typing!

This is feature that is/was present in other applications, such as ICQ and talkd.

And it's awful. Typing stuff makes me think about it, and I change it constantly. Then you end up having people change thoughts mid sentence when they see what another person has started typing in response to what they haven't even finished yet. It's like having everyone talk at once.

Apparently it wasn’t everyone cup of tea but personally I loved it. It makes for a different sort of conversation - more live than the asynchronous back and forth messaging of most apps today. You can often reply to someone while they’re typing their message - and if you guess right they can stop typing and move on to read / reply to your response in turn.

I’m not sure how well it works in groups but 1-on-1 it feels more like a phone call than a messaging app; except it’s over text, it seamlessly transitions to offline asynchronous messaging if someone isn’t there and you can both “talk” (type) at the same time.

Just make it an option duh!

But it was an option wasn't it?

You could write in draft mode I think, and people couldn't see the result

When I'm annoyed with something I've received on any given platform, I find it cathartic to type out a really sarcastic/vicious response to then just delete it all and reply with something a bit more balanced/respectful. Live updates make that impossible.

ITS had :UNTALK (around 1982)


>Another useful comlink program is UNTALK. UNTALK is similar to TALK but does not work across machines. However, on a display terminal, UNTALK splits the screen horizontally and allows the two people to type at the same time on their part of the screen.

You should know commercial chat solutions (for customer support, pre-purchase inquires etc) do this - agents can see what you’ve typed before hitting send.

I never checked, but I always assumed this. It just makes sense given time is probably the most important factor in those interactions.

Also in Slack and I find it creepy, too. And I think it's awkward that you can only turn it off on the receiver side.

In Slack you only see that they are typing but not what, or did it change recently? Wave editing was a precursor of the Google docs collaborative editing so you could actually see characters one by one.

It's been years since I've used Wave, but I'm sure it had a setting for that just below the text field.

I'd just type elsewhere and paste it in when it's ready if it concerned me.

I've made a timeline with the video of the original world-shattering announcement and demo of Wave at Google IO, and some of the Google Wave related submissions to HN. How pretentious and audacious it seems in retrospect! It’s hard to appreciate all the snarky jokes in the Pissed Off Wave Tutorial, if you don’t remember how, um, over-confident they were when they announced Wave.

Google Wave Developer Preview at Google I/O 2009 (May 28, 2009)


Google Wave Drips With Ambition. A New Communication Platform For A New Web. (May 28, 2009)



Google Wave: What Might Email Look Like If It Were Invented Today (May 29, 2009)



What problems does Google Wave solve? (Oct 15, 2009)



Google Kills Wave (Aug 4, 2010)



What makes Slack so successful whereas Google Wave wasn't? (Oct 10, 2015)


What in the Hell Was Google Wave Trying to Be Anyway? – Gizmodo UK (May 27, 2019)


On a lighter note, the Game Helpin’ Squad (who made the Wave tutorial) also has several spot-on parodies of various video game genres!

“Time Travel Understander” is a parody of Braid:


“Severe Running” parodies those Flash running games:


And “World Quester 2” is the ultimate D&D RPG parody:


"Pretend Gas Station" is a SimCity parody:


“Solitare Party” parodies all those card games:


I dunno, I liked Wave. I thought of it as NLS as implemented by a modern software dev who had only heard a verbal description.

I fell for the hype myself, got terribly excited about it, and wrote up a bunch of ideas in a Wave discussion about how to use it for collaborating in multi player SimCity. But it just got so slow and unresponsive the bigger a wave grew, and it was like drinking from a tsunami, so that nobody could keep up with what everybody else was typing.

Part of the problem is that it had none of the filtering tools of NLS, and the linking/sharing/addressing tools had a terrible UI. It could have used some kind of changelog/journal as well.

I wish someone could have shown them The Mother of All Demos, if they could make it do mostly that it could have been amazing, but they were probably pretty heavy into drinking their own flavor-aid at that point.

It's a big ask, but I've hunted for it numerous times. Do you have or know the video of the dude in the crowd holding his laptop over his head in ecstatic appreciation during the Wave release? Also the parody of the guy the Wave team later made during a semi-unrelated video

It's one of the finest statements ever made about our industry, but if it's still around it's well hidden

Wave was a perfect example of leading with technology rather than the problem to be solved. Nothing I ever saw or read about it spoke to a specific user problem. Sure, Google has problems in spades that can be solved by Wave (engaging users, crushing upstart social media companies to name two). But in terms of eliminating something costing large numbers of computer time or money, Wave brought absolutely nothing to the table.

I remember seeing the hyperventilating response to Wave by tech people at the time and wondering what they were actually experiencing. Because what I saw was yet another Google initiative that would be shut down and forgotten fairly quickly.

I believe Wave was pretty similar to what Slack has become today. It was bringing a lot to the table, but probably too early.

Not too early for users to see the value, but for Google to roll out widely enough to make it a proper social network.

Technology was not mature enough for such an application.

I don't the problem was the maturity of the technology (much of it very quickly migrated over to Google Docs soon after the Wave shutdown). Wave was built in the original Google model of an open garden; parts of it were based on XMPP (like Talk was) and all of it was designed to support multi-instancing and federation between instances similar to both XMPP and email. It launched just in time for the Google+ efforts to decide the future of Google was only in an entirely proprietary walled garden.

I remember watching a presentation that the creators gave. In it they described the issues of email, and how wave addressed them. So those were at least a few problems that it was trying to solve. Once I actually got in and started playing with it I felt pretty overwhelmed and didn't really feel how great it was to have those problems solved.

It would have worked better for me if they had kept it simple

Neither Google Reader nor Talk had been shutdown until 2012, so the whole storyline of Google constantly shutting down stuff hadn’t started yet, this seems like a false recollection.

Though Reader, Talk, Buzz, and Wave were all killed in quick succession and to arguably the exact same forces (Google+), for very similar reasons (walling the garden, "reducing redundancy"). That shutdown wave was brutal and nearly simultaneous enough that of course it defines the narrative of Google constantly shutting down stuff.

Google pulled support for its search API long before wave, leaving developers who started to build on it high and dry.

This reminds me of You Suck at Photoshop

It wasn't a very bad idea, the implementation was. I still miss a tool, somewehere between email and chat. Basecamp has something like this, where you have topics (threads), members (recepients) and a simple message sending like a forum, without the downsides of a chat.

I'm surprised no one has tried to revive the Wave idea in some way. Whether by forking the original project, or attempting a remake.

For better or worse, I think Slack and its cohorts are what people accept as the "next" email. They are wave's successors, spiritually at least.

"Some" people, arguably. Nothing beats email for an easily-referenceable, structured and local/distributed system of record. Slack requires an always-on connection. Catching up on conversations after a lengthy break is far, far easier using email.

Slack is also disruptive in a way that email isn't. Slack demands attention, which breaks concentration on other tasks. Email can be dealt with at the recipient's leisure.

Is Slack really that much more feature-rich than IRC?

I'd really love to see something similar to Wave's "real-time" instant messaging in one of these newer apps.

Slack adds persistence, shared sessions across multiple PCs and phones, search, accounts with logins, messages to offline users, image and file hosting, and works even if you're heavily firewalled.

i.e. the stuff a veteran IRC user cobbles together from an always-on server running irssi+screen, nickserv, saved identify and ghost commands, a chatbot and some personal webspace.

Still, I agree Slack is far more the child of IRC than the child of Wave. IIRC Wave had full rich text, a threading-like mechanic, and you could edit other people's messages, and documents rather than channels.

There was Apache Wave but it's dead by now, as well. https://en.wikipedia.org/wiki/Apache_Wave

So I want to be clear that it absolutely does not have feature parity with google wave but Asana encapsulates many of the collaborative features of wave in a way that I really enjoy and it is my next best replacement from the loss of google wave

Does Asana have any kind of "real-time" instant messaging that Wave had?

each task has a thread attached to it... I would describe it as "real-time-ish" one of the things that I like about these threads is that you can unsubscribe from them so that you stop getting notifications.

can't polish a turd

So Google wave was Slack before Slack??

I consider Google Wave closer to reddit for real time chat.

That, sounds a lot like slack

Less like IRC and more like using a Google Docs document or Office 365 Word document collaboration for a live chat, using different paragraph formatting for threading. (Some of the Wave collaboration tech wound up in Docs.)

Slack allows 2-tier conversation (and IIRC, you cannot share code snippet in 2nd tier).

Reddit and HackerNews allows n-tier conversation where you can branch a thread to heart's content.

Can't wait for the Google alternative to Slack....

Hangouts was just killed. It'll be a few years before they try again.

I have this, I’ve used this, I forgot it exists. It’s on my iOS devices but I’ve never considered opening it in my work browser. I do have Slack pinned.

Not sure why you are being downvoted -- it's a fair suggestion but worth pointing out it's for enterprise/business clients only.

Hangouts Chat

* Can't communicate with anyone without GSuite

* Can't talk with our customers who use GSuite on another domain.

* Can't communicated with the "old" Hangouts, so it's utterly useless.

Another failure from Google. Whatever management structure incentivizes this crap needs to be fixed, if they ever want to expand out of their current domains.

Google had a winner with Hangouts. Instead they left it to die, while they moved on to Duo, Allo, and now Hangouts Chat. Meanwhile slack stepped in and took what should have bee their market.

Google needs to own its failures. It can't ship anything new or innovative. The only things that they've been good at is acquiring things that other people have invented (Youtube, Android, etc).

Buzz? dead. Wave? dead. Plus? dead. Allo? dead.

It's so bad now that even features and innovation on their existing platforms are dying.

Youtube? Everything they do with Youtube is a screwup. Android? Good luck getting an app in the app store without Google accidentally killing your company.

Google Cloud? Sorry... everyone's on AWS or Azure.

Search? Nope... Elasticsearch now dominates that space. Think about it. Elasticsearch now beats Google at what Google should have dominated - search.

Chrome, Kubernetes, TensorFlow, Golang, AngularJS, Prometheus, gRPC, Protocol Buffers, Vitess, Spanner, Flutter, Bazel, GoogleTest, Istio, V8, AlphaZero

Seems like Google innovates and builds a ton. It's the whole dealing with customers part that they don't like.

Google has a significant fraction of the best and brightest developers of our generation on payroll. It’s not surprising that they create innovative technology.

It’s just that they really suck at creating products. After gmail and maps there were next to no successes; even when they throw all their weight behind something like they did with buzz and plus, they tend to fail hard.

> After gmail and maps there were next to no successes

Yeah, just little used products like Android and Chrome /s

Neither chrome nor android have a revenue stream. Both are long time strategic hedges meant to protect the ad revenue from gmail, search and maps.

Angularjs + Angular doesn't belong in that list.

how they handled that transition gave react a huge footing, splintered the framework community, also have made it very hard to search for their own framework.

Wasn't the bigger problem that it was hard and heavyweight and felt like you needed to be a Java developing software engineer to make anything substantial with AngularJS?

Well, AngularJS shouldn't belong on that list because it was brought in from an acquisition, I believe.

So they seem to output outstanding software for us to use, but when it comes to making money they are still mostly a one tricky pony, but what a pony....

Flutter is going to die unless they actually release Fuchsia and force everyone to jump ship. Dart got lucky with the AdWords team that is all about it. All the original Dart designers have left Google and are no longer related to the language.

Android team is pushing Kotlin/Native for common code across iOS/Android, came up with Jetpack Compose and rebuilt their reload code from scratch for Android Studio 3.5. When asked about Flutter they always give the "use what is best for you" kind of answer.

Go is still playing catchup with majority of internal services written in Java/C++. Although it already has some small victories in ChromeOS, Fuchsia and Android GPU debugger.

Kubernetes was originally written in Java, was rebooted into Go after another team took over and its codebase suffers from lack of generics support, leading to a pile of code generation.

Some devs dislike so much how AngularJS was so badly managed, that they still mix the Angular/Typescript variant with AngularJS.

Flutter might actually have some legs. It's gaining a lot of steam without any Fuchsia involvement.

I'm a UI-focused engineer who's been working with it for the past 8 months or so, and I'm really liking it. Hot reload is awesome, the framework's primitives and how they compose is very natural feeling after some practice, and the framework doesn't hide low-level control from you if you need it.

Dart's no slouch either. I mean, it's not super exciting, but its standard library is nice, and the language itself is improving all the time (non-nullable by default coming soon!).

PLUS, with support for macOS, Windows and Linux on the horizon, we're soon going to have a really solid development environment that works on both mobile and desktop platforms.

I know this sounds like an ad, but I'm serious. I like it a lot.

Prometheus was developed at SoundCloud? Or is there another Google product with the same name?

Prometheus... now there's a name I've not heard in years.

"App Engine", to non-googlers.

Isn't Golang really Bell Labs guys, now Google.

MapReduce far far predates Google, in shared-memory multiprocessors of the late 80s and thereafter, for instance, though didn't Google popularize it.

Isn't Golang really Bell Labs guys, now Google.

Golang was developed at Google, with Googles blessing, by Google employees. I don't know how much more you can ask for. What difference does it make that some of the people had jobs before Google.

MapReduce far far predates Google

The general concept was known, the implementation and algorithms Google used to run MapReduce efficiently on large cluster of heterogeneous machines was original to Google.

Is it Bazel or Blaze?

Blaze was the internal tool developed at Google. Bazel is the external incarnation.

> Flutter

I am still sad that they acquired a really cool company called Flutter back in 2013 that shipped an awesome product allowing you to control media players using your webcam with hand gestures [0]. They only kept the name it seems. So yeah, not so innovative.


Because a name got reused? What does that have to do with innovation?

Because the product didn't get reused.

> Google needs to own its failures. It can't ship anything new or innovative.

K8s? BigQuery? Chrome (in particular v8)?

> Wave? dead.

Wasn't Wave effectively a tech preview for collaboration technology central to Docs and Sheets?

Whether or not that's the case, aren't Docs and Sheets counterexamples to your argument?

> Google Cloud? Sorry... everyone's on AWS or Azure.

AWS and Azure have together (as of Q4 2018) a bit less than 50% of the public cloud market, hardly “everyone”. Proportionately, Google is closer to Azure than Azure is to AWS, and has a higher growth rate than any of the other major public clouds, bigger or smaller. [0] AWS has first mover advantage, Azure has leveraging Microsoft’s preexisting deep penetration into enterprise. But Google's gaining on them, anyway.

[0] https://www.canalys.com/newsroom/cloud-market-share-q4-2018-...

  Wasn't Wave effectively a tech
  preview for collaboration
  technology central to Docs and
According to Wikipedia, Docs launched in March 2006 and Wave in May 2009. And Docs had collaborative editing from the start (Google brought it from a startup with that feature already working)

Right, but Wave was the foundation for the real-time conversations and other collaboration improvements added to Google Docs (etc.) during the period at the end of Wave’s life as an independent project at Google.


But Docs had the ability for multiple people to concurrently edit a document and see one another's changes [1] before Wave was even launched - right?

Hasn't live multi-user editing been there all along?

[1] https://youtu.be/dSGkzDgW1fA?t=78

I don't think it's half as bad as that. Google Flights, Translate, the G-Suite, Firebase and TensorFlow have all been good products/software, though perhaps not world-changing.

Google Flights was an acquisition of ITA.

Firebase was an acquisition too.

wasn't Docs an acquisition too? dunno about Sheets but it wouldn't surprise me at this point

yes, docs came from writely. sheets came from xl2web.

Tensorflow was also an aquihire.

You're conflating Google Brain with Deepmind. Tensorflow was decidedly not an "acquihire".

this is not correct. TF was originated and written by Jeff Dean and some other folks after their experience with distbelief.

Youtube too

Not the application itself. ITA was mainly acquired for their data, Flights was developed from the ground up.

True enough. When I get unhappy over cancellation of Wave, Buzz, etc., I should remember that a good part of my career in the last four years has been made around TensorFlow and Keras.

I am a huge fan of TensorFlow.js, the examples, docs, etc. are really good. But, I am nervous about jumping in too deep in case it disappears. Regular TensorFlow is here to stay for the long term.

Translate has been around as long as I can remember. It works exactly how I remember translate.altavista.com working-except I can’t remember whether alta vista could detect language.

The Google Translate android app has a magic camera that recognizes translates and replaces the text in real time in the video feed. That's pretty cool.

So does Google Translate on iPhone. But that was originally Word Lens, then google brought them and for a time the lens app became free then they added the functionality to the Google Translate app.

There has been a staggering amount of innovation in machine translation. Google has some of the leading groups in research for neural machine translation and they put a lot of it into production.

Saying that it works just like Altavista's Bablefish of yore is ridiculous, at least for the European languages I am familiar with. Translation quality as offered by all major services is leagues ahead compared to the state of, say, three years ago.

(Disclaimer: I work on a competitor to Google Translate)

I meant UI...copy paste text on left side and output on right side. Of course there’s been innovation underneath. My comment wouldn't be two sentences if I had any knowledge about how alta vista or google translate work(ed) underneath.

What about Gmail and Maps?

Anyhow, acquiring the right companies, integrating them successfully and keeping them successful is an equally important skill for a big corp. Look at FB, where would they be without being excellent at acquiring companies (IG, WhatsApp, Oculus).

Edit: Can't spell

Interestingly, the Google Wave team was lead by the founders of Where2 - the company they acquired and turned into Google Maps.


Well inbox was a brewth of fresh air but apparently if you can't get a billion users of a billion bucks in a year or two it's just not worth doing.

The only way Google actually commits to a product is if it becomes so popular so fast that killing it would rock society as we know it. Gmail, YouTube, Maps, etc.

> Google Cloud? Sorry... everyone's on AWS or Azure.

Google Cloud was late to the party, but they were very smart to invest in GPUs near edge nodes. I think Stadia is primed to eat the gaming world's lunch. They can reuse this capacity for ML during off-peak hours.

I'm actually kind of scared of Stadia. I like having physical copies of console games, and if Google makes major inroads they could become the dominant player in the gaming industry. They definitely won't be friendly to physical form factors.

I'm a huge fan of digitally purchased games. By purchased I mean games with no DRM that don't require a multiplayer server or anything. Humble Bundle and GoG are good sources for these, but you can find them on Steam and such as well.

On the flip side, physical games are no longer truly self contained. Day one patches and license keys and DRM and server shutdowns all prevent you from owning the content on the disk any more than a digital purchase.

Now if only I still had time to play games...

The person you're replying to specifically mentioned console games. Consoles have a (very) capacity (given the size of the average game), there are benefits to having physical copies of the games rather than digital.

Most consoles that allow for downloading games have an option for external storage. My switch has a 256 or 512 gig SD card. Xbox and Playstation allow for USB hard drives.

That's great, but Switch games routinely come in at ~20 GB. That means with 256 GB you can have 12 games at a time, if you don't have anything else such as demos, screenshots, replays, etc. Once you've reached that capacity, it's much better to use physical games rather than having to cycle through deleting and reinstalling.

Thank you for reminding me to double check, it turns out I only have 1.6 gigs left. (And 25 or so on internal storage)

I think I only have a 128 gig in here now that I'm counting. (The menu only tells you free space, not capacity) I have 31 "games" installed, where NES, Genesis, Spyro, Crash, Hotline Miami, and Contra collections each count as 1.

The top three are Spyro, (which isn't even out yet) Smash, and Zelda, which are 14.8 to 15 gigs. I could get rid of Zelda and not really notice tbh.

Next biggest is Doom 3 at 8.8, then a bunch of 6.x games. 16 of them are 1.1 or smaller.

So not quite as dire as you're making it out to be, but in fairness my tastes skew more indie and retro than the average.

> I think Stadia is primed to eat the gaming world's lunch.

Not in the US, with most residential ISPs having arbitrary 1TB data caps.

And not in the rest of the world, where broadband speeds can just barely keep up with a Netflix stream

I have bought a lot of virtual content on Google Play Movies and Books. I am not nervous at all about that content going away.

I imagine it is not quite the same for games which might require maintenance like security updates. Still, old versions of their games should be available.

I've only dabbled a bit in Azure and AWS, so I can't do much of a direct comparison, but GCP really seems to have its shit together in a major way. It has a high degree of polish and usability.

> Android? Good luck getting an app in the app store without Google accidentally killing your company.

Kinda painting with a broad brush about the world's most popular operating system with an 85% mobile marketshare.

>Search? Nope... Elasticsearch now dominates that space.

Again, being really selective here ignoring the virtual monopoly on consumer search.

Android was actually a Google acquisition as well...

More of an acquihire. Even the version they showed in 2007 (two years after the acquisition) bared little resemblance with what it became.

Isn't the change mainly due to the iPhone being released? Before that it was a copy of the blackberry look & feel

Google Photos and Google Maps are underrated in terms of future potential for Google's business

Google Photos by far is my favorite Google app. Whatever team works on that should be in charge of everything at Google.

Elasticsearch does not at all compete with Google Search.

How much does it compete with the (defunct) on-site Google search appliance? Or rather -- how much could it have competed if it hadn't been killed?

Imagine if there still was a private Google search tool for businesses where you could have patched into those APIs for integrating new tools. Everything could have been searchable -- Slack, Email, Docs... everything. Instead, they are all siloed.

Not too much. The GSA died because of some stupid internal Google political battle.

> Imagine if there still was a private Google search tool for businesses where you could have patched into those APIs for integrating new tools. Everything could have been searchable -- Slack, Email, Docs... everything.

Isn't that what https://cloud.google.com/products/search/ claims to do?

We are moving back towards that. Google Assistant is trying to let you search inside of apps, if I recall correctly

The developer community needs to acknowledge Google's successes and contributions.

I seem to remember that (maybe Facebook) had its WAVE development team recruited away.

The Chrome browser and Chromebooks are non-trivial examples of Google's successes.

WAVE was genius and needed time and feedback loops to mature.

I morn early Polymer more than WAVE. Spot on brilliant.

But yes, Google is this generation's Digital Equipment Corp. - engineering brilliance/marketing ineptitude.

Thanks for mentioning Google Buzz. I had forgotten about that.

Google published a sample AppEngine project that was very hackable and used the Buzz data stream. Nice, but now it is gone.

Buzz's effect is still very much alive in production Google code. Gmail specifically bans you from using a label called 'buzz' due to this product bungle. Like 1B+ people plus are loading code today that references Buzz still, it's crazy.

Edit: Screenshot https://imgur.com/a/ERuEwuo

This isn't "google owning" their failures, but this:


at least memorialises them...

It's funny that there are multiple takes on this: https://killedbygoogle.com/

all the greats of history create a lot of duds. Michelangelo threw away (and didn't finish) 75% of his works. many more examples in history.

Yeah, it's a shame. They were a really exciting company when they were about creating good products and not just about making us the product. Search was a game changer. Gmail was an amazing product compare to the incumbents at the time. It really felt as if product was king, with tech following closely. Now it feels like it's more about MBA type managers that care much more about the bottom line than about the product and customer.

I think that Milton Friedman spiel about giving Shareholder value as the main objective of a manager, as opposed to giving value to customers, has done major damage to humanity, and the capitalist system.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact