Hi everyone,
I have a general question about Subversion development and instead of assuming, 
thought I better seek an answer.
Outside of my limited exposure as the PM - I have no Open Source coding 
experience - so there may well be an "expectation" of coding that I simply 
don't know about.

This email stems from the last paragraph in this message by Johan Corveleyn;
Which I have copied into this email.

If you're already familiar with the diff-optimisation you can get the full 
message here;
http://svn.haxx.se/dev/archive-2011-01/0241.shtml

And if you want some more background the full thread is here;
http://svn.haxx.se/dev/archive-2011-01/0004.shtml
and,
http://svn.haxx.se/dev/archive-2011-01/0005.shtml

which I was tempted to just reply to - but thought I had better not hijack the 
existing thread.

To save you from having to find the post, here is the paragraph I'm referring 
to;

> Actually, what's a little bit troubling is that there are currently
> only 3 possible "file_len's", of which only 2 are used in practice:
> diff2 and diff3 (diff4 is not used in svn core, only in
> tools/diff/diff4). So, if we make a slow and a fast version, we could
> just as well make a XXX2 and an XXX3 version explicitly, and dispense
> with the need to pass arrays and array lenghts. Hmmm... generic (but
> more complex) code vs. a couple of specialized versions.


The goal of the thread  / patch submission is to increase the speed of 
"diffing".
So, does the design, truly, matter?

As the underlying design of all software should be to create the simplest / 
cleanest  / loosely-coupled code that addresses the problem.
Surely the answer is;
Man-power is limited - as long as you observe the coding guidelines  / styles 
etc.

Is the answer not;
Code to the manner that provides the greatest return on a developer's time for 
THIS problem.

Assuming the "specialised" version is indeed faster;
If for whatever reason - it is decided that an API is required (public or 
private) - then an appropriate wrapper can be added when the specific 
requirement of having an API for those functions becomes a requirement as 
opposed to simply being  a nice design goal to aim for upfront?

As always - thanks for patience / assistance.

Gavin.


Reply via email to