Microsoft Teams is blocking Firefox Nightly
teams.live.com
teams.live.com
Chrome stable with a non standard user agent doesn’t work on via the windows live url but works through the O365 corporate one, same with Safari Mobile without any user agent modification.
This to me looks like stupidity more than malice, their link doesn’t even recommend Edge but rather Chrome and Safari…
We may love it, but Firefox is a big fat nobody in the browser space of 2023.
https://gs.statcounter.com/browser-market-share/desktop/worl... 7% firefox, 10% safari, 11% edge.
By the measure of desktop browsers, Safari and Edge are nobodies too, and that is even with Microsoft's browser being a chrome skin and preinstalled on Windows.
Microsoft has repeatedly engaged in malicious anticompetitive behavior. Without any additional information, I therefore think it's rational to place a high prior probability on this being malicious anticompetitive behavior. The data itself might be consistent with either an accident or malicious anticompetitive behavior. In that case, the prior dictates the posterior.
But even if that is not the case and malicious people are not the norm even there, using Hanlon's razor to try and shut down any discussion of possible malicious actions still ends up empowering the malicious actors that do exist. It's a decent rule for first interactions with human people that you don't know better but is absolutely not the right tool for corporate entities who can much more easily brush off any consequences for being caught acting maliciously. It is outright stupid to apply it to corporations that have a history of maliciousness.
People this smart don't get to claim this level of stupidity. As others have said already, their reputation precedes them. Never underestimate the value of a good (or bad) name.
Microsoft has been subjected to multiple lawsuits and judgements and fines and consent agreements regarding its practices in this area. Microsoft has been burned by this kind of thing in the past; we probably don’t even know half of the legal rulings that Microsoft is subject to that this potentially violates.
My high prior probability would be that there are actually a bunch of lawyers in Microsoft whose job it is to ensure that they have training and processes in place precisely to prevent this sort of thing happening, not that Microsoft has a secret team trying to find ways to sneakily block other browsers.
They no longer do though, or maybe Firefox has stopped identifying itself on the features they are testing.
Which is worse?
Edit: Not that I expect much from here, but since there are a number of child(ish) replies, I might as well clarify this for the replies that I'm not going to individually address:
I'm not saying it's not cool to say "Microsoft sucks" or anything like that. If that's how you feel, then feel free to just say that. It's the internet. What's NOT cool is making up an imaginary situation where someone's simple error is part of this conspiracy that Microsoft is this terrible evil corporation, when there's thousands of decent, community-loving people that work there, one of whom made this error, more than likely by simple carelessness. It's not that big of a deal, it's not a showstopper by any means, and will be a simple fix in due time, almost undoubtedly.
There are people behind software, but a lot of commenters seem to think it's professionally appropriate to just shit on things because they're from Microsoft or because they're from Apple, or wherever. Just say you don't like Microsoft, or that you don't like Apple. It's so antisocial to take the stance I keep seeing.
I think the young people call this "parasocial" these days. Back in my day, we called it "fanatics", where there's this unhealthy obsession and seemingly anthromorphized view of corporations and institutions where hundreds or thousands of different, varied, diverse groups of people are all cohesively accomplishing or building things. It dismisses nuance, it rejects common sense understanding of how teams of people work, and is reductive and hostile to actually intelligent conversations about products and ideas.
If we're chalking it up to "Microsoft sucks" then that's fine, but it'd be better imo to just say THAT, rather than sneak up to the point via this auxiliary issue of this user agent string. Someone has to answer for these individual fuck-ups, it's intentionally shitty behavior to be insinuating that someone did this maliciously under the guise of end users assuming innocence, thereby obscuring the responsibility for it.
Ok, sucks to work at Microsoft then, it is not the fault at people outside Microsoft that they have terrible management, if that's how things go there.
> Someone has to answer for these individual fuck-ups, it's intentionally shitty behavior to be insinuating that someone did this maliciously under the guise of end users assuming innocence, thereby obscuring the responsibility for it.
Yes, management who are the decision makers should obviously answer for this, and if the culture is to blame some random engineer who happened to program it, the engineer is probably better off getting fired from such a toxic environment where they have to be some scapegoat for managements fuckups.
It’s almost never an individual person’s fault, but rather that the process failed in stopping a regression from going through. If anything should be blamed, it’s that the process didn’t catch this; at the PR, testing, or release phases.
If individuals were reprimanded nearly as much as it’s implied, there wouldn’t be a lot of people employed at Microsoft or any other big company.
Just being a faceless megacorp is reasonable grounds for losing the benefit of the doubt, but one with their history? Ascribing anything other than malice first is plain and simple naïveté.
It isn’t likely that any one individual is pushing for incompatibility, but that nobody cares about incompatibility. That lack of care about any standards, with “it works” and “it works on our browser/OS/hardware/etc” treated as synonymous, can be part of a company culture.
You're making up stuff to make your case stronger. Also, it's totally legitimate to fire people for making mistakes, it's not an injustice.
edit: Instead, imagine being fired for making a mistake when you were actually told to ignore something by a supervisor.
Three decades of experience in the field, and unfortunately, I don't have quite the brooding disdain for Microsoft. Their stock has lined my pockets, their employees have treated my respectfully when we've worked together, their products do what they're advertised to do.
Something tells me you're under 40.
"They've lined my pockets and treated me nice so anything they do is all right by me."
> Something tells me you're under 40.
No. But during my three decades of experience, I actually grew up.
But hey, revel in your internet wit, mighty commenter! Your immense mental stature frightens me! ;-)
"It is difficult to get a man to understand something, when his salary depends on his not understanding it."
I do consulting and bill upwards of 300/hr worked in the DC area, with several decades of experience and a network built up along the way.
I took this position thirty years ago too, my mind hasn’t changed except that young people feel like they’re clever or somehow intellectually valid for copy pasting a quote into a web forum.
But at the same you elaborate in great (and unnecessary) detail about the level of success you have attained.
BTW: I am hardly young. I am nearly ancient.
Making a personal remark about me is plenty of reason for me to mention my success, since they implied that my perspective is somehow fueled entirely by some stock that I own. I have actual experience working alongside some MS people, and I have held that stock since 2013. So what? My opinion just goes out the window? That doesn't make much sense to me, I don't know about you...
The reason I associate that with youth is that young people often don't have a healthy portfolio or indeed any financial hygiene to speak of and seem to think that business is a zero sum game. We all benefit from the business world pushing things forward if we're holding stock in the most powerful companies. I'm hardly a supporter of the capitalist system, but I'll be damned if it's not going to work in my favor, since I understand how things are. My responsibility is to my family first. Had there been a revolution when I was younger, I'd have been among the first in line to change things, but it didn't happen.
I think I'm wasting my time in this thread, though.
BTW how can we trust Hanlon? Maybe he tried to cover up is own malice.
If you're not, you have no business running nightly, and you're probably going to generate a lot of "yOuR sITE is BRokEN!" support emails / forum posts / bug reports for other projects, and conspiratorial posts screeching on social media.
I see this all the time - people who run dev branches/nightlies/alphas and have the QA skills of a turnip who have no business doing so...and of course they're noisy as hell and waste a lot of people's times.
If you don't know the most basic points of QA and how to file a bug report that doesn't waste people's time, stop running anything beyond "stable" or betas marked specifically for public consumption. You're not "cooler" or more 133t running nightly releases.
If you don't want to see unsophisticated complaints and bug reports, then you need to stop looking at them. Perhaps find a different profession/hobby where your user-hostile attitude actually benefits someone.
You think I’m going to source dive your tens of thousands of lines of shitty hacked up react just because I’m a nightly user? Fuck no. Do your job clown.
Same argument goes for games on Linux. There was an interview a couple years back where a team noticed more reports from Linux users, and when they looked into it, the reports had logs, steps to reproduce, system info and it help squash bugs on all platforms.
if a coyote eats your cat, its probably not an accident.
its more likely because it's a coyote and that's what coyotes do. it's in their nature.
> Never attribute to malice that which is adequately explained by stupidity.
Forums skew young, tech forums even more so.
“We are the smartest developers in the world” I’m told used to be something you heard on campus, presumably during the recruiting process, and in the board room. But if the Justice department comes knocking, they turn into Steve Urkel.
You can’t have it both ways, and they “accidentally” break too many things that earn them millions of dollars. It’s not stupidity, it might not be malice, but if not malice then thoughtlessness or arrogance.
Not to say that they don't play dirty, but this isn't actually a contradiction. When you hire 100k workers, you're going to have the smartest developers in the world AND the Urkels.
And odds are the smart developers aren't being put to work on the login page.
Second, if you know you have better and worse programmers you either control the work of the latter or you don't ket them work at your entry.
Nobody sees the work of your smart programmers if nobody could login.
So either MS is a lot dumber than I thought or they just don't care because they no most people can't or don't want replace MS software.
This would be a standard testing procedure, not really about developer being smart. Large organizations cannot depend upon individual heroics.
The dev who picked it up got a list of supported user agents and decided that they’ll simply do a string match and didn’t think it through as it’s easier than implementing feature detection https://developer.mozilla.org/en-US/docs/Learn/Tools_and_tes...
they did the same with web Skype.
Any sufficiently stupid technology is indistinguishable from malice.
More than a "boo-boo" in my opinion. Same issue with the new Bing Chatbot - it only works on Edge, but then works perfectly in Firefox when you change your user agent string. Not a technical limitation, but just an anti-competitive desire to drive users to their own products.
userAgent is deprecated.
https://developer.mozilla.org/en-US/docs/Web/API/Navigator/u...
Yes, and because it does, people will use it. You (or standards) bodies can scream from the top of the mountains that it's deprecated, but it won't matter, because if it's there, it will be used.
Bugs in the app can lead to big issues and telling the customers to use whatever browser suits them and "if it works it works" is not good enough. There are still large differences between browsers that feature existence is not same as feature conptivinility.
Of course customers can tweak user agent and "lie" about their browser but then responsibility of issues is shifted to them.
I get all the rest but not this part. A banner should work plenty?
If there are bugs, it may result in money being transfered to the wrong company, or money being transfered without proper approval. Maybe unlikely bugs but could happen.
I can show a banner telling each of the 10k users about browser requirements. I guess that around 99% of the users will ignore that banner and happily proceed with unsupported browsers.
If I don't know if it will work with the browser they are using, why should I let them perform transactions using it? Sure, if it goes wrong maybe I can tell the CFO that their employee ignored the banner, but that won't make him happy.
For me selling the service there are zero benefits with allowing arbitrary browsers.
It is still an old FireFox user agent I got somewhere. I should test my code and see if it still works after all these years. At the time, it was the only userAgent string which didn't lead to being limited. It was almost like an invisibility cloak for my bots.
It's unlikely they QA unstable browsers, but some in this thread are reporting the same on FF stable.
2. Use `setInterval` to start your benchmark routine.
3. Benchmark function runs the API using a simple loop that will return quickly (i.e. within 2ms) using performance.now to evaluate.
4. When you obtain enough samples to indicate an alternate path is faster disable the benchmark function
No freezing the browser. Shouldn't take too long to switch to an optimized version.
That being said, this is a lot of complexity / hard to implement in a robust and fast way so I'm not saying it's a better answer.
> If you'd rely on feature detection, your critical path for "showing the initial screen of the app" is bound to "download feature detect, parse it, execute it, fetch correct variants of your js/css packages, parse them, execute them, show screen". That's not cool, imho.
Even for barebones web apps, your initial html response should have either empty data (but otherwise a visible UI) or a SSR'd version of the page shown while the JS downloads and executes.
2) With SSR you're actually making a case for sniffing the UA for the client's device class. Web apps might need to ship vastly different but overlapping code across different device classes. I'm not even talking about things that can be lazily loaded subsequently, I'm talking about the initial screen for given URL.
3) I'm _not_ going to show the customer any loading spinner or just show a white page for 2s. We had that with Java Applets, remember?
All in all, I'm not saying we should getting back into optimizing web apps for certain os/browsers/versions. What I'm saying is there might be good reasons where the mess of classifying the device on the (first) Initial Page Request is acceptable, given the alternatives.
I thought you were specifically talking about testing the behavior of your website on different client by changing your browser's UA. The only legitimate use would be if you have a mobile-only stylesheet like older wordpress themes (because you said "I've never come across a better way to get a sneak peek into the (first) Initial Page Request of a customer to your web app")
> 2) With SSR you're actually making a case for sniffing the UA for the client's device class. Web apps might need to ship vastly different but overlapping code across different device classes. I'm not even talking about things that can be lazily loaded subsequently, I'm talking about the initial screen for given URL.
I'm not sure why this would be the case. For Teams, they can just load a purple top bar with the words "Microsoft Teams: Loading", right? That's a single responsive stylesheet.
> 3) I'm _not_ going to show the customer any loading spinner or just show a white page for 2s. We had that with Java Applets, remember?
What else are you going to show while the page loads? A fake UI with fake data? As soon as the JS starts executing and loading data, that data can start to populate the screen.
Web advocates can scream from the rooftops as much as they want that nobody should do UA testing, and then have basically no response when we encounter genuine browser bugs that can't be worked around.
It wouldn’t surprise me if some junior dev picked it up and then went to ask a senior dev how can they detect the browser version and they got a half assed reply hmm check the user agent and went on with that.
95% of the major bugs and security issues I see on a daily basis are due to this.
But in a more general view reliance on an unreliable and user controlled data for decision making is a pretty common pitfall in the security world.
For example, how do you know if calling a API will crash the browser?
https://bugs.chromium.org/p/chromium/issues/detail?id=118336...
edit: but honestly, Google could go Apple open source way, making code changes in huge dumps that are impossible to integrate back. But I an not sure it’s worth the trouble.
If they'd actually succeed in capturing the majority of the market, there's a big chance Google would throw in the towel and then what??
Also their consultants are trained to be shills. Every time we have a call with them they will remark about it if we use another browser, even though their area of expertise has nothing to do with it.
The fun part is all of this was to update an expired certificate.
Man, I can understand doing that for regular users who don't care, but as a developer?
Just a few weeks ago an integrator for an ERP system our customer had bought was trying to show some details in a Teams call when his PC suddenly rebooted. He came back and apologized, turns out it was a company policy forced reboot. In the middle of the day because what are timezones?
If my company tried anything like forcing which browser is installed or when my machine reboots, I'd hand in my resignation promptly.
The two programs I’ve used that auto-update your machine give you plenty of a heads-up that you should do it yourself.
I've always felt that this kind of attitude from IT departments is counter productive. It gives people a false sense of security at best, and baby mentality at worst (where they assume no responsibility because it's apparently someone else's).
Your company should be using teams.microsoft.com ! :)
So your comment makes no sense.
We as IT admins may just want to keep track of Edge updates and extensions and not want someone running months old Firefox all sneaky like.
Our IT department doesn't treat us like idiots, FF was an officially supported browser until a month ago, we were on the most recent version. I believe them if they say it's about webapp compatibility, even if this does help them manage the browser under group policy or whatever. They could make this decision for whatever reason they want and wouldn't have a problem getting people to go along with it.
teams.live.com does not
So they are different and it is relevant.
- Under-fund the testing. This can backfire if whistle-blowers point out the change.
- Assign bad apples to the platform. This can't really backfire, because of the woke "everyone's equally good at everything" thing.
- Keep moving the target, similar to the "extend" part of embrace-extend-extinguish. "Of course we can't support legacy platforms like Firefox, because they don't support this incredibly niche 3D tile caching optimisation flag, which only Teams and two other products on the globe use."
When you write software, you test it on every platform you choose to support. If it doesn't work on a supported platform, then you take the time to fix it before release.
It's not an "accident" when the software doesn't work on a platform you didn't bother to test on. That platform is being neglected by policy, not because of some "accident" in the code.
This depends on your definition of "support". It's very likely that Microsoft do not claim to support (as in, put customer support resources behind) Firefox Nightly, this would be reasonable as it's provided for development utility, not daily use.
However, I do somewhat disagree that you test it on every platform. If Teams is built as a website, do we expect them to test every feature of every release on every browser? Probably not, we expect that they do reasonable testing across a representative range of browsers, maybe focused on major features.
If they've got good unit tests, they may test every feature of every Teams release and I assume they test on all the browsers/versions that represent the vast majority of the market. They don't bother supporting FF Nightly because it's not important to them, not because of some "accident" in the code.
It's not technical it's lazy devs. The button is disabled claiming my browser doesn't support it. Bullshit.
Seems we're in the next IE-era.
https://www.microsoft.com/en-us/microsoft-365/roadmap?filter...
Teams is, was, and will be the absolut worst. They only won, because it's bundled into MSO.
Too bad there is no Register or Inquirer equivalent this time around.
the WebKit Wide Web
https://webkit.org/blog/7675/intelligent-tracking-prevention...
I'm not a regular Slack user, but when I tried the voice call option earlier this week first I got a notification that they were switching to some new style of video conferencing called "Huddles", and it gave me an option to choose between "huddles" and "classic" video calls, which was confusing to begin with. I choose the latter, but I got a compatibility error with my browser, advising me to use huddles instead (really, they couldn't detect that earlier?). Anyway, when I tried to 'huddle' my customer, it simple said my browser (Firefox on Linux) wasn't compatible, and that I must install Chrome to use the feature.
This is where I closed Slack and used my phone to make the call.
This was the status last time I used it a few months ago anyway; I believe they were planning on fixing it – they will have to sooner or later, since Chrome will remove these APIs at some point.
You wouldn't be surprised that Windows or Mac OS can't run a linux elf, or vice versas. Same here. This phenomenon is web devs getting what they deserve and dragging everyone down with them.
Typescript & vscode are products microsoft produced and are beloved.
you can also find things in Windows that are just “better” than what we had in Linux land until very recently, namely IOCompletion Ports and the iSCSI stuff.
What am I missing?
The link in the submission points to
https://teams.live.com/_#/unsupportedBrowser
but https://teams.live.com/ works without issues
It's blocked on Nightly. 110.0.1 is the current stable version, not nightly.
teams.LIVE.com is the HOME version of TEAMS. - does NOT work on ANY FF version.
teams.MICROSOFT.com is the ENTERPRISE version of Teams. - WORKS on FF
But hey feel good when devs are wrong about basic shit. I have some job security then.
*again downvoted by mad incels
And I mean, it is crap by itself. It is badly thought out, it has its bad moments even on its native platform, its system of teams etc. is confusing and far inferior to the ones used by its competitors. Frankly, if it wasn't MS and their dominant market position/integration with AD, very few people would make the decision to use it for daily work. /rant
I thought that the update was most about the desktop version who is switching from Electron to Edge Webview2 technology, but maybe it affects also the web version.
[1] https://www.theverge.com/2023/2/20/23607037/microsoft-teams-...
https://www.microsoft.com/en-us/microsoft-teams/teams-for-ho...
Office 365 Teams works in Firefox.
Source: Me, right now.
We tried several things, update browsers, Firefox, Chromium, Flatpak...
In the end we just made a Jitsi meeting
https://www.microsoft.com/en-us/microsoft-teams/join-a-meeti...
This didn't happen the first time I clicked the link, by the way. It occurred on the second.
The first click, I was redirected through a bunch of pages until I landed on the sign-in form.
It took a few seconds to arrive there after navigating the redirects.
I thought the experience was so janky that I decided to try it again, then discovered the redirect loop.
live.com is the "personal" Teams, the one pinned in Windows 11.
teams.microsoft.com is the enterprise "real" Teams, the first one they released.
They are different, why there is 2 downloads here. But HN loves to hate on Teams so... carry on :)
https://www.microsoft.com/en-us/microsoft-teams/download-app
I haven't been able to access most of the Microsoft ecosystem due to various errors on MS side and I'd really like to get it fixed.
Some customers are inviting me to their teams and I always have to say "sorry, doesn't work"
I imagine this is what Teams forwards you to when it sees FF Nightly as your browser.
One the URLs that passes by during the loop indicates: "unsupported browser" at the end of the string./
here is my bug report.
I can't use same sso account on android and on macos at the same time. The token gets invalidated for some reason.
I used to like Firefox but at some point you have to accept the reality: No developer likes to have 2 backlogs, one for Chrome and one for FF. IMO It's better to adopt Chromium-based browsers and put pressure on Google to avoid letting it become the sole decision-maker about the web.
I'm already sick of how much I have to kowtow to large companies because they treat developer time as costly, but user time as free.
Respectfully, a lot of developers don't care about losing a small percentage of users. They will get to focus their effort on Chrome users and increase the service quality for them.
FWIW I'm not a firefox user myself, but I am not a fan of Google hegemony in browser tech.
Though I do launch Chrome to use Teams (because Teams is mandated by my org and I am too shrill and opinionated to install the desktop client).
Got it, I misunderstood your sentence above!
> Though I do launch Chrome to use Teams (because Teams is mandated by my org and I am too shrill and opinionated to install the desktop client).
Yes, it doesn't help that companies don't give a damn, either :)
> IMO It's better to adopt Chromium-based browsers and put pressure on Google to avoid letting it become the sole decision-maker about the web.
But by using chromium/blink-based browsers, you have already taken the pressure off Google. You have already given them what they want, so you've forfeited your hand.
For anyone out there who values the swiftly fading open-ness of the Internet, Firefox or other smaller FLOSS browsers are the right tools of choice.
Mozilla had their chance at this decades ago and Firefox was the dominant browser against IE, 16 years ago, until they did a deal with Google, fell asleep at the wheel and allowed them to overtake and get sabotaged via Chrome's dominance. The same Mozilla CEO at the time believed they could live without Google's money [0] and now 16 years later, they are still heavily reliant on Google and at this point are on life-support.
Mozilla already gave Google what they wanted and forfeited their so-called 'privacy-focused browser mission' over giving the CEO a decades streak of multi-million dollar pay days, whilst the 'Mozillians' only got layoffs and all left with little to nothing.
Mozilla is now a joke to the 'open-ness of the web'. They have nothing to fight with and lost as soon as the took Google's money.
[0] https://web.archive.org/web/20120105090543/https://www.compu...
Mozilla has a lot of mismanagement but that's more of a symptom of Firefox being out-marketed in a way that was impossible to fight against.
Google doesn't care about us raging on HN, normal people are not going to 'put pressure on it' so all you're really doing is letting Google to become the sole decision-maker about the web, even more so than it already is.
Oh wait…
Hopefully the developers then use features that are compatible between those different browsers, and now those browsers have a word to say against Google if they disagree with a specific feature.
Obviously the goal is not to not put money in Google's coffers... how would you do that? They make money by selling data they took without your consent. It's not like non tech-savvy users can do anything to protect their data. Already tech-savvy users mostly can't be arsed to make that kind of effort.
From my experience, most WebRTC issues (i.e. Teams) are involved around Safari instead of Firefox or Chrome, provided the SDP negotiation is sequenced correctly.