HNHacker News
TopNewBestAskShowJobs

sasham

163 karma · joined January 11, 2022

Co-founder at diversion.dev - effortless version control. Previously co-founder at Adience, Leprechaun. Coder.
submissionscomments
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Point taken! Why copyleft though, and not MIT/Apache?
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
For assets no, definitely. At least until they get Starlinks :D I did commit into our code repo from an airplane though.
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Git might be the best thing there is today (outside of very large companies or environments with large binaries). It doesn't mean that'll always be the case... There were other VCSs before git, and there will be after.
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Thanks for the feedback! We actually encountered a similar usecase. SaaS tools that need to version user-generated data and configurations. We're offering an API so this can be done easily. What you offer can also be done. I'm not sure it's a huge market though, meanwhile lots of developers that can't work with Git (e.g. games) are looking for solutions, we're seeing a real need there. But we might branch out to other things, for sure.
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Other game devs mentioned visual diffing as well, we'll try to make this happen!
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Monorepos are indeed causing problems with git, and this is one of the main arguments against them (see [1]). Some companies are building their own solutions (Google, Meta), and some are splitting their monorepos because of these problems. IMO if a company wants to run a monorepo for their reasons, they shouldn't be limited by their VCS.

The technical details are for the readers who want to know, I agree it's not really important for the users (most of them, at least).

[1] https://medium.com/@mattklein123/monorepos-please-dont-e9a27...

sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Honestly, I never tried bitkeeper. It handles big binaries with no problems at all.
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Haha evidently :D
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Windows is supported, as is Mac and Linux - should mention that, you're right. Most of our users use Windows, so it's definitely 1st priority.

Thanks for the feedback reg CI - I'd love to hear your specific needs, as we're working on this right now.

sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Hi, sure thing! You can get extra storage at the same price as the Free tier (we'll make it clearer on the website).
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
In part yes, e.g. lots of people like SourceTree. Some of the complexity is inherent though, e.g. local vs remote branches and the various conflicts & errors as a result. Git exists for 18 years, and yet the complexity problem wasn't solved yet. Other tools like SVN were never considered to be so hard to use / easy to screw up.
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Thanks for the feedback, glad you asked! Partial checkouts are supported. K8s not yet, but we do run Diversion in a container for testing. Private cloud works as well, it's more a question of support manpower though - will be available for large clients. Obviously we still don't have every possible VCS feature, we're just getting started :) But we are adding features pretty quickly (e.g. conflict notifications took a few days to implement). Thanks!
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Thanks! I agree - there are lots of examples how simplifying something (Shopify, Uber, Airbnb) can dramatically increase the user pool to people who otherwise wouldn't even use a comparable service.
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Yep :) Lots of products run Git on EC2/containers, e.g. GitPod or GitHub Codespaces. Ironically, Diversion works much faster on these than git

https://github.blog/2021-08-11-githubs-engineering-team-move...

sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Yep, exactly! I remember these "happy" SVN days as well. It sucked, git was much better. Today you're almost never offline though, you even have wifi on airplanes. Git's datastructures are a masterpiece, for sure
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
We're using S3 storage, lambda and ECS compute, and serverless DBs. It allows us to build a scalable product much faster, and leverages cloud features like multizone backups and distribution without having to develop these ourself. It also allows fast transfer of data between Diversion and other cloud systems.
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Branches is one example! But really Dropbox is not a VCS. Although some game studios do use Dropbox/Google Drive for versioning graphical assets - but not because it's a good tool for the purpose, they just don't have a better one.
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Thanks for the feedback! Totally agree. Diversion does support binaries, should have mentioned it directly (will update the website).

The thought behind cloud native is that workloads and devtools and data are moving there, and we want Diversion to be the best choice for when everything is in the cloud. Besides that cloud storage and DBs allow us to build and iterate much faster, and worry less about scalability, data distribution & storage etc.

But we can also run Diversion locally / in a container, it just won't be as scalable.

sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Thanks for the feedback! Totally true, I was surprised by how much emphasis on security there is in game studios. They are moving to cloud however, and we're hoping that a private cloud solution (Diversion running on their cloud account) would satisfy the requirements, at least a few years from now as cloud usage grows. Security is definitely going to be super important for us, in any case.
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Thanks, good luck to you too! Would love to check it out! Diversion has totally different storage, that handles binary files with no issues, but same concepts as git - branches, commits and tags. It has a Git sync feature that allows to sync commits between Git and Diversion repos. Kudos on bootstrapping the product, it's definitely not easy! Version control is much harder than it seems, you've probably found out already :)
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Yes you might be 100% right. We were debating this a lot in the beginning. In the end we decided to build a separate VCS with Git sync, and simpler UI (for now at least - might change, depends on user feedback)
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Thanks!! What do you work on?
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
For sure, but that requires a lot of expertise and leaves the non-experts free to shoot themselves in the foot...
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Thanks!! Having talked to lots of game studios (and other companies with large repos/files) - many of them tried to switch to git because devs wanted to, and failed because of technical limitations.
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Thanks for the feedback! If you're on a separate branch it doesn't update from main automatically. We're also thinking to make live update of main optional as well, this is actually one of the most debated features internally. Apparently some users like it and some really don't.
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Good question! End-to-end encryption would mean that you can't run cloud CI or merge conflicts in the cloud and other features. To my knowledge none of existing VCS solutions are end-to-end encrypted (I might be wrong though!)

We might add end-to-end encryption in the future (disabling some capabilities), if there's demand for it.

sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Final_version_4_really_final, we've all been there :D
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
That's really not the main point of the post, but you're right I should have been more precise.

Edit: updated in the top text now!

sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
Swear to god, the story is true! We were able to restore most of the work because someone didn't pull the updates. (I should have added it in the story, didn't think it was important) But it was nerve wracking :')
sasham··on Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
In that specific case there was some error that the user didn't understand, he googled and found a StackOverflow answer with --force. And naturally tried it BitBucket didn't have branch protection back then, today it's a bit better (you can still destroy your work but usually not others')
← PreviousPage 2 of 3Next →