Andrey Stolyarov

Андрей Викторович Столяров: сайт автора

Гостевая книга

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

Обратите внимание, что связаться с автором сайта можно также и через страницу обратной связи, которая позволяет отправить автору email.

Более старые комментарии можно посмотреть в архиве гостевой книги.

Учтите, что комментарии на этом сайте премодерируются.


From Сергей (unverified) Mon Jul 15 08:29:02 2024 pencil

Готовим детей

Андрей Викторович, здравствуйте! Прежде всего хочу поблагодарить Вас за труд и те знания, которыми Вы делитесь с людьми, от чего и желаю Вам счастливой жизни и крепкого здоровья! Хочу попросить Вашего совета. Моему сыну 14 лет. Я хочу ему подарить старенький и слабенький (причина очевидная) ноутбук и установить на него Linux. Своей целью я ставлю с одной стороны занять его чем то интересным, с другой - подготовить сына к изучению Ваших книг. Наличия одного ноутбука недостаточно. Необходима литература, доступная к пониманию школьника 7 класса, что бы он не просто сидел и смотрел в дисплей, а с пользой проводил время. Нужна теория и практика. Возможно ему не зайдет эта тема и я не стану заставлять его в дальнейшем. Т.к. Вы преподаватель, и в Ваших словах я нахожу отклик и согласие в своем уме, потому и решил задать подобный вопрос именно Вам и именно здесь, т.к. скорее всего я не один такой родитель, и подобный вопрос хочет задать Вам ещё кто-нибудь. Возможно я чего то не понимаю и мой вопрос, публикуемый в гостевой книге не имеет место быть, тогда я заранее прошу прощения и даю свое согласие на отказ в публикации. Подводя вышесказанное, посоветуйте какую-нибудь книгу или книги к изучению. С уважением, Сергей.

parent From Andrey V. Stolyarov profile Mon Jul 15 08:39:16 2024 pencil

userpic

Re: Готовим детей

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

From гость (unverified) Sun Jul 14 16:43:13 2024 pencil

Выбор рабочей станции в современных реалиях

Андрей Викторович, здравствуйте. Вопрос касаемо приобретения рабочей станции для последующего пользования как основной личной машиной и для самообучения. В контексте сегодняшней техники с повсеместной проприетарщиной и блобами, хотелось бы узнать у вас, что на текущий момент является наиболее оптимальным для покупки. Старых и никому не нужных ноутбуков, к сожалению, нет. Старого ПК, соответственно, тоже. Из того, что сегодня можно купить в магазине, это ноутбуки по дикому оверпрайсу с предустановленными форточками (которая, разумеется, выливается в копеечку при ценообразовании). Из того, что можно собрать самому: процессоры от amd на AM5/AM4 сокете. С материнками тоже нынче бывают подводные. Видюха в общем-то не нужна, встроенная графика вроде бы должна всем устраивать.

Что покупать и из чего выбирать?

parent From Andrey V. Stolyarov profile Sun Jul 14 21:42:58 2024 pencil

userpic

Re: Выбор рабочей станции в современных реалиях

> Старых и никому не нужных ноутбуков, к сожалению, нет. Старого ПК, соответственно, тоже.

Плохо ищете. Ищите лучше.

parent From anonymous (unverified) Sun Jul 14 22:29:33 2024 pencil

Re: Выбор рабочей станции в современных реалиях

Совершенно не мое дело, но не удержался пройти мимо :)

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

В России в любом - от, скажем, 100 тыс. чел. населения - городе всегда продаётся достаточно много старых ноутбуков и компьютеров. У меня к старой с разной степенью винтажности технике есть пристрастие, и я себе уже целую гору вполне рабочего старья купил в пределах 5 т.р - все в среднем двухъядерное до 2 ГГц и до 4 Гб оперативной памяти. Для освоения трёхтомника этого вполне достаточно.

Для жизни под юникс-подобными операционными системами лично мне требуется не меньше 2 ГГц частоты процессора и 4 Гб оперативной памяти. Такое в современной России можно найти за 10-15 т.р без особых проблем.

"Удобнее" всего искать такое, конечно, с помощью т.н. "сайтов объявлений". Если не хотите с таким связываться - как вариант, зайдите в ломбард. Старые ноутбуки всегда там можно найти, лично мне не удавалось поймать момент, когда их там совсем никаких нет в наличии.

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

Демонизировать крупные сети вполне есть за что, но неоспоримого факта всё-таки не отменить - почти всегда у них есть в наличии машины без предустановленных форточек. Иногда даже с предустановленным линуксом.

Это я всё про российскую действительность, конечно. Если вы живёте на западе и у вас нет ни единой из вышеописанных возможностей - ну-с, похоже, не врали: реально загнивает :-D

parent From Parthen (unverified) Mon Jul 15 01:01:39 2024 pencil

Мои 5 копеек

Тоже влезу, тоже непрошенно

Собирать компьютер по ломбардам и авито чревато:

1) Всяческими отвалами комплектующих

2) Несовместимостью всего этого китайского барахла с Линукс системами

Не, это конечно весело и познавательно, мои первые компы так и собирались. Но это развлечение на уровне покупки старого мотоцикла - "день едешь, два чинишь".

По делу - советую ТС оригинальные Thinkpad'ы. Они неубиваемые, часто использовались в офисах (а потому их легко купить "с рук") и в большинстве своем у них заявлена поддержка Линукс-систем, так что проблем с драйверами не будет.

parent From Anonymous (unverified) Mon Jul 15 06:57:15 2024 pencil

Re: Выбор рабочей станции в современных реалиях

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

https://www.raptorcs.com/TALOSII/

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

Но эти ноутбуки уже слегка устарели. Если не обращать внимание на проприетарный BIOS, то выбор становится намного шире, например в Китае можно купить мини-компьютеры в цельнометаллическом корпусе без вентиляторов на базе Intel Core i3-5005U и подобных. Есть даже с COM-портом. При нагрузке корпус нагревается где-то до 50°C.

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

Ещё у меня есть китайская машина на N100, там охлаждение уже не пассивное, хоть и тихое и пока бесшумное, корпус пластиковый, зато поддержка более современных M.2 NVMe SSD, вместо mSATA, правда зато нет поддержки просто SATA. Там мне попался кривой UEFI, который непонятно как выбирает, какую ОС загрузить. Но это не проблема, если нет мультибута и ОС только одна. Ещё одна проблема в том что почему-то лог загрузки линукс не скроллится по Shift-PgUp и не получается посмотреть почему загрузку выбило на этапе initramfs. В итоге я исхитрился и загрузил эту же систему на упомянутой 5005U и там скролл был.

В целом в Китае продаётся полно мини-ПК на любой вкус, от упомянутой цельнометаллической за 10 тысяч вплоть до AMD Ryzen 9 7940HS с 64 гигабайтами оперативки и двумя терабайтами SSD за примерно 80 тысяч.

parent From Andrey V. Stolyarov profile Mon Jul 15 08:47:01 2024 pencil

userpic

Re: Выбор рабочей станции в современных реалиях

Всегда считал паранойю самым важным личным качеством любого компьютерщика, но до такой степени проработки вопроса никогда не доходил.

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

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

parent From Anonymous (unverified) Mon Jul 15 10:24:48 2024 pencil

Re: Re: Выбор рабочей станции в современных реалиях

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

У меня Thinkpad X200 почищен, но там ME регион можно просто удалить полностью и комп стартует. А китайские машины не почищены, но они и не подключены к инету. Если буду подключать, провентилирую тему, как там с чисткой ME и Coreboot. Но они были куплены собственно для экспериментов с новомодным UEFI, поскольку на всех остальных машинах у меня классический BIOS, поэтому я не спешу что-то делать.

