This headline BADLY buries the lede! The real scary stuff is the massive future costs of the blatant vendor lock-in that ALL the big tech firms, including Microsoft, are banking on with “free to the government for a year, undisclosed terms for later” contracts.
This is kinda the same for big enterprises too. They start off with really great deals, then every other part is "only a cheap addon, much cheaper than competing product XYZ". Then when you're completely stuck in the M365 swamp, that's when they turn the thumbscrews when the contract renegotiation comes up.
The thing is: Where is the competition though? Considering that most IT departments don't want to spend an extra dime to do consumer-grade software engineering to do any extra integration there is no significant competition to Microsoft 365 and Active Directory.
Google Workspace is the closest but it isn't even in the same playing field when comes into advanced integration. Microsoft killed all of its competition in 90s and early 00s. Nobody stopped them. Nobody applied antitrust law. Now they have at least a decade ahead of everybody else.
Any competition should have to spend quite a bit extra money to just move all the integrated apps (SAP, Salesforce, CAD software, Exchange extensions) to their environment. To repeat my point, most IT departments want to spend a whole 0 on developing / engineering integrated solutions and developing those require some millions per year at least. Microsoft sells these stuff as low as €20 per user depending on the contract.
With all due respect: the author states in the FIRST paragraph that while recession is NOT most analyst’s base case for 2025 he was going to stick to his contrarian reputation and lay out his case for a recession prediction. RTFA then comment?
Thank you for sharing this, Scott! He mentions "Taste" throughout the post and this intangible quality makes all the difference in an early-stage winner-take-all market dominance race.
In 2007 I was teaching myself programming and had just started using my first version control tools with Mercurial/Hg after reading Joel Spolky's blog post/love letter to Mercurial. A year or two later I'd go to user group meetups and hear many echo my praise for Hg but lamenting that all the cool projects were in GitHub (and not bitbucket). One by one nearly everyone migrated their projects over to git almost entirely because of the activity at GitHub. I even taught myself git using Scott's website and book at that point!
"Product-market fit" is the MBA name for this now. As Scott elegantly states this is mostly knowing what problem you solve, for whom, and great timing, but it was the "flavor" of the site and community (combined with the clout of linux/android using git) that probably won the hearts and minds and really made it fit with this new market.
Edit: It didn't hurt that this was all happening at the convergence of the transition to cloud computing (particularly Heroku/AWS), "Web 2.0"/public APIs, and a millennial generational wave in college/first jobs-- but that kinda gets covered in the "Timing, plus SourceForge sucked" points
I learned git first because it was already very popular when I decided to learn it. But when I later learned hg for fun, I realized how much of a better user experience it is:
* After using hg which doesn't have the concept of an index, I realize I don't miss it and the user experience is better without it. Seriously, even thinking about it is unnecessary mental overhead.
* As someone who modifies history a whole lot, `hg evolve` has superior usability over anything in git. The mere fact that it understands that one commit is the result of amending another commit is powerful. Git doesn't remember it, and I've used way too much `git rebase --onto` (which is a poorer substitute) to be satisfied with this kind of workflow.
* Some people, including the author, say cheap branching is a great feature of git. But what's even better is to eliminate the need to create branches at all. I don't need to use bookmarks in hg and I like it that way.
I sometimes imagine an alternate universe where the founders of GitHub decided instead to found HgHub. I think overall there might be a productivity increase for everyone because hg commands are still more user friendly and people would be stuck less often.
> After using hg which doesn't have the concept of an index, I realize I don't miss it and the user experience is better without it. Seriously, even thinking about it is unnecessary mental overhead
... for some people. I know a substantial audience who believe $(git add -a) is The Way, and good for them, but if one has ever had the need to cherry-pick a commit, or even roll back a change, having surgical commits is The True Way. JetBrains tools now even offer a fantastic checkbox-in-the-sidebar way of staging individual hunks in a way that only git-gui used to offer me
I just had a look at $(hg add --help) and $(hg commit --help) from 6.8.1 and neither seem to even suggest that one may not want to commit the whole file. I'm glad that makes Mecurialistas happy
I love surgical commits too. Having surgical commits is extremely easy in hg. You simply specify what you want committed using `hg commit --include` or `hg commit --interactive`. You probably didn't look very closely at the help page.
And if you accidentally committed something that should have been broken up, the user experience of `hg split` exceeds anything you can do with git commands. Quick tell me: if your git commit at HEAD contained a three-line change but each line should be its own commit, what do you recommend the user do? I guarantee `hg split` is so much easier than whatever you come up with.
> You probably didn't look very closely at the help page.
$ hg help commit
hg commit [OPTION]... [FILE]...
[snip]
commit the specified files or all outstanding changes
[snip]
-i --interactive use interactive mode
Yup, it sure does explain that using interactive mode would select individual hunks, sorry for my "if you know you know" comprehension failure, especially in light of the absolutely orthogonal context of that word used further down the help page you allege I did not read:
-y --noninteractive do not prompt, automatically pick the first choice for
all prompts
> the user experience of `hg split` exceeds anything you can do with git commands
And yet:
$ hg split --help
hg: unknown command 'split'
'split' is provided by the following extension:
split command to split a changeset into smaller ones
(EXPERIMENTAL)
without saying what makes it experimental - is that "lose work" kind of experimental?
This is a fascinating area of research in general, but what’s notable here is that the researcher herself was afflicted with the tumors and self-administered these experimental treatments!
I've been using (and occasionally paying) Kagi on and off for a couple of years now. I truly think they're building something interesting and valuable! While I haven't agreed with every product decision they've made, the founder is very good at both understanding his business and also explaining their decisions. This is a well crafted explainer of the search business and the monopoly case-- much better for sharing with less tech-savvy peers than most mainstream media explainers on this subject!
I think its instructive to look at the early history of Google and Facebook. In the early years they did not really turn on the ad revenue levers and just focused on increasing users (i.e. Don't Be Evil) - until a decade after offering their respective services.
Similarly Netflix is just now starting the ad revenue model after years of only subscription based services.
Eventually the temptation for multiple sources of revenue (i.e. subscription AND advertising) will likely be too great due to:
- IPO and Wall Street demands net income growth (i.e. FB/Google)
- Private Equity buys the company and needs to pay back leveraged debt
- The number of customers willing to offer up a credit card for Search stagnates and a lower cost ad tier appears and the ad infrastructure that is built is applied to the paid tiers
I'd argue the minute they turn to an advertising model that subscriptions would churn overnight, but in the same vein as the don't be evil motto being dropped I nod at the scepticism.
When you use Google or another ad-powered search engine, you're saying that it's okay for some company to pay to bias the results away from your best interests.
When you use, say, Kagi, you become the customer; they have a vested interest in providing you with the best experience they can, because they know they're relying on your continued patronage to be able to keep competing with those other free search engines which you already admitted are pretty good.
The other three answers to your question were dumb, so I'll try to do better. Kagi has a free trial of 100 searches without requiring a credit card to sign up. Honest to god, try it. Just bookmark it and search once or twice when Google or Bing is giving you meh results.
As an engineer... googling for stuff is a good fraction of your job. It's quite reasonable to pay to improve that experience. The only real question is what is reasonable to pay.
I don't think it's that amazing for an engineer. Google is much better if you're looking for things related to Intel compilers, for example. Try searching for «intel ipo fuse-ld=lld icx» on both engines.
Kagi allows you to permanently blacklist Pinterest from appearing in any search ever.
It also gives you exactly what you ask for. If you put words in quotes, you only get results matching that phrase. Same with +- modifiers, and all the other "advanced" search operators.
Meanwhile on any free engine, they often completely ignore your query to show you unrelated SEO slop. You can completely forget modifiers and advanced queried, they aren't even parsed. About the only thing that still works is the site: modifier. And I'm pretty sure they only keep that because 40% of google searches include site:reddit
As well, if Kagi can't find a result for your query, it returns nothing. Try searching something incredibly obscure on google or DDG. You get pages upon pages of results and they're all useless garbage or just straight up ads disguised as results.
That's why I pay for Kagi. It stays the hell out of my way and only gives me exactly what I ask for and absolutely nothing else.
You’re getting downvoted but I agree. I didn’t see the value and stopped after a while of paying. It is sad that basically any comment that isn’t pro-Kagi is downvoted but I guess that’s the Reddit-ification of this site.
Most people who complain about Google don’t even use it properly (e.g. PSE).
This is a fantastic idea, and I think the overall negativity misses the point of it being an evolving and collaborative project on github.
When you don't know what you don't know, any little map can be helpful to get one started.
When one desires to learn a skill they usually don't know what questions to ask to get started. This is one of the biggest challenges in learning, and there's a multibillion dollar industry devoted to easing that burden via textbooks and instructional videos. But equally important: beginners don't have a mental model for where that specific desired skill or knowledge lies on the continuum of the domain in which they're seeking to grow. This project puts skills in context, even if some of those contexts are (currently) very flawed.
For example, I've begun working with a couple of teenage garage bands that live near me. I have a lot of experience as a working musician, and they didn't have any at all-- but they knew they wanted to write, record, and perform teenage garage music. I noticed a "Music" domain on the maker tree. It could use improvement, but what it does is make clear that there's more to being a performing musician than learning guitar. In fact I've watched these kids go from "make a playlist" to "learn about copyright & licensing" to "produce a track with another person" to "play a ticketed show", and many of these steps were both required ("learn to keep a beat" springs to mind ;) ) and also not obvious to them when they started.
Each one of these domains is massive and full of intrinsic, context-dependent experiential knowledge. But they make a great starting point. I already learned some things about, say, the PCB design domain and have a better catalog of what I'd need to search the internet for to begin that rabbit-hole.
All of the sibling comments are good answers to this question!
What hasn’t been mentioned is that Signal is an extremely high-profile target for rogue actors and nation-states. Employing staff with personal financial troubles in sensitive positions can contribute to the temptation to use access for personal gain. This is one way intelligence services groom double agents. Despite what appears to be very high salaries they won’t get rich in the Bay Area— but it seems like it’s above a threshold where one of these engineers would feel desperate.
Also: I imagine having a WhatsApp founder as a board member/funder helps here, as they famously built and scaled globally before their acquisition with only 20-30 engineers…
It’s nuts to think a salary of $400k a year won’t get you rich, even in the Bay Area. If they’re not rich, maybe they should check in with a financial advisor because they’re doing something wrong.
“Annual income twenty pounds, annual expenditure nineteen nineteen and six, result happiness.
Annual income twenty pounds, annual expenditure twenty pounds ought and six, result misery”
I agree, but only because I routinely speak with people who make double that and still struggle to pay monthly bills. Short answer: financial outcomes aren't about the number (above a basic threshold), and they’re almost entirely a function of behaviors & (some) luck.
Paying more is still a valid form of defense against petty corruption, though.
What often baffles me is the "buy a whole bunch of things on credit", and then get laid off and have not a penny left.
I've seen stories of actors in Hollywood banking $15M from a movie, buying all sorts of property with mortgages, boats, cars, all on credit, then losing it all due to default without that next movie.
Author: Thank you for writing this! I love reading about how people overcome challenges like this, especially under pressure (and usually overnight!). I am better for hearing not just the technical post mortem but also the human perspective that is usually sanitized from stories like this. This is the kind of technical narrative only a small/solo dev or entrepreneur can share freely.
You’re both correct— tptacek is correct in that the 4th amendment is constrained to government search and seizure and there is no positive assertion regarding privacy written into the constitution. But you’re also correct in principle, as the strongest positive assertion regarding privacy (in general) from the U.S. federal gov’t originates in the Supreme Court’s decision in Griswold v. Connecticut from 1965, and Justice William O. Douglas’ reference to privacy as a right inferred primarily as ‘penumbras’ extending from the more specific guarantees of the first 5 amendments.
Edited to Add: All bets are off now, as the court has explicitly reversed stance on this as it regards abortion, which leaves a big precedent for expanding future privacy “exceptions”.
Please note that my original reference to the Constitutions was made to go to the chief social contracts, for brevity: in the case of the USA (which we have picked again to focus on some important cases), condemnation of trespassing, peeping and eavesdropping was part (I understand) of the Common Law from the beginning (inherited from Britain).
They are all cases of instances of breach of a basic principle - license of intrusion is limited, naturally -, which in law needs to be made explicit to sanction specific cases, but remains otherwise evident (in the case of privacy, its breaches are easily farcical).
In Europe, the European Convention on Human Rights (1950), signed by 46 States, specifies in Article 8: «Everyone has the right to respect for his private and family life, his home and his correspondence» (again, an example picked for prominence).
Please also note with reference to your «All bets are off now» that discussion will be made about the boundaries of the principle in practice - the Principle remains.
I don't think the future is all that bright for the privacy penumbra theory of US Con Law. I'm not a lawyer or a Con Law scholar but my understanding is that modern courts have recast the outcome of Griswold into one involving procedural and not substantive rights; of liberty and due process, not of positive rights emanating broadly from the text.