Файловые системы — отстой

    Компьютеры пришли в народ из мира инженеров. А в мире инженеров реализация всегда превалирует над интерфейсом. Вот и с файловой системой так. Несмотря на на колоссальный скачок от перфокарт к EXT3 или NTFS, интерфейс файловой системы остается таким

    вот таким:


    Да-да, те же самые стеллажи (диски) с коробками и ящиками (папки), в которых хранятся перфокарты (файлы). Девушки — это либо Search Companion, либо сам пользователь. Меня волнует вопрос зачем переносить принцип устройства файловой системы в интерфейс работы с ней? Меня папки очень часто ставят в тупик. В какую папку положить рабочий документ, техническое задание, фотографии с работы, с отдыха, с корпоративного выезда на шашлык и т.д. А если подняться на еще уровень выше, то какую ценность как единица информации несет папка? А никакой! Это просто тег, причем тег со связью один-к-одному то есть на одну единицу нормального контента можно назначить только один тег. Проблему однотеговости можно решить двумя способами:

    Способ 1
    Вкладывать теги друг в друга. Тогда мы получаем унылый беспомощный иерархический рубрикатор.

    Способ 2
    Использовать ярлыки в других папках. Извините, занятие для извращенцев.

    В общем ловить, как говорится, особо нечего.

    Удивительно, казалось-бы, после перехода на такую «враждебную к пользователю» операционную систему, как Линукс я осознал насколько легко и просто жить без необходимости раскладывать все по папкам. Музыка и видео у меня скачиваются в одно место, а интерфейсом служит UPnP AV сервер, который сам определяет теги для контента: тегирует исполнителями, альбомами, жанрами, годами и т.д. песни; видео — актерами и режиссерами плюс сериалы — сезонами и сериями. Я даже честно не знаю что и как у меня в этой папке, которая названа media происходит.
    Фотографии я сгружаю с фотоаппарата в один контейнер и баш-скрипт раскладывает их по папкам сам, поворачивая, делая превьюшки и добавляя их в веб-интерфейс просмотра.
    Программы в Линуксе тоже ставятся так, что я даже не подозреваю о том, что файловая система есть и что она как-то устроена.

    Увы, приходится сталкиваться с папками и файлами, когда работаешь с документами, потому что отсутствие механизма тегирования на уровне ФС, лишает меня возможности положить все в одну папку и забыть про ее устройство.

    Но, не смотря на то, что теги это круто и я их очень люблю, с ними тоже есть две проблемы:

    1. Иногда ты не знаешь как протегировать контент (см. теги этого топика).
    2. Я и, наверное, еще много людей очень ленивы, в отличие от sofrus, который загрузил обложки ко всем своим mp3, чтобы назначаить теги всему контенту.

    Вот! Вот это как раз и место где есть развернуться инженерной мысли! Подумайте, сколько можно сделать подсистем автоматического тегирования.

    Фильмы, музыка — авторы, исполнители, режиссеры, актеры, годы, жанры.
    Изображения — дата, время, место съемки, время года, персонажи на фотографиях через систему распознавания лиц.
    Про документы писать не хочется, тут все слишком просто.

    При таком подходе можно даже получать аггрегацию информации. Например по тегам «Анапа» и «2008» можно моментально получить из текстов и фотографий отчет об отпуске, проведенном в Анапе в 2008 году, а потом убрав «2008» и добавив «Фотографии» + «Лето», можно увидеть ретроспективу ваших отпусков в Анапе. Полет фантазии не ограничен!

    Естественно, при системе тегирования навигацией по контенту становится поиск, а основным представлением — его результаты.

    Какие-то шаги в этом направлении уже сделаны Windows Desktop Search или Spotlight, но им отчаянно нехватает поддержки со стороны файловой системы.

    Тем кому отказ от папок кажется чем-то немыслимым и ужасным, подумайте над тем, что вы, скорее всего пользуетесь поискоориентированной файловой системой каждый день. Это Гугл. :)

    Similar posts

    Ads
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More

    Comments 348

      +21
      Ожидалось, что WinFS станет именно такой системой. Жаль, забросили.
        +7
        ну скорее не забросили а не осилили :) это как у американцев были разработки оружия где пули бы изготавливались из подручного мусора: затраты на использование не окупаются.
          +2
          Я думаю всё-таки именно забросили.

          Суть в том, что «дерев каталогов и возможность делать ярлыки» это то, что среднестатистический пользователь может осилить умом.
          теперь вот появились Библиотеки в которых можно смотреть контент из разных папок.

          глупо разрабатывать WinFS, если даже все возможности NTFS — непосильная тяжесть для большинства пользователей.

          замороченные файловые системы нужны только Вам, мне и %username%

            +1
            Если система может автоматически присваивать теги, то это уже вопрос пользовательского интерфейса, как сделать это очевидным пользователю. :p
              0
              не проблема :) придумайте, как это удобно сделать и напишите дополнения к шелу :)
              Я обязательно заюзаю вашу программу :)

              З.Ы. а что значит «автоматический присваивать тэги»?
              0
              Если я не ошибаюсь, они там столкнулись с проблемами в математической модели… поэтому все-таки не осилили.
            –1
            но теги-то в висте появились…
              0
              Не… в Висте их убрали :-D
              Тэги появились в 2k, только их было неудобно ставить и просматривать.
            +21
            С одной стороны, вы правы — главной особенностью, приведшей к такой популярности компьютеров, явилась их возможность хранить, передавать, обеспечивать доступ к гигантским и недоступным до этого объёмам информации. Нужно этот доступ сделать удобным.

            С другой стороны, само понятие удобства очень различается для разных людей. Мне, например, ужасно неудобно, когда данные лежат «по тегам», я везде пытаюсь их организовать в иерархию — даже в системах, которые изначально не предполагают иерархического строения. (Поэтому же мне не нравятся и форумы типа phpbb, но нравится phorum и организация комментариев на хабре ;).

            И меня в этом смысле больше всего устраивает именно иерархическая структура файловых систем. Её неплохо бы дополнить механизмом тегов для ускорения некоторых отдельных операций, но нельзя заменить этим механизмом.

            Вообще-то, лет пять назад были шумные слухи про WinFS. Это примерно то, о чём вы пишете — теги с частичной автоматизацией, MS SQL Server Lite для индексирования, NTFS как бэк-энд. С другой стороны, я видел немало попыток сделать такую штуку на базе fuse (напр. tagsistant). Тот факт, что все эти проекты находятся в зачаточной стадии, заморожены или заброшены, уже косвенно намекает на то, что в массе пользователю всё это не нужно…
              0
              Массового пользователя очень приучили к папкам. Переучить сразу практически невозможно. Но, я думаю, когда поток информации станет сбивать с ног, такая организация хранения данных станет востребована.

              В онлайне-же такие системы имеют успех.
                +38
                Не знаю, меня вот приучили к иерархии. В файловой системе это директории; в dokuwiki — пространства имён; в программировании — те же пространства имён, интерфейсы, классы; в природе — генеалогическое дерево, филогенетическое дерево, кварк-нуклон-ядро-атом-молекула-вещество-органелла-клетка-орган-организм-общество; в обществе — социальная иерархия, начальники, начальники начальников и президент; в технике — системы, надсистемы, подсистемы (пример, соответственно: автомобиль, личный транспорт, двигатель; а у них — свои под- и над-системы: у двигателя — подсистема цилиндры, у личного транспорта — надсистема транспорт). В

                Иерархии — везде и всюду, они естественны; зато ваших «тегов» в природе нет.

                Человек так устроен, что наиболее естественно и просто понимает именно природные структуры, и всё, созданное им, так или иначе моделирует окружающий мир. Например, парадигма программирования, которая тоже привела к популярности компьютеров — это ООП, которая фактически предлагает строить иерархию классов и объектов.

                Область классификации информации — не исключение. Здесь тоже естественна иерахия.
                  +1
                  Теги это тоже иерархия и классификация, просто не исключающая связи многие ко многим.
                    +2
                    Не предлагайте отказываться от традиционной иерархии. Она, к слову сказать, далеко не сразу появилась — первые ОС не знали такого понятия, как «иерархическая файловая система», я как-то сталкивался с такой системой MSX.

                    Предложите, как можно естественно вписать теги в иерархическую структуру. Идеальный результат примерно такой: у каждого объекта видим ровно одного родителя (не больше и не меньше, исключение — корневой объект, нет родителя); но видим также горизонтальные связи между объектами, в которых объединение происходит по наличию сходных признаков (тегов).

                    В ФС придётся добавить не только концепцию похожести (тегов), но и концепцию соответствующих связей между объектами. Ваша ошибка заключается втом, что вы, вместо того, чтобы добавить эти новые связи естественным образом (да, это очень сложно, это-то и есть главная проблема!) пытаетесь полностью исключить старые, и заменить их новыми.
                      +1
                      Все же, безболезненно исключить связи старые (иерархические) — возможно. Представьте ФС, основанную на реляционной либо постреляционной БД. В таком случае, объекты могут быть связаны, теоретически, различным образом. Четкую иерархию возможно построить и на такой ФС, но в то же время она будет гибка и заточена под указанные выше нужды.

                      Подвижки в этом деле уже были. BeFS вроде БД из себя представляет. Ну и мечты о «Единой среде» Фримана в том же направлении развивались\развиваются.
                        0
                        Зато пользоваться такой системой для чего-либо, кроме упорядочивания фотографий, будет нельзя. И даже для фотографий не совсем удобно будет (например, у меня ключевой критерий классификации фотографий — дата, т.к. это единственный отличительный признак, который есть абсолютно у них у всех). Мне теги нужны как помощь, но неприемлемы как замена.
                          +2
                          Здесь нет ни слова о тегах, есть много слов о базе данных. =) Дата — всего лишь одно из полей, по которому можно производить поиск.
                            +1
                            Согласен с рассуждениями. Считаю, что рациональное зерно есть также и в мяслях автора по поводу тегов.
                            Мой вывод: теги должны быть иерархическими.
                            Это примерно (очень примерно) эквивалентно хорошей структуре папок на винчестере, где файл всегда лежит в нужном месте, причём в других соответствующих папках на этот файл идут символические ссылки.
                            Скажу больше: я попытался реализовать систему иерархических тэгов для упорядочивания информации на сайте. Это действительно упростило поиск _нужных_ данных в разы. При этом, к сожалению, стал несколько более сложным интерфейс.
                            И всё же, я уверен что за этим будущее.
                              0
                              Для хранения данных и связывания в БД сайтов я тоже использую теги и нахожу это удобным. Поэтому меня и волнует вопрос.
                            0
                            безболезненно — нельзя. мне будет больно.
                              +2
                              мне будет трудно быть уверенным в результате по запросу, если ФС может выдавать результат как объекты, которые теоретически могут быть связаны различным, неизвестным мне способом. =)
                                –1
                                Это похоже на страх перед незвестным. Если результат работы будет вас удовлетворять, он быстро пройдет.
                                0
                                > Все же, безболезненно исключить связи старые (иерархические) — возможно. Представьте ФС, основанную на реляционной либо постреляционной БД. В таком случае, объекты могут быть связаны, теоретически, различным образом. Четкую иерархию возможно построить и на такой ФС, но в то же время она будет гибка и заточена под указанные выше нужды.

                                Чуствую, что пользователь, пользуясь такой ФС, в первую очередь сделает теги, по смыслу аналогичные именам директорий. И объединит файлы именно по такому признаку. Ну чтобы знать, где что лежит. В результате вы опять получите обычную иерархическую ФС, но сделанную на основе тегированной ФС :)
                            –4
                            > пример, соответственно: автомобиль, личный транспорт, двигатель; а у них — свои под- и над-системы: у двигателя — подсистема цилиндры, у личного транспорта — надсистема транспорт
                            > кварк-нуклон-ядро-атом-молекула-вещество-органелла-клетка-орган-организм-общество

                            Это не иерархия, а устройство. Не путайте.

                            Дом не надсистема над кирпичами и цеметном, он из них сделан.
                              0
                              Целое состоит из своих частей. Это «иерархия», которая в случае автомобиля называется «устройство». Короче, устройство — это частный случай иерархии.
                                  0
                                  В смысле, как бы-да :)
                                    –1
                                    Хех :) что же вы так. В суть понятия надо проникать, а не поверхностно «на примерах» рассматривать ;)
                                      0
                                      Я все равно в сути не согласен.
                                      Устройство автомобиля и принцип хранения информации — это разные вещи.
                                      Но раз уж я дал ссылку на формальное определние то вынужден признать, что формально вы правы.
                                        0
                                        Здесь не идёт речь о формализме. Я просто вижу, что ПО СУТИ устройство какого-либо механизма — иерархично, «по уровням» — колесо состоит из деталей, само является деталью подвески, которая тоже является деталью автомобиля. Мне для установления связи «иерархия»-«устройство» не нужно строить явное определение, типа того, которое есть в википедии, и искать там подходящий пример из списка; тем более, что я сам способен легко построить подходящее определение понятию.

                                        Это не формализм, как раз наоборот. И прав я в данном случае не формально, а как раз наоборот ;)

                                        Кстати говоря, вот вам и пример — вам самому сейчас потребовалось воспользоваться иерархией. Вы и сами не заметили. Для того, чтобы связать эти два понятия (иерархия и устройство), вам потребовалось определение — описание этих понятий в более абстрактных терминах, то есть, вы поднялись на ступеньку, на уровень иерархии абстракций.

                                        От такой ступенчатой иерархической структуры вы никуда не уйдёте. Она встроена в природу человека.
                                          0
                                          Ваши доказательства субъективны. И линия доказательства вашей правоты верна только для вашего мироощущения.

                                          Мне вот например иерархические структуры неприятны и постоянно ставят меня в тупик. Я хочу уйти от них.

                                          Могу-ли я использовать это как аргумент? Нет. И если не лезть в википедию и не брать формальное определение иерархии, то я не согласен, с тем что устройство автомобиля — иерархическая структура. Одни и те-же детали могут быть использованы в разных узлах. А кварк может стать частью любой молекулы. В жесткой иерархии путь вниз и вверх всегда известен.
                                            –1
                                            Это и есть суть иерархии. Мы берём кирпичики, и строим из них объекты, которые сами потом используем как кирпичики.

                                            Для этого-то иерархия и потребовалась — чтобы вывести свойства миллиардов объектов из небольшого количества правил — из нескольких кирпичиков и правил обращения с ними. Меньше правил — легче жить.

                                            И успех очевиден — вместо рассмотрения отдельных липы, дуба, клёна и сосны, мы можем сказать слово «дерево» — и это очень упрощает, например, подсчёт. Именно этим мы отличаемся от индейцев — у нас есть абстракция «дерево». Общество не развилось бы до современного состояния, если бы у него был только язык индейцев.

                                            Да и вообще, если вглядеться — все успехи человечества на поприще исследования природы связаны с улучшением и уточнением иерархической систематизации. Причём, не только природы «естественной», а и «гуманитарной» — посмотрите на устройство книги, журнала, статьи, рассказа. Там всё состоит из частей, которые состоят из глав, которые состоят из абзацев, которые состоят из строк, которые состоят из знаков. И наиболее прогрессивные языки добавляют уровень иерархии — строки состояит из слов, которые состоят из знаков (букв), а менее прогрессивные — теряют его, слова сами являются знаками.
                                              0
                                              А чем это противоречит классификации тегами?
                                                0
                                                Я не говорю, что противоречит. У кварков есть цвет, аромат, заряд, масса — это, если угодно, их теги.

                                                Я говорю про то, что иерархию невозможно исключить, от неё нельзя отказаться. Её можно расширить.
                                                  –1
                                                  Тогда мы с вами об одном и том-же.

                                                  Рискну предположить что у кварков есть цвет, аромат, заряд, масса свойства, а не теги.

                                                  Теги могли бы быть типа «Базовый элемент материи» или «Объект моей новой научной работы»
                                                    0
                                                    Тогда вы меня не поняли :)

                                                    Сравните: есть кварки, у них есть ароматы (скажем, два u-кварка и один d-кварк). Они объединяются в протон. Это — иерархия.

                                                    А ещё у кварков и у протона есть электрический заряд. Это — теги.
                                  • UFO just landed and posted this here
                                      –1
                                      Это иерархия. И колесо и шина — детали, и деталь включает в себя деталь.
                                      • UFO just landed and posted this here
                                          0
                                          Совершенно верно — и корзина и грибы — предметы и это ТОЖЕ иерархия :)
                                          • UFO just landed and posted this here
                                            0
                                            Только слово «включает» можно заменить на «содержит» или «хранит», если угодно.
                                    +3
                                    Позволю себе не согласится. Иерархия — искусственна, и удобна только чтобы классифицировать. Вспомните, как вы выбираете (или указываете на) объекты в реальном мире:
                                    — Где твоя машина? Вон (красная), (возле грузовика).
                                    — Помоги вспомнить песню: (Наша), (мужик поет), что-то про любовь
                                    Не могу вспомнить не одного примера, чтобы я в разговоре использовал иерархию.

                                    П.С. Мне легче понять, что общество, как и атом (можно поделить), чем то, что общество состоит из кварков.
                                      –1
                                      В реальном мире я указываю на объекты, описывая их. При этом, я пользуюсь абстракциями: не «Ford Focus», а «машина», не «MAN что-то-там», а «грузовик» и т. п.

                                      Это — иерахия, иерархия абстракций. Ею пользуется каждый, постоянно, и не задумываясь. Это она привела общество к современному виду.
                                        +2
                                        Делаю громкое заявление: Человек не способен построить иерархию, не разделив объекты по признакам (проставив теги).

                                        Взять биологию: До сих пор вносят изменения в иерархию Линнея, это показывает, что для построения иерархии требуются усилия. Было бы интересно проследить историю появления иерархий в истории человечества.
                                          –1
                                          Точно, теги — сходные признаки — нужны для классификации. Правда, некоторые иерархии возникают по-другому — например, атомные ядра, нуклоны и кварки появлялись как математические абстракции.

                                          Но потом появилась иерархия этих самых признаков. Она обеспечила помимо группировки объектов ещё и их упорядочивание.
                                            0
                                            Согласен полностью с иерархией тэгов.

                                            Не в целях рекламы, а в целях обмена опытом, хочу сказать, что в своё время сделал сравнительно универсальный движок сайта для хранения и поиска информации по набору иерархических тэгов. Любой информации, любой тематики.
                                            Будет интересно — скину адрес для посмотреть.
                                            В этом направлении, кстати, сейчас движутся Маркет.Яндекс, сами того не зная. )

                                            Так вот, самое главное: работа с иерархическими тэгами оказалась слегка тяжёлой для рядового пользователя. Здесь бы скорее обсудить формы их представления для юзера. Вот это действительно большой вопрос.
                                            +3
                                            >В реальном мире я указываю на объекты, описывая их. При этом, я пользуюсь абстракциями: не «Ford Focus», а «машина», не «MAN что-то-там», а «грузовик» и т. п.

                                            Вот именно, что описывая, а не классифицируя. Вы оперируете признаками объекта, а не его точным местоположением в определённой иерархии.

                                            К примеру, если Вас спросят «какая у Вас рыбка в аквариуме», Вы скорее всего скажете «золотая рыбка: такая оранжевая с полупрозрачным хвостом и плавниками». Я очень сильно сомневаюсь, что Вы скажете что-то вроде «Царство: Животные, Тип: Хордовые, Подтип: Позвоночные, Надкласс: Рыбы, Класс: Костные рыбы, Отряд: Карпообразные, Семейство: Карповые, Род: Караси, Вид: Золотая рыбка» %)

                                            Так и с файлами: я хочу «фотки», «из Штатов», «июль 2009», а не "/home/mikhail/data/pics/photos/2009/2009.07.01. Поездка в Штаты/*.jpg" :)
                                            0
                                            Это потмоу что память у нас ассоциативная память.
                                            +1
                                            Есть одно но…
                                            Дело в том, что один объект является частью различных систем, например «Вася Пупкин» — муж Маши Пупкиной (система «семья») или «Вася Пупкин» — выпускник МГИМО (система «образование»), было бы два тега найти было бы проще.
                                              0
                                              /цветной/жёлтый

                                              /объёмный/круглый

                                              куда поместить жёлтый мяч?

                                              тэги должны выстраиваться в иерархии, а не объекты…
                                                0
                                                Я-бы все-таки ушел от слова иерархия, подменив его словом связь.
                                                  0
                                                  Согласен. Причём в общем случае иерархий тэгов может быть несколько, т.к. любой объект можно классифицировать по целому ряду свойств. В каждой конкретной задаче может быть ровно столько иерархий тэгов, сколько необходимо (или достаточно?) для быстрого поиска нужного объекта в разных ситуациях.
                                                  0
                                                  Почему нет? Я всю еду могу разделить по признакам «вкусное» и «невкусное», а могу и по признакам «легко приготовить» и «тяжело приготовить», а также «халява», «дёшево», «дорого» и «за всю жизнь не накоплю». И нафиг мне тут иерархия? По этим меткам я очень быстро могу найти халявную, вкусную еду, которую легко готовить. И никак ты тут не придумаешь такую хитрую иерархию, чтобы она помогала так же быстро выбирать еду, как метки.
                                                  +8
                                                  Хм, у массового пользователя на рабочем столе винды красуется Новая папка[n+1], не думаю, что он проникся иерархичностью ФС
                                                    0
                                                    Если массовому пользователю лень вбивать названия для папок, то вряд ли он будет заморачиваться с ручным проставлением тегов.
                                                      0
                                                      Поэтому автоматическое тегирование to the rescue.
                                                        –1
                                                        Это как, ИИ? Если будет такой ИИ, то тут уже ни тагирование ни ФС ну нужна совсем
                                                    0
                                                    дело не только в переучить, а в перепроектировании систем на очень глубоком уровне.
                                                      –1
                                                      gmail какбэ вполне даже переучил.
                                                      0
                                                      Не соглашусь с тем, что в массе пользователю все это не нужно. То, что пользователь не считает, что ему это нужно, не означает, что ему это ненужно. Люди в массе своей боятся и не любят нового. Сказать честно, что ты не хочешь что-то новое, что ты никогда еще и не видел, нельзя — ведь ты не знаешь, что это. Поэтому когда люди говорят, что они не хотят нового, они просто маскируют свой страх.

                                                      Так что, если серьезно, проблема WinFS была не в том, что она была никому не нужна, а то, что пытались все вместе сделать — и WinFS, и Avalon, и Windows Shell.

                                                      Вообще структурность в проекте была недостаточной для успешного завершения проекта :(

                                                      Впрочем, не переживайте… Эти возможности еще появятся в SQL Server. :) А там, глядишь, и в Windows. И, в конце концов, не Windows единым живо человечество.
                                                        0
                                                        Это означает только то, что разработка такого подхода стоит много денег и времени.
                                                        0
                                                        Ну, у меня и на Винде LightRoom раскладывает все фотки по папкам, а пикаса тегирует и сортирует. С фильмами всё тоже достаточно просто — они складываются в папочку Media/Video в настройках загрузчиков. Музыку ещё не пробовал особенно раскладывать, но, думаю, Itunes или Songbird с этим справятся.
                                                        В итоге, только папка Downloads представляет из себя нагромождение хлама. Но, думаю, для того она и создана :)
                                                          +1
                                                          блин видимо я совсем устарел ибо использую в пикассо режим просмотра по папкам, а все фотки у меня представляют фотоархив.
                                                          Вот примерно такой
                                                          Фото
                                                          — 2006
                                                          — 2006 01 01 (Новый Год)
                                                          — 2006 01 02-20
                                                          — 2006 02 02 (ДР Мамы)

                                                          — 2006 06 05 (На даче)
                                                            +4
                                                            а Пикассо не против? ) )
                                                              0
                                                              да нет вроде
                                                                +2
                                                                «да нет вроде». Какой бы из вариантов выбрать ))))
                                                                Извиняюсь что докопался — настроение хорошее )
                                                                  0
                                                                  нет вроде, она вообще то не принципиальная, лишних вопросов не задает…
                                                                    0
                                                                    говорят же, у человека настроение хорошее и он докопался до: Пикаса != Пикассо
                                                          +1
                                                          Тэги — это хорошо, но отказываться от привычной древовидной структуры не стоит.
                                                            0
                                                            Если только потому что она привычная, то стоит.
                                                              –3
                                                              Тот, кто минус поставил, напишите пожалуйста, почему не согласны. Интересно-же.
                                                                +2
                                                                Привычно != удобно.
                                                                Каждому нравится своё, я например свихнусь искать по тегам нужный мне код среди нескольких тысяч файлов.

                                                                Иерархию придумывали не просто что бы была, она удобна в нужном месте.
                                                                  +1
                                                                  p.s. Я не минусовал.
                                                                    0
                                                                    Да, я забыл написать, что сценарий разработки ПО — совсем другое дело. Здесь как раз иерархическая структура очень полезна. Я писал статью глазами фронтенда. А об инженерном подходе как раз первый абзац.

                                                                    Что программисту удобно — пользователю зло. :)
                                                                      +3
                                                                      Ну что верно то верно, но всё же это проблема не файловой системы, а операционной системы, это она должна предоставлять пользователю удобный вид.

                                                                      В фотографиях, видео, музыке, теги — это удобно, согласен на 100%.
                                                                      В документах, 50/50.
                                                                      Программисту/админу, как явление чёрта в церков поглумиться )
                                                                        0
                                                                        Ну речь-то как раз именно об интерфейсе.
                                                                        –3
                                                                        >Что программисту удобно — пользователю зло. :)
                                                                        обратное тоже верно
                                                                          0
                                                                          Зато делает нашу работу интересной.
                                                                          +1
                                                                          Зачем же менять файловую систему, если вам не нравятся ее представления?

                                                                          Просто используйте другое представление.
                                                                          Персональные поисковики уже лет 10 как существуют.
                                                                            0
                                                                            Универсальности бы им, а единственной более-менее переносимой между платформами системой остаётся иерархическая структура. Именно поэтому становятся популярными платформо-ориентированные системы завязанные на одного производителя.
                                                                        0
                                                                        Зачем мне искать файлы, если я знаю, где что у меня лежит? Я поиском пользуюсь в лучшем случае раз в месяц, уж по любому операция ручного перехода в нужную мне папку быстрее чем поиск и выборка нужного файла среди тегов.
                                                                          0
                                                                          Первое что приходит на ум: организовать веб-сервер без древовидной фс не получится.
                                                                          Второе — как будет не древовидная фс выглядеть с точки зрения ос?
                                                                          • UFO just landed and posted this here
                                                                              –1
                                                                              Я был-бы очень признателен, если бы вы привели доказательство своего утверждения.
                                                                              • UFO just landed and posted this here
                                                                                  0
                                                                                  Это вопрос технической реализации, которого я бы не хотел касаться в данном топике.
                                                                                  • UFO just landed and posted this here
                                                                                    • UFO just landed and posted this here
                                                                                        0
                                                                                        1. Я собираюсь отказаться от вложенности потому что это и есть древовидная иерархия.
                                                                                        Вместо этого, если необходимо, можно иметь связанные теги, которые будут эмулировать узлы дерева для спецзадач (скажем разработка ПО, где иерархия действительно удобна).
                                                                                        2. Я не могу придумать ей массового применения.
                                                                                        • UFO just landed and posted this here
                                                                                            0
                                                                                            Не будет никакой длинющей колбасы файлов, будут теговые выборки. Чтобы представить себе теговую ФС, нельзя смотреть на нее принципами древовидной.
                                                                                            • UFO just landed and posted this here
                                                                                                0
                                                                                                Полностью теговая файловая система использует в качестве системы координат, некие теги, как автоматические, так и пользовательские. Автоматические делятся на системные ( необходимые системе, чтобы находить нужные файлы), и те, которые просто проставляются сами при попадании нового файла в систему (дата, тип и т.д.).
                                                                                                Теги могуть быть связаны между собой, чтобы возможно было эмулировать узлы (например для сценария разработки ПО)
                                                                                                • UFO just landed and posted this here
                                                                                                    0
                                                                                                    В теговую ты просто помещаешь файл куда-то. В худшем случае всегда найдется по имени.

                                                                                                      0
                                                                                                      Автоматическое тегирование я описал в середине статьи.
                                                                                                      • UFO just landed and posted this here
                                                                                                          0
                                                                                                          Так то что инфы нет, это же простор для работы. Мой предыдуший проект «Веборама», умеет распознавать и подписывать музыку и клеить к ней каверы. Еще 10 сервисов умеют тоже самое.

                                                                                                          Для фильмов вот-вот появятся такие-же, уверен (если их уже нет).

                                                                                                          Такую информационную базу можно построить вокруг любой сущности.

                                                                                                          Я просто немного в будущее смотрю, потому что знаю, что до массового производства моих идей еще далеко.

                                                                                                          • UFO just landed and posted this here
                                                                                                              0
                                                                                                              Если видео любительское, можно проставить теги самому. Когда вы хотите сохранить видео себе на комп, вы кликаете по папкам «видео», «новый год», «2009», а потом кидаете в эту папку файл. То же и с тегами, только вы выбираете их из списка уже существующих, или задаёте новые.
                                                                                                        • UFO just landed and posted this here
                                                                                                            0
                                                                                                            Для этого можно использовать тегирование тегов: тегам video и audio присвоить тег «contenttype», а пользовательским тегам автоматически назначать тег «usertag».
                                                                                              0
                                                                                              Thinking out of box…

                                                                                              А если представить себе, что массивы могут быть 3-хмерными? Т.е. у нас есть пространства контента? И что есть меню типа Pie Menu, позволяющие переноситься (как бы телепортироваться, или «прыгать») по пространству контента.

                                                                                              Мне кажется, в этом случае вопросы иерархии становятся гораздо более интересными… А если связи при этом будут слабо светящимися нитями, соединяющими сущности, представляющие те или иные события из реального мира?

                                                                                              А если еще будут механизмы фильтрации этого трехмерного пространства по типу контента, по вашим интересам??
                                                                                                0
                                                                                                Главное — не допустить использование тегов в непредусмотренных целях. Если какой-нибудь программист будет использовать теги для связи между файлами вместо подсказок пользователю, тут-то и начнётся полнейший бардак. А таких программистов найдётся множество.
                                                                                                  0
                                                                                                  А можно ввести функцию тегирования тегов =) Для тегов, не предназначенных для отображения пользователю, можно проставлять субтег «hidden», для отмены индексации по определённому тегу — «skipindex» и т.д.
                                                                                                  И тогда программисты смогут указывать в тегах что угодно.
                                                                                      0
                                                                                      Почему нельзя рассматривать //фото/отпуск/анапа/я.jpg как теги? Ничто не мешает вам использовать обычную иерархическую ФС как тэговую с помощью несложной надстройки. На любителя такскзть. А вот обратного пути нет.
                                                                                        0
                                                                                        >Почему нельзя рассматривать //фото/отпуск/анапа/я.jpg как теги?

                                                                                        Потому что на том же самом фото может быть не только «я», но и «жена», а само фото может относиться не только к «анапа», но и к «море». А если на фото есть, к примеру, ещё и крокодил, то на него можно повесить тег «животные».

                                                                                        Итого: в случае поиска по тегам это фото вылезет и по запросу «я»+«животные» (например, вместе с фотками меня на фоне белых медведей из ленинградского зоопарка), и по запросу «я»+«жена» (например, вместе с фотками со свадьбы), и по запросу «жена»+«море» (например, вместе с фотками из Турции, куда жена ездила с подругами).

                                                                                        Как Вы сможете организовать подобное средствами файловой системы? После привычки к такому комфорту обратного пути, действительно, не будет ;)
                                                                                    +1
                                                                                    Посмотрите BeFS.
                                                                                      0
                                                                                      Видел, но хотелось бы иметь это в масс-маркете.
                                                                                      +4
                                                                                      А вы не могли бы по-подробнее описать что за UPnP AV, или какой вы могли бы посоветовать? Баш скрипт тоже заинтересовал, можно на него взглянуть? Просто что-то не приходят мысли как вы определяете куда надо повернуть фотографию…
                                                                                        0
                                                                                        в фотографии хранится какая-то инфа по поводу ее угла поворота, иначе, например, preview в макоси не смог бы сам поворачивать фотки при просмотре. Но это если с фотоаппарата, если просто картинка, то… :)
                                                                                          0
                                                                                          Некоторые фотоаппараты имеют датчик положения и оставляют запись в exif о расположении фотографии. Но он их по-моему сразу и поворачивает.

                                                                                          А вот про скрипт и веб-альбом мне бы тоже хотелось подробнее узнать поконкретнее.
                                                                                            0
                                                                                            наверное, но сразу он их не поворачивает, стандартный просмотрщик в винде не воспринимает эту инфу
                                                                                          +2
                                                                                          1. Mediatomb / mediatomb.cc, для него написано куча скриптов, которые тегируют всю медиатеку.
                                                                                          2. media.tbms.ru:1982/process.photos.rar
                                                                                            0
                                                                                            Спасибо вам!)
                                                                                          –1
                                                                                          А расширения файлов за теги вы не считаете?
                                                                                            +2
                                                                                            Считаю, просто это — технические теги, которые пользователю не нужны.
                                                                                            –5
                                                                                            В MacOS как раз происходит подобное. Для простого конечного пользователя программы ставятся «куда-то», документы тоже лежат «в компьютере», пользователь не думает где и что у него лежит. Он просто использует Finder.
                                                                                              +5
                                                                                              Finder такой-же иерархический навигатор, как проводник.
                                                                                              +2
                                                                                              есть одно но:
                                                                                              когда в вас все в одной папке и с тегами, это хорошо только с вашей стороны.

                                                                                              подключите это носитель информации к любой другой системе и получите кашу их файлов, в которых невозможно разобраться.

                                                                                              + когда знаешь где, в какой папке и что и в каком виде находится — тренируется память. не надеешься на технику, а сам знаешь и в случае чего не потеряешь.

                                                                                              а в целом может мысли и правильные, только слишком уж кардинальные.
                                                                                                +2
                                                                                                > подключите это носитель информации к любой другой системе и получите кашу их файлов, в которых невозможно разобраться.

                                                                                                Вот я и хочу, чтобы теги стали так-же естественны как файлы и папки. Поэтому они должны работать на уровне файловой системы, а не операционной.

                                                                                                > + когда знаешь где, в какой папке и что и в каком виде находится — тренируется память. не надеешься на технику, а сам знаешь и в случае чего не потеряешь.

                                                                                                Также, например, можно оправдывать распечатывание всех документов, чтобы ничего не пропало.

                                                                                                  +2
                                                                                                  про первое соглашусь частично, ибо может это все и так распрекрасно, но всеобщей согласованности от производителей вы никогда не дождетесь. конкуренция и т.п.

                                                                                                  про второй совсем не соглашусь, т.к. сравнение не верное в корне. я не предлагаю «складывать так, что бы запомнить», а «запоминать как что сложено».
                                                                                                    0
                                                                                                    Я не хочу чтобы появилась одна универсальная ФС. Я хочу чтобы они все каким-то образом начали поддерживать теги. Можно-же сейчас читать NTFS под Linux и наоборот.
                                                                                                      0
                                                                                                      Теги в HFS+ (Mac OS X) поддерживаются. А работать с файлами без запоминания что где находится поможет quicksilver.
                                                                                                        0
                                                                                                        вы ж серьезный человек, и сами понимаете, что «каким-то образом» зависит от разработчиков, а не все на это будут тратить время.
                                                                                                        под макось тоже можно читать нтфс, но только писать на нтфс с бубнами.
                                                                                                          –1
                                                                                                          Понимаю, и поэтому не кричу «вынь, да положь!!!». Но, я не хочу думать исходя из технических или административных возможностей. Это сильно ограничивает полет мысли.

                                                                                                          Но, при этом я прекрасно понимаю, что если что-то и будет, то оно будет не совсем так как изначально хотелось или планировалось.
                                                                                                          +1
                                                                                                          Зачем все смешивать? Например теги для музыки и кода будут просто мешать друг другу, eg если любители PinkFloyd выпустят одноименный фреймворк. То есть придется организовывать namespaces. Но ведь это уже есть сейчас на уровне приложений!
                                                                                                            –1
                                                                                                            namespaces = поддиректории — иерархия
                                                                                                              +1
                                                                                                              А вы не хотите попробовать перестать отстаивать слово иерархия и подумать чем она плоха и как без нее. Взгляните на проблему под другим углом.
                                                                                                      0
                                                                                                      Необходимы также системы для автоматического перевода между системами тэгов и иерархией.
                                                                                                      Например, Разложить музыку в иерархии по шаблону «%Artist%/%Year% — %Album%/%TrackNo% — %Title%»
                                                                                                      Также подписать тэги, предположив логику иерархии по шаблону…
                                                                                                        0
                                                                                                        подключите это носитель информации к любой другой системе и получите кашу их файлов, в которых невозможно разобраться.

                                                                                                        А почему бы на других системах тегам не выглядеть как иерархическая структура со связями многие к многим на базе тупых симлинков? Как обходной вариант.
                                                                                                        +2
                                                                                                        Иногда ты просто забываешь как называется документ/песня/фильм. Помнишь просто какой-то отрывок. Вот в таких случаях, зайти в папку и посмотреть весь список произведений – очень помогает. Так что отказываться от «ирархических БД», в пользу «плоских-тегированных» я бы не стал.
                                                                                                        Идеальный вариант это совмещать оба эти варинта и именно по этому пути сейчас активно идет развитие.
                                                                                                          0
                                                                                                          В тэгированной системе вы бы сделали соответствующую выборку и просмотрели бы ее.
                                                                                                            +1
                                                                                                            Какую выборку? Из всей музыки на компьютере? Из всех фильмов? Думаю это не самый лучший вариант, по сравнению с грамотно организированной системой папок.
                                                                                                              0
                                                                                                              Нет. Зачем из всей музыки. Я бы сделал поиск из всей меланхоличной музыки английских исполнителей записанной после 2000 года. Думаю в этой выборке я бы быстро нашел Radiohead Nude 2007
                                                                                                                0
                                                                                                                «Вся меланхоличная музыка» — откуда берётся?
                                                                                                                  0
                                                                                                                  музыка — тег
                                                                                                                  меланхолия — тег

                                                                                                                  оба свойства могут назначаться как автоматом(на основе анализа звука, на основе отзывов о дорожек в интернете) так и рукам

                                                                                                                    0
                                                                                                                    Нет-нет, имеется ввиду — откуда берётся музыка для разбора по тегам? Из «все музыки».

                                                                                                                    Т.е. вы от «всей музыки» уйти не сможете. Выборка по тегам «меланхолия» по-любому будет происходить из абсолютно всей музыки. А если учесть, что музыка — это тег, то — абсолютно из всей информации, имеющейся на диске.

                                                                                                                    Дороговато, я предпочту иерархию — гораздо, на порядки дешевле.
                                                                                                                      0
                                                                                                                      Так ведь индексация на то и нужна, чтобы ускорить процесс фильтрации по тегам. Более того, фильтрующие запросы могут быть произвольной сложности, в том числе и по дате создания файла, дате выпуска альбома, ритму, возрасту клавишника и так далее. Поиск по всему диску будет проходить за миллисекунды. А вот обход дерева — это по-настоящему дорогая операция.
                                                                                                                        0
                                                                                                                        Смотря какого дерева ;)

                                                                                                                        Если дерево устроено систематически — не дорогая. Пример — иерархические БД (про них на хабре мало знают, но все пользуются — например, MS Active Directory)
                                                                                                                0
                                                                                                                Выборку, соответствующую логике той папке в которую вы бы зашли. Ведь «зайти в папку» это есть частный случай выборки (по той логике, которую вы назначили папке)
                                                                                                                  +1
                                                                                                                  Да. Но фишка иерархической структуры, в том что ты всегда имеешь достаточно ограниченное множество тегов в конкретный момент из которого можешь выбирать. В чисто теговой организации, ты должен выбирать из всего множества тегов всегда. Что зачастую сильно усложняет выборку.
                                                                                                                  Конечно, вы можете последовательно, спускаться вниз набирая разные варианты того что вам приходит в голову. Но по сути это будет менее удобно чем обычный файловый менеджер.
                                                                                                                    0
                                                                                                                    Это уже вопрос реализации
                                                                                                                      0
                                                                                                                      Я смотрю на реализацию которая разрабатывается сейчас.
                                                                                                                      Вобщем так или иначе не могу сказать что теговая идеальна всегда. Можно придумать 10 мест где она плохо применима. Поэтому будущее за комбинированием теговых и иерархических структур.
                                                                                                                  0
                                                                                                                  а чего вас так пугает поиск по всему? индексы давно придуманы, не бойтесь!

                                                                                                                  зато с папками вы постоянно рискуете забыть, в какую папку чего положили, и оно может там лежать годами, забытое, неиспользуемое…
                                                                                                                    +2
                                                                                                                    Теги не избавят вас от проблемы «забывчивости». Они лишь переведут ее в иную плоскость. =)
                                                                                                                      0
                                                                                                                      я так понял, что вы ратуете за преимущество человеческого поиска — увидел папку «Видео» — ага, значит все видео тут, заходим в неё, и просматриваем уже подпапки…

                                                                                                                      а то, что некто (допустим, другой пользователь или пьяный пользователь :) ) положил какое-то видео в папу Фотки, система не учитывает. И в таком случае результат человеческого просмотра (=поиск не машинными средствами) будет не полным.

                                                                                                                      с тегами, особенно автоматически расставляемым, такого можно избежать. причем это не потребует от пользователя вообще никаких усилий — ему не надо будет думать, в какую папочку сохранить файл, как назвать подпапку, чтобы через полгода по имени папки можно было понять, что в ней лежит и т.п.

                                                                                                                        +1
                                                                                                                        Ну во-первых если вводить автоматическую систему проставления тегов, то кто вам мешает сделать автоматическую систему создание директорий и поддиректорий?
                                                                                                                        Во-вторых, если система все таки не автоматическая, то опять же проблема «другого пъяного пользователя» никуда не денется. Если я протегировал (назвал папку) «Хорошая музыка», то не факто что для кого-то другого, она будет являться хорошей (даже не факт, что для пъяного меня она будет являеться хорошей =) ). И это, как раз то, что я имел ввиду когда говорил что проблема «забывчивости» неистребима.
                                                                                                                          0
                                                                                                                          > Ну во-первых если вводить автоматическую систему проставления тегов, то кто вам мешает сделать автоматическую систему создание директорий и поддиректорий?

                                                                                                                            0
                                                                                                                            Автоматическая система как раз ключевой момент. Заставив ее работать хорошо человечество победит необходимость в иерархическом хранении информации.
                                                                                                                              +2
                                                                                                                              Вот мы и нашли корень проблем. Дело вовсе не файловой системе ориентированной на теги. А в автоматирзированных средствах католагизации инорфмации. А уж какую к этому систему навигации прикрутить: иерархическую или теговую, не так и принципиально. ;)
                                                                                                                        0
                                                                                                                        Подумайте: пути типа "/home/merlin/clients/base" — это же теги! Опа, оказывается, теги можно забыть, да?
                                                                                                                          0
                                                                                                                          это не теги.

                                                                                                                          /storage/base.db[merlin, clients, 2008, archive] — вот это теги
                                                                                                                            –1
                                                                                                                            Почему это не теги? Почему вы разделяете теги запятыми, но не слешами? В чём разница?
                                                                                                                              0
                                                                                                                              разница в том, что в иерархии (которой является система папок), у объекта может быть только один родитель.
                                                                                                                              А с тегами это не так.

                                                                                                                              И я могу написать
                                                                                                                              /storage/base.db[merlin, clients, 2008, archive]

                                                                                                                              а потом, если базой пользуется еще и arthur, я могу добавить тег

                                                                                                                              /storage/base.db[merlin, arthur, clients, 2008, archive]

                                                                                                                              но если у меня

                                                                                                                              /home/merlin/clients/base,

                                                                                                                              то мне придется сделать второй путь

                                                                                                                              /home/arthur/clients/base

                                                                                                                              видите? clients повторяется 2 раза. А если в системе есть излишнее дублирование, значит она не вполне эффективна.

                                                                                                                                0
                                                                                                                                Вы описали разные объекты, естественно, что они описываются разными тегами.
                                                                                                                                  0
                                                                                                                                  какой-такой разный объект? у нас же hardlink'и на одну и ту же базу

                                                                                                                                  и, простите, тег — это слово или фраза. в этом смысле, если в пути к файлу есть /clients/, то это один и тот же 'clients'.

                                                                                                                                  В противном случае путь — никакие не теги в принципе. Теги — это способ описания смысла содержимого!
                                                                                                                                    0
                                                                                                                                    А что, /home/merlin/clients/base — это не описание содержимого? Это клиент base пользователя merlin (я просто прочитал теги в другом порядке, в том, который мне был удобен в данный момент).

                                                                                                                                    Или как я про фильмы писал, режиссёр/год/название — это не описание содержимого? Это фильм название режиссёра, вышедший в году.

                                                                                                                                    Зато, в отличие от вас, я могу обеспечить однозначность объектов: Михалков/2009/фильм и Захаров/2009/фильм — разные фильмы, несмотря на то, что оба 2009 и оба — фильм. Но они похожи: они оба — 2009.

                                                                                                                                    Одними же тегами идентифицировать объект не удастся. Должен быть «primary key».
                                                                                                                                      0
                                                                                                                                      Если вы будете видеть теги home, merlin, clients, base а программа будет обращаться к
                                                                                                                                      getDataByTags([home, merlin, clients, base]);, то вы попадете в одно и тоже место.
                                                                                                                                      Primary Key несколько надуманная проблема.
                                                                                                                                        0
                                                                                                                                        Отнюдь не надуманная. Очень важно, что когда бы я ни написал "/home/merlin/clients/base", я получил бы доступ к одному и тому же объекту, независимо от того, какие ещё объекты добавились или исчезли из системы.
                                                                                                                                          0
                                                                                                                                          Для объектов, которые должны быть по своей сути уникальными, а таковые будут только на системном уровне (вряд-ли PK будет интересен пользователю), могут иметь уникальные теги.
                                                                                                                • UFO just landed and posted this here
                                                                                                                    +3
                                                                                                                    Уныло это потому что на фотографиях могут быть теги «Жена» и «Сын», и если я хочу иметь эти подборки отдельно, то Фото\Анапа\2008 мне ничем не поможет. И мозг мой в этом не виноват.
                                                                                                                      +1
                                                                                                                      iPhoto вам в помощь :)
                                                                                                                      • UFO just landed and posted this here
                                                                                                                        0
                                                                                                                        > Замените «Спсособ» на «Способ» в обоих пунктах.
                                                                                                                        Спасибо Ж)
                                                                                                                          0
                                                                                                                          Автор не полностью переложил в статью то, что было написано в книге по проектированию интерфейсов Алана Купера.

                                                                                                                          Там как раз говорится о том, что вы сказали. Типа мозга не хватает, чтобы создать иерархическую структуру. При этом там приведено несколько способов, которые позволят избежать ее и сделать в сто раз удобней для людей. Именно для обычных конечных простых пользователей, которые не являются инженерами и компьютерными специалистами. Которые не знают, что такое папка, иерархия. Прочитаете, поймете о чем говорил автор этого поста.

                                                                                                                          Кстати, в той же книге и написано, откуда появились папки, рабочий стол и зачем это было нужно и почему тогда (несколько десятков лет назад) не было возможности сделать иначе.
                                                                                                                          • UFO just landed and posted this here
                                                                                                                          +1
                                                                                                                          Ну, вам надо смотреть в сторону Джефа Раскина и его ZoomWorld:

                                                                                                                          Ссылка на соответствующую главу книги «Интерфейс».

                                                                                                                          К слову, EXT2 и EXT3, как и многие другие хорошие ФС, позволяют ссылаться на один inode нескольким «файлам». Простой механизм ссылок. Не теги, но уже что-то. И совсем не убогие ярлыки из Win, которые вы так не любите.

                                                                                                                          Вообще, идеи есть в этом направлении и они вполне реализуемы, как в виде прослойки между пользователем и базовой ОС, так и в виде самостоятельной системы. Например, поиск новых метафор для пользователя. Почему обязательно рабочий стол? Почему картотека (папки)? Почему дискретные файлы, а не пространство данных? Все это необходимо пересмотреть. А еще важно, чтобы пользователь никогда не думал о такой штуке, как тип файла. Система должна сортировать поступающую информацию по группе признаков и привязывать к соответствующему ПО, в котором и будут организованы данные того или иного типа.
                                                                                                                            0
                                                                                                                            В Win тоже есть symbolic links. Их непопулярность как бы говорит о том, что обычному пользователю они не нужны.
                                                                                                                              0
                                                                                                                              может просто ими пользоваться неудобно? Кстати, link-файлами все пользуются, потому что их использование просто, понятно и всегда под рукой.

                                                                                                                              а с-линки в эксплорере до сих пор делать нечем.
                                                                                                                                0
                                                                                                                                Товарищ говорил как раз не о симлинках, а о хард-линках. Это не ссылка на файл, это равнозначный элемент файловой системы, ссылающийся на ту же самую область диска, что и оригинал. Т.е. обращение с этим файлом идёт так же, как и с оригиналом, он имеет тот же размер, его можно открыть на чтение/запись и так далее. Просто как бы клон оригинала, но без дублирования на диске. Грубо говоря — один и тот же файл, доступный из разных мест.
                                                                                                                                  0
                                                                                                                                  Поддержка хардлинков на NTFS появилась даже раньше, чем симлинков (хардлинки — ещё в NT4, симлинки — с Win2k). А используются они под Windows слабо во многом из-за того, что в дефолтовом виндовом интерфейсе (в частности в файловом менеджере Explorer) нет удобных, понятных и доступных средств для их создания и работы с ними.
                                                                                                                              –3
                                                                                                                              >
                                                                                                                              Удивительно, казалось-бы, после перехода на такую «враждебную к пользователю» операционную систему, как Линукс я осознал насколько легко и просто жить без необходимости раскладывать все по папкам. Музыка и видео у меня скачиваются в одно место, а интерфейсом служит UPnP AV сервер, который сам определяет теги для контента: тегирует исполнителями, альбомами, жанрами, годами и т.д. песни; видео — актерами и режиссерами плюс сериалы — сезонами и сериями. Я даже честно не знаю что и как у меня в этой папке, которая названа media происходит.
                                                                                                                              >
                                                                                                                              простите, Вы когда-нибудь запускали wmp?

                                                                                                                              >
                                                                                                                              Программы в Линуксе тоже ставятся так, что я даже не подозреваю о том, что файловая система есть и что она как-то устроена.
                                                                                                                              >
                                                                                                                              ставили программу под Windows инсталлятором?

                                                                                                                              или Вы не с Windows перешли во «враждебную систему»?
                                                                                                                                +4
                                                                                                                                > простите, Вы когда-нибудь запускали wmp
                                                                                                                                Да
                                                                                                                                > ставили программу под Windows инсталлятором?
                                                                                                                                Ставил. Yes|No|I Accept->Choose Location->Next->Next->Next->Reboot?
                                                                                                                                VS
                                                                                                                                apt-get install
                                                                                                                                  –2
                                                                                                                                  что здесь кроме Choose Location относится к ФС?
                                                                                                                                    +3
                                                                                                                                    А я пока не знаю зачем мне задали те вопросы.
                                                                                                                                      0
                                                                                                                                      да затем что разница между apt-get install и Accept-next-next-next-reboot только в количестве щелчков мыши. путь установки вам по умолчанию предлагают, менять его совсем не обязятельно. поэтому разницу в установке программ никак нельзя приплетать к сравнению ФС
                                                                                                                                        0
                                                                                                                                        Я ФС нигде не сравнивал, это <~aubt> начал.
                                                                                                                                      +2
                                                                                                                                      >что здесь кроме Choose Location относится к ФС?

                                                                                                                                      Вы пропустили несколько пунктов ;)

                                                                                                                                      Пойти на сайт автора программы, скачать файл инсталлятора, сохранив его в какой-нибудь каталог на жёстком диске, потом открыть этот каталог в любимом файл-менеджере и запустить файл инсталлятора.
                                                                                                                                      Все эти вещи давно уже стали настолько привычными и «естественными» (да-да, в кавычках), что попросту не замечаются.

                                                                                                                                      В случае Linux файловая система не задействована вообще: тыкнуть в меню «Установка программ», выбрать программу, нажать «Установить». Понятия не имея (и не желая иметь об этом понятие), куда она установилась и из каких файлов состоит.
                                                                                                                                      0
                                                                                                                                      >Да
                                                                                                                                      ну так вот, процитированный мной абзац в точности описывает wmp.

                                                                                                                                      >Ставил. Yes|No|I Accept->Choose Location->Next->Next->Next->Reboot?
                                                                                                                                      еще пару раз cancel забыли :)
                                                                                                                                      три щелчка мыши и программа установлена, впрочем это Выше уже написали.

                                                                                                                                      >А я пока не знаю зачем мне задали те вопросы.
                                                                                                                                      затем, чтобы показать Вам, что приведенные Вами примеры иллюстрируют, простите, хуй знает что. в «невраждебной» системе все точно также, как Вы описали, а каким образом это все относится к файловой системе вообще сложно представить.
                                                                                                                                        +1
                                                                                                                                        В какой строке текста я вообще коснулся системы отличной от Линукса, а уж тем более стал что-то с чем-то сравнивать.
                                                                                                                                          0
                                                                                                                                          > Удивительно, казалось-бы, после перехода на такую «враждебную к пользователю» операционную систему, как Линукс я осознал

                                                                                                                                          быть может я не правильно Вас понял? в любом случае, не очень хочется переходить в linux-vs-win, тем более, что противником первого я не являюсь.
                                                                                                                                          0
                                                                                                                                          Проблема в том, что в винде инсталлятор ещё нужно где-то найти. Мне нужен, например, gimp, или apache, или amarok или ещё что. Я пишу apt-get install [name] и всё. Или же графическим путём — через установку/удаление программ, всё, что нужно — поставить галочки рядом с нужными программами. Мне не нужно искать в сети сайт производителя, искать там где скачать дистрибутив (далеко не все сайты логичны), качать, запускать, кликать по кнопкам. Я лично очень хорошо ощутил эту разницу, когда перешёл на линукс.
                                                                                                                                      +6
                                                                                                                                      Поздравляю, вы только что описали Nepomuk :)
                                                                                                                                        0
                                                                                                                                        Я был бы очень рад, если бы я описал следющую версию NTFS или EXT5
                                                                                                                                          +1
                                                                                                                                          Да, кстати. Разработчики Nepomuk'а, по-моему, пытаются двигаться как раз в описанном автором направлении.
                                                                                                                                          0
                                                                                                                                          Согласен полностью. С тех пор как начал пользоваться M2 (почтовый клиент) проникся всякими ярлыками и тегами к каше информации. Потом гугл в своей почте делал аналогичные подвижки. Объемы информации уже не те, что были раньше, в голове уже всего не удержать, и никаких папок не хватает. Слишком многопараметрично всё чтобы различать всё лишь в одной плоскости иерархии.

                                                                                                                                          Причем, переход-то несложен. На существующую иерархию надо сделать оболочку, которая будет всё представлять кашей с тегами. Потом останется только отвыкнуть от папок и постепенно про них забыть как мы забыли про многие другие дедеовские методы и решения.

                                                                                                                                          Так хотелось WinFS.

                                                                                                                                          P.S. Меня только смущает четкость всех этих тегов, будут определенные проблемы по первости.
                                                                                                                                          • UFO just landed and posted this here
                                                                                                                                              0
                                                                                                                                              Тогда вы не сможете передавать информацию с тегами в другие системы. :(
                                                                                                                                                0
                                                                                                                                                Верно. В принципе, то же самое происходит и при взаимодействии несовместимых ФС — часть информации теряется: потоки NTFS при копировании на extX, права доступа при копировании на FAT32 и тому подобное.

                                                                                                                                                Что поделать… В тех других системах нет средств выражения того, что если в этой, на то они и другие. Если будет две тегированных системы, которые несовместимы, то информация о тегах будет с необходимостью теряться. Если совместимы — нет ничего сложного в том, чтобы сохранить эту информацию.

                                                                                                                                                Кстати, POSIX-совместимые поддерживают расширенные атрибуты — setfattr, getfattr и пр. Вот вам и механизм хранения тегов; при копировании они тоже копируются с файлом, теряться не будут. Осталось сделать механизм индексирования и интерфейс.
                                                                                                                                                  +2
                                                                                                                                                  man mount:
                                                                                                                                                  Mount options for ext3

                                                                                                                                                  user_xattr
                                                                                                                                                  Enable Extended User Attributes. See the attr(5) manual page.

                                                                                                                                              +1
                                                                                                                                              Поддержка «тегов» со стороны файловой системы есть и называется «жёсткие ссылки» (хардлинки). И лично я ими довольно часто пользуюсь для этой цели. Вот, хорошо бы была поддержка со стороны DE/объектной среды использования хардлинков для каталогизации. Только к сожалению, DE пошли по пути популяризации, максимум, что придумали — это Nepomuk и Zeitgeist. Только плохо, что метаданные хранятся во внешних хранилищах а не рядом с описываемыми данными.
                                                                                                                                                0
                                                                                                                                                в Win ксо жалению до сих пор нет интуитивного способа создавать и использовать хардлинки. ну либо по крайней мере он мне не известен
                                                                                                                                                  0
                                                                                                                                                  FAR Manager?
                                                                                                                                                    +1
                                                                                                                                                    Если вы про GUI, то его нет и в юниксе (хотелось бы в диалогах сохранения файлов выделить несколько каталогов, к которому прилинковывается файл).
                                                                                                                                                      0
                                                                                                                                                      Да, забыл дописать, в cygwin (и, наверное, в MSYS), создание линков такое же, как в юникасах — «ln {src} {dest}».
                                                                                                                                                    0
                                                                                                                                                    Ну, не могу согласиться с Вами. Жесткие ссылки абсолютно ни как не отвечают принципам тэггирования, предлагаемого автором топика. Они всего лишь позволяют обойти ограничения строгой иерархичности файловой системы, не более того. Использование тэгов подразумевает некую каталогизацию, категоризацию данных, не зависящую от фактического местонахождения файла. Причем поддержа тэггирования должна осуществляться на уровне файловой системы, а OS и DE должны лишь использовать интерфейсы этой файловой системы для поиска и быстрого доступа к нужным данным.
                                                                                                                                                      +1
                                                                                                                                                      Начнём с того, что любая файловая система реализует 2 вещи: (1) собственно абстракцию-объединение данных раскиданных на диске, называемую файлом и (2) каталогизацию этой информации в удобном для пользователя виде.

                                                                                                                                                      В общем-то, каталогизация информации для файловой системы, по большому счёту, не обязательна. Она введена, по сути, только для реализации концепции удаления/отлинковки файлов и освобождения физического места под них (в некоторых FS — ещё и для хранения некоторой метаинформации о файлах). Так что любая группировка файлов определённого типа в каталоги — это задача теггирования. В противном случае можно было бы скинуть все файлы в один каталог, предварительно позаботившись об эффективном индексе. К примеру, я знаю, что «тег» "/bin/sh" определяет файл-программу активной командной оболочки по умолчанию, а «тег» "/bin/cat" — файл-программу дубликации и объединения содержимого дескрипторов. Мне совсем необязательно знать, специальные ли эти файлы, или те же, что и у файла "/bin/busybox". Или, может, там определяется, что реальный файл определяется другой записью в каталоге. Вся логика работы с информацией определяется этими метками, которые записаны в стартовых скриптах и бинарных программах, причём реальное соответствие меток можно менять в процессе работы системы.

                                                                                                                                                      Соответственно, линки из каталогов на индексные блоки файлов (или на индекс первого блока файла в таблице их размещения) — это и есть поддержка теггирования на уровне файловой системы. Смысл каталожных записей-тегов в любом случае определяется внешним образом (например, где линкуются файлы, принадлежащие тому или иному пользователю).

                                                                                                                                                      К примеру, ничто, кроме ограничений FS, не мешает использовать в качестве имён каталожных записей конкатенацию RDFовских URI (например, процент-кодированных) для субъекта и предиката, а в качестве прилинкованного файла — файл специального синтаксиса (типа), который определит объект отношения, отличный от простого бинарного файла. Другое дело, что смысла так делать нет, поскольку с тегами надо как-то работать, как-то организовывать составные ключи для поисков и т.п. — т.е. полноценную базу знаний лучше делать с помощью специализированных средств.

                                                                                                                                                      Но во всяком случае, лично для меня вполне хватает сделать для определённых файлов изображений ссылки в каталогах ".../кто изображён", ".../год фотографирования" и ".../описание поездки".
                                                                                                                                                      0
                                                                                                                                                      Ага, а потом попробуйте удалить какой-нибудь файл с десятком хардлинков, или скопировать его, сохранив все тэги. Это понятно, что find может найти все файлы, с одинаковым inode, но это совсем не интуитивно.

                                                                                                                                                      Хардлинки и теги — разные вещи.
                                                                                                                                                        0
                                                                                                                                                        Для этого хардлинки и созданы, что бы отлинковывание от одного каталога не повлекло пропажи файлов. Если надо удалить файл — достаточно «убрать все теги» в соответствующем интерфейсе.

                                                                                                                                                        Для копирования, действительно, надо использовать спецкоманду (rsync). Но ведь, что бы правильно скопировались обычные метаданные файлов так, как вам надо, необходимо тоже использовать соответствующую программу и соответствующий её ключ.

                                                                                                                                                        > Это понятно, что find может найти все файлы, с одинаковым inode, но это совсем не интуитивно.

                                                                                                                                                        В принципе, это единственное разумное зерно, о котором заставил задуматься NickMitin: где/как хранить индекс обратных ссылок по инодам. Единственная сложность здесь — производительность, т.к. такой индекс необходимо будет обновлять для каждого действия с каталогом. Т.е. по хорошему эту задачу надо отдать СУБД. Необходимо только договориться разработчикам интерфейсов с теггированием, о том, как искать соответствующие файлы этой СУБД в корневом каталоге тома.
                                                                                                                                                        Тогда придётся подключать том через FUSE или использовать файлы-трансляторы в стиле HURD.

                                                                                                                                                        Но, в принципе, можно реализовать и внутри файловой системы extX, только смысл? Даже с ресурсными форками MacOSX есть огромная проблема, связанная с тем, что они тихо пропадают при копировании на файловую систему, не поддерживающую данную фичу. С тегами будет ещё сложнее.

                                                                                                                                                        Поэтому технологически проще использовать иерархии каталогов + хардлинки в качестве НОМ различных систем теггирования + локальные базы обратных ссылок на файлы, обновляемые при
                                                                                                                                                        монтировании и других дисковых операциях.
                                                                                                                                                      0
                                                                                                                                                      есть же Gnome-related проект, который это реализует.
                                                                                                                                                      А совсем отказаться от иерархии не получится так легко и просто. Можно только обернуть всё ещё одни уровнем абстракции
                                                                                                                                                        +2
                                                                                                                                                        ВНЕЗАПНО: ln -s

                                                                                                                                                        Напишите скрипт, который даст вам приятный интерфейс, и будут вам тэги. По крайней мере у меня именно так )
                                                                                                                                                          –1
                                                                                                                                                          Теги можно реализовать чуть более чем 100500 способами. Хочется чтобы они были в ФС как данность.
                                                                                                                                                            0
                                                                                                                                                            Ну, можно промоделировать на fuse. Но как вы представляете себе интерфейс доступа к ним?
                                                                                                                                                              –1
                                                                                                                                                              Не могли бы вы задать вопрос конкренто, а то я боюсь неверно понять и не так ответить.
                                                                                                                                                                +1
                                                                                                                                                                Гражданин Пупкин имеет ввиду, что на fuse можно реализовать ФС вашей мечты и она будет хорошо работать в *nix системах в юзерспейсе, причем вам не понадобится знание архитектуры ядра ОС, и будет достаточно прочтения мануала по fuse и знаний в области построения ФС.
                                                                                                                                                                0
                                                                                                                                                                www.tagsistant.net/ посмотрите.

                                                                                                                                                                Я ставил. Это почти оно. Вот бы ещё надёжно работало…
                                                                                                                                                                  –1
                                                                                                                                                                  Спасибо, посмотрю
                                                                                                                                                              0
                                                                                                                                                              +1
                                                                                                                                                              Хм :)
                                                                                                                                                              в области хемо и биоинформаткии сейчас очень большая проблема с семантикой, которая должна использоваться для описания любых если не всех биологических и химических процессов. Из огромного стэека бесполезной/полубесполезной информации с ее помощью структурируют инфорамцию. Думаю, что от древа тэгов никуда не денешся.
                                                                                                                                                                +2
                                                                                                                                                                А в мире инженеров реализация всегда превалирует над интерфейсом.
                                                                                                                                                                Вот и с файловой системой так.
                                                                                                                                                                Да-да, те же самые стеллажи (диски) с коробками и ящиками (папки), в которых хранятся перфокарты (файлы).

                                                                                                                                                                Вообще-то стеллажи, папки и т.п. появились задолго до инженеров. Подобная структура хранения очень естественная для человека. Возьмите в пример библиотеки, появившиеся задолго до открытия электричества, не говоря о изобретении компьютеров.

                                                                                                                                                                Меня волнует вопрос зачем переносить принцип устройства файловой системы в интерфейс работы с ней?
                                                                                                                                                                Принцип устройства файловой системы вобщем-то повторяет интерфейс хранения данных до изобретения файловых систем.

                                                                                                                                                                Меня папки очень часто ставят в тупик. В какую папку положить рабочий документ, техническое задание...
                                                                                                                                                                Это означает лишь что вы не можете продумать хорошую иерархическую структуру.

                                                                                                                                                                А если подняться на еще уровень выше, то какую ценность как единица информации несет папка? А никакой! Это просто тег, причем тег со связью один-к-одному то есть на одну единицу нормального контента можно назначить только один тег...
                                                                                                                                                                Неправда, это не тег, а элемент иерархии. Опять же для вас папка не несет никакой информации, если не можете сделать нормальную иерархическую структуру.

                                                                                                                                                                Вкладывать теги друг в друга. Тогда мы получаем унылый беспомощный иерархический рубрикатор.
                                                                                                                                                                Вот уж где трабла для мозга это нелинейная иерархия.

                                                                                                                                                                Использовать ярлыки в других папках. Извините, занятие для извращенцев.
                                                                                                                                                                Между прочим Линукс, который вы хвалите ниже, изобилует линками.

                                                                                                                                                                … я осознал насколько легко и просто жить без необходимости раскладывать все по папкам.
                                                                                                                                                                Музыка и видео у меня скачиваются в одно место, а интерфейсом служит UPnP AV сервер, который сам определяет теги для контента:… Я даже честно не знаю что и как у меня в этой папке, которая названа media происходит.

                                                                                                                                                                Лично я как-то привык знать где и что у меня лежит. Терпеть не могу если софт начинает решать за меня где что и как хранить. В рамках разумного, конечно, как, например, линуксовые соглашения о структуре rootfs.

                                                                                                                                                                Увы, приходится сталкиваться с папками и файлами, когда работаешь с документами, потому что отсутствие механизма тегирования на уровне ФС, лишает меня возможности положить все в одну папку и забыть про ее устройство.
                                                                                                                                                                И получаете «кашу» из тегов. Да, возможно, я не способен произвести нормальное тегирование, поэтому для меня это «каша».

                                                                                                                                                                Естественно, при системе тегирования навигацией по контенту становится поиск, а основным представлением — его результаты.
                                                                                                                                                                Поиск зависит от реализации. Поиск не гарантирует что вы не найдете лишнего или что не пропустите что-то нужное. Отчатси поэтому и важно знать самому что где лежит.

                                                                                                                                                                Тем кому отказ от папок кажется чем-то немыслимым и ужасным, подумайте над тем, что вы, скорее всего пользуетесь поискоориентированной файловой системой каждый день. Это Гугл. :)
                                                                                                                                                                Если бы была возможность построить нормальную иерархию для всего контента, по которому ищет Гугл, при этом иерархию приемлимую для всех людей (ведь каждый построил бы по-своему), то поиск был бы на порядок быстрее и качественнее.
                                                                                                                                                                  0
                                                                                                                                                                  ППКС! Об этом же я писал чуть выше :)
                                                                                                                                                                    –1
                                                                                                                                                                    > Это означает лишь что вы не можете продумать хорошую иерархическую структуру.
                                                                                                                                                                      0
                                                                                                                                                                      > Это означает лишь что вы не можете продумать хорошую иерархическую структуру.
                                                                                                                                                                      Не могу и этого не скрываю. И не понимаю зачем-бы мне это нужно было.
                                                                                                                                                                        0
                                                                                                                                                                        Затем, чтобы структурировать данные. Иерархическая структура исконно используется природой для упорядочивания, вы чем-то хуже остальной природы?
                                                                                                                                                                          0
                                                                                                                                                                          Я хочу иметь дополнительные аттрибуты у данных, которые позволять объединять их в логические блоки. Иерархическая файловая система мне в этом не помогает, а мешает.
                                                                                                                                                                            0
                                                                                                                                                                            Хорошо у вас есть фильм. Район №9. Какую иерархию вы выстроите?

                                                                                                                                                                            Фильмы/2009/sci-fi/Райнон №9
                                                                                                                                                                            Фильмы/sci-fi/2009/Райнон №9
                                                                                                                                                                            Фильмы/свежак/Райнон №9
                                                                                                                                                                            Фильмы/от ольги/Райнон №9

                                                                                                                                                                            вы для всех документов можете выстроить однозначную иерархию?
                                                                                                                                                                              0
                                                                                                                                                                              Да, для всех. В данном случае, режиссёр/год/фильм
                                                                                                                                                                                0
                                                                                                                                                                                вы наверное никогда со сложными иерархиями не работали… где не десяток, а тысячи категорий и они не всегда однозначно друг в друга вкладываются.

                                                                                                                                                                                кстати, а как в вашей структуре выбрать все фильмы 2009 года? все равно придется поиск по всем режиссёрам запускать.
                                                                                                                                                                                  0
                                                                                                                                                                                  Так в случае тегов всё равно придётся поиск по всем режиссёрам запускать. Никакого преимущества не получается.

                                                                                                                                                                                  а в случае иерархии — ну, все фильмы 2009 года да, а все фильмы Михалкова — нет.

                                                                                                                                                                                  И не машите на индексы, индексировать упорядоченную информацию — имена файлов в директории — одно, какой бы сложной не была уже имеющаяся схема упорядочивания; индексировать разнородную информацию — са-авсем другое, гораздо сложнее и дороже. Сравните объём метаданных ФС на серверах и объём индекса гуголя, который описывает ту же самую информацию, что эти серверы; сложность устройства ФС и гуголя; надёжность ФС и надёжность гуголя.
                                                                                                                                                                                  0
                                                                                                                                                                                  Ага я прихожу к вам в гости и с чем нить не сильно крепким и предлагаю посмотреть свежий фантастический фильм. Во точно тут на днях про какой-то Район на хабре читал.

                                                                                                                                                                                  Опишите алгоритм поиска в вашей иерархии?
                                                                                                                                                                                    0
                                                                                                                                                                                    Так же, как и в случае тегов — по имени ;)
                                                                                                                                                                                      0
                                                                                                                                                                                      Хорошо, названия не помню, помню что фантастика. И? Как найти его в вашей иерархии?
                                                                                                                                                                                        0
                                                                                                                                                                                        Драйвер файловой системы может поддерживать настраиваемые «динамические теги». Скажем, можно один раз настроить тег «свежак» на

                                                                                                                                                                                        свежак = CreationDate >= Now — (60 days) AND HasTags(«фильм», «музыка»)


                                                                                                                                                                                        и тогда все фильмы и музыка не старше 100 дней будут считаться свежаком.

                                                                                                                                                                                        Останется только выделить все сущности с тегами «фильм», «фантастика» и «свежак».

                                                                                                                                                                                        Кстати, с помощью автотегов можно проставлять и теги «фильм», «музыка» и т.п.
                                                                                                                                                                                        Но тут возникает проблема интернационализации. В US-локали фильмам будет проставляться тег «movie», а в RU — «фильм». И все автотеги, зависящие от этого тега, накроются медным тазом.
                                                                                                                                                                                      0
                                                                                                                                                                                      Кстати. «свежий» — синоним «2009»
                                                                                                                                                                                        0
                                                                                                                                                                                        Ага, особенно в декабре ;)