parent From Andrey V. Stolyarov profile Mon Jul 15 13:39:36 2024 pencil

userpic

Re: Re: Re: Выбор рабочей станции в современных реалиях

Программатор мало купить, его надо ещё и уметь.

From Thalassa CMS (unverified) Sun Jul 14 14:31:07 2024 pencil

userpic

Установил аватарку для аккаунта. Назвал фотографию по названию идентификатора пользователя, размер юзерпика 68x85. Отлично отображается в предпросмотре комментариев, все хорошо и на странице пользователя (где отображается имя, идентификатор и аватарка). Но вот проблема - при публикации комментария аватарка не показывается по совершенно неясным причинам. Как такое может быть? Предпросмотр же показывает все корректно. Версия Thalassa новая если что, самая новая. Используется шаблон templ_smoky

parent From Andrey V. Stolyarov profile Sun Jul 14 15:02:07 2024 pencil

userpic

Re: userpic

Это уже проще, проблема наверняка в путях к той директории, которая содержит эту вашу аватарку. У генератора (т.е. самой Талассы, в смысле бинарника thalassa) и у CGI-программы совершенно разное виденье путей, поскольку они работают из разных директорий. Пока вы смотрите всякие превьюшки, CGI-программа до вашей аватарки добирается корректно, а когда дело доходит до генерации — thalassa уже со своей колокольни (из той директории, где исходники сайта) директорию с аватарками не видит.

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

parent From Thalassa CMS (unverified) Sun Jul 14 15:45:21 2024 pencil

Re: Re: userpic

Подскажите пожалуйста, какой из 4 путей отвечает(или может отвечать) за корректный просмотр? target, spool, userdbdir или sitesrc? У меня директория с аватарками лежит там же, где и сам сайт(не исходники). Я не могу понять почему все работает кроме одних автарок, по идее некорректные пути должны были мне отрезать хорошую часть возможностей (как это было с другими ошибками раньше)

parent From Andrey V. Stolyarov profile Sun Jul 14 15:52:52 2024 pencil

userpic

Re: Re: Re: userpic

> У меня директория с аватарками лежит там же, где и сам сайт(не исходники).

Ага, тогда дело ровно в этом, под такой вариант Smoky не заточен, как и сама Таласса. Дело в том, что директория, где лежит сайт, предполагается, что существует временно, до следующей полной перегенерации (thalassa gen -r её переименует и на её месте новую сделает). Поэтому, соответственно, НЕ предполагается, что в этой директории будет храниться что-то сколько-нибудь ценное — только результат генерации, который можно перегенерировать в любой момент за несколько секунд.

Попробуйте директорию с аватарками переместить туда, где исходники, и там её обозвать "userpic" (вот ровно так, ни буковкой ни в ту, ни в другую сторону). Таласса при генерации сайта будет эту директорию "публиковать" ровно туда, куда надо (соответствующие директивы есть в base/base.ini), но при этом она ещё и будет видеть лежащие в этой директории юзерпики. thalcgi.cgi будет видеть уже "опубликованную" (читай - скопированную) директорию в вашем веб-пространстве.

parent From Thalassa CMS (unverified) Sun Jul 14 15:59:31 2024 pencil

Потрясающе

Оно сработало! Спасибо!!!

From Student (unverified) Sat Jul 13 21:53:27 2024 pencil

Архитектура ЭВМ на базе RISC-V

Добрый день!

В программе второго семестра ВМК МГУ есть курс архитектуры ЭВМ и языка ассемблера. Есть ли смысл переводить этот курс на базу RISC-V?

В качестве аргумента "за" указывается, что у RISC-V система команд более стройная и логичная, чем у x86. Однако есть риск, что в качестве рабочей среды будет использован эмулятор RARS.

Честно говоря, я не представляю, как можно всерьёз заниматься программированием в эмуляторе. Возможно, его сравнивают с эмулятором MASM, а не с нативной трансляцией через NASM. Но кажется, что полноценная сборка руками через NASM+GCC позволяет гораздо лучше прочувствовать, что происходит, и добавляет какой-то осмысленности, что ли. Сейчас получается, что если я захочу настоящую программу собрать под RISC-V (и эмулятор меня не устраивает), то нужно будет повозиться с QEMU, раздобыть дистрибутив под RISC-V. Как будто просто порог входа повышают для энтузиастов без большого профита (субъективно для меня, по крайней мере).

parent From Andrey V. Stolyarov profile Sat Jul 13 22:05:38 2024 pencil

userpic

Re: Архитектура ЭВМ на базе RISC-V

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

Но я много чего говорил — в частности, о категорической недопустимости Си в первом семестре (в итоге огребли буквально всё, о чём я предупреждал ещё в 2010 году). А ещё о том, что факультет якобы computer science, выпускники которого не имеют понятия о частично рекурсивных функциях — это даже не нонсенс, это преступление.

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

From Parthen (unverified) Sat Jul 13 16:21:02 2024 pencil

Unicode и Си

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

Мой vim (из-за локали ru_RU.UTF-8, так понимаю) сохраняет любой файл на русском в UTF-8. Просто читать и печатать на stdout этот файл получается без проблем, если указать в программе локаль.

Проблемы начинаются, когда символы из этого файла пытаемся хоть как-то обработать. Файл на UTF-8 это бинарник, однако гугл упорно пытается меня убедить что это текст, и обычные функции по-типу strlen должны работать (и они работают, пока файл за ASCII не выходит, т.к. strlen байты считает).

Для подсчета же символов, гугл предлагает мне "mbstowcs", которая по всей видимости есть только в C++, причем только в новомодном, т.к. там wchar_t

Я близок к тому, чтобы начать вручную написать свои функции и читать файл по байтам. Но что-то такое чувство, что я изобретаю велосипед. Как правильно к этому подступиться?

parent From Andrey V. Stolyarov profile Sat Jul 13 21:59:06 2024 pencil

userpic

Re: Unicode и Си

> если указать в программе локаль.

Без указания локали тоже всё получится.

> читать файл по байтам. Но что-то такое чувство, что я изобретаю велосипед. Как правильно к этому подступиться?

Именно так. Это как раз тот случай, когда велосипед собственного изобретения окажется намного лучше всего, что нагородили авторы всевозможных библиотек, начитавшиеся разнообразных блджад стандартов. Если нужен подсчёт символов, то каждый байт тупо и цинично проверяется на то, не равны ли его старшие биты 1 и 0 (т.е. байт имеет вид 10xxxxxx), и все такие байты в подсчёте не участвуют, т.к. это хвостовые байты от символа. В программе вместо локали предусматривается один глобальный флажок: работаем мы с utf8 или нет ("нет" означает однобайтовую кодировку, больше ничего не бывает, по крайней мере не имеет права бывать). Впрочем, ни на что кроме подсчёта символов этот флажок не влияет.

Локали во всех их проявлениях убиваются ссаными тряпками на дальних подступах.

parent From Anonymous (unverified) Sun Jul 14 02:16:54 2024 pencil

Re: Re: Unicode и Си

С юникодом всё не так просто. То что вы сказали — байты не 10xx xxxx — это не символы, это кодепоинты. Один символ может состоять из нескольких кодепоинтов, если это составной глиф вроде á ü и тд, разложенный на базовую букву и комбинирующую диакритику. Те же символы можно закодировать и одним кодепоинтом и обычно они так и кодируются, если диакртика только одна. То же самое с эмодзи, они содержат модификаторы. Кроме того, символы бывают Wide и Narrow и если требуется не длина строки в символах, а ширина выделяемого поля, то широкие символы (в основном китайский и тд) занимают два знакоместа.

