Seems like this is how all "enterprise-grade" software becomes a pain to use. Usability and performance get short shrift below getting the next 100 bullet-point-features and before you know it the only computers in the world that can run it decently are the developer's, where it still is frankly only on the edge of usability and far from where it would be a joy to use.
UX changes (usually what people mean when they say ‘usability) are problematic because they often require disruptive changes, retraining people, and breaking someone’s business for awhile if they can’t know this is coming and stage it out properly. That is a good way to lose customers.
Performance improvements over unlocking some major business area with a feature are not as high priority - because an extra .5% in cost to an existing customer is usually not as important as unlocking another 10% of sales.
Over time it can of course kill the product if not addressed. It’s easy to see how the incentives lead people there though.
And for an enterprise, they already pay people to do things they aren’t excited to do every day - why should they care the software is motivating when people already clean toilets, deal with retail customers, and mop floors without any of those being exciting either? As long as it works, it works.
Efficient. I'm not looking to enterprise software to provide personal affirmation in life, but if it takes me 5 minutes of staring at loading screens to do something I ought to have been able to do in 15 seconds, that's that much lost productivity, and it multiplies over days, months, years, and across employees.
Moreover, while supermegaultra performance tuning may be expensive, many performance improvements can be had for much less than the cost of time they are losing people, and many others can be obtained relatively cheaply if they are simply something that is kept in mind at all parts of the design process rather than completely ignored until it can't possibly be ignored any more. To a large degree, I'm not asking for these companies to make a moon shot to make me slightly happier... I'm asking for them to pick the freaking low-hanging fruit that is right in front of them, and, ideally, to do so on an ongoing basis. Computers are pretty fast nowadays, you don't really have to try that hard to put something on the screen in less than 30 seconds.
We all know how dysfunctional management can be, and IMO this is more a symptom of the disconnect between management and the employees resulting in bad business performance.
It’s clear whoever is doing the purchasing either doesn’t care, doesn’t know, or has to pick the option due to another checkbox somewhere they can’t control. The people who know have no control over the tools they are using.
It’s amazing how pathological organizations can be.
"Your employees will be happier" is not on anyone's radar.
"Does it work with our company's authentication system from 2003?"
"Does it support playing ogg vorbis files embedded in spreadsheet cells?"
"The director of sales won't consider it for their department unless you add this particular feature that they are used to from product X, even though they don't actually do any selling anymore and it makes no sense in our own product and will require special-case handling for all maintenance in perpetuity. They have a hunch that it's valuable."
I’m sure Google has high quality engineers working more or less on every product. It’s just the solution space of products with big surface area and many interdependencies is really large. When you are more steps removed from your customers, and can’t move fast (comparing to a small nibble team), finding the optimum becomes a very non-trivial exercise.
Most successful products at big corps have laser-focused teams with highly influential leaders. Anything else results on mediocrity.
My hypothesis: devs are much closer to users, as they are often users themselves, and have more freedom to work on fixing broken experiences, as opposed to just rolling new features.
Linus was able to out-compete a team of hundreds of Microsoft Engineers who spent years building a Source Control system by himself within a span of 10 days when he built git.
You can't take Microsoft Source Control, add a few stories, and end up with git in a Sprint. You can't split that work up between different teams.
The essence of git is in a unified design that matches the essential complexity of source control requirements. When you play the game of telephone from user to sales to program manager to project manager to architect to lead developer to UX designer to DB modeler, each step along the path introduces errors. Those errors made the system harder to design for, harder to scale, and harder to use.
Linus was able to cover every element of those to a passable degree himself. You need to empower your developers. If they don't use the product, if they are not dogfooding, you have no chance to compete against those that are.
That being said, I agree with the general point that having vision and trusting your developers with their vision can be a winning strategy.
That's basically what ItsMonkk is saying, but I think it's worth making it more explicit. Because a one-in-a-million engineer is not replicable, but a deep understanding of your users' needs is.
Same with large open source email services? (Ala Gmail)
It’s usually apples and oranges comparisons. There is libreoffice, but even on it’s best day it’s not doing real time document editing/collaboration with 10+ people on opposite sides of the planet, and that is the Google Docs bread and butter for instance.
Compare instead Google's average products (y'know — the kind they eventually shut down) to the largest FOSS competitors in those same verticals.
For example, compare Google Reader at its peak MAU, to the current #1 open-source RSS reader app.
Or compare Google+ to, say, Mastadon. (Mastadon is a FOSS Twitter knockoff whereas Google+ was a Facebook knockoff, but I think the point stands.)
Or, for a painful one, compare Blogger to Wordpress! (Okay, maybe that one's not fair, since Wordpress is a real company that can hire product managers. But most WP development is still random FOSS developers scratching their own itches.)
Or compare Google Code at its peak to, well, anything. GitLab CE, GNU Savannah, anything.
None of these were failures of engineering. They were either failures of product management, or failures of budget/staffing — which is in essence still product management, since it's a PM's role to fight for the budget and headcount to get the job done.
(That's not to say all but the best Google products rot on the vine. IMHO Google are pretty good with steering their internal B2B engineering-driven offerings, e.g. GKE, Firebase, BigQuery, etc. Those are run a lot like FOSS projects, in that it's a combination of internal engineers scratching their own itches, and customers directly filing bug reports, that determine what gets built. It's the B2C products, and the marketing-driven B2B products — where in either case the engineers involved might not have the problem themselves, and the customers might never directly engage with them in troubleshooting their workflows — that tend to falter.)
> There is libreoffice, but even on it’s best day it’s not doing real time document editing/collaboration with 10+ people on opposite sides of the planet, and that is the Google Docs bread and butter for instance.
If that's your only requirement, then the FOSS project https://etherpad.org/ that Google acquired to build Google Wave off of (and then later dis-acquired) satisfies it pretty well. These days it's even kind of a word-processor! (Originally it was just a multiplayer <textarea> with per-user text background colors.)
What's the current #1 open-source RSS reader app? Google Reader at its peak was by far the best RSS reader I've ever used - and presumably the same was true for many other users, hence why it shutting down functionally killed RSS entirely. But possibly I've just not found the better alternatives.
> Or compare Google+ to, say, Mastadon.
Wasn't your original point to compare similarly-sized services? G+'s userbase was multiple orders of magnitude larger than Mastodon's has ever been.
Google has 1000+ badly-managed products. Google's actual product-management philosophy, is reflected in how these products are created, managed (into the ground), stagnated, and usually eventually killed. My post was about those.
It's very easy to beat the complete lack of product-management in your average FOSS project, by just having one full-time product manager with vision for where the product should go. See, for example, what this guy (https://www.youtube.com/c/Tantacrul) has to say about various pieces of FOSS DAW software, where all the flaws usually come down to a pure lack of product management on the FOSS projects' part. The problems he points out could all easily be fixed by having one person with vision submit bug-reports about workflow issues, and having those bug-reports get taken seriously by the engineers. (And he's now doing exactly that, as PM, for Audacity.)
Google should easily be able to hire guys like him, and put them on projects like the ones I listed in my sibling comment. But they just... don't... seem to have it in them.
The people who made Gmail are either still working on Gmail, working somewhere else, or working on a pet project because they bought the proof-of-competence to choose their project. Google's management structure basically doesn't have anything that says "Hey, you were successful at X, can you work on (thing adjacent to X)?" and incentivize the employee to do that if the employee wants to do something else.
There's no reason to assume the people working on Slides, Spreadsheets, Drive, Docs, &c started particularly overlapped (though I'm sure there's consolidation these days). Similarly with GCloud; all the pieces of GCloud started as independent initiatives (App Engine, Cloud Storage, BigQuery, Compute Engine, &c). All of these started separate and only began using consolidated resources / providing consolidated UX frontends and APIs as they were forced to by a management chain ad-hoc'd together after Google decided "Cloud" was a space they wanted to do business in as an organized front.
GMail is TRASH for me. It's the slowest, most ressoruce intensive site/app I've ever had the "pleasure" of using. I'm using Fastmail now and it's mindblowing how slow Gmail is in comparison.
It is now, but it didn't used to be. Gmail at launch was incredibly fast. It gradually got a little bit slower over time, and then they made it a lot slower with a rewrite a few years ago.
Right back at you. I've used Gmail daily since it's launch and have never experienced "slow" unless I was on a slow/poor connection. How many tabs /instances are you opening? Are you using ancient hardware?
Inbox was even worse, but I think they fattened up Gmail to match it after Inbox folded so the Inbox-loving people wouldn't suffer from increased performance when they had to switch back.
On the plus side they drove me to finally start using real, native mail clients again, so... I guess I can thank them for that.
I'm on PC and don't experience any of these issues. My Chrome is using <400 MB of memory with two instances of Gmail, G Drive, Google Calendar, Google Ads and a couple more tabs, and is consuming maybe 0-1% of my CPU. I routinely have 4 separate Gmail inboxes open each in their own tab.
Compose windows is instantaneous. Opening /viewing email is also nearly instantaneous. Same for search, and navigating between labels/folders.
This is... very surprising. Are you sure you're accounting for the resources each tab is taking up? They may be listed separately from the core Chrome process in the task manager.
I just opened my very boring and nearly empty Google Calendar and that tab alone eats 275MB of memory and idles bouncing around(!) between 0.2 and 1% of a CPU core (which is a lot to be doing nothing, and the way it bounces around tells me timers or WebSockets or some other unfortunate-technology-to-have-added-to-Javascript is involved)
[EDIT] for reference, loading an HN page spikes to 100-150MB of memory, then frees memory down to 40-75MB over tens of seconds, and idles around 0.0% of CPU when I'm not interacting with it. That's approximately the base cost of rendering anything and the (mostly memory) overhead of isolating tabs so they can crash independently. Calendar stays at ~275MB and constantly uses some CPU, and I bet if I watched it over time that memory use would grow.
[EDIT EDIT] basic HTML gmail hangs out around 170MB but keeps allocating then de-allocing 10-20MB more memory, bouncing up then returning to about 170MB. Then when I click on the link in the footer to load "standard" gmail instead, it spikes to 700MB(!!!) then drops to "merely" about 490MB and hangs out there indefinitely, using 0.4% CPU constantly and spiking to 2.5% periodically, while the tab is backgrounded. You are definitely not looking in the right place for your browser's total resource use.
(In fairness, I suppose Mutt's resource usage is probably lower.)
Unlike Gmail and other google properties, I can leave it open for weeks and forget it's there. It doesn't affect overall system performance—because it's not demanding CPU time and forcing context switches when it's not doing anything.
[EDIT] incidentally, has Thunderbird bloated a ton or something? I used to use it on machines with 256MB of memory total and it was not the only thing I had open, and it was totally fine. And yes, HTML email existed then. I was under the impression it was—thanks to neglect, basically—still on good, old tech and the plan to "improve" it to ditch that for bloated modern junk was still on the drawing board.
Okay... Gmail is also the whole program?
> That with what amounts to two of gmail's pages open (an email thread view, and a mailbox view, side-by-side
Huh? You can do that in a single page in gmail, too.
> incidentally, has Thunderbird bloated a ton or something?
So has everything else. I used to use Chrome because it was less resource-intensive than Firefox (back in Chrome's early days, and circa Firefox 3.5)...
It's hosted in a browser. It gets things like HTML rendering "for free".
> Huh? You can do that in a single page in gmail, too.
I've never seen that and just tried to figure out how to do it just to see what it did to memory use. Couldn't. Did end up sitting around 680MB of memory (spiked to 800MB) looking at the same email thread I have open in Apple Mail, which, notably, doesn't exhibit those crazy memory-use spikes every time I click on anything.
[EDIT] What I'm talking about is a fairly typical email client 3-column layout, with folders and such in one column, the current mailbox or folder loaded in another (these two columns together are like the default layout when you first load Gmail), and an email thread in the remaining column, all open at once. I've never seen that in Gmail, and with both ~1min of poking around their interface and ~1min of Googling, couldn't figure out how to get that. I can get columns 1 & 2, or 1 & 3. Not 1, 2, and 3 all at once.
> So has everything else. I used to use Chrome because it was less resource-intensive than Firefox (back in Chrome's early days, and circa Firefox 3.5)
Same. FF went way downhill in a hurry after the 2.x days.