Around the time of the pandemic, a company wanted to make some Javascript code do a kind of transformation over large number of web-pages (a billion or so, fetched as WARC files from the web archive). Their engineers suggested setting up SmartOS VMs and deploying Manta (which would have allowed the use of the Javascript code in a totally unmodified way -- map-reduce from the command-line, that scales with the number storage/processing nodes) which should have taken a few weeks at most.
After a bit of googling and meeting, the higher ups decided to use AWS Lambdas and Google Cloud Functions, because that's what everyone else was doing, and they figured that this was a sensible business move because the job-market must be full of people who know how to modify/maintain Lambda/GCF code.
Needless to say, Lambda/GCF were not built for this kind of workload, and they could not scale. In fact, the workload was so out-of-distribution, that the GCP folks moved the instances (if you can call them that) to a completely different data-center, because the workload was causing performance problems, for _other_ customers in the original data-center.
Once it became clear that this approach cannot scale to a billion or so web-pages, it was decided to -- no, not to deploy Manta or an equivalent -- but to build a custom "pipeline" from scratch, that would do this. This system was in development for 6 months or so, and never really worked correctly/reliably.
This is the kind of thing that happens when non-engineers can override or veto engineering decisions -- and the only reason they can do that, is because the non-engineers sign the paychecks (it does not matter how big the paycheck is, because market will find a way to extract all of it).
One of the fallacies of the tech-industry (I do not mean to paint with too broad a brush, there are obviously companies out there that know what they are doing) is that there are trade-offs to be made between business-decisions and engineering-decisions. I think this is more a kind of psychological distortion or a false-choice (forcing an engineering decision on the basis of what the job market will be like some day in the future -- during a pandemic no less -- is practically delusional). Also, if such trade-offs are true trade-offs, then maybe the company is not really an engineering company (which is fine, but that is kind of like a shoe-store having a few podiatrists on staff -- it is wasteful, but they can now walk around in white lab-coats, and pretend to be a healthcare institution instead of a shoe-store).
Personally, I believe that the tech industry sustains itself via technical debt, much like the real economy sustains itself on real debt. In some sense, everyone is trying to gaslight everyone else into incurring as much technical debt as possible, so that a way to service the debt can be sold. Most of the technical debt is not necessary, and if people were empowered to just not incur it, I suspect it would orient tech companies towards making things that actually push the state of the art forward.
There was a moment ca. 2020 when everyone was losing their minds over Lambda and other cloud services like SQS and S3 because they're "so cheap!!11". Innumeracy is a hell of a drug.
A lot of criticism of k8s is always centered about some imagined perfect PaaS, or related to being in very narrow goldilocks zone where the costs of "serverless" are easier to bear...
> Personally, I believe that the tech industry sustains itself via technical debt, much like the real economy sustains itself on real debt. In some sense, everyone is trying to gaslight everyone else into incurring as much technical debt as possible, so that a way to service the debt can be sold.
This feels like a reminder that everything "Cloud" is still basically the same as IBM's ancient business model. We've always just been renting time on someone else's computers, and those someone else people are always trying to rent more time. The landlords shift, but the game stays the same.
It seems that many high-quality things (or otherwise aspirational things) take on Esperanto names (disclosure, I am an Esperantist). While Monero is no doubt a cool crypto-currency, it is even cooler that it has inspired some crypto-curious people to learn Esperanto[1] instead!
While I am here, I might as well give you a brief Esperanto lesson. Mono = money, ero = piece/quantum. So, "pano" = bread, "panero" = bread-crumb. Thus, "monero" = coin.
Many previous international currencies (all of them created with Swiss involvement), were also given Esperanto names: Spesmilo (thousand speso's (speso is analogous to "penny")), Stelo (star).
There is even a luxury watch-brand (from Switzerland) called "Movado", which is Esperanto for "Movement" (made back when watches were made with mechanical movements).
And I also learned, from the linked thread (disclosure, I am a participant), that there is a soft-drink called "Mirinda". This is an adjective that means "awe-worthy".
Back in 2014, I did an analysis of (single threaded) CPU-efficiency and RAM-efficiency of various data-structures (skiplists, slablists, avl-trees, rb-trees, b-trees):
I used whatever I could find on the internet at the time, so the comparison compares both algorithm and implementation (they were all written in C, but even slight changes to the C code can change performance -- uuavl performs much better than all other avl variants, for example). I suspect that a differently-programmed skip-list would not have performed quite so poorly.
The general conclusion from all this, is that any data-structure that can organize itself _around_ page-sizes and cache-sizes, will perform very well compared to structures that cannot.
I've taken to telling people, that if they see me write a long piece, that lacks em-dashes, then they should assume that I am under duress, and send help.
I hate to tell you this, but by saying things like this, you are not much better than the authoritarians/totalitarians you seem to despise.
I do understand where the revulsion comes from, however. My own family, on my mother's side, during WW2, was reduced in size. Four out of every ten were liquidated by the occupying Nazis, and then two out of every ten (or one out of every three, if you adjust the denominator) were liquidated by the triumphant communists (to say nothing of battlefield deaths in-between, and the blanket dispossession that those left alive experienced).
That said, I do think that ideas and ideologies should be evaluated on their own merits, and should not be reactively shunned, because of an atrocity that happened generations ago. The reality, is that good ideas get hijacked and used by opportunists to benefit themselves at the expense of their neighbors. By being so vehemently against an _idea_, you create new opportunities for these kinds of pathological opportunists -- you create an entirely new category of scapegoats, whose pleas and screams and tears you can ignore, while they get dragged away, and separated from their homes and their families and their friends.
I'm not saying that you should cuddle up next to a communist, but I am saying that you should evaluate all people and communities in a nuanced and thoughtful way, befitting a member of _this_ community of absolute oddballs.
I think it is even simpler than you suggest. Cloning an established product is more efficient in terms of both effort (even if costs are subsidized turnaround time is still a measurable physical quantity) and politics (nobody ever got fired for cloning -- if the clone becomes popular, you win, if the clone does not become popular, the West loses).
It is the difference between "safety" and "liveness" (the two kinds of correctness guarantees in computer programming). Communist societies are, at their extreme, "safety" societies: they try to guarantee that nothing bad ever happens. Capitalist/market societies are, at their extreme, "liveness" societies: they try to guarantee that something good/interesting _eventually_ happens (even if bad things have to keep happening).
A "safety" mindset is sympathetic to cloning, because it does not have to deal with much uncertainty. A "liveness" mindset is not sympathetic to cloning, because it has already been done, and profit/monopoly opportunity is minimal.
I mean, the entanglement between technology and politics is difficult to unsee, once one sees it. And the analogy between solar power and grid power, maps cleanly onto 3d printing and manufacturing (trad-printing?). Politics is _most frequently_ about money and the economic surplus, and only rarely about justice or ideology. The funny thing is, that the adjective that is most frequently use to describe markets is "efficient". Yet, whenever technologies that threaten to erode someone's business model appear, the market starts abusing the political infrastructure to introduce inefficiencies and frictions into the adoption of the technologies.
Even though lobbying is not _technically_ illegal, we should probably learn to treat companies that engage in it (to the detriment of society) as if it were. Avoid their products if you can, and get your friend-group to do it as well. Build off-ramps. Maintain and share lists of executives who work at these companies (to put pressure on their reputations -- after all, what is wealth worth, if ordinary people refuse to take your money, or to give you any of their attention?). The market's distinctive feature is that it makes things fungible: currency, goods, and even people. Eliminate or reduce fungibility, and you get a very different kind of dynamic, one that has the potential to reverse the trend of rising inequality (and rent-seeking behavior, and unfair one-sided arrangements, etc) over night.
In fact, the strategy of any company is to find a way to make an entire class of companies/merchants (not competitors) fungible, while making themselves non-fungible. Most moats are built out of the pieces or remnants of someone else's moat.
Maybe. Maybe I'm wrong. Maybe I'm too hung over to tell.
FWIW, this comment should be immortalized, somehow. I am replying, so that I can find this in the future. This describes, to an eerie degree of detail, some of my own interactions with people in the industry, as well as interactions that my friends have had.
The industry seems to attract people who can only be described as smooth opportunists, always a shy step away from becoming confidence artists. People with big dreams of material success, but with next to no ability or talent, and with a tragic lack of self knowledge (and often a lack of domain knowledge). Pure entitlement and greed, and a desire to use other people as a bridge to the stars[0].
I will say this, however: they do have a keen sense of what the incentives are. They will keep doing this, for as long as society keeps rewarding them, and refuses to punish them. And unhooking those incentives is not difficult: do not let them externalize blame, do not let small dishonesties pass, do not let them internalize praise that belongs to someone else, and, most importantly, do not look the other way, when they decide to cannibalize the career of someone else, in order to nourish their own.
Silicon Valley, since at least the Web-2.0 days, has been about nerds making frat-bros rich, in exchange for a livable wage (salaries tend to be only slightly in excess of cost-of-living, unless you are willing to live either far away from your workplace, or in a small moldy-smelling box of a studio). This is a bad deal. Silicon Valley idolizes Steve Jobs (even when he was alive), but gives little thought to Steve Wozniak (upon whose work, Apple and the PC industry were built). When I was in college, both Jobs and Dennis Ritchie died within a short time of each other. Silicon Valley mourned Jobs, but only a few of us nerds mourned Ritchie.
Silicon Valley chose to name the most innovative car company in the country "Tesla", but it attracts and cultivates legions of future Edisons and Morgans[1]. And that is perhaps the perfect allegory for Silicon Valley: a car company named after someone like Tesla, but owned and operated by someone like Elon Musk[2].
[0]: Maybe this is an ancient human affliction. Did the pharaohs not do the same in their day?
[1]: Funny parallel, that since 2009, SV has been trying to rent out compute and storage, instead of just selling it outright.
[2]: Another pretender, seduced more by the warm glow of gold, than the cool blue crackling lightning of a Tesla Coil.
This is a long comment, but I swear it is going somewhere (new terminology).
Someone once said (I think Kay), that "a change in notation is worth 20 IQ points". Historically, people struggled with presently-mundane basic concepts, such as Darwin's Evolutionary Theory, and Maupertuis' Principle of Least Action, because they lacked the "notation" (concepts, really), that would have allowed them to integrate them into their consciousness (or otherwise were not willing to discard or diminish another pre-existing notation, like biblical stories).
The younger generations have the advantage of being exposed to a much greater variety of notations than any previous generation, thanks to the internet, and its unrestricted nature. There is a lot of alpha in being able to instantly find numbers, and compare them with other numbers. Those aggregations, and second-hand experiences (I did not need to get murdered by federal officers personally, in order to start questioning the legitimacy of the government more aggressively), are a kind of substitute for a few decades of lived experience (by the time you turn 30 or 40, you are old enough to understand a lot of the dynamics, but too old to do much about it).
What this does, in effect, is create an acute awareness of what I like to call "sign-flip institutions" (I have never heard/read this term used before). A sign-flip institution, is an institution, in which a "customer's" minus is their plus, the overwhelming majority of the time.
So for example, a bank is a sign-flip institution (unless you never take out any loans). This is in fact _codified_ in how they do their accounting. To a customer, a loan is (in the accounting terminology), a _liability_, while deposits are _assets_. To a bank (ask any accountant who works at a bank), loans are _assets_, while deposits are _liabilities_. Just that framing, means that a bank "performs" better, when it minimizes deposits and maximizes loans.
Historically, most sign-flip institutions were heavily regulated[0] (to prevent them from impoverishing the populace, or worse). In banking, it used to be the law that they could not give mortgages for housing, unless the purchaser can pay 1/3 of the mortgage up front. This kept housing prices very low. It also kept bank performance low. After decades of bribery (sorry, lobbying), the banks got those regulations removed, and now the housing prices are so high that people _have_ to go into debt to (not own, no), but _have access_ to a home[1], that they may never fully pay off.
Combine this with the fact that we have very aggressive anti-vagrancy laws (you are not even allowed to sleep in your own car/van, in an empty parking lot), and it should be no surprise that people will say that society is rigged, that those who govern (cities, states, federations, corporations, banks, etc), are illegitimate.
Most AI companies, are openly marketing themselves sign-flip institutions! I don't know how true this is in practice[2], but given their round-the-clock FUD-based marketing, one would think that they are designed to turn your time into their money. That they are designed to turn you into money.
The only surprising thing about this story is that it took a nation, known for school shootings, this long to get violent against the executive/governing class. It took them this long, to learn to leave their smartphones at home, and to bring their molotov cocktails instead[3].
[0]: Hospitals, for example, were not allowed to make a profit before 1978.
[1]: Landlords get a lot of hate, but, most of the landlords that I've spoken to, are in the same exact situation as most home-owners (mortgage, debt, inflation), which means that they are really just arms-length employees of the _true_ landlords, the banks. Similarly, if you peel back the finances of most AI companies (maybe even most Silicon Valley companies), I am sure you will banks at the center of that web.
[2]: My big suspicion/fear is that the anti-AI sentiment is being cultivated to scapegoat the nerds, and to protect the bankers/executives.
[3]: Most Americans stereotype the French, as a nation of sad artists, but to the contrary, their protests are glorious.
Try to find an old graph theory proof (eg of the five colour theorem) and be amazed at how describing things in terms of a walk around a zoo is so much less clear than sets of vertices, edges, paths, etc. The history of mathematics is full of examples of good notation making a big difference, though of course this is often because the notation contains some insights about what structures are important.
One of most important things I've learned as I have gotten older is that optimization is all about degree. Is it good that housing prices are higher? No, clearly not. Is it good that I can get a 30-year mortgage when I am 25 and live in a house and eventually pay it off? Yes, it is good (I just paid it off last year.) Does the existence of that 30-year mortgage inflate the housing market? It definitely does if there is not enough housing. And yes I gladly paid 2x the cost of the house in interest, because I got to live in it the entire time vs. paying rent on someone else's asset. Good public policy must have specific aims in mind or there are many unintended consequences.
I can't tell how much of this post is describing/LARPing a point of view, or expressing your actual beliefs. The last few paragraphs make me think it's what you actually think though.
Glorious as a personal sentiment isn't exactly how I'd describe the French Revolution.
Yes, stirring up anti-AI hatred is fine as long as it's directed at your I-Banker/PE friends from school who majored in economics, but totally bad if it's directed at you since you majored in Comp Sci (the source of AI to begin with) and went into tech.
"Just that framing, means that a bank "performs" better, when it minimizes deposits and maximizes loans"- is this how you think finance actually works? Maybe first learn how things work before inventing your own terminology or "notation" like sign-flip institution. It's not worth 20 IQ points if it's wrong. The younger generations (and I am a member) are certainly no smarter or wiser than previous generations. Many sure seem to think they are though.
Around the time of the pandemic, a company wanted to make some Javascript code do a kind of transformation over large number of web-pages (a billion or so, fetched as WARC files from the web archive). Their engineers suggested setting up SmartOS VMs and deploying Manta (which would have allowed the use of the Javascript code in a totally unmodified way -- map-reduce from the command-line, that scales with the number storage/processing nodes) which should have taken a few weeks at most.
After a bit of googling and meeting, the higher ups decided to use AWS Lambdas and Google Cloud Functions, because that's what everyone else was doing, and they figured that this was a sensible business move because the job-market must be full of people who know how to modify/maintain Lambda/GCF code.
Needless to say, Lambda/GCF were not built for this kind of workload, and they could not scale. In fact, the workload was so out-of-distribution, that the GCP folks moved the instances (if you can call them that) to a completely different data-center, because the workload was causing performance problems, for _other_ customers in the original data-center.
Once it became clear that this approach cannot scale to a billion or so web-pages, it was decided to -- no, not to deploy Manta or an equivalent -- but to build a custom "pipeline" from scratch, that would do this. This system was in development for 6 months or so, and never really worked correctly/reliably.
This is the kind of thing that happens when non-engineers can override or veto engineering decisions -- and the only reason they can do that, is because the non-engineers sign the paychecks (it does not matter how big the paycheck is, because market will find a way to extract all of it).
One of the fallacies of the tech-industry (I do not mean to paint with too broad a brush, there are obviously companies out there that know what they are doing) is that there are trade-offs to be made between business-decisions and engineering-decisions. I think this is more a kind of psychological distortion or a false-choice (forcing an engineering decision on the basis of what the job market will be like some day in the future -- during a pandemic no less -- is practically delusional). Also, if such trade-offs are true trade-offs, then maybe the company is not really an engineering company (which is fine, but that is kind of like a shoe-store having a few podiatrists on staff -- it is wasteful, but they can now walk around in white lab-coats, and pretend to be a healthcare institution instead of a shoe-store).
Personally, I believe that the tech industry sustains itself via technical debt, much like the real economy sustains itself on real debt. In some sense, everyone is trying to gaslight everyone else into incurring as much technical debt as possible, so that a way to service the debt can be sold. Most of the technical debt is not necessary, and if people were empowered to just not incur it, I suspect it would orient tech companies towards making things that actually push the state of the art forward.
reply