parent From Andrey V. Stolyarov profile Sun Jul 14 08:45:04 2024 pencil

userpic

Re: Re: Re: Unicode и Си

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

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

parent From Anonymous (unverified) Sun Jul 14 03:22:26 2024 pencil

Re: Re: Unicode и Си

А да, ещё желательно было бы наверное проверять на валидность UTF-8 таким образом:

Если символ имеет формат 0y (далее y - недостающие биты до 8 бит), то длина один байт и 10y после него быть не должно. Если символ имеет формат 110y то длина два байта и должен быть ровно один 10y, 1110 — три байта и должно быть два 10y после, 1111y — четыре байта и тд и нужно посчитать сколько за ним идёт 10y, которые могут быть только концевыми байтами. Биты не входящие в маску. определяющую длину символов конкатенируются и получается номер символа в юникоде.

Overlong кодировки считаются недопустимыми, и в софте, который их не проверяет могут встречаться уязвимости. Например код 01100001b — латинская буква a, код 11000001 10100001 по идее тоже "a", но он должен считаться инвалидным. Если программа пропускает такие альтернативные кодировки, то фильтры, вроде режущих HTML-код могут не сработать.

parent From Andrey V. Stolyarov profile Sun Jul 14 08:57:33 2024 pencil

userpic

Re: Re: Re: Unicode и Си

Программа, написанная психически здоровым человеком, должна быть настолько unicode-agnostic, насколько это возможно. В частности, если программа по какой-то причине разбирает HTML или какой-то другой XML (что, опять же, можно делать только от полной безысходности, поскольку все SGML-like разметки суть одно химически чистое мракобесие), она должна в роли открывающей угловой скобки воспринимать исключительно байт 0x3C и более ничего.

Если программа по какой-то причине вынуждена вычислять и как-то там анализировать значения юникодных кодов, представленных в utf8, то она, конечно, перестаёт быть unicode-agnostic, но это не значит, что все программы должны перестать быть unicode-agnostic.

Более того, в одной программе разные подсистемы могут быть и не быть unicode-agnostic. В частности, любой лексический и синтаксический анализ, и вообще любой парсинг следует, очевидно, проводить на исходном потоке байтов, не рассматривая этот поток как utf8, даже если он в utf8. Тогда и проблем с "упущенным" "некорректным" "представлением" активного символа не будет.

Это, кстати, к вопросу о том, почему в текстах на формальных языках non-ascii chars заведомо и категорически недопустимы.

parent From Anonymous (unverified) Mon Jul 15 06:32:13 2024 pencil

Re: Re: Re: Re: Unicode и Си

Ну вот предположим, у вас CMS написана по такому принципу, а какой-нибудь комментатор берёт и пишет <script whatever> но только < кодирует как оверлонг, ваша CMS пропускает это, а браузер интерпретирует оверлонг как угловую скобку, выполняет скрипт и отдаёт например логин и пароль на сервер того, кто эту фиговину запостил.

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

parent From Andrey V. Stolyarov profile Mon Jul 15 08:33:47 2024 pencil

userpic

Re: Re: Re: Re: Re: Unicode и Си

Ну вот предположим, что у бабушки есть МПХ. Тогда, видимо, она будет дедушкой.

Нажми Ctrl-U и посмотри, в какой кодировке отдаётся этот сайт. Это раз. К тому же пароли тут одноразовые и вдобавок никогда не вводятся на страницах с пользовательским контентом. А два — реально браузеры, конечно, пишут отборные говноеды, но всё-таки не идиоты, поэтому, разумеется, ничего подобного произойти не может. Да и вообще, кто считает нужным по какой-то причине НЕ быть unicode-agnostic, тот и трахается с последствиями комитетского дебилизма, а убеждать вообще всех (в том числе тех, кто сам никак юникод не интерпретирует) принимать во внимание всю эту комитетскую херню — эдак можно договориться до встраивания фильтров UTF, например, в стек TCP/IP в ядре. Ну а что, а вдруг чего, а?

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

UPD: В словосочетании "свали отсюда" какое слово непонятно, первое или второе? Очередь на премод тут пока ещё под моим контролем, и это значит, что твои комменты тут больше не появятся.

parent From Anonymous (unverified) Sun Jul 14 03:34:54 2024 pencil

Re: Re: Unicode и Си

Кстати, мультибайтовые последовательности встречаются даже в Plain ASCII, а именно: и CR LF и просто LF — это один символ, хотя CRLF занимает два байта.

parent From Andrey V. Stolyarov profile Sun Jul 14 08:39:40 2024 pencil

userpic

Re: Re: Re: Unicode и Си

Это уже просто чушь, никто, нигде и никак не заставляет нас рассматривать CRLF как "один символ". Намного проще CR считать обычным whitespace'ом и/или просто тупо игнорировать.

parent From Anonymous (unverified) Sun Jul 14 10:26:23 2024 pencil

Re: Re: Re: Unicode и Си

Почему CR LF - один символ? Это как раз честные 2 символа в ASCII. Просто так уж повелось, что виндосовские текстовые редакторы требуют эти два символа, чтобы показать перевод строки, но двумя символами (в терминах кодировки) эта комбинация быть не перестает.

parent From Andrey V. Stolyarov profile Sun Jul 14 10:39:50 2024 pencil

userpic

Re: Unicode и Си

Как ни странно, это не только виндосовские редакторы. Текстовые протоколы в Интернете (по меньшей мере HTTP, SMTP и telnet, за остальные не поручусь) тоже, если следовать букве спецификации, требуют разделять строки CRLFом. Тяжкое наследие времён телепринтеров, где прокрутка бумаги на строчку вниз и возврат каретки в крайнюю левую позицию были двумя разными (физическими, т.е. механическими, ну или, если угодно, электромеханическими) действиями.

parent From Anonymous (unverified) Mon Jul 15 06:15:03 2024 pencil

Re: Re: Unicode и Си

Неужели кто-то когда-то набирал электронные письма прямо в консоли SMTP-сервера, пользуясь электромеханическим телетайпом?

parent From Andrey V. Stolyarov profile Mon Jul 15 08:35:18 2024 pencil

userpic

Re: Unicode и Си

Достоверно я этого не знаю, но практически уверен, что кто-то когда-то — наверняка.

parent From Parthen (unverified) Sun Jul 14 16:12:45 2024 pencil

Re: Re: Unicode и Си

>Без указания локали тоже всё получится.

У меня не получалось. Возможно, дело в ncurses, без него все печатается нормально, а с ним:

Vasya wrote: Муха села на варенье, вот и все стихотворение.

Vasya wrote: ~\ ~C ~E ~A ~@ ~L , ~B ~A ~A ~B ~E ~B ~@ .

Код вот (в заголовочных файлах убраны угловые скобки, иначе сайт их вырезает):

#include stdio.h
#include ncurses.h

int main() {
    FILE *file;
    char filename[] = "example.vns";
    char ch;

    file = fopen(filename, "r");
    if (!file) {
        printf("Error opening file.\n");
        return 1;
    }

    initscr(); 
    cbreak(); 
    noecho(); 
    keypad(stdscr, TRUE); 

    while ((ch = fgetc(file)) != EOF) {
        printw("%c", ch);
    }

    refresh(); 
    getch(); 

    endwin(); 

    fclose(file);

    return 0;
}

>Локали во всех их проявлениях убиваются ссаными тряпками на дальних подступах.

