Ну не совсем. Хотелось бы увидеть полный пример работы с системой, а не только невнятную строку загрузки текста в некий буфер (что это за буфер, кстати? std::string? std::vector<char>? char[MAX_STRING_BUF]?).
Как составлять файл описаний, как его транслировать в бинарное представление, как он связывается с основной программой, как он в основной программе подгружается (если вообще подгружается), и т.п. Хотя бы для С++.
Однако ж, его основное назначение - организация перевода на другие языки, а не управление текстовыми ресурсами.
А как у вас организован перевод на другие языки? Об этом в статье нет никакой конкретики.
И кстати, а для чего вообще нужно "управление текстовыми ресурсами", если не для локализации?
И еще - идентификация по тексту, примененному в исходно коде очень уж зыбкая.
С одной стороны - да. С другой - если в исходном коде поменяли какой-то текст, то и в переводах его тоже, скорее всего, нужно менять.
Первое и самое главное: примеры использования. На простых примерах возможности вашей системы станут гораздо понятнее, чем просто описание "можно вот это, а еще вот это". К тому же примеры подразумевают проход по всему процессу: от написания текста программы и файла описания строк к ней и до сборки и запуска тестового бинаря. Серия постепенно усложняющихся примеров отлично бы проиллюстрировала не только возможности, но и предполагаемый сценарий использования системы.
Ну и второе. Это, конечно, косметика, но хотелось бы более подробное сравнение с современными системами управления строковыми ресурсами. Чем ваша система лучше того же GNU gettext? А то сейчас статья выглядит так: "посмотрел, как реализовано в visual studio, впал в шок, написал своё. С тех пор на другие системы не смотрел".
Обычный эффект. Те, кто ставит плюсы, в комментариях не светятся. Что там писать? "Ура, попробую, наканецта"?
Это как в отзывах на товары. Кому попался брак - те ставят одну звезду и пишут все, что думают о производителе и продавце. А те, у кого все хорошо, и звезды-то ставят неохотно, не то что отзывы подробные писать.
MakerNote в большинстве случаев - это как бы "exif внутри exif", только со своими вендор-специфичными тегами: https://exiv2.org/tags-nikon.html
Поэтому проверить валидность MakerNotes более-менее реально. Если вместо IFD там лежит некий бинарный блоб - это сигнальчик, что что-то там нехорошо.
А вот в thumbnail можно запихать довольно крупный кусок бинарных данных. Там, конечно, в большинстве случаев лежит превьюшка в виде мелкого jpeg, но вместо нее можно положить и скрытые данные (до 64 кб).
Как уже говорил копий достаточно 2 во избежание чрезвычайных случаев
Понятно.
Сэр, давайте по существу:
Технологии Bluray - от силы 25 лет (это если считать первые прототипы). Коммерческие диски появились в 2006 году. Т.е. любые рассказы о том, что носитель проживет 40 лет - это интерполяции, высосанные из пальца, т.е. сказки для бедных. Этим они ни на йоту не отличаются от других сказок для бедных: "MTBF диска HDD - миллион часов", "срок хранения данных на магнитной ленте - 30 лет" и т.п.
Любой носитель может внезапно умереть. Это аксиома, это должно быть очевидно. Поэтому говорить, что HDD мрут, а диски нет - это неправильно.
Мы говорим о домашнем архиве. Для него не нужны рекордные сроки хранения, для него нужно удобство. Пока хозяин жив - он поддерживает архив в актуальном состоянии, хозяин помер - архив уехал на помойку. А по удобству оптические диски проигрывают HDD.
А у меня вот статистика другая. Я, правда, давненько что-то на диски писал, подробности уже выветрились из памяти. Но по воспоминаниям - наверное, половина пишущих приводов сдохла совсем или стала запарывать болванки. И это я не считаю те, что просто померли от старости (рассохлись пассики, загустела смазка и трей перестал выезжать).
Жесткие диски - ну да, тоже мрут. Но их мручесть компенсируется скоростью записи и объемом. То, что на оптические диски придется писать весь день, на жесткие запишется за пару часов. А это значит, что создать нескольких копий архива гораздо проще.
Да вы, батенька, оптимист. Сейчас лень искать, но где-то читал, что максимальная длина царапины на CD - что-то около 25 мм вдоль дорожки. Если длиннее, то алгоритмы восстановления уже не справляются.
Записывать правильно - это, конечно, гениально. Вот перестал у человека читаться диск через пять лет - и как ему поможет знание, что писать надо было правильно? :)
Ну и насчет приводов есть сомнения... Раньше они были везде, буквально в каждом компьютере и в каждом компьютерном магазине. Сейчас это уже этакий винрарный раритет, хотя найти по-прежнему не проблема. Разве что сплошные слим-версии ноутбучные продаются. А вот будут ли они через лет двадцать - хрен его знает.
Домашний сервер в виде обычного ПК в корпусе "мини-тауэр". В один из слотов расширения на лицевой стороне вставлены четырех секционные салазки для SATA дисков 2.5".
Добрый дядя электрик что-то путает на подстанции, и в вашем ПК выгорает блок питания. С собой он уносит все, что воткнуто в компьютер - диски, материнку, мышь, клавиатуру, вебкамеру и т. п. Что останется от бэкапов?
Насчет сгоревшего БП - реальная история, кстати.
Восстановить любой файл любой редакции за последние 30*4=120 дней. Процесс восстановления крайне быстр и лаконичен - просто копирование нужного файла.
А как восстанавливать редакции старше 30 дней? Для интересующихся, но не погруженных.
При этом, в клаудах есть другой очень весомый риск, про который вы "забыли" - это юридический риск.
Ну справедливости ради, автор не особо углублялся в природу рисков и не делил их на категории - просто сказал, что они есть.
А так - по моему скромному опыту, риски облачных сервисов в основном именно юридические или политические. Процентов этак на 99. :) То тарифы повысят, то лимиты изменят, то платежи заблокируют, то доступ закроют, то файлы поудаляют (потому что копирайт). А то и просто закроются, как в свое время закрылся copy.com.
Если через условные 50-70 лет цифровой мир окажется полностью/частично недоступен, дети будут с интересом рассматривать эти бумажки, думая - что с ними делать в реальности).
Пустят на растопку, естественно. У меня сейчас примерно такая же ситуация на даче: от прежних хозяев остались штабеля старых книг, конспектов, рабочих тетрадок, рефератов, писем и т.п. Письма и фотографии мы прежним хозяевам передали, а вот все остальное постепенно загружается в буржуйку. Потому как читать все это никто не будет, а дом протапливать периодически нужно.
На шпинделях диски хранить - ну такое... Если вдруг надо найти какой-то конкретный диск, придется всю стопку разбирать. А еще диски на шпинделе царапаются самым злобным образом: если песчинка между дисками попадает, то царапина будет идти по дуге как раз вдоль дорожек.
У меня были чемоданчики с ячейками, в самый большой штук 180 влезало. В набитом виде это получалась весьма увесистая штукенция. Но зато диски можно было легко найти и они меньше царапались (наверное).
К их плюсам можно отнести:- высокую надежность. Если не попасть на бракованный или поврежденный при транспортировке экземпляр - то можно рассчитывать на 5-10 лет службы в домашнем сценарии использования. В качестве подтверждения можно сослаться на статистику Backblaze, которая публикует данные о надежности для тысяч работающих у нее дисков;
Не все так радужно.
Во-первых, сейчас найти нормальный новый диск - это целый квест. Даже в крупных и уважаемых магазинах уже массово появились перелицованные б/у диски с китайских серверов. Сбрасывается SMART, иногда даже меняется плата контроллера - и вуаля, у нас не полумертвый диск с пробегом в 40 тыщ часов, а нулячий.
Во-вторых, статистика Backblaze - это статистика дисков, постоянно подключенных в стойке. У нас задача немного другая - холодное хранение. А при холодном хранении диск может сдохнуть от причин, которые в серверах и не снились: например, из-за того, что смазка от времени загустела и шпиндель не может раскрутиться.
Плюсы:- высокая надежность. Если брать болванки от нормального производителя, то записанные мной CD-R уже перевалили за 25+ лет хранения без признаков деградации, DVD-R - уже держатся больше 13 лет, также без каких-либо признаков ухудшения качества чтения. BR - пока только 3 года, но с учетом информации о технологии производства - ожидаю результата не хуже, чем у DVD;
Это вам повезло. А у меня за 10 лет некоторые диски уже имеют признаки деградации в виде нечитаемых участков. К тому же деградирует и оборудование: старое уже полудохлое, а новое почти не выпускается.
Для хранения 1 ТБ данных потребуется 250 DVD дисков (9000 руб.), или 40 - BlueRay (4200 руб.). Внешний привод обойдется вам от 3000 руб. (пишущий DVD) до 10000 руб. (BlueRay)
250 дисков - это уже объем, который даже в соседнюю комнату за один раз не вдруг перенесешь. Придется городить под них хранилище. А это - затраты, на которые наш гипотетический пользователь пойтить не могёт.
0,5 МБ на 1 лист А4 -> 1000000 листов А4 с двух сторон на 1ТБ -> 2000 пачек бумаги стоимостью 600 000 рублей + 10 лазерных принтеров за 400000 руб. + десяток сканеров за 50000 руб. 1 комплект бумаги практически гарантированно сохранит ваши данные в течение 40 лет.
Не, ну в качестве курьеза и как способ сохранить самое ценное (пароли, явки, коротенькие личные заметки) - да. В качестве регулярного бэкапа - однозначно нет.
К тому же бумагу может сожрать какой-нибудь короед. Или крысы обгрызут. Или тонер с нее осыплется клочками (бывали-с случаи). В случае обычного текста это не так уж и страшно, можно с лупой попытаться восстановить по остаточным следам. А вот для двумерных кодов это может быть фатально.
Да, не xcopy. Такая команда добавит на внешний диск вновь созданные архивы с данными, при этом уже существующие файлы трогать не будет. Тем самым мы обезопасим себя от ситуации, когда на основном диске файлы архивов повреждены - а наш батник их копирует на внешний диск, тем самым - уничтожая вторую копию.
Тут есть другая грабля. Если файл на внешний диск по каким-то причинам недозаписался, мы его уже никогда не запишем.
Пфф, у нас у мелкого провайдера в серверной постоянно ящики с пивом были. Причем не какие-то б-гомерзкие банки, а православные полторашки. Сисадмины любили после работы приложиться и погонять в какой-нибудь квейк.
Мне не ясно, почему абсолютное значение у нас называют «модулем». В той же англоязычной литературе абсолютное значение так и передается — absolute [value]. Если у кого‑либо из уважаемых читателей есть ответ на то, почему русскоязычный термин «модуль» имеет как минимум два математических значения
Потому что оба произошли от латинского modulus. Математическая терминология у нас во многом заимствована из Западной Европы, а там она латинская.
В ИТ компаниях часто используется гибкий график работы, поэтому учет рабочего времени помогает отслеживать производительность разработчиков, тестировщиков и других специалистов. Особенно если работники « на удаленке».
Охоспаде...
Как говорил мой давний тимлид - "если программист работает хотя бы два часа в день - это очень хороший программист".
А можно списочек IT-контор, в которых внедрена ваша чудесная система DLP? Чтоб не тратить время на собесы.
Проблема самописных скриптов мониторинга - в том, что их тоже надо иногда мониторить. А они дают чувство ложной безопасности и мониторить вроде бы нечего. Но при этом у скриптов нет общего механизма отслеживания статуса - отработал, не отработал, выдает ошибку, не выдает... К тому же что-то могло поменяться вне скрипта, и он - будучи корректным - может перестать делать что-то осмысленное.
К примеру, когда-то давно у нас показания датчиков складировались в текстовые файлы. А скриптик из этих текстовых файлов брал последнюю строчку и при превышении показателей (конкретно- температуры) слал алярмы - мол, сервер перегрелся, срочно спасайте, а я пока его выключаю. Алярмы были редкостью, поэтому никто как-то о скрипте не думал - ну есть и есть, где-то запускается, приглядывает. И вот однажды приходит алярм со странными показаниями. Сервер, понятно, потушен. Смотрим графики мониторинга - да нет, все в норме, до самого конца все графики ровные, никаких аномалий. Открываем чудесный скрипт, начинаем проверять - мама дорогая, у нас эти файлики уже два года в бинарном формате, а скрипт их парсил как текстовые...
Первые тесты G100 в Geekbench показали скромные результаты. В OpenCL чип набрал 15 524 балла ...
И тут же:
Потенциально G100 найдет применение и за пределами гейминга — например, в рендеринге или машинном обучении, особенно если появится поддержка OpenCL или аналогов CUDA.
Так есть у них поддержка OpenCL или нет? Вам статью ИИ писал, штоле?
Ну не совсем. Хотелось бы увидеть полный пример работы с системой, а не только невнятную строку загрузки текста в некий буфер (что это за буфер, кстати? std::string? std::vector<char>? char[MAX_STRING_BUF]?).
Как составлять файл описаний, как его транслировать в бинарное представление, как он связывается с основной программой, как он в основной программе подгружается (если вообще подгружается), и т.п. Хотя бы для С++.
А как у вас организован перевод на другие языки? Об этом в статье нет никакой конкретики.
И кстати, а для чего вообще нужно "управление текстовыми ресурсами", если не для локализации?
С одной стороны - да. С другой - если в исходном коде поменяли какой-то текст, то и в переводах его тоже, скорее всего, нужно менять.
Мне кажется, статье не хватает пары вещей:
Первое и самое главное: примеры использования. На простых примерах возможности вашей системы станут гораздо понятнее, чем просто описание "можно вот это, а еще вот это". К тому же примеры подразумевают проход по всему процессу: от написания текста программы и файла описания строк к ней и до сборки и запуска тестового бинаря. Серия постепенно усложняющихся примеров отлично бы проиллюстрировала не только возможности, но и предполагаемый сценарий использования системы.
Ну и второе. Это, конечно, косметика, но хотелось бы более подробное сравнение с современными системами управления строковыми ресурсами. Чем ваша система лучше того же GNU gettext? А то сейчас статья выглядит так: "посмотрел, как реализовано в visual studio, впал в шок, написал своё. С тех пор на другие системы не смотрел".
О как. Неожиданно.
Обычный эффект. Те, кто ставит плюсы, в комментариях не светятся. Что там писать? "Ура, попробую, наканецта"?
Это как в отзывах на товары. Кому попался брак - те ставят одну звезду и пишут все, что думают о производителе и продавце. А те, у кого все хорошо, и звезды-то ставят неохотно, не то что отзывы подробные писать.
MakerNote в большинстве случаев - это как бы "exif внутри exif", только со своими вендор-специфичными тегами: https://exiv2.org/tags-nikon.html
Поэтому проверить валидность MakerNotes более-менее реально. Если вместо IFD там лежит некий бинарный блоб - это сигнальчик, что что-то там нехорошо.
А вот в thumbnail можно запихать довольно крупный кусок бинарных данных. Там, конечно, в большинстве случаев лежит превьюшка в виде мелкого jpeg, но вместо нее можно положить и скрытые данные (до 64 кб).
Pioneer exits optical disc market after 45 years in business
ASUS Exits Optical Drive Market. PC Optical Drives Are No Longer Being Made
Врут, наверное.
Понятно.
Сэр, давайте по существу:
Технологии Bluray - от силы 25 лет (это если считать первые прототипы). Коммерческие диски появились в 2006 году. Т.е. любые рассказы о том, что носитель проживет 40 лет - это интерполяции, высосанные из пальца, т.е. сказки для бедных. Этим они ни на йоту не отличаются от других сказок для бедных: "MTBF диска HDD - миллион часов", "срок хранения данных на магнитной ленте - 30 лет" и т.п.
Любой носитель может внезапно умереть. Это аксиома, это должно быть очевидно. Поэтому говорить, что HDD мрут, а диски нет - это неправильно.
Мы говорим о домашнем архиве. Для него не нужны рекордные сроки хранения, для него нужно удобство. Пока хозяин жив - он поддерживает архив в актуальном состоянии, хозяин помер - архив уехал на помойку. А по удобству оптические диски проигрывают HDD.
Ну речь-то о хранении личной информации, т.е. для будущего себя. А не для целых поколений потомков.
Хотя да, автор оптимистично замахнулся аж на 40 лет.
А у меня вот статистика другая. Я, правда, давненько что-то на диски писал, подробности уже выветрились из памяти. Но по воспоминаниям - наверное, половина пишущих приводов сдохла совсем или стала запарывать болванки. И это я не считаю те, что просто померли от старости (рассохлись пассики, загустела смазка и трей перестал выезжать).
Жесткие диски - ну да, тоже мрут. Но их мручесть компенсируется скоростью записи и объемом. То, что на оптические диски придется писать весь день, на жесткие запишется за пару часов. А это значит, что создать нескольких копий архива гораздо проще.
Да вы, батенька, оптимист. Сейчас лень искать, но где-то читал, что максимальная длина царапины на CD - что-то около 25 мм вдоль дорожки. Если длиннее, то алгоритмы восстановления уже не справляются.
Записывать правильно - это, конечно, гениально. Вот перестал у человека читаться диск через пять лет - и как ему поможет знание, что писать надо было правильно? :)
Ну и насчет приводов есть сомнения... Раньше они были везде, буквально в каждом компьютере и в каждом компьютерном магазине. Сейчас это уже этакий винрарный раритет, хотя найти по-прежнему не проблема. Разве что сплошные слим-версии ноутбучные продаются. А вот будут ли они через лет двадцать - хрен его знает.
Добрый дядя электрик что-то путает на подстанции, и в вашем ПК выгорает блок питания. С собой он уносит все, что воткнуто в компьютер - диски, материнку, мышь, клавиатуру, вебкамеру и т. п. Что останется от бэкапов?
Насчет сгоревшего БП - реальная история, кстати.
А как восстанавливать редакции старше 30 дней? Для интересующихся, но не погруженных.
Ну справедливости ради, автор не особо углублялся в природу рисков и не делил их на категории - просто сказал, что они есть.
А так - по моему скромному опыту, риски облачных сервисов в основном именно юридические или политические. Процентов этак на 99. :) То тарифы повысят, то лимиты изменят, то платежи заблокируют, то доступ закроют, то файлы поудаляют (потому что копирайт). А то и просто закроются, как в свое время закрылся copy.com.
Пустят на растопку, естественно. У меня сейчас примерно такая же ситуация на даче: от прежних хозяев остались штабеля старых книг, конспектов, рабочих тетрадок, рефератов, писем и т.п. Письма и фотографии мы прежним хозяевам передали, а вот все остальное постепенно загружается в буржуйку. Потому как читать все это никто не будет, а дом протапливать периодически нужно.
На шпинделях диски хранить - ну такое... Если вдруг надо найти какой-то конкретный диск, придется всю стопку разбирать. А еще диски на шпинделе царапаются самым злобным образом: если песчинка между дисками попадает, то царапина будет идти по дуге как раз вдоль дорожек.
У меня были чемоданчики с ячейками, в самый большой штук 180 влезало. В набитом виде это получалась весьма увесистая штукенция. Но зато диски можно было легко найти и они меньше царапались (наверное).
Не все так радужно.
Во-первых, сейчас найти нормальный новый диск - это целый квест. Даже в крупных и уважаемых магазинах уже массово появились перелицованные б/у диски с китайских серверов. Сбрасывается SMART, иногда даже меняется плата контроллера - и вуаля, у нас не полумертвый диск с пробегом в 40 тыщ часов, а нулячий.
Во-вторых, статистика Backblaze - это статистика дисков, постоянно подключенных в стойке. У нас задача немного другая - холодное хранение. А при холодном хранении диск может сдохнуть от причин, которые в серверах и не снились: например, из-за того, что смазка от времени загустела и шпиндель не может раскрутиться.
Это вам повезло. А у меня за 10 лет некоторые диски уже имеют признаки деградации в виде нечитаемых участков. К тому же деградирует и оборудование: старое уже полудохлое, а новое почти не выпускается.
250 дисков - это уже объем, который даже в соседнюю комнату за один раз не вдруг перенесешь. Придется городить под них хранилище. А это - затраты, на которые наш гипотетический пользователь пойтить не могёт.
Не, ну в качестве курьеза и как способ сохранить самое ценное (пароли, явки, коротенькие личные заметки) - да. В качестве регулярного бэкапа - однозначно нет.
К тому же бумагу может сожрать какой-нибудь короед. Или крысы обгрызут. Или тонер с нее осыплется клочками (бывали-с случаи). В случае обычного текста это не так уж и страшно, можно с лупой попытаться восстановить по остаточным следам. А вот для двумерных кодов это может быть фатально.
Тут есть другая грабля. Если файл на внешний диск по каким-то причинам недозаписался, мы его уже никогда не запишем.
Пфф, у нас у мелкого провайдера в серверной постоянно ящики с пивом были. Причем не какие-то б-гомерзкие банки, а православные полторашки. Сисадмины любили после работы приложиться и погонять в какой-нибудь квейк.
Потому что оба произошли от латинского modulus. Математическая терминология у нас во многом заимствована из Западной Европы, а там она латинская.
В английском тоже, кстати, слово modulus иногда используется в значении "абсолютное значение" (см. https://www.merriam-webster.com/dictionary/modulus ).
Охоспаде...
Как говорил мой давний тимлид - "если программист работает хотя бы два часа в день - это очень хороший программист".
А можно списочек IT-контор, в которых внедрена ваша чудесная система DLP? Чтоб не тратить время на собесы.
Проблема самописных скриптов мониторинга - в том, что их тоже надо иногда мониторить. А они дают чувство ложной безопасности и мониторить вроде бы нечего. Но при этом у скриптов нет общего механизма отслеживания статуса - отработал, не отработал, выдает ошибку, не выдает... К тому же что-то могло поменяться вне скрипта, и он - будучи корректным - может перестать делать что-то осмысленное.
К примеру, когда-то давно у нас показания датчиков складировались в текстовые файлы. А скриптик из этих текстовых файлов брал последнюю строчку и при превышении показателей (конкретно- температуры) слал алярмы - мол, сервер перегрелся, срочно спасайте, а я пока его выключаю. Алярмы были редкостью, поэтому никто как-то о скрипте не думал - ну есть и есть, где-то запускается, приглядывает. И вот однажды приходит алярм со странными показаниями. Сервер, понятно, потушен. Смотрим графики мониторинга - да нет, все в норме, до самого конца все графики ровные, никаких аномалий. Открываем чудесный скрипт, начинаем проверять - мама дорогая, у нас эти файлики уже два года в бинарном формате, а скрипт их парсил как текстовые...
И тут же:
Так есть у них поддержка OpenCL или нет? Вам статью ИИ писал, штоле?