There's also Qwant. I've been using it a for a while on PC and found it to be not bad. On Android I kept running into no results a few times, I don't know what that was about.
What's wrong with FOO? It's fun to say and can use it almost anywhere when you need a random word. Has saved me seconds here and there when I didn't need to think of a word because I have FOO :)
Hmm, there are many companies where what you proposed make sense. But there are also many that I think it's hard to debate that SaaS doesn't offer value.
Running the mail server is simple enough, but then you need to set up storage. Emails are sensitive and often can't afford to lose. Then you need to set up backs, monitor and regularly test DR scenarios to see if your failovers, recovery plans are operational. Of course you need to maintain your data centers as well if you don't want subscriptions.
Then think of login. Employees don't want to log in to 15 different software. So they are going to ask for SSO. You are going to have to deploy and maintain something like active directory. Sometimes they need to be maintained across networks between different offices that are far from each other. After all this, you will still have to buy support packages from principle vendors for times when things go wrong (and they go wrong all the time when you host your own stuff). Shit escalates mate.
Something that really surprised me is how anyone has issues with git work flows. Git is one of my favourite software and I think it solves version control and collaboration issues beautifully. I can unhesistently say only one of the teams used git recall really well and we didn't agree on a work flow or no one was dogmatic about it. Each seemed to just know what they were doing.
I think just create your own branch always for your work is a good idea. Use merges to take or give contributions (reduce using complex things like rebases). If branching on sub branches, try not to squash merge. You can't avoid conflicts all the time but just sticking to branching and merging reduces this problem quite a lot. Team size has been about 12 engineers not sure how it'll impact team of much larger projects. But I have also contributed to open source projects using this same techniques without an issue.
In addition to what you said, I feel that may be Google's view of a viable project (business-wise) is different from many others, hence any real drive to continue these POCs long term.
If we look at main projects/products at Google like Chrome, Search, Gmail, Android, YouTube, Maps, Kuberenetes none of them has any serious competitors out there (except for Android perhaps). I mean, sure we technologists are more aware of alternatives and open to try new things but almost every average user I know is utterly uninterested in an alternative. There's a perception of Google as simply being the most technologically capable company on the planet for average users and that any alternative simply can't match, let alone surpass, Google's offering. Sometimes, when I think about, there's some truth to the latter part of that sentiment. Google does a good job with the projects that actually last.
So, perhaps any project that can't have a similar traction in the market probably doesn't get a whole lot of attention on a collective level.
This is Google we are talking about. I would imagine they started working on competing strategies even well before Microsoft announced officially they are going to use Chromium.
You people seriously undermine the tech awareness of marketing teams, of Google no less.
This is a naive view of how things work in big corporations. They work hard on many levels to make sure different teams are aligned under the strategic interests of the company as a whole.
Sure, different teams might get in the way of each other now and then. But not at a strategic level and the managers don't let the veer too far off the main course. Unless I miss my guess, Chrome isn't just any product to Google. It had great strategic importance to them just like Android. I'm not sure if the main purpose of Chrome's existence is to drive open Web standards.
What saddens me about the threads here is that it seems that some paint a very deliberate picture of Brave as a bad actor worse than other browser vendors.
I was using Firefox and then I switched to Brave. None of their featyres/business model is shoved down my throat. I just use it to browse the Web, I do not see ads, I do not participate in their crypto currency program. Heck I don't even see their icon for crypto currency on my browser UI.
I found Brave to be faster and more user friendly than Firefox which is why I switched. What I meant by user friendly is not just the UI components but also requires a minimal setup effort. I would like to hear more about technical and privacy related merits/demerits of Brave as I feel that's more pertinent at the moment when it comes to browser. However, the hate I hear about their business model/crypto currency somehow is baffling and ironically it seems to come from Firefox users. Can anyone point out some interesting technical and privacy related drawbacks of Brave? That'd be useful for a lot of us.
Considering how software development has become relatively lucrative and so many want to throw themselves at this, it's bound to create a large pool of incompetent engineers. Specially because this isn't an industry that is regulated like medical doctors or architects. Given that, I think it should be relatively easy to find 10x performers on different teams.
However, to find a 10x guy in a high-performing team, that'd be a sight :)
Usually the challenge i get is like may be 6 squares and one circle and I need to click on the circle. Apologies, I thought its easy to look this up because I have nt used Google search in a while and when I just searched this just now it's the first result I got on my images section.
That's one lousy excuse for a corporation like Google. This has nothing to do with them being PhD-heavy or engineering-first? (what engineering-first are you referring to btw?) The reason for this is the nature of their business. It's a calculated decision by them in terms of how much is worth spending on support without taking an actual hit to their margins.
I like the way Qwant search engine deals with this. It gives a small challenge to solve which is a lot less cumbersome than finding traffic lights on photos or far less invasive than the fingerprinting technologies others use.
My observation has been is that most users who use Firefox aren't the kind to be controlled by their PC. Someone who can use Firefox (specially because of privacy concerns and have installed extensions) should easily be able to switch off this ad. If anything I found it bold and kinda funny of Microsoft to do that. I myself am a Brave user, btw.
The problem with trying to be "define any assumptions" and using "a clear chain of logic" is that, if you do this right, you will realise that there's really very few things you can actually say about anything at all. This is a problem when it comes to day to day dealings.
On the one hand, average population do not agree on what can be construed as "self-evident". On the other hand, what seems self-evident within our limited capacity is often misguided or frustratingly incomplete. Even if we sorted both these out, being logical means having to deal with details. My experience has been that average person does not like to deal with the details.
I've found C# to be one of the easier languages to do multithreading with. I think this is owing to the capabilities of a Visual Studio like parallel stack viewer.
Also, anyone working with an OOP should really read Java Concurrency in Practice. That really helps in terms of learning how to think about multiple threads in a OOP world.
Not sure how events by themselves can solve the threading issues as events can be multi-threaded too. I've seen people write far worse event driven code than multi-threaded code. If people want to use events heavily, I think it's better to use a well known design pattern so others can understand what you are trying to do.
I think a large number of people can't tell a browser and the search engine apart anymore. They are so entangled, internet to people means something that when they click on it, it shows the iconic Google search page. Wonder how that happened. I heard that Google is introducing Chromebooks to school kids. By the time these kids graduate, they'll be confused by any computer that is not a Chromebook.
I think if the OS, browser and the search engine belongs to the same company, its perfectly fine to set it as the default. As long as on first launch they give a clear option to choose something else.