Кстати, где подробно почитать почему? Я где-то на уровне печенки понимаю, что локали кодировку без моего ведома переделывают, но видимо пришло время, когда надо в этом разобраться. (Поиск по гостевой успехов не принес)

parent From Andrey V. Stolyarov profile Sun Jul 14 16:36:15 2024 pencil

userpic

Re: Re: Re: Unicode и Си

> Возможно, дело в ncurses

Так и есть, да. У ncurses свой способ вывода, и ей надо знать, utf это или не utf, а она это, как всякая "добропорядочная" (читай — мейнстримная) либа, узнаёт из установленной локали.

Ну, я не знал, что вы ncurses используете. Обычные программы, у которых ввод из stdin и вывод в stdout, вполне могут себе позволить быть encoding-agnostic.

> Кстати, где подробно почитать почему?

Потому что зависимости от внешних файлов на ровном месте, например. А ещё потому что многие (к счастью, не все) программы, использующие возможности locales, невозможно убедить одновременно разговаривать по-английски и допускать обработку русских букв — потому что безответственные мудаки, их написавшие, переменную LC_ALL обрабатывают, а на LANG/LANGUAGE кладут болт.

По поводу угловых скобок — заменяйте знак "меньше" на &lt; и всё будет.

parent From Parthen (unverified) Sun Jul 14 16:45:56 2024 pencil

Re: Re: Re: Re: Unicode и Си

Понял, спасибо!

>По поводу угловых скобок — заменяйте знак "меньше" на < и всё будет.

Было бы здорово указать это на странице отправки комментария

From Григорий Кузнецов (unverified) Fri Jul 12 10:09:33 2024 pencil

pascal

Приветствую уважаемых посетителей сайта!

Начинал программировать на python, но после прочтения первого тома "Программирование: введение в профессию" практически полностью перешел на pascal. Благо мне требуется достаточно простая работа с текстовыми файлами и csv таблицами, хотя в них по 20-40 столбцов и несколько тысяч строк.

В качестве основной рабочей среды, после нескольких эксперементов, решил использовать Arch Linux и zsh командную строку. Сильно нравится кастомизация.

На днях приступлю к изучению второго тома.

Выражаю глубокую благодарность Андрею Викторовичу Столярову за учебные пособия! Особенно за их бесплатные версии.

parent From Andrey V. Stolyarov profile Fri Jul 12 10:14:11 2024 pencil

userpic

Re: pascal

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

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

parent From Anonymous (unverified) Fri Jul 12 13:39:21 2024 pencil

Re: Re: pascal

Почему не существует? А бумажные?

А почему бы и нет? Работет же...

parent From Andrey V. Stolyarov profile Fri Jul 12 14:36:44 2024 pencil

userpic

Re: Re: Re: pascal

> Почему не существует? А бумажные?

Читать не умеете? А зачем вам тогда книги?

> А почему бы и нет? Работет же...

А, ну если вы применяете тезис "работает же", то мои книги для вас бесполезны, не тратьте на них время.

From Thalassa CMS (unverified) Thu Jul 11 18:10:50 2024 pencil

Thalassa CMS

Очень странная история с капчей. В процессе настройки сайта все отлично, у меня все работает. Но вот проблема - отваливается капча по неизвестным причинам. То есть я правильно ее ввожу, а мне говорят failed абсолютно всегда. Не подскажете область, в которой нужно искать проблему? У меня полностью рабочий сайт, но капча все ломает своей "непроходимостью" и ошибок не выдает, как будто я ее действительно ввожу неверно. Помогите пожалуйста, Андрей Викторович

parent From Andrey V. Stolyarov profile Thu Jul 11 18:45:40 2024 pencil

userpic

Re: Thalassa CMS

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

parent From Thalassa CMS (unverified) Thu Jul 11 19:05:16 2024 pencil

Re: Re: Thalassa CMS

Check failed

Unfortunately we couldn't verify we don't talk to a robot. We sincerelly apologise in case we're wrong. The check has failed for the following reason: wrong captcha answer. Please try again.

Please enter the string made by swapping letters as shown at the picture to the right. There are digits and latin letters only, case is ignored:

parent From Andrey V. Stolyarov profile Thu Jul 11 19:27:41 2024 pencil

userpic

Re: Re: Re: Thalassa CMS

> wrong captcha answer.

Теперь хотя бы знаем, обо что оно обломалось. А не может быть так, что у вас, например, два экземпляра thalcgi.cgi, один показывает форму с капчей, а обрабатывает уже другой? Или, скажем, конфигурационные файлы от Талассы старой версии (0.2.* или ещё старее), а бинарь thalcgi.cgi уже от новой? Вот, скажем, если на страничке с капчей Ctrl-U нажать, там в коде формы есть поле captcha_nonce?

parent From Thalassa CMS (unverified) Thu Jul 11 20:09:20 2024 pencil

Re: Re: Re: Re: Thalassa CMS

Такого поля нет и да, я переносил старые конфиги в новую версию талассы и с новыми бинарниками

parent From Andrey V. Stolyarov profile Thu Jul 11 20:14:01 2024 pencil

userpic

Re: Re: Re: Re: Re: Thalassa CMS

Тогда всё понятно, см. сюда: http://thalassa.croco.net/2402241.html#migration_to_0200, а потом ещё сюда: http://thalassa.croco.net/2403141.html#migration_to_0300.

Впрочем, если вы использовали Smoky, то достаточно перезаписать новое содержимое поддиректории base/ поверх того, что у вас, и плюс ещё добавить параметр text_email_change_cooldown, как это по второй ссылке рассказывается.

parent From lucy (unverified) Thu Jul 11 23:44:38 2024 pencil

Re: Re: Re: Re: Re: Re: Thalassa CMS

Как же приятно прийти на все готовенькое, буквально 2 дня назад было тоже самое, спасибо большое!

parent From Andrey V. Stolyarov profile Fri Jul 12 08:02:06 2024 pencil

userpic

Re: Thalassa CMS

Ага, и для кого я в новостях на сайте Талассы подробно писал, как правильно мигрировать на новые версии?

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

parent From nice (unverified) Fri Jul 12 13:47:18 2024 pencil

Сработало

Спасибо огромное за помощь!

parent From Andrey V. Stolyarov profile Fri Jul 12 15:02:05 2024 pencil

userpic

Re: Сработало

Вот уж не жалко :-) заходите ещё.

From Anonymous (unverified) Mon Jul 8 20:01:33 2024 pencil

Опечатки в архивах

Это мелочь, конечно же, но в архивах гостевой книги на этом сайте заметил пару штук, похожих на опечатки.

В Архиве гостевой книги по 25 сентября 2012 г. последний коммент датирован 31 мая 2013 года.

В Архиве гостевой книги с 25.09.2012 по 02.06.2019 последний коммент датирован 23 апреля 2021 года.

parent From Andrey V. Stolyarov profile Wed Jul 10 13:25:10 2024 pencil

userpic

Re: Опечатки в архивах

Мне даже интересно, как вы предполагаете избежать подобных "опечаток", если только не закрывать возможность комментирования на архивных страницах (а закрывать я её не хочу).

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

parent From Anonymous (unverified) Wed Jul 10 18:26:26 2024 pencil

Re: Re: Опечатки в архивах

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

From Вова (unverified) Fri Jul 5 15:40:37 2024 pencil

Несколько слов благодарности

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

From anon (unverified) Mon Jul 1 17:29:08 2024 pencil

Raspberry Pi

Вряд ли коммент пройдёт модерацию, но не могу не поделиться "радостью". Только что получил по почте raspberry pi, и в бумажной инструкции пара примеров, как помигать лампочкой на ПИТОНЕ, Карл!

