Live data from Hacker News

Version control second coming

psantosl.github.io

21–30 of 70 posts

Re: Version control second coming

#22

I half agree here. Now that the primary usage of Git is increasingly centered on providing auditable and revertible history for organizations that use a mix of AI (mostly) and people to do stuff with it, the requirements are going to shift away from being user friendly towards just being fit for purpose and efficient. Git is so far good enough for this. It's not particularly user friendly. But that's not a problem fo…

AI makes running a deterministic workflow after a code change useless, because unlike humans, agents are not fallible, got it.

Re: Version control second coming

#23
post #14
post #2

Dreaming of "virtual filesystems everywhere". Hmm, sorta sounds like Plan 9. Great to have an inside view of wrangling technologies for these behemoth data sets.

I wonder if we're doing virtual filesystems wrong. There is a good reason why traditionally filesystem access was mediated by the OS layer, but there are many use cases where you just want to give processes a different view of what they already can access and it could be done as a library in the same userspace process. However, for that to work across all the processes in a session we'd need a standard way to install…

I think there is a good case to be made for these things not to be mediated by the operating system by default.

In Objective-Smalltalk[1], I can access a file as follows:

   hello ← file:hello-world.txt 
This is structurally the same way I would access a local variable, environment variable, database, remote http server etc.

   hello ← https://example.com/hello-world.txt
   hello ← env:GREETING
   hello ← var:greeting         //   hello defaults to var:hello
etc.

And you can also introduce shortcuts

   scheme:greeter ← ref:https://example.com/ asScheme.
   hello ← greeter:hello-world.txt
Or

   scheme:greeter ← ref:file:./ asScheme
   hello ← greeter:hello-world.txt
Sending -asScheme to a reference is just a shorthand that actually constructs a composition[2] of a "path relative" store with the underlying store of the original reference. So the following two are identical:

   scheme:greeter ← ref:https://example.com/ asScheme.
   scheme:greeter ← #MPWRelativeScheme{ base: 'https://example/com' } → #MPWURLSchemeResolver{} 
This composition mechanism can be carried further with post-processing, so for example an img-scheme can be constructed by composing an image-decoder store with the previous store

   scheme:img ← #MPWImageDecoderStore{} → scheme:greeter 
   helloPic ← img:wave.png 
And so on and so forth, caching is also a nice example.

[1] https://objective.st

[2] https://dl.acm.org/doi/10.1145/3359591.3359729

Re: Version control second coming

#24
I can accept the authors bias, but all credibility was gone when I read “AccuRev was a fantastic system”. AccuRevs UX was akin to putting your face next to a farting anus and breathing deeply.

Honestly felt like I was missing some sort of satirical masterpiece as the author gleefully declared all the up and coming projects that are going to scatter open source projects to the four corners of the Earth.

Maybe they’ve been so locked into version control tooling as a career they’ve missed the bigger picture, but version control before git ubiquity sucked. Not saying Git is perfect but come on, are our memories so short?

Re: Version control second coming

#25
post #2

Dreaming of "virtual filesystems everywhere". Hmm, sorta sounds like Plan 9. Great to have an inside view of wrangling technologies for these behemoth data sets.

Plan 9 had such a powerful model for networked systems using these virtual file systems, it sounds like a fairytale! Oh, want to use that other machine as a gateway? Just mount its /net. Oh, want to route audio through another machine? Just mount their soundcard into your /dev. Oh, your machine is too puny to do the task at hand? Just run “cpu thebigmachine” which transplanted your entire environment over there (all…

Redox seems to take inspiration from it and has all things exposed as schemes so /home/user is actually /scheme/file/home/user, etc.

Re: Version control second coming

#26
post #20

It's great to see some moves to break up this great calcification around git. Gut greatest contribution to version control was stagnation. The space was evolving with great fresh ideas before git became a quasi-religion among the early adopters because Linus made it in a day and therefore it must be great or something. I'm exaggerating somewhat, but the zeal of some people back then was next level annoying. Beyond th…

... next, GNU please. /s

Re: Version control second coming

#27
post #2

Dreaming of "virtual filesystems everywhere". Hmm, sorta sounds like Plan 9. Great to have an inside view of wrangling technologies for these behemoth data sets.

> virtual filesystems everywhere Please universe I beg you. Git is incredibly mediocre. But it's all most people know. It's a version control tool that can't handle binary files; and no GitLFS does not count. The end result is a version control tool that is unable to actually version control all the things you need for a project. This results in a Meta VCS layer where a ton of critical assets are stored in Docker fil…

Visual Studio and Xcode take up tens of gigabytes, are updated often, and include system components. Storing them in VCS is impossible, and would be a waste of disk space.

Re: Version control second coming

#28
post #18

People complained about having to use ClearCase back then, it wasn't just the price that was wrong with it.

I helped swap a mess of ClearCase & Subversion over to git (early 2010s). What a fucking cursed piece of software!

Will admit it got exactly one thing right, which could absolutely justify everything else (including the price) for a long time: Software Bill of Materials, which is non negotiable in a lot of more serious/heavily regulated development contexts

That still didn't excuse the hacked together pile of ruby scripts our QA lead maintained, each one designed to unfuck a specific weird thing clearcase did. Once everything was on git, they just wrote another script that grabbed a bunch of tags from git and shoved them into clearcase to spit out the bom.

Re: Version control second coming

#29
post #18

People complained about having to use ClearCase back then, it wasn't just the price that was wrong with it.

I helped swap a mess of ClearCase & Subversion over to git (early 2010s). What a fucking cursed piece of software! Will admit it got exactly one thing right, which could absolutely justify everything else (including the price) for a long time: Software Bill of Materials, which is non negotiable in a lot of more serious/heavily regulated development contexts That still didn't excuse the hacked together pile of ruby sc…

> Software Bill of Materials

Yet another thing that came from PRIDE, despite that PRIDE itself is little known in today's software industry.

Post reply on HN