The best I could come up with was to put the nodes in a list, that is, make it 1d. with virtual lists to the left(to show sources) and the the right(to show drains). then it would be sortable and well ordered. but I am not a very good front end programmer, so have not made a mockup to see if it is any better.
The next thing that comes to mind is that as a programmer we deal with graphs all the time in the form of source code. That might be a better interface. I for one gain all sorts of utility from my code being in text form. Plus you would now be able to add logic to your processing graph... I am not sure whether or not this would be a mark for or against a code based system.
Having said that, there would need to be a fair amount of care put into designing a programing language for building video edit pipelines. I don't know exactly what it needs. but I have tried to use ffmpeg in this role... and the best that can be said is that it is very awkward.