Вот прям так и написано "import some_shit\n\npognali()"

Аж чаем поперхнулся, чуть плату не залил. Хотя стоит уточнить, наверное, что это не голый pi всё-таки, а наборчик "для чайников" от сторонних продавцов, мануальчик от них же

parent From Andrey V. Stolyarov profile Mon Jul 1 18:28:32 2024 pencil

userpic

Re: Raspberry Pi

Не вижу ничего удивительного. Питон — это такой специальный трёхколёсный велосипедик для тех, кто учиться кататься не хочет, но при этом почему-то очень хочет то ли просто кататься (не учась), то ли при этом ещё и всем говорить, что он ваще прям крутой велосипедист, что аж куда деваться.

У меня был синтезатор (ну, в смысле клавишный электронный музыкальный инструмент, а не что-то другое), так там был такой специальный режим, в котором жмёшь какие попало клавиши, главное чтобы б/м в такт, а ОНО воспроизводит мелодию из памяти, но при этом тщательно делает вид, что это ты сам играешь. Ну то есть если не нажать, то звука совсем не будет, только ритм-секция, а если нажать, то, насколько я понял, на что-то повлиять можно только вида "на октаву выше / на октаву ниже", оно само при этом подбирает аккорды нужным образом и вот это вот всё.

parent From another anonymous (unverified) Mon Jul 1 23:01:08 2024 pencil

Re: Raspberry Pi

Я так думаю, помигать лампочками можно и из командной строки, ибо это GPIO, и ядро даёт доступ к GPIO через sysfs. Ещё есть соответствующие файлы устройств в /dev , которыми можно воспользоваться, например, в программах на C.

А мануальчик можно просто проигноровать. И не покупать всякие наборчики.

From Anonymous (unverified) Sat Jun 29 14:47:15 2024 pencil

Работа в IT на западе

Андрей Викторович, добрый день.

Нашел одну статью [url removed] (прошу прощения за ссылку на этот сайт, предлагаю удалить ее из коммента, если вам не нравится), в которой автор огорчен тяжестью поиска работы на западном рынке. Если кратко, то основная мысль статьи такова: в Европе и США опытные разработчики подолгу ищут работу, конкурс на вакансии дикий, приходится соглашаться на низкие зарплаты, рынок работника закончился. Статья по большей части эмоциональная, конкретных фактов или исследований не содержит (разве что пару скриншотов), поэтому у меня есть основания ей несколько не доверять.

Вы писали ранее, что сейчас находитесь в Европе. Наблюдаете ли вы такую ситуацию с рынком труда в IT? Если да, то как вы думаете, может ли такая ситуация случиться во всем мире?

Сам я в РФ, искать работу в западных компаниях не пробовал.

parent From Andrey V. Stolyarov profile Sat Jun 29 18:43:31 2024 pencil

userpic

Re: Работа в IT на западе

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

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

parent From anonymous (unverified) Sat Jun 29 22:49:45 2024 pencil

Re: Работа в IT на западе

Непрошеное и совершенно банальное мнение безвестного анонима.

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

Противоположные мнения довольно часто аргументируются, например, таким образом: ряяя, все слышали про большие зарплаты программистов, щас они все как станут программистами, щас они все как обвалят спрос, ряяя, конец вашему ойти!

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

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

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

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

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

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

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

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

parent From anonymous (unverified) Sat Jun 29 23:21:59 2024 pencil

Re: Работа в IT на западе

Упд, не заметил у топикстартера слово "опытные" перед словом "разработчики", тогда весь мой опус "банальное мнение безвестного анонима" несколько теряет смысл.

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

parent From Andrey V. Stolyarov profile Sat Jun 29 23:32:31 2024 pencil

userpic

Re: Работа в IT на западе

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

Sapienti sat. По-моему, не надо искать сложностей там, где их нет, просто кто-то отрабатывает грант на очередную ИПСО.

parent From anonymous (unverified) Sun Jun 30 01:14:39 2024 pencil

Re: Re: Работа в IT на западе

>чуть ли не единственная правильная стратегия сейчас состоит в возвращении в россию

Тогда все куда понятней.

>нет проблем её отыскать в недрах Хабра, было бы желание

Уверен, нашел бы больше, чем одну.

Если это такая очевидная propaganda, то не очень ясно, на кого это рассчитано. Если релокация произошла вследствие несовпадения моральных, политических и прочих социально-философских взглядов релоканта с современной идеологией РФ, то при чем тут такая презренная вещь, как величина зарплаты?

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

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

В общем, мани квещнс, ноу ансверс, как всегда.

parent From Oliver (unverified) Mon Jul 1 07:08:09 2024 pencil

Re: Re: Re: Работа в IT на западе

> В общем, мани квещнс, ноу ансверс, как всегда.

Не совсем по теме, но тут я бы предпочел сказать "а лот оф куешнс, ноу энсерс", вместо "мани", потому что это смахивает на "деньги" если не верно произнести это слово

From timar07 (unverified) Fri Jun 28 15:41:56 2024 pencil

CLI утилита для учета финансов

Уважаемый Андрей Викторович, здравствуйте!

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

Вопрос состоит в следующем: сталкивались ли Вы с подобной проблемой? Если да, то пользуетесь ли Вы какой-нибудь CLI утилитой (по типу ledger) или же Вы предпочитаете другой способ ведения домашней бухгалтерии?

parent From Andrey V. Stolyarov profile Fri Jun 28 20:56:08 2024 pencil

userpic

Re: CLI утилита для учета финансов

См. сюда, ближе к концу текста коммента.

From chum (unverified) Fri Jun 28 03:46:56 2024 pencil

наебать издательство

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

parent From Andrey V. Stolyarov profile Fri Jun 28 08:54:28 2024 pencil

userpic

Re: наебать издательство

Для начала:

> при этом имущественные права, естественно, были переданы правоторговцам

Что в этом "естественного"?! Почему вы вообще считаете возможным утверждать, что передача прав издателю "естественна"? Вы вообще сайтом не ошиблись? Копирастов тут не любят и даже обижают.

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

Теперь по основному вопросу. Технически ничего невозможного здесь нет, и, более того, я вполне понимаю авторов, которые так поступают. Хочется даже сказать, что они правильно делают, но вообще-то этого сказать нельзя, потому что правильно — это с самого начала объяснить издателю, что никакой передачи прав не будет и договор может быть только лицензионным. Между прочим, действующий закон (четвёртая часть ГК РФ) заточен именно под такой вариант гражданского взаимодействия между автором и издателем, а то, что издатели из кожи вон лезут, чтобы навязать автору именно что передачу прав — это, во-первых, повод относиться к издательской мафии так, как к ней следует относиться: как к паразитам, подлежащим истреблению; во-вторых, это один из аргументов, почему так называемое "авторское" право на самом деле никакого отношения к интересам авторов не имеет; и в-третьих, естественно, это повод требовать отмены интеллектуальной собственности как юридического института.

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

Но это мои домыслы, а рассказать, как там всё обстоит на самом деле, может разве что юрист, реально специализирующийся на гражданских исках, связанных с авторским правом. NB: не всякий юрист, а именно такой, у которого есть реальный (и притом большой) опыт именно исков такого рода. Я неоднократно убеждался, что юристы, которые специализируются в других областях, имеют об авторском праве весьма смутное представление, вплоть до того, что *я*, не будучи юристом, таки ориентируюсь в этой области права лучше их.

parent From ana (unverified) Fri Jun 28 18:48:58 2024 pencil

Re: Re: наебать издательство

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

parent From Andrey V. Stolyarov profile Fri Jun 28 20:47:26 2024 pencil

userpic

Re: наебать издательство

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

На моём примере можно заметить, что ничего безвыходного здесь нет.

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

From Саша (unverified) Mon Jun 24 11:27:29 2024 pencil

Касательно Reticulum Network Stack

Здравствуйте! Подскажите, слышали ли вы о Reticulum Network Stack (см. [url removed])? Думаю, проект заслуживает вашего внимания.

P.S. Также может оказаться полезным один тред на Реддите* (см. [url removed]), где автор делится информацией о Reticulum и отвечает на популярные вопросы (о внутреннем устройстве, криптографической базе, устойчивости сетей, а также Python).

* Да, без скриптов не работает. Но, право, давайте не будем спотыкаться о такие мелочи. Можете воспользоваться альтернативным фронтендом типа Redlib, там JS не нужен; удобный сервис переадресации: [url removed]

parent From Andrey V. Stolyarov profile Mon Jun 24 11:38:16 2024 pencil

userpic

Re: Касательно Reticulum Network Stack

Чего ты сюда припёр этот кусок питонячьего говна? Чего ты сам сюда припёрся? Ты ошибся дверью, здесь говно не едят, делай это в другом месте. А сюда дорогу забудь, и желательно навсегда.

From Арсений (unverified) Mon Jun 24 10:00:30 2024 pencil

Инструмент для таблиц

Здравствуйте!

Часто в работе хочется применить связные таблицы (а ля "список функций", "список тестов", "таблица покрытия функций тестами"; ну и "вывести непокрытые функции"). При этом структура таблиц обычно не очень сложная.

Брать субд/эксели нет желания, слишком уж они громоздкие (а хочется именно "на коленке" накидать пару-тройку таблиц). В последний раз обходился tsv-файлами и пачкой скриптов (sort, join, awk).

Бывают у Вас похожие задачи? Какими инструментам для этого пользуетесь? Или это всё от лукавого и проблема выдуманная?

parent From Andrey V. Stolyarov profile Mon Jun 24 11:29:05 2024 pencil

userpic

Re: Инструмент для таблиц

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

parent From Арсений (unverified) Mon Jun 24 12:18:20 2024 pencil

Re: Re: Инструмент для таблиц

Однако) С нетерпением жду!

Или оно для личного пользования планировалось?

parent From Andrey V. Stolyarov profile Mon Jun 24 12:35:09 2024 pencil

userpic

Re: Инструмент для таблиц

Сначала для личного, потом в opensource, естественно. Просто между этими двумя вариантами будет ещё написание документации, я после Талассы перестал к этому этапу относиться легкомысленно, ибо там документация потребовала четырёх месяцев.

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

parent From Василий (unverified) Mon Jun 24 12:52:33 2024 pencil

Re: Re: Инструмент для таблиц

Очень приятно читать, тоже искал похожий инструмент! Присоединяюсь к ожидающим.

Когда-то давно добавил к себе в закладки Lotus 1-2-3, который, вроде как подходит под описание "программа для работы с таблицами в терминале". Руки до него не доходили, но сейчас достал из закладок и обратил внимание, что это проприетарщина.

А тут ещё с блэкджеком и шлю... т.е. с HTML и LaTeX.

parent From Alejandro profile Mon Jun 24 18:35:52 2024 pencil

Re: Re: Инструмент для таблиц

А это никак случайно не связано с этой историей? :-)

parent From Andrey V. Stolyarov profile Mon Jun 24 18:59:15 2024 pencil

userpic

Re: Инструмент для таблиц

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

parent From Дмитрий (unverified) Wed Jun 26 01:57:38 2024 pencil

Re: Инструмент для таблиц

SQLite. Вы описали задачи декларативного языка SQL.

parent From Andrey V. Stolyarov profile Wed Jun 26 09:28:03 2024 pencil

userpic

Re: Инструмент для таблиц

Задач для SQL не существует в природе. Точно так же, как, например, для Кобола.

А ещё — пользовательские данные должны храниться в текстовых файлах.

UPD: Давай-давай отсюда. В Интернете много мест, подходящих для любителей церебральной копрофагии, но этот сайт в их число не входит.

parent From Alexander (unverified) Thu Jun 27 20:44:34 2024 pencil

Re: Re: Инструмент для таблиц

Раз уж зашла речь про хранение пользовательских данных, воспользуюсь случаем уточнить. Захотелось написать свою записную книгу с сохранением данных в файл и возможностью поиска по фамилии/имени. Какая в идеале должна быть структура у такого файла? В голову приходит только аналогичный как в файле /etc/passwd.

parent From Andrey V. Stolyarov profile Thu Jun 27 22:08:13 2024 pencil

userpic

Re: Инструмент для таблиц

Тут есть сразу два вопроса: (1) допустимо ли всё хранить в одном текстовом файле и (2) каков должен быть формат этого файла.

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

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

name     Вася Пупкин
phone    +7(555)5557-788
email    vasya@example.com
remark   Наш Вася самых честных правил,
         Когда забил на институт,
         Знакомых баб бухать заставил
         Хотя и знал, что не дадут.

name     Петя Виноградов
phone    +7(888)555-3210
remark   инструктор по ничегонеделанью

По-моему, изрядно более гибко, чем как в passwd.

parent From Alexander (unverified) Fri Jun 28 09:56:24 2024 pencil

Re: Re: Инструмент для таблиц

Спасибо за развернутый ответ. Видел на разных форумах, посвященных Паскалю, что подобные программы делали с записью в типизированный файл с расширением “.dat”. Такой метод по вашему мнению совершенно неправильный?

parent From Andrey V. Stolyarov profile Fri Jun 28 11:39:31 2024 pencil

userpic

Re: Инструмент для таблиц

А вот зачем? Чтобы что?

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

А вот достоинств применения т.н. "типизированных файлов" (т.е. бинарников с записями фиксированного размера) я не вижу вообще никаких. По идее с ними работа происходит быстрее, не надо читать файл с самого начала в поисках нужной записи, не надо на каждый чих перезаписывать весь файл... упс, так ведь если записи раскидать по одной в файл, то тоже надо будет перезаписывать только то, что изменилось, а нужная запись отыскивается по имени файла; вроде бы можно навертеть всякого быстрого поиска (да, для текстовых файлов это тяжело), так ведь об этом вроде речи не идёт, а если бы и шла, сначала стоит убедиться, что текущее (на порядки более простое) решение не удовлетворяет нас по скорости, об этом тоже вроде бы разговора не идёт.

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

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

NB: сказанное никоим образом не означает, что модель хранения, основанная на записях фиксированного размера, вообще никогда не нужна. Очень даже нужна, те же файловые системы тому пример, там и блоки фиксированного размера, и inode'ы фиксированного размера, и всякий суперблок, и т.п. Но там определяющим фактором выступает именно что организация быстрого поиска, т.е. файловая система на диске представляет собой весьма развесистую структуру данных, позволяющую быстро искать и быстро изменять. Всё это нужно, когда простой линейный поиск нас удовлетворять перестал.

