View Poll Results: Do you think that the name of LZ5 should be changed?

Voters
25. You may not vote on this poll
  • Yes - LZ5 tries to build on LZ4 reputation

    0 0%
  • Yes - LZ5 implies that it is the "successor to LZ4" or an "upgraded" version of LZ4

    7 28.00%
  • Yes

    5 20.00%
  • No - the name shows LZ5 is related/a fork of LZ4 but it's not compatible with LZ4

    6 24.00%
  • No - now it's too late to change the name

    5 20.00%
  • No

    0 0%
  • I don't care

    2 8.00%
Results 1 to 8 of 8

Thread: Do you think that the name of LZ5 should be changed?

  1. #1
    Programmer
    Join Date
    May 2008
    Location
    PL
    Posts
    307
    Thanks
    68
    Thanked 166 Times in 63 Posts

    Do you think that the name of LZ5 should be changed?

    I received a request to change the name of LZ5. More details are at https://github.com/inikep/lz5/issues/10
    I am waiting for your opinion.

  2. #2
    Member
    Join Date
    Jul 2013
    Location
    United States
    Posts
    194
    Thanks
    44
    Thanked 140 Times in 69 Posts
    The name may not be a problem for people on encode.ru, but people on encode.ru are definitely not typical users. Before answering, consider a random internet user who knows little to nothing about compression. Do you think they may be misled by the name into thinking:

    * LZ5 is an improved version of LZ4 (compatible or not)?
    * LZ5 is created and/or supported by the same people who wrote LZ4?

    Even for a more technical user who can understand the difference between a new version and a fork, do you think they're likely to assume LZ5 is a friendly fork which makes some slightly different trade-offs, or are they likely to think the fork was undertaken to correct some issue, such as security, licensing, unresponsiveness, maintainership, etc.?

    In short, I don't know why "the name shows LZ5 is related/a fork of LZ4 but it's not compatible with LZ4" is a "No" option not a "Yes" option. The whole problem with the name is that it shows LZ5 is related to LZ4; I don't think random people are going to understand the finer points of it being a fork, and even if they do the 5 implies that the fork is better, not just different. I get that you're trying to be up-front about the fact that LZ5 is derived from LZ4, and that's admirable, but I think in this case it causes a lot more problems than it solves, and that in the end it may be detrimental to both projects.

  3. #3
    Programmer
    Join Date
    May 2008
    Location
    PL
    Posts
    307
    Thanks
    68
    Thanked 166 Times in 63 Posts
    Quote Originally Posted by nemequ View Post
    Do you think they may be misled by the name into thinking: LZ5 is an improved version of LZ4 (compatible or not)?
    This makes a huge difference. If LZ5 would be compatible with LZ4 then the name can be LZ4-NG (we already have lz4x and smallz4).


    Quote Originally Posted by nemequ View Post
    I don't think random people are going to understand the finer points of it being a fork
    I think that people able to download and compile LZ5 from GitHub will also read and understand a description of the project.

  4. #4
    Administrator Shelwien's Avatar
    Join Date
    May 2008
    Location
    Kharkov, Ukraine
    Posts
    3,134
    Thanks
    179
    Thanked 921 Times in 469 Posts
    While we're at it, lets also rename LZ78.
    And copyright all small numbers.

  5. #5
    Member jibz's Avatar
    Join Date
    Jan 2015
    Location
    Denmark
    Posts
    114
    Thanks
    91
    Thanked 69 Times in 49 Posts
    Quote Originally Posted by Shelwien View Post
    While we're at it, lets also rename LZ78.
    And copyright all small numbers.
    As I am sure you are aware, the number in this case is a year, and the authors of the two papers are the same, so it doesn't really work that well as an argument.

    I think the question is if the '4' in LZ4 may be interpreted as a version. If it is, then LZ5 would indicate a successor of some sort. Like bzip2 was the successor to bzip. If that is the case then it could potentially be confusing, like say if you forked Python 2.7 and named your fork Python 2.8.

    One thing the name accomplishes is that it sets itself apart enough to convey that it is not (directly) compatible.

    I imagine one problem nemequ envisions is when the two are side-by-side in a library like squash. If you're an end user and looking through the list of available codecs and see LZ4 and LZ5, would you be likely to think they're two version of the same?

    Of course, if you're the kind of end user who thinks they must both be really old versions of LZ78 then nothing will help you .

  6. #6
    Programmer
    Join Date
    May 2008
    Location
    PL
    Posts
    307
    Thanks
    68
    Thanked 166 Times in 63 Posts
    Quote Originally Posted by jibz View Post
    I think the question is if the '4' in LZ4 may be interpreted as a version.
    But where are LZ1, LZ2, and LZ3? If I would see in lzbench/squash e.g. LZXX8 next to LZXX9 I would assume that LZXX9 is not replacement for LZXX8 because then LZXX8 should be removed.
    My idea with the name of LZ5 was based on LZRW (https://en.wikipedia.org/wiki/LZRW) which gives numbers for different, not compatible algorithms.

  7. #7
    Member
    Join Date
    Jul 2013
    Location
    United States
    Posts
    194
    Thanks
    44
    Thanked 140 Times in 69 Posts
    Quote Originally Posted by inikep View Post
    I think that people able to download and compile LZ5 from GitHub will also read and understand a description of the project.
    Maybe, maybe not. People doing that aren't really who I'm concerned about, but being able to clone a project on GitHub and compile it isn't a very high bar… While a lot of people on GitHub do know what they're doing, there are also a lot of people out there who just go to a bootcamp or get some crappy certification, and really don't understand what they're doing.

    Quote Originally Posted by jibz View Post
    I imagine one problem nemequ envisions is when the two are side-by-side in a library like squash. If you're an end user and looking through the list of available codecs and see LZ4 and LZ5, would you be likely to think they're two version of the same?
    Exactly.

    There are a lot of times when the string "LZ5" might be presented to someone who may not know the history, not just people checking the project out on GitHub. Choosing a codec in Squash is one example, but what about when it's presented in lzbench, the Squash Compression Benchmark, etc.? What happens if a filesystem decides to add it as an option for transparent compression? What about marketers including "LZ5 compression" in a list of features, maybe alongside a competitor who supports "LZ4 compression"?

    Quote Originally Posted by inikep View Post
    But where are LZ1, LZ2, and LZ3? If I would see in lzbench/squash e.g. LZXX8 next to LZXX9 I would assume that LZXX9 is not replacement for LZXX8 because then LZXX8 should be removed.
    LZ4 is, AFAIK, the first real product to use the LZ# scheme. "LZ77" and "LZ78" aren't presented to non-programmers, but the name of a codec using LZ77 or LZ78 *is*.

    Quote Originally Posted by inikep View Post
    My idea with the name of LZ5 was based on LZRW (https://en.wikipedia.org/wiki/LZRW) which gives numbers for different, not compatible algorithms.
    You're making my point here... people (correctly) assume that LZRW1, LZRW2, etc., are part of the same family/project, written and supported (or not) by the same author.

    All I'm saying is that, without additional context, it's quite reasonable to assume that LZ4 and LZ5 are related in ways they aren't. You're not always going to be able to provide context. Given the choice, I think it's better to avoid a name that can so easily be misinterpreted.

  8. #8
    The Founder encode's Avatar
    Join Date
    May 2006
    Location
    Moscow, Russia
    Posts
    3,954
    Thanks
    359
    Thanked 332 Times in 131 Posts
    Quote Originally Posted by inikep View Post
    But where are LZ1, LZ2, and LZ3?
    How about IBM's LZ1 and LZ2?
    http://domino.research.ibm.com/tchjr...1!OpenDocument


Similar Threads

  1. Replies: 41
    Last Post: 24th July 2017, 19:05
  2. LZ5 v2.0 beta
    By inikep in forum Data Compression
    Replies: 4
    Last Post: 4th November 2016, 16:22
  3. Replies: 69
    Last Post: 16th August 2016, 18:46
  4. My examples like lz4 & lz5
    By lz77 in forum Data Compression
    Replies: 4
    Last Post: 17th February 2016, 15:23
  5. rules changed!
    By encode in forum Forum Archive
    Replies: 1
    Last Post: 31st December 2006, 20:47

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •