Request: Code walkthrough from core team, and improved guidance on how to contribute

I’ve had a look at parts of the Dgraph codebase, some of it makes sense, Golang is pretty easy to understand. However, getting your head around how it conceptually fits together, the architecture etc. is intimidating.

It’d be great if the core team could do a screenrecorded-walkthrough of the codebase, giving a birds-eye view of the architecture, as well as some more detailed explanations of how various harder-to-grok parts of the codebase work.

Also would be great if the branching strategy could be explained, plus an in-depth guide on how to get started making contributions. i.e. how to get it running on your machine without Docker, how the test suite works, what kinds of issues you’d like to see the community tackling.

3 Likes

I’d be up for something like this too! :raised_hands:

1 Like

That’s hard a bit. Cuz the original code guys are not here. But I think the guys we have will sync up pretty fast. It is possible to do this.

That’s another thing that makes everyone wish to move to another branch strategy. But I think we’ll stick with what we have.

That’s a good idea. it’s possible.

What you think @matthewmcneely ? create some videos about this? I can record, edit and upload.

1 Like

The Dgraph engineering team has made great progress on getting the full test suite functioning with coverage results (which hasn’t been the case for a while now). We should update the README and CONTRIBUTING docs when we finalize the next release with details on how contributors should use these.

how to get it running on your machine without Docker

This really isn’t advised (possible?) unless your machine is Linux with a x64 CPU. Really.

even if it’s just a short live-stream now and again from core team members explaining stuff in the codebase as they make their way through it, that’d be fantastic!

just to confirm—you need to be running Linux to contribute to Dgraph / run the test suite etc? there’s no way to work with the Dgraph codebase on Windows or macOS?

There’s an (unofficial) goal of having a README in every folder to help contributors navigate the codebase. Baby steps.

@BenW No, I use a Mac. But the tests rely on a Docker environment to be present to run the tests. I never run the native Dgraph executable on my Mac. Have a look at the contrib/local-test folder in the main branch. It has tons of convenience Makefile targets to build a docker image and load schemas and data, etc.

A decision was made way back when to drop native support for Mac and Windows. Admittedly, this needs to be made more clearly in the README.

2 Likes

@gajanansc @gajanan this is what we talked about the core team doing after they get back on their feet. It would be beneficial both for new hires into the core and others externally who want to contribute as well.

Maybe even just some simple live coding sessions when someone is doing a somewhat simple fix/enhancement

1 Like

It would also be good marketing IMO, if the streams are posting on youtube.

You should be able to run WSL on Windows with no problem.

J

@amaster507 yes, I haven’t forgotten this part of our discussion. As you can imagine we have quite a bit to tackle and that too with a small team! We will need at least a couple of months to plan on this. Thank you for your patience.

2 Likes