Но речь-то идёт о несчастной записнушке. И вот смотрите: объём небезызвестной графской графомании под названием "Война и мир" — около 3 MB, если в однобайтной кодировке, и вдвое больше, если в utf8. Чтение файла такого объёма в современных условиях занимает от трети секудны до где-то двух секунд, необходимость поиска нужной подстроки здесь ничего не добавляет, поскольку сравнения байтиков, уже прочитанных в память, требуют времени намного меньше (т.е. всё вместе займёт времени ровно столько, сколько потребуется для чтения с диска). Это если файл ещё в кеши не лёг, т.е. повторный поиск будет работать в десятки раз быстрее за счёт того, что с диска читать уже ничего не надо. Навертев всякого быстрого поиска, можно время нахождения нужной записи снизить до тысячных и даже, наверное, миллионных долей секунды. А теперь внимание, вопрос: нам не пофигу? Во-первых, записнушка даже близко не будет сравнима по объёму с "Войной и миром", так что реальные задержки на поиск будут измеряться сотыми долями секунды. Во-вторых, даже устранение двухсекундной задержки не факт что стоит месяца работы — ну, разве что если заказчик сильно возбухнет, а нам очень нравятся те деньги, которые он нам платит.

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

parent From Alexander (unverified) Fri Jun 28 14:54:24 2024 pencil

Re: Re: Re: Инструмент для таблиц

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

From Anonymous (unverified) Sat Jun 22 02:48:20 2024 pencil

Anonymous

На старой версии заголовок страницы был разный для разных страниц, а сейчас везде написано "Андрей Викторович Столяров: сайт автора". Если в разных вкладках открыты разные страницы, то стало менее удобно ориентироваться.

parent From Andrey V. Stolyarov profile Sat Jun 22 09:34:05 2024 pencil

userpic

Re: Anonymous

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

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

From НеПрограммист (unverified) Thu Jun 20 19:34:34 2024 pencil

От себя

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

From Thalassa CMS (unverified) Thu Jun 20 17:17:58 2024 pencil

Thalassa CMS

Помогите разобраться пожалуйста с построениением сайта (виртуальный сайт + suexec). Скачал апаче, скачал талассу. По инструкции я подготовил директорию с templ_smoky, которую потом нужно будет рекурсивно скопировать в var/www/user/site. В только что скаченном apache2 у меня лежит apache2.conf (дистрибутив devuan) и необходимые mods и sites. Сделал симлинки по инструкции и вот теперь вопрос: что дальше? По мануалу идет работа с разрешениями, проводится символическая ссылка на директорию в домашний каталог того пользователя, из под которого потом будет работать сайт. Но я не могу понять - что делать с apache2.conf, кроме прописывания там строчки Suexec on? И как сделать так, чтобы вот эта самая группа webadmin работала у меня так же, как оно задумывалось? Ну то есть какими свойствами должна обладать создаваемая группа (как вебадмин из примера), чтобы ее можно было записать в SuexecUserGroup и все заработало? Я создал 001-site.conf, прокинул ссылки, но сайт по прежнему не виден после service apache2 restart. P.S: я запускал сайт без suexec, по инструкции для одиночного ресурса и он работал как надо.

parent From Andrey V. Stolyarov profile Fri Jun 21 11:22:04 2024 pencil

userpic

Re: Thalassa CMS

Там вроде был такой момент, что у группы должен быть gid не меньше чем сколько-то (1000?), может быть, дело в этом? Я, честно говоря, про это еле вспомнил, информация откуда-то из пыльных углов памяти.

From Anonymous (unverified) Thu Jun 20 15:58:00 2024 pencil

parent From Andrey V. Stolyarov profile Fri Jun 21 11:00:07 2024 pencil

userpic

Re: Хотите поражать? Реклама вашей книги! (Видимо палёной)

А, это я видел, да. Унылое говно (tm) Чувак там зачитал, судя по всему, реферат из книжки, даже в моей фамилии ухитрился ударение не там поставить (между прочим, с таким я сталкиваюсь впервые за всю жизнь, моя фамилия не относится к числу редких), плюс к тому читать вслух чувак явно не умеет.

Но на тот момент, когда этот ролик вышел, данная конкретная книжка (причём именно в этом "авторском" оформлении) продавалась в бумаге совершенно официально, она из типографии вышла в декабре 2019, причём в самой книжке год издания обозначен 2020, там как раз почти сразу начался ковид, киоск, где это всё продавалось, закрылся, и у меня образовалась неиллюзорная возможность остаться с полутора сотнями экземпляров; к счастью, нашлись те, кто (уже в 2021 году) у меня эти экземпляры забрали оптом и пустили в продажу, вот как раз там в ролике книжка показана на сайте какого-то из интернетных книжных магазинов.

From rkvg-es (unverified) Tue Jun 18 18:06:37 2024 pencil

Слой содержания в книгах

Со сломанным текстовым слоем в PDF-ках всё понятно, но что насчёт встроенного содержания (navigation pane)? Его тоже нет по какой-то конкретной причине? И если да, то, наверное, об этом также стоит дописать в FAQ. А если всё же нет, то мне видится, что это могло бы значительно снизить для читателей остроту проблемы с поиском в PDF.

Извиняюсь, если этот вопрос уже задавался.

parent From Andrey V. Stolyarov profile Tue Jun 18 19:56:34 2024 pencil

userpic

Re: Слой содержания в книгах

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

Но впереди третье издание, которое, судя по всему, будет чисто электронным, печататься на бумаге не будет. Я подумаю на тему навигации в нём.

parent From rkvg-es (unverified) Wed Jun 19 08:31:16 2024 pencil

Re: Re: Слой содержания в книгах

Замечательно, спасибо!

Раз уж на то пошло, то ещё такой вопрос появился: стоит ли надеяться если и не на гиперссылки по тексту книги, то хотя бы на то, чтобы номерные ссылки на источники переносили на конкретную страницу в конце книги, где этот источник обозначен? Постоянно их искать вручную действительно утомляет (впрочем, как и перестукивать URL из них в адресную строку).

parent From Andrey V. Stolyarov profile Wed Jun 19 09:40:41 2024 pencil

userpic

Re: Слой содержания в книгах

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

Идея "активных" ссылок на веб — таких, которые заставляют программу просмотра PDFа запускать браузер — вызывает у меня инстинктивное противодействие, так что такого, скорее всего, всё-таки не будет.

parent From Anonymous (unverified) Thu Jun 20 07:43:12 2024 pencil

Re: Re: Слой содержания в книгах

Стоит ли ожидать новое, электронное, издание в каких-нибудь иных форматах отличных от PDF и DJVU?

parent From Andrey V. Stolyarov profile Thu Jun 20 09:57:03 2024 pencil

userpic

Re: Слой содержания в книгах

Вот уж точно нет.

parent From Anonymous (unverified) Mon Jun 24 03:01:24 2024 pencil

Раз уж электренное издание...

Может сделаете алфавитный указатель?

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

parent From Andrey V. Stolyarov profile Mon Jun 24 11:22:48 2024 pencil

userpic

Re: Раз уж электренное издание...

Он и сейчас есть, см. в конце третьего тома.

From Anonymous (unverified) Tue Jun 18 08:36:01 2024 pencil

Глава 7.3.3

Объясните пожалуйста, зачем в новый тред передавать указатель на структуру с данными и вешать семафоры, чтобы избежать гонки, если можно просто закрыть мьютекс переданной структуры (в новом треде), чтобы основной поток подождал пока мы скопируем себе структуру? Или, что ещё проще, почему нельзя для каждого потока иметь свою структуру? Они же все равно будут в памяти, вопрос только в какой: на стеке у основого потока, на стеке у дочернего потока или в куче.

parent From Andrey V. Stolyarov profile Tue Jun 18 08:53:07 2024 pencil

userpic

Re: Глава 7.3.3

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

А кто вам сказал, что основной поток не успеет проскочить раньше, чем порождённый тред успеет закрыть мьютекс?

> Или, что ещё проще, почему нельзя для каждого потока иметь свою структуру?

