Visual Diff

What is Visual Diff:

A Visual Diff compares and shows differences between rendered text documents. It is definetely useful when we want to keep the progress updated and track the certain changes been made.
Some typical examples exists in linux system. Imagine that as a programmer, It is pretty common to work on the same project. With the visual diff tools, it is easy for us to see the differences that each of the team member made. Since "Nothing is final on the internet, where every single article can be changed to update facts, add images, fix errors, and more."

How to Use it(pre-processing):

While it is a powerful tool, the result is ctualy difficult to interpret. I actually found many instructions about how to read a comparasion text after being represented by visual diff. For example the tool called Meld is a GUI - based tool that being used by many programmers to do visual comparison and merging. "Meld helps you review code changes and understand patches," the official website says. "It might even help you to figure out what is going on in that merge you keep avoiding."

Generally peole can do File comparison, Directory comparison and Version control view. Speaking of File comparison, users select the files awaiting for compare. If we observe closely, the bar in the screenshot above contains some coloured blocks. These blocks are designed to give people an overview of all of the differences between the two files. "Each coloured block represents a section that is inserted, deleted, changed or in conflict between your files, depending on the block's colour used," the official documentation explains.

the interface of Meld

                                                                                             

the interface of Meld

Like any other software tool, there are certain things that Meld can't do. The official website lists at-least one of them: "When Meld shows differences between files, it shows both files as they would appear in a normal text editor. It does not insert additional lines so that the left and right sides of a particular change are the same size. There is no option to do this.".

What is the current options of Visual Diff tools?

XXdiff

XXdiff is a free, powerful file and directory comparator and merge tool that runs on Unix like operating systems such as Linux, Solaris, HP/UX, IRIX, DEC Tru64. One limitation of XXdiff is its lack of support for unicode files and inline editing of diff files.

the interface page of XXdiff

                                                                                           

DiffMerge

In terms of showing the differences, I feel like sometimes the lines are sort of redundant and confusing. You have to review the whole page and link the two ends of the lines together. What if it just shows in a parallel way?

Here comes the DiffMerge. It is a cross-platform GUI application for comparing and merging files. It has two functionality engines, the Diff engine which shows the difference between two files, which supports intra-line highlighting and editing and a Merge engine which outputs the changed lines in a horizontal level.

the interface page of DiffMerge

                                                                                         

Other diff visualizations:

Another type of diff visualization is graph diff’ing, often used in graph views of assembly code. I wonder if it has some sort of zoom capability . You can either see the whole file at a large level or scroll into particular sections that are signified as different. Also I am wondering if people can  see a grid of size comparison to where you are, this could be a colour coded area to see people are zooming into different areas, and the other different areas are over there in relation.

Conclusion:

I am wondering if there has a method that you can see the whole file at a large level and then you can scroll into particular sections that are signified as different. Also you can  see a grid of size comparison to where you are, this could be a colour coded area to see people are zooming into different areas, and the other different areas are over there in relation.

Refering back to the research I have done about VisualDiff tools. I alwasys prefer Straightforward Visualization — Let the reader interpret or direct with annotation. Whatever method designers choose, the key is to focus specifically on the differences. So instead of just visualizing your files, you also want to visualize how people created the diffs, which in the end, may matters a lot to the programmers or users. Hopefully, a number of "visual" diff utilities have been developed over the years.