5 ms·
Glad to see a bit of conversation here about Urbit and competitors. I had a brief go at Urbit, running it on my server and interacting with the community. While
by pfych 3y ago
Glad to see a bit of conversation here about Urbit and competitors. I had a brief go at Urbit, running it on my server and interacting with the community. While it was an interesting take on networking and when it worked it worked great, when it didn't work, it was a fucking nightmare to fix, my planet is still stuck after an update and I inevitably gave up.
I'm glad to see Plunder having another go at the ideas Urbit had, some of it was really interesting and it'll be cool to see how these ex-devs run with it.
- pyinstallwoes 3y agoI am biased with my own opinion of Urbit, as I’ve been visited by similar muses desiring similar results. Urbit to me today in its path and form resemble an ontological existential crisis resembling sleight of hand resulting in incompatible execution with what the vision was. It probably did not help to have the visionary spirit literally lost due to various reasons one may argue to various character issues. The idea of Urbit is very interesting, the initial older premise was sound. The current execution is a fallacy of its own goals. It does not replace computing. It does not even proxy it. It literally is built on top of everything else which it directly against the impetus of the project in the first place. A total new way to solve computation with no baggage was a great vision; especially one that was a sort of Maxwell’s minimally defined set of functions that represent computing forever and ever in the most reducible form. The ideas still have legs. The project doesn’t. It forked into a territory that is unable to fix itself. It would have to abandon all “jets” and all bs cryptohype nuisance as well. Love the original design.
- pfych 3y agoI ditto a lot of the opinions stated here. The vision of redesigning computing and networking was novel. But as a developer, when I started diving into it and writing code to interact with it, I started to see all the cracks. Its a shame.
- check89 3y ago> especially one that was a sort of Maxwell’s minimally defined set of functions that represent computing forever and ever in the most reducible form. Can you elaborate?
- chubot 3y agoNot OP, and I don't understand Urbit particularly well, but I think this part of the doc is the salient feature: > The data model of Nock is the noun (*), which is either a natural number (@, called an "atom") or a pair of nouns > The noun is famously simple; it competes with the list as the simplest possible recursive datatype All code and all data is like that. So to me it's basically a Lisp-y networked operating system. This also makes it very inefficient, which the doc explains. But the idea is to build everything on top of the most minimal axioms, which never change.
- brabel 3y agoThis just describes Lisp (itself a materialization of the lambda calculus, which is your "Maxwell equations of computing")?!
- pyinstallwoes 3y agoIt specifically refuted lambda calculus as both minimal and rigorous due to the stipulation of code as data vs data as code. Nouns also being more general than lists.
- mhuesch 3y agosort of, in theory, but in most practical lisp/scheme implementations, certain values are opaque primitives. often functions are opaque. hashmaps, etc, are often primitives which don't have a "dependable formal representation". this means they cannot be e.g. serialized and coherently transmitted between processes. Urbit solved this with nouns, which is arguably a substantial innovation. PLAN (in the author's view, which I find convincing) improves on this: https://git.sr.ht/~plan/plunder/tree/master/item/doc/PLAN.md https://git.sr.ht/~plan/plunder/tree/master/item/doc/PLAN.md
- chubot 3y agoHmm ... I haven't looked at Urbit in years, but this doc was pretty well written -- and it makes me curious about a Unix-y and loosely coupled version of the system. It always seemed a big no-no to couple the VM and OS to the language. Language diversity is a good thing. What would it take to build something with the interesting properties of Urbit on a more normal, not-purposefully-obscure stack? As far as I understand, Guix has deterministically built the whole ecosystem from a 357 byte bootstrap https://guix.gnu.org/en/blog/2023/the-full-source-bootstrap-building-from-source-all-the-way-down/ https://guix.gnu.org/en/blog/2023/the-full-source-bootstrap-... OK so now you have, C compilers, Python, JavaScript, etc. --- Now what do you need to do to Linux? Do you need to get rid of time() and rand() ? (Not sure if Urbit is functional like that) --- What about the networking? The whole network has a single state? So is this like if you had all of these separate Linux systems all writing to one big distributed git repository or something? I never really understood how the networking is done. --- This leaves the identity parts; I would also leave out the crypto parts too ... But as far as language / OS / networking, I'm sorta interested in what a "conventional" system of this type would look like. I actually think it has some practical applications for some kind of functional distro like Guix (since these distros all become networked systems eventually -- they are not really single-machine systems) I also wonder if this already exists -- are there "non-obscure" and "non-ideological" systems like this? When you add some language diversity, it becomes more interesting to me.
- davidgerard 3y agoyeah, Urbit seems to be an uncredited crib of the original Nix paper https://reddragdiva.tumblr.com/post/724590682207141888/so-it-turns-out-urbit-is-a-bad-crib-from-nix https://reddragdiva.tumblr.com/post/724590682207141888/so-it...
- chubot 3y agoNix was novel because it brought reproducibility, immutability, etc. to a real system running on Linux -- but if you don't have the Linux constraint, then the ideas go back MUCH further And Nix is a package manager / build system, while Urbit is more of a "distributed Lisp OS", with networking and identity Or at least, I'd like to read a post that's not so clearly driven by personal animosity :-P --- FWIW I briefly worked on Google's Bazel in ~2006, and all the Nix ideas were there, but nobody referenced Nix. They referenced Vesta (and other systems): https://en.wikipedia.org/wiki/Vesta_(software_configuration_management) https://en.wikipedia.org/wiki/Vesta_(software_configuration_... from 1993. Bazel is way faster and more distributed than Nix, probably because it's just had much more engineering effort behind it.
- Karunamon 3y agoIt literally is built on top of everything else which it directly against the impetus of the project in the first place. This is a critique that boils down to "they haven't achieved their actual goal in full yet". What do you want? They have to start somewhere, and when you are reimagining an existing system from the ground up, there will necessarily be usage of existing tools even if your goal is to eventually supplant them. The whole point of something like jets is because you have to interact with what exists right here right now, at least with this there is a bright line between the new stuff (running purely in a nock/hoon VM), the bridge code, and the runtime for what ever operating system. The fact that something like https://github.com/mopfel-winrux/NockPU https://github.com/mopfel-winrux/NockPU (nock in hardware) is even possible is amazing.
- pyinstallwoes 3y agoMy point was that it is ontologically opposed to its purpose and inception. It was on track and sent off the rails. It required a start, it changed its direction, and is no longer the same project in spirit. Urbit as the original idea which was not supposed to change has changed and more specifically Tlon is responsible for the change of direction which they’ve even forked into multiple teams now. There existed at some point progress towards the vision of Urbit, and as of now it is so far beyond that scope it has retreated from a static namespace of computational vapor ware into perpetual “non-maxwellian” ever-growing “ball of mud” bolted onto the status-quo of today with ever increasing complexity. \(-.-)/