"Свою структуру" — это вы как себе представляете, локальной её сделать в главной функции потока? А откуда основной поток узнает, по какому адресу в порождённом потоке живёт эта структура?

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

Одним из ответов на вопрос "почему" тут может служить сам факт возникновения у вас вот этих вот вопросов. Как говорят в таких случаях, sapienti sat.

parent From Anonymous (unverified) Tue Jun 18 09:15:02 2024 pencil

Re: Re: Глава 7.3.3

> "Свою структуру" — это вы как себе представляете, локальной её сделать в главной функции потока? А откуда основной поток узнает, по какому адресу в порождённом потоке живёт эта структура?

struct data_for_thread
{
    int some_value;
};

void* f(void *data)
{
    struct data_for_thread *d = (struct data_for_thread *)data;
    /* Just use `d' as you wish */
}

void main(void)
{
    int i;
    thread_t threads[4];
    struct data_for_threads data[4];
    
    for (i = 0; i < 4; ++i)
        pthread_create(&threads[i], NULL, f, (void*)(&data[i]));

    for (i = 0; i < 4; ++i)
        pthread_join(&threads[i]);
}

Код без обработки ошибок и т.п., просто для объяснения идеи.

Не вижу, что тут может пойти не так.

parent From Andrey V. Stolyarov profile Tue Jun 18 11:38:43 2024 pencil

userpic

Re: Re: Re: Глава 7.3.3

В тексте книги такое решение рассмотрено и отвергнуто с подробным объяснением причин, читайте внимательнее. Соответствующий абзац начинается со слов "Можно, конечно, завести для каждого треда свой экземпляр структуры".

From uint (unverified) Fri Jun 14 12:52:37 2024 pencil

интерпретируемость и компилируемость

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

parent From Andrey V. Stolyarov profile Fri Jun 14 13:38:56 2024 pencil

userpic

Re: интерпретируемость и компилируемость

Здесь есть ровно два варианта: или вы читаете полностью часть 12 третьего тома трёхтомника, и особенно внимательно — главу 12.5 (эту желательно с карандашиком, особенно в вашем случае — это, скорее всего, ваш единственный шанс на удаление говна из мозга), или сваливаете вон с моего сайта и больше никогда сюда не возвращаетесь. Возможно, впрочем, и то и другое. Даже, наверное, правильнее будет, если вы отсюда свалите в любом случае, поскольку мне тут не нужны такие персонажи, которые считают питон имеющим право на существование.

parent From rkvg-es (unverified) Tue Jun 18 17:55:34 2024 pencil

Re: Re: интерпретируемость и компилируемость

Кстати, с Вашего позволения: предлагаю заменить в тексте "скриптинг" на "скриптование", так как ассимилированная форма заимствования более верна с точки зрения русского языка, на мой взгляд.

parent From Andrey V. Stolyarov profile Tue Jun 18 19:59:08 2024 pencil

userpic

Re: Re: Re: интерпретируемость и компилируемость

Нет уж, позвольте не позволить (tm). Отвечать на вопрос "почему" я здесь не вижу никакого смысла, хочу только напомнить то, что уже не раз и не два (и, наверное, даже не десяток раз) говорилось: я не принимаю никаких рекомендаций по тексту книги. Только сообщения о явных ошибках, но словоформа "скриптинг" таковой не является.

parent From rkvg-es (unverified) Wed Jun 19 09:07:52 2024 pencil

Re: Re: Re: Re: интерпретируемость и компилируемость

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

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

Извините. Просто не читаю Ваш сайт на постоянной основе.

Может быть, тогда пришло время для отдельной гостевой странички с комментариями под эррату? С соответствующими пояснениями о том, чего там ждут, а чего нет, конечно же. Или хотя бы обозначить таковые пояснения где-нибудь явно - скажем, сносками на страницах "Книги", "Обратная связь", "Гостевая книга", да в FAQ хотя бы. Как Вам виднее будет.

И напоследок: честно не знаю, относится ли это к тексту книги, но заметил вот что. На странице "главных спонсоров проекта" указаны суммы без обозначения валюты. И остаётся загадкой, что же имелось в виду: рубли? гривны? тенге? евро, доллары? русские рубли? белорусские? приднестровские? Это довольно-таки неоднозначно, так как страницы "Об авторе" тоже нет, а подобные Вам люди с русским языком и именем живут во всём мире. К тому же, книги живут дольше авторов (а хорошие - сильно дольше), поэтому было бы неплохо, на мой взгляд, если бы со временем текст не утрачивал свой смысл нигде и ни в чём.

parent From Andrey V. Stolyarov profile Wed Jun 19 10:20:23 2024 pencil

userpic

Re: интерпретируемость и компилируемость

> и порой ощутимо царапать глаз

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

Ну то есть вот, скажем, программист, написавший жирную программу, понимает, что она ожирела в достаточной степени, чтобы её было неудобно использовать без встроенных возможностей скриптования, берёт какой-нибудь libtcl и встраивает в своё программу. Вот это вот он занимается скриптингом, но никоим образом не скриптованием. Скриптование начнётся, когда кто-то — сам ли он или кто-то из пользователей его программы — начнёт писать скрипты для часто встречающихся в ходе работы ситуаций. Точно так же и скрипты пишутся не только для автоматизации ручных действий, но и для решения других задач — таких, которые никто никогда вручную не выполнял. Помимо веба с трижды проклятым client side scripting, можно назвать ещё инициализационные скрипты в операционках, да мало ли что ещё. И вот это всё тоже скриптинг, но не скриптование. Во всяком случае, если эти слова воспринимать так, как их воспринимаю лично я (а такое восприятие может отличаться в соседних городах и даже в соседних отделах одной конторы).

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

> для отдельной гостевой странички с комментариями под эррату

А чем вас не устраивают комментарии на страничке самой эрраты?

> И остаётся загадкой, что же имелось в виду: рубли? гривны? тенге? евро, доллары?

На мой взгляд, всё станет очевидно, если прочитать первое предисловие (которое "философское").

parent From rkvg-es (unverified) Wed Jun 19 12:16:49 2024 pencil

Re: Re: интерпретируемость и компилируемость

> Здесь, по-видимому, имеется разница в восприятии слов.

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

> А чем вас не устраивают комментарии на страничке самой эрраты?

Тем, что у меня ум за разум и шарики за ролики, и иногда я пишу быстрее, чем думаю. Конечно же, я хотел предложить просто дописать где-нибудь, что комментарии к изложению и стилистике не принимаются. Чтобы было куда людей носом тыкать.

> Вы меня только что на такую трату времени таки исхитрились развести

Ну, я просто стараюсь быть вежливым. :)

From cadabr (unverified) Tue Jun 11 22:26:01 2024 pencil

FAQ ideal_language

Предлагаю добавить ссылочку в FAQ: http://stolyarov.info/guestbook/archive/2/#comment-1166.

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

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

parent From Andrey V. Stolyarov profile Wed Jun 12 13:11:01 2024 pencil

userpic

Re: FAQ ideal_language

Ну, добавить-то я её добавил, пусть будет.

А вообще статья почти 17-летней давности к нынешнему моменту уже не отражает моего понимания этой темы. В те времена я ещё не знал про дихотомию Остерхаута и не понимал принципиальности различия между интерпретацией и компиляцией.


pencil

пояснение


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

Если вы искали сайт замечательного писателя-фантаста Андрея Михайловича Столярова, то вам, к сожалению, не сюда.

Андрей Михайлович Столяров в библиотеке Мошкова

ваш сеанс


Авторские права © Андрей Викт. Столяров, 2009 — 2024