|
|
|||||||||||
Felipe Gaucho's BlogNovember 2006 ArchivesA syntax-dependent diff toolPosted by felipegaucho on November 29, 2006 at 03:11 PM | Permalink | Comments (14)How many times you observed someone modifying the code formatting of Java classes and other people getting crazy about the lost of the project history from the Concurrent Versions System? At first sight it seems just a problem of communication - someone is not following the company standards or something like that. But think again - is it really a human problem, or our tools are not wise enough to reduce the problem? I've been discussing it for several hours through my community mailing lists (rsjug and cejug), and I detect the general opinion asserts that the problem is restricted to a misunderstanding about development best pratices and project life cycle. Despite that, there is an intrinsic discussion about what kind of difference really matters - a discussion about the DIFF Tools. Before you abandon this text and start burning a voodoo puppet with my name, I invite you to read the text below with an open mind behaviour - let the ideas guide you into a different perspective about version control and diff tools. I don't have any intention to criticize the current tools, the ones I use and I like. This blog is about a (supposedly) better future - and not about criticism. I am just asking you to forget the common beliefs and think differently for few minutes. Most of these ideas were written in the raw mode, so it is possible and plausible that our discussion changes it before we could accept that as good ideas. If you have any contribution, please write them at the end of this blog entry. The common tools available today relies on the longest common subsequences (LCS) to compare the sequence of characters to detect differences between two files. The appeal of such algorithm is that it is fast and robust. It was designed in the Early 70' and it was designed to be clean and to consumes small amount of resources - memory and cpu. In terms of software design, it is nice, but in terms of human support it seems not wise enough to provide a comfortable and safety environment for the developers. Check the example below:
Some open questions:
If you keep attention on the questions, you noticed there is a common element for all of them: people. People is the key in the software development process, and tools that force people to do things in a different way they want to do is less wise than I supose it could be. Now you have a cenario, and I will suggest you some ideas about how a new tool - the one I don't know if exist because I asked to a lot of people and nobody give me any clue about that. If you know about such tool, please send me the link and I publish it in large letters as a contribution for the community. I am just asking and looking for Open Source tools, but if you know a commercial tool I will also publish the link here. A syntax dependent diif toolSeveral ideas emerged when I started asking about giving the freedom for people choosing their own formating standard. One argue it could be done using a new customized diff tool or through a special configurable diff tool. Other prefers that only the IDE control such view customization, leaving the diff as it is today - just comparing characters. In both cases, the aim of such idea is to allow people to act like the steps below:
This environment suggest everyone in the project felt comfortable about code formating - code formating has the same impact in the project as the music developers listen while working: nothing. Doesn't matter what kind of music your coleagues are listening. If you want to program listening music, you will listen your preferred music, right ? Imagine your level of productivity if your company established a standard for music and play the same boss selection for everyone all day ;). Natural observations on the original draft about a diff dependent of the programming language context:
Done. I could extend this text with a lot of other ideas, but I prefer to wait the feedback before loosing context suggesting minor features or talking about other usages of such tool. A big Hot & Open Source cup of coffeePosted by felipegaucho on November 13, 2006 at 01:14 PM | Permalink | Comments (3)Finally my friends our great Java language started to become Open Source. What a wonderful and historical date! Monday, November 13, 2006
SUN OPENS JAVA
Jazoon 07 Call for PapersPosted by felipegaucho on November 02, 2006 at 12:57 AM | Permalink | Comments (3)From 24 to 28 June 2007, Jazoon, the European industry conference on Java technology, is set to take place. Jazoon'07 brings together experts and professional users of Java and open source technologies from all over Europe. Featuring a comprehensive range of topics, renowned speakers, a varied program of social and cultural events, parallel exhibition with integrated career platform and optimal logistics, Jazoon'07 provides young professionals and established specialists with a unique live experience of the field that is unequalled, even in the age of the Internet.
Submission deadline for Jazoon
click here for more information about the event. | |||||||||||
|
|