Why did we let that happen?
They wrote it from scratch in C++ so they could avoid some of the legacy cruft in Android. And they are getting adoption. It's a major OS in China and in many developing countries (phones with it are cheaper, and it flies on underpowered hardware!)
Before we judge the magnitude of this event (HarmonyOS existing and being successful), let's remember that last time anyone tried to disrupt the duopoly Android-iOS, it was MS, the largest company on earth by market capitalization at the time. And they failed.
Well, it very much looks like Huawei is not failing. We in the west don't see it as much, because propaganda is working well. But last tech conference I attended (GITEX Berlin, if you are wondering), had their app available to download with... 3 logos, not 2. Harmony OS was there. This is a major win for consumers all over the world.
And this being HN, I hope the inevitable comment "but China!" is slightly more informed that the average internet user.
Instead of assuming that someone is well-meaning and requiring much evidence to refute that assumption, people are marked by small infractions, because the cognitive effort of the presumption of innocence cannot be applied on such a large scale and is not worth it to us. This is the mentality behind the "believe all women" principle: women are harmed more by letting a rapist free than by jailing an innocent man, and since we can't vet all the claims of sexual assault, better just lock them all up. A metaphor frequently given by proponents of that ideology is that men are like M&Ms. Would you eat an M&M from a bowl if you knew that a few were poisoned? If even 1 in 100,000 were poisoned, would you take the risk? No. Low trust. (I've never heard someone reply that women are not all benign either and yet people don't seem to apply the same logic to them.)
You see the extremes of this in the politicians representing US political parties. Trump can say anything and supporters never waiver, because they know he's "just joking around" or whatever. Meanwhile a Democrat candidate can say something small askance with what seems to me like innocent intentions, and their career is over.
This is also why the Democrats are so fractious internally, relative to the Republicans. Republicans default to trusting each other (not saying whether that's merited or not) while Democrats only make temporary uneasy alliances.
Some people tire of this low-trust culture (because they haven't been burned by trust before) and are pushing back on it.
In my opinion, the low-trust people are going to win eventually because the higher-trust people are more local and less internet-connected. Either society will collapse into many sub-societies, or else these sub-societies will dwindle until there's nothing left of them, and all that's left is The Culture.
This would be a terrible result. Google 'urban monoculture' A pluralistic society is more resilient to catastrophes, and preserving all these small, dwindling cultures is as important if not more as preserving species that are endangered.
At it's core an LLM is a sort of "situation specific simulation engine." You setup a scenario, and it then plays it out with it's own internal model of the situation, trained on predicting text in a huge variety of situations. This includes accurate real world models of, e.g. physical systems and processes, that are not going to be accessed or used by all prompts, that don't correctly instruct it to do so.
At its core increasingly accurate prediction of text, that is accurately describing a time series of real world phenomena, requires an increasingly accurate and general model of the real world. There is no sense in which there is a simpler way to accurately predict text that represents real world phenomena in cross validation, without actually understanding and modeling the underlying processes generating those outcomes represented in the text.
Much of the training text is real humans talking about things they don't understand deeply, and saying things that are wrong or misleading. The model will fundamentally simulate these type of situations it was trained to simulate reliably, which includes frequently (for lack of a better word) answering things "wrong" or "badly" "on purpose" - even when it actually contains an accurate heuristic model of the underlying process, it will still, faithfully according to the training data, often report something else instead.
This can largely be mitigated with more careful and specific prompting of what exactly you are asking it to simulate. If you don't specify, there will be a high frequency of accurately simulating uninformed idiots, as occur in much of the text on the internet.
This idea of LLMs doing simulations of the physical world I've never heard before. In fact a transformer model cannot do this. Do you have a source?
---
We are building a collaborative thinking tool with live editing like google docs but outside the browser and with much simpler technology
Why? Security; We want to create knowledge that is not going to end up in the belly of an LLM
Tech stack:
- Wireguard
- zeromq
- WASM for client, handcrafted server code for server. No browser needed on client
- DSL (for gui; probably you won't touch it)
- NixOS
Our approach to security is simplicity; we won't use dependencies unless we really have to; libs of more than 50k LOC are frowned upon. Every line in the codebase, including deps, should be understandable by someone in the team. Servers are nixOS. No docker anywhere.
About you:
- Are self-motivated and can work independently
- Understand how to build highly reliable systems and be responsible for taking code to production
- Understand that code simplicity and readability are more important for long term maintainability
- Strong CS fundamentals (B.S./M.S. equivalent)
We start out on a full-time trial contract basis for up to 3 months and use this period as an extended work interview for both sides to assess fit for long-term employment
With any questions or to apply, email me at org@datascienceretreat.com
Contrary to the name, even the stable branch of NixOS can have problems while installing routine updates with `nixos-rebuild switch --upgrade`. In fairness, at least with NixOS you can normally roll back to a previous working configuration where you can try to fix or work around the problem if that does happen. It’s still painful if you have to do that, though.
Even if your routine updates all go smoothly, as you mentioned, each stable release is only supported for a very limited time window after the next one is out. NixOS doesn’t have any long-term support branch in the sense that some distros do. Again, you can overcome this to a degree by customising your configuration if you need specific versions of certain packages, but in doing so you’re moving back towards manually setting things up and resolving your own compatibility issues rather than having a distro with compatible packages you can install in whatever combination you want, which reduces the value of using a distro with a package repository in the first place.
To be clear, I’m a big fan of NixOS. I run it as my daily driver on a workstation where I do a lot of work on different projects for different clients. Its ability to have a clean, declarative description of what’s currently installed globally or for any given user or even when working in any given project directory for any given user is extremely valuable to me.
But it’s also fair to say that NixOS is not for everyone. It has been by far the least stable Linux distro I have ever used, in the sense of “If I turn my computer on and install the latest updates from the stable branch, will my computer still work afterwards?”. If you’re looking for a distro you can deploy and then maintain with little more than semi-automatic routine updates for a period of years then, at least for now, it is not the distro for you.
On ubuntu, every new version broke something, sometimes updates make the computer boot to a blank screen... it was a terrible experince for early-days linux users. This was many years ago, but it made me distrust most distros I tried. Except for nixos.