Архив гостевой книги с 08.04.2021 по 04.08.2021Эта страница гостевой книги является архивной. Новые комментарии просьба оставлять в действующей гостевой книге. Ответы на старые комментарии здесь по-прежнему возможны. Учтите, что комментарии на этом сайте премодерируются. |
пояснениеВы находитесь на официальном сайте Андрея Викторовича Столярова, автора учебных пособий по программированию и информационным технологиям. Если вы искали сайт замечательного писателя-фантаста Андрея Михайловича Столярова, то вам, к сожалению, не сюда. Андрей Михайлович Столяров в библиотеке Мошковаваш сеанс |
☞ From Anonymous (unverified) Wed Aug 4 11:40:00 2021 UTC
Почему при
Почему при сдвиге вправо -5 shr 3, получается число не 31, а вот такая чертовщина 536870911? (11111011》00011111).
ответить
From admin Fri Aug 20 14:18:15 2021 UTC
А с чего вы
А с чего вы взяли, что число -5 компилятор Паскаля будет рассматривать как восьмибитное? Насколько я понимаю, разрядность чисел "по умолчанию" зависит от платформы, но однобайтовые в этой роли вообще никогда не используются. В данном случае, очевидно, компилятор рассматривает числа как 32-битные. Ну а дальше уже всё совсем просто, эта ваша "чертовщина", будучи переведённой в 16-ричное представление, выглядит вот так: 1fffffff Всё абсолютно корректно, старшие три бита нолики, остальные 29 бит единички.
ответить
☞ From Flau (unverified) Sat Jul 17 05:50:00 2021 UTC
Безымянные структуры
Недавно увидел, что структура, описанная через typedef, может объявляться без имени. Например, у структуры:
--- нет имени, но тип
ht_item
можно использовать. Правильна ли такая запись? Или трудно потом будет отловить ошибки с такими анонимными структурами?ответить
From admin Sat Jul 17 09:21:42 2021 UTC
У этой записи
У этой записи есть минимум один серьёзный недостаток: описать звено списка, дерева или иной подобной связной структуры так не получится, поскольку на момент, когда потребуется указать тип поля указателя на соседний элемент, сослаться на сам описываемый тип возможности не будет.
С какого момента такую запись "легитимизировали" и была ли она допустима до нашествия стандартизаторов — не знаю, не изучал вопрос. Сам я вообще не пользуюсь typedef'ом для структур, всегда пишу struct mystr, мне не лень.
Справедливости ради надо сказать, что на отлов ошибок подобные вещи если и влияют, то не настолько, чтобы это стоило обсуждать.
ответить
From Trollkarl (unverified) Fri Jul 23 11:37:00 2021 UTC
была ли она
была ли она допустима до нашествия стандартизаторов
Была. В первом издании K&R 1978 года в разделе, посвященном typedef, есть пример
ответить
☞ From Parthen Thu Jul 15 16:11:00 2021 UTC
В мою школу
В мою школу пришел приказ об исключении FreePascal из средств, доступных на ЕГЭ по информатике. Остались PascalABC, Cи и Python.
Иногда мне кажется, что в МинОбре звучит примерно эта музыка:
https://yewtu.be/watch?v=o5Tm8zV8FlA
ответить
From Trollkarl (unverified) Thu Jul 15 21:52:00 2021 UTC
Скорее уж
Скорее уж такая...
ответить
From admin Fri Jul 16 16:09:24 2021 UTC
Там по ссылке и
Там по ссылке и картинка тоже ничего :-) вполне соответствует
ответить
From Anonymous (unverified) Fri Jul 16 01:05:00 2021 UTC
Basic
А как же Basic и ШАЯ? Кстати, какой конкретно диалект бейсика был в ЕГЭ, кстати? Номеров строчек в заданиях не видно.
И что же это бейсик без номеров строк — не бейсик, а фигня какая-то.
Насчёт FPC — это они офигели. У ABC нет полной совместимости с нормальным паскалем, и, учитывая, .Net, не будет.
ответить
From admin Fri Jul 16 16:11:40 2021 UTC
Бейсиковские
Бейсиковские номера строк не имеют смысла при наличии текстового редактора. Когда весь мир писал на бейсике с нумерованными строками, привычный ныне цикл "редактируем-компилируем-запускаем-goto1" на многих компьютерах было невозможно реализовать сугубо технически.
ответить
From Parthen Fri Jul 16 16:51:00 2021 UTC
Тормозите, Basic и
Тормозите, Basic и ШАЯ -- это языки на которых программы в текстах заданий показывают.
А я говорю про то, на чем писать вторую часть. Так вот FreePascal убрали в том смысле, что убрали его компилятор.
ответить
From admin Fri Jul 16 16:07:57 2021 UTC
Что вы, что вы,
Что вы, что вы, Воланд же хороший и вообще классный. Если говорить о персонажах "Мастера и Маргариты", то минобровцев следует сравнивать скорее с тем буфетчиком, который задвигал про осетрину второй свежести. Мерзкие людишки, от которых ничего кроме вони.
ответить
☞ From Anonymous (unverified) Mon Jul 12 18:46:00 2021 UTC
Здравствуйте!
Здравствуйте! Возможно-ли заставить символ передвигаться по экрану не используя модуль crt.
ответить
From admin Tue Jul 13 10:03:17 2021 UTC
Конечно, можно:
Конечно, можно: сам модуль crt ведь это как-то делает :-)
Если речь идёт о терминалах в ОС семейства Unix, то это всё делается escape-последовательностями, желаю удачи в их изучении. Как это всё устроено, например, в Windows — понятия не имею. В программах для MS-DOS было два пути управлять экраном — через функции int10h и через прямую запись в видеопамять, но это уже давняя и никому не нужная история, четверть века как неактуальная.
ответить
From Anonymous (unverified) Tue Jul 13 10:59:00 2021 UTC
Семейство Windows и консоль
В блоге на сайте MS я почитал, что в современной версии Windows (Windows 10 с обновлениями 2018-года и новее) наиболее правильно просто кидать UTF-8 на stdout/stderr вперемешку с ANSI-последовательностями. То есть делать, ровно то же самое, что в современных UNIX-подобных ОС с локалью UTF-8.
В более старых версиях Windows для работы с консолью используется Windows Console API, например функции WriteConsole. Причём для каждой такой функции есть две версии, например WriteConsoleA и WriteConsoleW. Первая требует текста в однобайтной кодировке, а какой именно — зависит от кодовой страницы, при этом хотя кодовая страница 65001 для UTF-8 есть, но на практике толком не работает. Второй нужен юникод UTF-16.
При этом, старая консоль винды не является терминалом, поскольку она жестко завязана на локальную машину. Программы вроде sshd вынуждены использовать особые извращения. Например они позволяют винде перехватить запуск консольного приложения и открыть окно консоли, а затем прячут его или сдвигают за границу экрана и там уже читают буфер консоли, сравнивают с предыдущим состоянием и на основании этого генерируют ANSI-коды. А в обратную сторону, соответственно, имитируют нажатия клавиш в окне консоли.
Ещё есть вариант залезть в память консольной программе и выполнить перехват нужных функций Windows API.
В общем, даже сами мелкомягкие сообразили что сделали какую-то фигню и спустя всего-то 30 лет начали её исправлять.
Сам лично я вантузы на компьютере не держу, поэтому прошу простить за возможные неточности.
ответить
From Anonymous (unverified) Tue Jul 13 18:13:00 2021 UTC
Перенос программ на виндовс
Пытался перенести свою змейку на винду так как друзья попросили, это ужас такой. В виндовском компиляторе паскаля нет даже ScreenWidth и ScreenHeight. Так к тому же cmd.exe медленно печатает символы я бы даже сказал очень медленно. Вобщем как и в книжке написано моя программа перестала быть живой и перестала приносить радость.
Удивительная вещь терминал линукса он успевает даже с задержкой в 10 мс все передавать качественно.
ответить
From admin Wed Jul 14 07:25:38 2021 UTC
В юниксовых
В юниксовых терминалах нет ничего удивительного, это просто программы, которые работают так, как должны работать программы. Если прикинуть, какие действия нужны для того, чтобы в одном месте терминального окна "нарисовать" пробел, а в другом — отрисовать символ, то становится понятно, что 10мс — на минуточку, сотая доля секунды, т.е. два-три десятка миллионов тактов CPU — это целая вечность.
Удивительно скорее то, где берут безмозглых жопоруких идиотов, которые пишут "современные" программы под ту же винду и в особенности под веб.
ответить
From Anonymous (unverified) Wed Jul 14 08:06:00 2021 UTC
А я вот в своей
А я вот в своей игры для консоли линукса думал для каждого кадра, даже если там один символ меняется, формировать полностью весь экран и дампить на stdout, чтобы обойтись без всяких ncurses/crt и было сразу переносимо на любую систему.
ЭТо очень плохая идея или так всё-таки тоже можно?
ответить
From admin Wed Jul 14 12:51:00 2021 UTC
Абсолютно
Абсолютно нежизнеспособная идея, работать будет со скоростью варёной черепахи, но что намного хуже — пользователь будет видеть, как это всё перерисовывается, и его это будет дико раздражать. Для непосвящённых это выглядит как нелепое дёргание изображения.
ответить
From Anonymous (unverified) Thu Jul 15 06:57:00 2021 UTC
stdout
А как можно объяснить вот такое? (дело происходит в обычном терминале в графическом окне)
А baudrate надо делить на 10, чтобы получить количество байт в секунду, учитывая 8 бит данных, старт и стоп-бит, то есть фактическая скорость вывода на терминал примерно 291 мегабод. Почему тогда stty пишет 38400?
И неужто такой скорости не хватит на несчастные 400 символов каждые 100 миллисекунд?
ответить
From admin Fri Jul 16 17:08:00 2021 UTC
Что у вас за
Что у вас за каша из всего сразу?! Скорость в бодах — это параметр физической линии, а её у нас нет, так что этот параметр ни на что не влияет (вот то есть вообще ни на что), можете хоть упороться со своим stty :-) (ну то есть другие параметры дисциплины линии бывают полезны, но уж никак не этот). Далее, даже если бы он на что-то и влиял, скорость работы программы xterm или любой аналогичной, естественно, упирается не в скорость обмена с подчинёнными программами, а в скорость отрисовки получаемого безобразия на экране, и уж тут, простите, разница в потребных ресурсах, э... ну, порядка на два точно будет, если не на три. А нолики из /dev/zero оно жрёт с такой дикой скоростью исключительно потому, что их рисовать не надо.
Ну и последнее, откуда вы 400 взяли? 25x80, знаете ли, 2000 будет. Это, впрочем, в сравнении с остальным сущая ерунда.
ответить
From Anonymous (unverified) Fri Jul 16 22:47:00 2021 UTC
Да, с
Да, с арифметикой я что-то ошибся малость...
80x25=20x100=2000, один десятичный порядок потерял, а на два я умножил из-за того что у меня box drawing characters в UTF-8, а они вообще по три байта занимают, но, с другой стороны, полно пробелов по одному байту.
> это параметр физической линии, а её у нас нет
А если вдруг надо ограничить скорость, чтобы потестить как программка работает на 9600 бод, что делать? phosphor из /usr/libexec/xscreensaver/ расчехлять, петлю из двух USB-Serial адаптеров втыкать или способы попроще есть?
> А нолики из /dev/zero оно жрёт с такой дикой скоростью исключительно потому, что их рисовать не надо.
Хорошо, провёл ещё один тест, причём именно с xterm:
Если предположить, что прорисовка экрана игры будет с той же скоростью, то этого должно хватить на тысячу или две кадров в секунду, а в игре будет раз так в 10-100 меньше, так что ничего лагать не должно.
ответить
From admin Tue Aug 3 06:53:00 2021 UTC
> А если вдруг
> А если вдруг надо ограничить скорость,
понятия не имею, не изучал вопрос
> причём именно с xterm:
из процитированного вами не видно, где тут, собственно говоря, xterm, вот только сдаётся мне (судя по циферкам), что всё это нарисовать вы ему толком не дали. Иначе бы так быстро не получилось. nb: у xterm всё-таки внутри есть кое-какие оптимизации, так что, например, когда его окна не видно (в том числе если оно ещё не открылось), он на "прорисовки" времени не тратит.
Вы лучше попробуйте вашим способом — выплёвывая на каждый кадр весь экран — погонять звёздочку вдоль границ экрана. Причём ещё для чистоты эксперимента остальной экран заполните не пробелами несчастными, а каким-нибудь другим символом, ну хоть "решёткой".
ответить
From Anonymous (unverified) Wed Jul 14 12:27:00 2021 UTC
"Удивительно
"Удивительно скорее то, где берут безмозглых жопоруких идиотов, которые пишут "современные" программы под ту же винду и в особенности под веб"
А по-моему ничего удивительного. Достаточно сказать "программировать может каждый", подкрепить это железобетонным аргументом в виде yet_another_framework.super_puper_easy и пообещать зарплату. Через N лет всё будет готово.
ответить
From Anonymous (unverified) Tue Aug 3 04:34:00 2021 UTC
Всё очень
Всё очень просто: терминал линукса использует аппаратное ускорение отрисовки (GPU), консоль винды - нет. Увы, это требование совместимости с миллионами старых г-скриптов, где алгоритм работы завязан на скорость отрисовки.
Есть Windows Terminal, он точно с аппаратным ускорением. Но увы, Windows 10 only, да ещё и устанавливать руками надо. Возможно, среди альтернативных консолей найдётся что-то шустрое, но я сомневаюсь: все известные мне запускают скрытое окно консоли винды и как-то через него работают.
ответить
From Anonymous (unverified) Wed Jul 14 20:19:00 2021 UTC
Что можно
Что можно почитать об escape последовательности? В интернете кое-что нашел, но как устанавливать время(задержку) - об этом ничего, наверное придется создавть большой цикл.
ответить
From admin Thu Jul 15 21:35:33 2021 UTC
У вас в голове
У вас в голове бардак. Esc-последовательности служат для управления выводом на экран. Задержка — это вообще совсем другая задача, из совершенно другой области. И нет, задержки нельзя делать циклами, это нагружает процессор холостой работой.
ответить
From Anonymous (unverified) Fri Jul 16 02:50:00 2021 UTC
Спасибо
Спасибо большое! Натворил бы я делов с циклами.
ответить
From admin Fri Jul 16 16:15:42 2021 UTC
В модуле sysutils
В модуле sysutils вроде есть процедура sleep, ну или можно специально сделать модуль на Си из одной процедуры, которая будет обращаться к соответствующим системным средствам.
ответить
☞ From Anonymous (unverified) Mon Jul 5 13:19:00 2021 UTC
PascalABC.net
Я тут потыкал этот продукт инженерной мысли.
В общем выяснилось, что туда напихали ни с чем не совместимых расширений языка:
Например декларация переменной-счётчика разрешена и даже рекомендуется прямо в заголовке цикла for. При этом написано, что внутри цикла эту переменную менять нельзя.
Есть полно функций, которые отсутствуют в других имплементациях паскаля. Зато, на попытку uses SysUtils; пишет что такого модуля нету.
Есть сборка мусора. но работает только для всяких там объектов. Из-за этого нормальные указатели объявлены устаревшими.
Указатели при этом ведут себя как-то странно. То есть их можно свободно присваивать друг другу, зато при попытке их кастовать компилятор ругается. При этом через промежуточный тип Pointer указатели разных типов всё-таки можно присваивать.
Арифметика указателей не работает. Интересно, можно ли её скостылить путём приведения указателя к числу и обратно?
Writeln(stderr, 'some error message'); не работает. вроде ещё был вариант с ErrOutput или как-то так, но в поиске по справке pABC его не видно, видимо тоже не работает.
ReadStr нету. Чем читать число из параметра командной строки непонятно. В FreePascal ещё есть вариант StrToInt, но не работает с 64-битными целыми.
IDE PascalABC не вставляет перевод строки после End. в конце программы сама, надо вручную перейти туда и нажать Enter, иначе будет сохранён некорректный текстовый файл.
В общем, если изучать паскаль, пользуясь PascalABC — вы будете изучать не паскаль, а именно диалект PascalABC, а программы потом нигде больше работать без существенной переделки не будут.
Но зато консольный компилятор в mono всё-таки работает. Только нафига он нужен?
ответить
From admin Mon Jul 5 14:19:06 2021 UTC
Большая часть
Большая часть этого всего, положим, сугубо пофигу, лично я не считал и не считаю, что Паскаль стоит изучать как будущий рабочий инструмент. Да и с совместимостью разных диалектов Паскаля всегда всё было плохо. Ну а что переменную цикла нельзя менять внутри цикла — так это ограничение присутствовало ещё в виртовском "изначальном" диалекте, то есть это совершенно не новость. И, представьте себе, мне SysUtils ещё ни разу не потребовался за всю жизнь, даже тогда, когда я программированием на Паскале зарабатывал деньги (я даже с ходу не скажу, существовал тогда этот модуль или нет).
Но вот дотнет и моно — это да-с. И сборка мусора, про её наличие я в ABC даже и не знал. И что указатели себя странно ведут — тоже, мягко говоря, нехорошо.
Но вообще ABC я как-то даже и не думал, что может рассматриваться иначе как учебное пособие, Free Pascal-то хотя бы его создатели считают практическим инструментом, а тут вроде и этого нет. Или я ошибаюсь?
(ну а языки, созданные исключительно чтобы на них учить, а не писать, для серьёзного обучения не годятся, см. предисловия)
ответить
From Anonymous (unverified) Mon Jul 5 17:58:00 2021 UTC
> лично я не
> лично я не считал и не считаю, что Паскаль стоит изучать как будущий рабочий инструмент
Ну, мне кажется, что диалект FreePascal не сильно хуже, чем C, раз уж указатели кастуются как угодно и к ним можно спокойно применять арифметику. Вот если я наткнусь сам лично на какие-то проблемы — тогда будет другое дело.
Ну не могу я просто так взять и поверить мнению человека из интернета, мне надо самому увидеть что с паскалем не так.
> И сборка мусора, про её наличие я в ABC даже и не знал.
Ну, если ООП не трогать, она не применяется. Указатели, на которых применили new нужно освобождать через dispose, как и везде. Так что думаю, это не особо страшно.
> а тут вроде и этого нет. Или я ошибаюсь?
Судя по официальному сайту, таки считают, что можно применять и не только для обучения:
PascalABC.NET – мощный язык с простым и логичным синтаксисом, хорошо понятным начинающим программистам. Это позволяет писать компактные, эффективные и понятные программы и делает данный язык идеальным выбором для обучения современному программированию в широком смысле: от учеников начальной школы до студентов профильных ИТ-направлений. Кроме того, он превосходно подходит как для создания консольных приложений малого и среднего размера, так и в качестве средства программирования «на каждый день».
Только что-то я им, пока что, не верю. Что за консольные программы такие без stderr?
> И что указатели себя странно ведут — тоже, мягко говоря, нехорошо.
Ну с этим ещё разбираться надо.
Вот такой код у меня отлично работает в FreePascal. В ABC — только после замены ReadStr на ReadLn и переделывания кастов указателей. Если что, цель кода — одни и те же 8 байт памяти попробовать интерпретировать разными способами.
Но при этом, код для создания и обхода связного списка на базе записей у меня заработал без изменений.
ответить
From Oliver (unverified) Thu Jul 8 07:32:00 2021 UTC
Цель?
Вы, случаем, не тот аноним, который рассказывал про то, что начинающему программисту для перехода на Линукс надо знать кучу вещей о дисках, терминальные утилиты создания ФС, их монтирования и.т.д.?
Я просто читаю комментарии об PascalABC.NET, и у меня опять возникает вопрос: с какой целью Вы вот все это сдесь пишите?! На Линукс PascalABC.NET? Вы читали предисловние книги автора сайта?
ответить
From Anonymous (unverified) Fri Jul 9 15:39:00 2021 UTC
Что бы люди
Что бы люди узнали, почему конкретно PascalABCnet — ненужно, если им интересно.
ответить
From admin Sun Jul 11 20:20:27 2021 UTC
что-то меня это уже напрягать начинает
Настоятельно рекомендую разобраться с правилами и научиться отличать "что бы" от "чтобы" и писать правильно, тем более что правило там может быть сложным, но проверка, правильно написано или нет — тривиальна: если фраза меняет смысл или вообще разваливается при убирании "бы", то этот слог — часть слова и пишется слитно. Лично я на этой ошибке довольно жёстко спотыкаюсь при чтении, так что отныне комментарии, содержащие неправильное написание "что бы" vs. "чтобы" раскрываться не будут.
ответить
From Anonymous (unverified) Tue Jul 6 01:11:00 2021 UTC
Вместо тысячи
Вместо тысячи слов: https://pascalabcnet.github.io/school_basic.html
В общем втюхивают школьникам C# под видом паскаля.
ответить
From Anonymous (unverified) Wed Jul 7 19:45:00 2021 UTC
Указатели в PascalABC.net
То, что он сам на .Net/mono работает, наверное не так и страшно. Проблема в том, что и программы он компилирует под эту среду. А там они оказываются под управлением менеджера памяти, который может делать хрен знает что прямо во время исполнения. Поскольку нормальные указатели в такой ситуации невозможны, он их имитирует с помощью средств платформы — потому они и ведут себя странно. Отсюда же и сборка мусора.
ответить
☞ From Oliver (unverified) Mon Jul 5 07:06:00 2021 UTC
Добрый день,
Добрый день, Андрей Викторович! У меня - вопрос из серии "Так можно, но вот нужно ли...".
Короче, есть у меня в программе на Си динамический массив arr, который буду заполнять символами из текстового файла, число символов - известно, память соответственно - выделена. И вот в чем вопрос: заполнение массива кодом
int ch;
for(int i = 0;((ch = fgtec(file)) != EOF); i++)
*(arr + i) = ch;
будет ок? В смысле, работать то оно работает, просто в книге Вы приводите некоторые примеры кода на Си, которые работают, но которые лучше не использовать. Вот и я решил перестраховаться, и спросить, будет ли такой код ОК не только с точки зрения того, что он работает.
Спасибо заранее!
ответить
From admin Mon Jul 5 08:12:00 2021 UTC
Ну тут я даже не
Ну тут я даже не знаю, с чего начать. Во-первых, речь идёт о Си? Не о Си++? Если да, то какое к дьяволу описание переменной цикла в заголовке?! (если что, про "новые стандарты" мне в очередной раз рассказывать не надо).
Во-вторых, вот это вот
*(arr + i)
— вам какая религия не велит написатьarr[i]
?А в целом — ну вот я на этой конструкции ожидаемо споткнулся, секунды три пытался понять, правильно там всё или нет и вообще что она делает. Цикл-то у вас не арифметический, то есть на момент входа в него количество итераций неизвестно. Не так чтобы вообще было нельзя в таких случаях использовать for, но зачем? Разве что "чтоб никто не догадался", но у нас обычно цель прямо противоположная. Несомненно, я бы написал так:
Здесь в заголовке цикла — известная всем идиома, на ней обычно никто не спотыкается; дальше чёткая последовательность действий, вот присваивание, вот приращение индекса, возвращаться к заголовку и вспоминать. что i++ туда засунули, не требуется.
ответить
From Oliver (unverified) Mon Jul 5 09:01:00 2021 UTC
Спасибо Вам
Спасибо Вам большое за замечания!
ответить
From admin Mon Jul 5 10:50:39 2021 UTC
Ещё тут
Ещё тут справедливо подметили, что совершенно необходима проверка на выход за длину массива. Массивы бесконечными не бывают, а символы в потоке — запросто. Без этой проверки получается классический gets, ну а что такое gets и чем он грозит — в книжке подробно расписано.
ответить
From Oliver (unverified) Mon Jul 5 12:28:00 2021 UTC
Программа
Программа получает на вход файл с символами, считает их, потом полученное число символов испульзуется для создания динамического массива, который заполняется символами из того же, программой полученного в аргументе файла. Так что, число символов в файле соответсвтует длине динамоческого массива.
ответить
From admin Mon Jul 5 14:23:26 2021 UTC
Уж сколько раз твердили миру
Ну а кто вам гарантирует, что содержимое файла не изменится между этим вашим подсчётом и последующим чтением? Особенно если кто-то это сделает намеренно, чтобы вашу программу того-с, поиметь?
Нельзя доверять внешним источникам данных, это общее правило.
ответить
From Oliver (unverified) Mon Jul 5 14:26:00 2021 UTC
Понял.
Понял.
ответить
From Anonymous (unverified) Mon Jul 5 09:39:00 2021 UTC
Ну и
Ну и по-хорошему, не стоит полагаться на известность числа символов. Мало-ли что это за файл... Всё равно стоит добавить i < length.
ответить
From admin Mon Jul 5 10:48:54 2021 UTC
Кстати да,
Кстати да, слона-то я и не приметил. Видимо, спал плохо :-) Это ж откровенный gets получается. Без проверки выхода за пределы массива тут нельзя вообще никак.
ответить
☞ From Anonymous (unverified) Mon Jul 5 04:40:00 2021 UTC
Нумерация страниц
А можно ли было сменить нумерацию страниц в книге, так что бы она совпала с нумерацией страниц в PDF-файле для удобства работы с содержанием? Например если в содержании указана страница 72, то для перехода к этой странице нужно набрать 74 в PDF-просмотрщике. Для бумажной же книги, думаю пофиг, с какой страницы начинается нумерация.
Кроме того, не повредили бы и гиперссылки, которые PDF-формат поддерживает, что бы можно было переходить к нужной главе кликом по пункту содержания/оглавления.
Или были какие-то принципиальные причины, требующие начинать нумерацию страниц с третьей страницы файла?
ответить
From admin Mon Jul 5 08:32:00 2021 UTC
Кто вам сказал,
Кто вам сказал, что "для бумажной книги пофиг"? Он вас жестоко обманул, в бумажной книге страница номер 1 — это титульный лист, страница номер 2 — его оборот, где реферат и всякие коды, а первая страница собственно содержания книги — всегда имеет номер 3, это мировая константа, в смысле совершенно незыблема.
Ну а в версиях, доступных здесь на сайте, к оригинал-макету бумажной книги спереди добавлены страницы, содержащие обложку и текст лицензии. Отсюда сдвиг на два. И нет, с этим категорически ничего нельзя сделать.
ответить
From Anonymous (unverified) Thu Jul 8 06:52:00 2021 UTC
Синхронизация номеров страниц
> а первая страница собственно содержания книги — всегда имеет номер 3, это мировая константа, в смысле совершенно незыблема.
Я не знал этого. Всегда удивляла мешанина номеров страниц в книге, где первая страница с номером имеет цифру 7, где 11, а где 3, потому и думал что пофигу.
> Отсюда сдвиг на два. И нет, с этим категорически ничего нельзя сделать.
А вот тут вы не правы, как утверждают товарищи, разбирающиеся в кишках PDF-формата. Синхронизировать номера страниц в читалке и в книге можно.
Вот такую хрень надо вставить в корневой объект, тогда в читалке первые две страницы будут римскими цифрами, а потом арабскими.
ответить
From admin Tue Jul 13 11:55:20 2021 UTC
мешанина
мешанина номеров страниц в книге, где первая страница с номером
Если номер на странице не напечатан, это не значит, что у неё нет номера. Просто есть одно довольно хитрое правило, где ставить номер, а где не ставить. Номер ставится там, где текст "перетекает" через него, а где этого нет — там он не ставится (это, кстати, касается любых многостраничных документов, не только книг; если б ещё это знали составители всевозможных договоров и тому подобного).
В частности, если нумерация страниц расположена вверху, то номеров не будет на первых страницах частей/глав, то есть где текст начинается с новой страницы. Напротив, если нумерация идёт понизу, то номер страницы не ставится на последней (обычно неполной) странице книги, как и на последних (тоже обычно неполных) страницах частей/глав, после которых текст продолжается с новой страницы. Если внизу и/или вверху есть не только номер страницы, а прямо-таки целый колонтитул, то на него это правило тоже распространяется: на последней/неполной странице не должно быть нижнего колонтитула, а на первой странице части/главы, если таковая начинается с новой страницы, не должно быть колонтитула верхнего.
На таких страницах, которые "сами по себе", то есть не являются ни продолжением текста, ни началом такого текста, который дальше продолжается, не бывает ни верхнего, ни нижнего колонтитула, и такие страницы никогда не несут на себе номера.
НО! вне всякой зависимости от того, есть на странице её номер или нет, любая страница имеет номер, просто он не всегда печатается. Но он всегда есть и учитывается.
Рискну предположить, что эти ваши "7" или "11" возникали из-за того, что все предшествующие страницы были "страницами, которые сами по себе". Например, я легко могу представить сначала какое-нибудь посвящение, после которого оставляется пустая страница (она тоже имеет номер!), потом оглавление на одну страничку, потом на отдельной странице заголовок части, и после него тоже пустая страница, и все они имеют номера, хотя номера и не печатаются — вот вам начало нумерации страниц аж с девятой. На нумерацию с 11й страницы тоже можно что-нибудь придумать, например, в переводных книгах часто бывает два титульных листа — на языке оригинала и на языке перевода.
Вот такую хрень надо вставить в корневой объект
Вы мне что, предлагаете PDF редактировать вручную? Нет уж, спасибо :-) Заклинаний я в тексты на формальных языках не вставляю никогда, в том смысле, что чтобы вставить что-то эдакое, мне для начала нужно разобраться, что при этом конкретно происходит, то есть понять, почему именно так, а не иначе; ну а изучать ради этого язык PDF мне совершенно некогда.
ответить
From Anonymous (unverified) Tue Jul 13 12:15:00 2021 UTC
Заклинание из PDF
Я полагаю, что раз это есть в PDF, то и в LaTeX оно каким-то образом делается.
А можете попробовать просто сделать что-нибудь вроде
\pagenumbering{roman}
...
\pagenumbering{arabic}
у себя? На двух первых страницах номера римские, но их не печатать, на остальных арабские — их печатать по правилам как вы сами изложили выше. Вдруг в сгенерированном PDF-файле появится нужное заклинание и в просмотрщике таки будет всё синхронно.
ответить
From admin Tue Jul 13 14:24:57 2021 UTC
Вообще да,
Вообще да, можно, пожалуй, с этим попробовать поиграть.
ответить
☞ From Anonymous (unverified) Sun Jul 4 15:33:00 2021 UTC
Оформление комментариев на сайте
Андрей Викторович, добрый день.
Я периодически читаю вашу гостевую книгу (из любопытства - часто здесь можно найти интересные дискуссии) и натыкаюсь на то, что многоуровневые комментарии не слишком удобно читать.
На вашем сайте комментарии организованы в древовидную структуру: потомками комментария-родителя являются комментарии-ответы (упорядоченные по дате добавления), листовыми вершинами являются комментарии, на которые никто не ответил. И когда от одного конкретного верхнеуровнего комментария разветвляется немаленькое такое поддерево, которое не помещается в экран браузера, становится сложно понять, какой комментарий за каким в этом поддереве следует.
Я это все к чему - возможно ли добавить на сайт сворачивание комментариев при отображении? Если у каждого комментария появилась бы кнопка "-", которая сворачивает соответствующее поддерево (но оставляла бы сам комментарий-корень этого поддерева), то читать было бы удобнее. А по умолчанию все комментарии были бы развернуты, как сейчас.
ответить
From admin Sun Jul 4 18:48:16 2021 UTC
Не, ну ладно,
Не, ну ладно, что сайт на пятом друпале, который лет десять как EOL и который я, конечно, переделывать даже пробовать не буду — это ладно, таких подробностей можно и не знать. Но вы хотя бы понимаете, что все вот эти вот "сворачивания-разворачивания" делаются исключительно исполнением кода в браузере — тем самым, за которое я с удовольствием бы отрубал руки всем, кто его применяет, причём делал бы это сам, лично, только топор дайте — вот хотя бы это сообразить не судьба?
ответить
From Алексей Вересов (unverified) Mon Jul 5 03:46:00 2021 UTC
Пара возражений =)
Первое возражение — подобное можно сделать с помощью подмножества CSS3 не допускающего Тьюринг-полноту, но код там адский, конечно. Вот пример — при отключенном JS складывание всё равно работает, исходники можно посмотреть там же с включённым JS или через просмотр кода в браузере.
Второе возражение — кажется эту проблему можно решить малой кровью — добавив ссылку на тот коммент, на который данный является ответом, типа такой. Но я конечно понимаю что друпал и все дела, а парится руками проставляя пожалуй не вариант.
ответить
From admin Mon Jul 5 08:27:40 2021 UTC
Пардон, CSS3 сам
Пардон, CSS3 сам по себе тьюринг-полон, а отрестриктить от него подмножество — это, может, и можно, но эдак можно и до подмножеств JS докатиться (ненуачо, запретить там рекурсию и неарифметические циклы, например, а арифметические циклы ограничить на число итераций некой глобальной опцией, скажем, "ни один цикл да не прокрутится больше 1000 раз", и эту 1000 унести в настройки браузера). Утопия это всё. Требование "CSS не выше первого уровня" хотя бы чётко сформулировано.
А ссылка на парента вроде и не очень нужна, есть ведь отступы.
ответить
From Anonymous (unverified) Mon Jul 5 09:46:00 2021 UTC
Отступы, к
Отступы, к сожалению, трудно посчитать при выходе из вложенной ветки комментариев. Если бы в дополнение к отступу был бы какой-нибудь визуальный символ (вертикальная пунктирная линия или что-то такое), то их можно было бы быстро посчитать. А посчитать пустоту на глаз очень трудно...
ответить
From Parthen Mon Jul 5 11:31:00 2021 UTC
Немного влезу
А может как на LOR'e сделать?
Т.е. оставить все как есть, но по щелчку на комментарий открывается отдельная страничка с этим комментарием и его потомками. Только вот родители комментария не показываются, из-за чего наш комментарий будет во всю длину.
ответить
From admin Mon Jul 5 14:27:23 2021 UTC
Ага, ну я уже
Ага, ну я уже вот прямо побежал разбираться в куче кривых PHP-скриптов 15-летней давности, каковую представляет собой пятый друпал.
ответить
From nelson Mon Jul 5 08:45:40 2021 UTC
Надуманная проблема
Это делается элементарно с помощью bash-скрипта (ну или что вы там предпочитакте): забираете себе страницу с комментариями, парсите, и генерируете новую с удобной вам разметкой. Зачем нагружать хозяина сайта какой-то ненужной работой? Да ещё и предполагающей использование жабаскрипта. Не надо так )
ответить
☞ From Anonymous (unverified) Thu Jul 1 19:10:00 2021 UTC
Здравствуйте,
Здравствуйте, будет ли толк в плане становления программиста, перед началом изучения программирования, изучить линукс и английский. Или пока что достаточно тех знаний о линуксе, которые есть в вашей книги. Насчет английского, я не знаю как правильно подбирать слова для своих переменных, я начинаю путаться в этих переменных, потому что плохо знаю английский; потому и родилась идея усвоить английский как следует.
ответить
From admin Thu Jul 1 20:18:04 2021 UTC
Linux не надо
Linux не надо "изучать", его следует просто начать использовать. В процессе он сам "изучится".
Что касается английского — это, несомненно, штука полезная, и, больше того, для профессионального программиста совершенно необходимая. Но недостаточное знание английского — это совершенно не повод откладывать освоение программирования: с переменными всё просто, берёте словарь и используете нужные слова, заодно словарный запас поднимете. Хуже с комментариями, там нужно хоть чуть-чуть уметь строить фразы; но на начальном этапе без комментариев можно обойтись. Если боитесь, что в собственной программе потом не разберётесь (а это возможно), пишите себе заметки по-русски, только делайте это в отдельном файле, а не в самой программе. Например, можно в отдельном текстовом файле написать, за что у вас отвечает каждая из подпрограмм; это в любом случае очень полезно само по себе, даже если по-русски :-)
Сказанное, разумеется, никоим образом не значит, что можно вообще английский не учить. Просто вы английский освоите одновременно с программированием, и при освоении у вас стимул будет и постоянная практика, то есть одно другому ещё и поможет.
ответить
From Anonymous (unverified) Fri Jul 2 03:40:00 2021 UTC
Изучение линукса
> Linux не надо "изучать", его следует просто начать использовать. В процессе он сам "изучится".
Что-то мне это кажется сомнительным, поскольку я видел тех кто пользовались линуксом уже долгое время, но всё ещё спотыкались на каких-то довольно простых вещах.
Хотя, если пользоваться именно как средой для программирования — может и правда сработает.
У мозга есть такое слово — зацикливаться на уже знакомом действии. Если пользователь, пусть даже линукса, уже привык включить компьютер, ввести логин/пароль, нажать на меню, запустить браузер, открыть пару сайтов, потыкать ещё пару-тройку программ по необходимости, а по окончанию работы выключить компьютер, то он вполне может это делать годами, не только не продвигаясь в изучении, но и даже забывая старое.
ответить
From admin Fri Jul 2 18:11:55 2021 UTC
Если цель
Если цель научиться программировать, то "пользоваться именно как средой для программирования" бессмысленно, цель достигнута не будет. В *nix-системе нужно именно жить, делать там всё, что вообще делается с помощью компьютера, то есть ни для каких целей другие системы не применять.
Но вот "сначала изучить Linux, а потом уже..." — это, извините, полный бред. Linux можно "изучать" всю жизнь, это процесс бесконечный. А если кто-то на одном и том же то и дело спотыкается, но категорически не желает слазить в интернет и узнать, как и что — так с этим вообще ничего сделать нельзя, это личностная особенность, тут к психологам.
ответить
From Anonymous (unverified) Fri Jul 2 21:21:00 2021 UTC
слазить в
слазить в интернет и узнать, как и что
Кстати, да. Линукс прививает такую нездоровую привычку, лазить в интернет чтобы узнать, как и что.
Но с тех пор, как я перешёл на OpenBSD, мне с этой привычкой хочется бороться.
Потому что уже несколько раз было такое: лезу в интернет, с трудом нахожу неполную и устаревшую информацию, начинаю тыркаться, открываю, наконец, man -- а там всё актуально и подробно расписано. Становится неловко, я бы даже сказал, стыдно.
В общем-то, это и в линуксе часто работает с манами. Поэтому, я бы вместо "но категорически не желает слазить в интернет" писал "но категорически не желает читать маны".
ответить
From Anonymous (unverified) Sat Jul 3 11:33:00 2021 UTC
> Поэтому, я бы
> Поэтому, я бы вместо "но категорически не желает слазить в интернет" писал "но категорически не желает читать маны".
Ладно, вот такой пример: купил ты многокнопочную мышь, подключил к компу, она работает, но одна из специальных кнопок ничего не делает и в xev или xinput на неё вообще никакой реакции. В интернете по ней или нет результатов вообще или есть, но без ответов. Что делать будешь?
Можно годами пользоваться этой мышью, забив на эту неработающую клавишу. А можно таки разобраться и написать к ней свой драйвер. Твой вариант?
Только ли в нежелании читать маны дело?
ответить
From admin Sat Jul 3 14:02:02 2021 UTC
Мне вот всегда
Мне вот всегда было интересно, накой вообще чёрт на мышке больше трёх кнопок (включая колесо, которое тоже кнопка, но не все это знают). А драйвер писать только потому, что мышь такая попалась — мышь-то не вечна, как-то так жалко времени. Разве что если хочется развлечься и разобраться, как в линуксе устроены драйверы нетривиальных hid-устройств.
ответить
From Parthen Sat Jul 3 18:13:00 2021 UTC
Протестую
Вот на кой черт мышке средня кнопка я до сих пор понять не могу, даже когда случайно открыл что держать мышку удобнее указательным на левую, средний на скроллинг и безымянный на правую, что как бы должно было мне упростить доступ к средней кнопке. Да вот нифига, это что так, что этак жутко неудобно.
А кнопки слева, под большим пальцем удобны, ибо он все равно без дела. В браузере они по умолчанию (причем, что интересно, в любых системах) выполняют роль стрелочек назад-вперед, что позволяет быстро просматривать страницы сайта.
Ну а лично у меня не в браузере они выполняют роль отключения микрофона и его усиления соответственно. Осталось еще с тех времен когда я в игры играл, а в особо напряженных моментах рука только так на клавиатуре летает, времени на комбинацию включения микрофона просто нет :)
ответить
From admin Sat Jul 3 18:53:50 2021 UTC
Про средюю
Средняя кнопка в unix-системах — это "paste" для классического буфера обмена. Вот выделить где-то текст, причём просто выделить, без всяких дополнительных команд, а в другом месте нажать на среднюю кнопку. Конечно, можно и Shift-Ins нажать, если только приложение эту комбинацию себе не забрало.
Про остальные кнопки — я как бы в курсе, что они делают, я не понимаю, как их можно использовать :-) Ну, видимо, кто-то понимает.
ответить
From Parthen Sat Jul 3 20:32:00 2021 UTC
>я не понимаю,
>я не понимаю, как их можно использовать
Я и говорю -- биндить на них сочетания клавиш, которые нужно экстренно нажать
ответить
From admin Sun Jul 4 08:21:19 2021 UTC
Ишшо раз: я
Ишшо раз: я знаю, что можно биндить. Я не понимаю, как это может быть удобно, и даже не так чтобы удобно, а хотя бы просто не настолько неудобно, чтобы этим хоть раз воспользоваться.
ответить
From Anonymous (unverified) Sat Jul 3 04:04:00 2021 UTC
Шаблоны поведения
> В *nix-системе нужно именно жить
Я имел ввиду, что если просто пользоваться линуксом на компьютере, как единственной системой, то этого мало. Мой опыт говорит, что это так не работает. У меня есть знакомые, которые в линуксе запускают несколько нужных им программ (как правило GUI), а в консоли умеют выполнять несколько готовых команд, причём ещё и набирая их по бумажке или копируя из старого текстового файла и за несколько лет их навыки ничуть не продвинулись.
А вот если в линуксе, помимо всего прочего ещё и программировать, возможно это будет уже лучше. Я это и имел ввиду под "пользоваться как средой для программирования". Но мне кажется, что всё равно мало. Надо ещё стараться подмечать свои паттерны привычных действий и по возможности упрощать их, пользуясь возможностями системы.
> Но вот "сначала изучить Linux, а потом уже..." — это, извините, полный бред. Linux можно "изучать" всю жизнь, это процесс бесконечный.
В такой формулировке — да. Но если добавить ограничения, то на мой взгляд, это уже разумно. Я бы сказал:
Вначале изучить линукс до такого уровня, что бы суметь его установить на комп, гарантированно не похерив имевшиеся на нём данные. Это может быть сделано многими способами, из которых самый простой:
Купить чистый диск + какой-нибудь переходник на USB, затем поменять его местами с встроенным в комп, затем на чистый диск поставить линукс, что можно будет уже делать безбоязненно, имея неограниченное число попыток, если что-то пойдёт не так. А после установки, старый диск можно подключать через переходник и брать с него нужные данные.
Если же возможности разобрать комп нет по причине кривизны рук или того что это какой-нибудь современный "ультрабук", где накопитель данных вообще распаян на плате или в лучшем случае требует полной разборки что бы до него добраться, то всё же прежде чем переходить на линукс, я бы посоветовал действительно кое-что изучить, в частности:
1. Что такое таблица разделов, чем MBR отличается от GPT и как они хранятся на диске, а так же адресация LBA и CHS. О второй достаточно знать, что она уже не используется, но всё ещё хранится в таблице разделов из-за совместимости.
2. Что такое начальный загрузчик, откуда он берётся в системах на базе BIOS и UEFI и как его поменять и настроить.
3. Иерархия файлов и каталогов в UNIX-подобных системах: всё начинается с / без всяких там C:, команды монтирования/размонтирования и навигации.
4. Файлы устройств типа /dev/sda, /dev/sda1 и команда dd, которой можно их дампить в файл или из файла писать на устройство, а так же монтирование loop mount, что бы достать файлы из образа целого раздела или диска не записывая его на диск.
5. Как устанавливается и настраивается конкретный выбраный дистрибутив. Для этого прочитать handbook / release notes. Там же могут быть и знания по пунктам 1-4.
В общем, нужно иметь достаточно знаний, чтобы уверенно сделать бекап данных с раздела Windows/MacOSX, если они на компе уже есть и не впадать в панику, если что-то работать в итоге не будет, а спокойно разобраться и всё починить.
Что интересно, большая часть всего этого не является специфическим для линукса, а требуется знать и для перехода на другую версию Windows, например.
> А если кто-то на одном и том же то и дело спотыкается, но категорически не желает слазить в интернет и узнать, как и что
Мне кажется, это довольно универсальная проблема — склонность действовать/мыслить по шаблону и неспособность из него выйти без толчка.
Пример. До этого, я при каждой загрузке компа (примерно раз в месяц) заново вручную открывал все программы которые мне нужны постоянно, включая эмулятор терминала в котором я вручную открывал несколько вкладок и переименовывал их.
Всё это можно сделать одним скриптом, я это прекрасно осознавал и тем не менее продолжал это делать, вместо того что бы написать скрипт. Правда, вот прямо сейчас я этот скрипт написал, заняло это у меня минут так десять. причём даже в интернете ничего искать не пришлось, всё нужное было мне уже известно.
Мне кажется, что это у всех так. Какие-то привычные действия формируются и продолжают выполняться, даже если есть более эффективное решение. Так что сам по себе линукс изучаться будет только до какого-то предела, а потом изученное станет забываться и останутся только эти самые паттерны.
> так с этим вообще ничего сделать нельзя, это личностная особенность, тут к психологам.
Так нельзя сделать или всё-таки можно, но с помощью психолога?
ответить
From admin Sat Jul 3 09:21:49 2021 UTC
Фигассе простыня :-)
если просто пользоваться линуксом на компьютере, как единственной системой, то этого мало.
Смотря для чего. В предисловиях к книге требование сформулировано более жёсткое: использовать unix-подобную систему, в которой всё делать в командной строке. Для целей книги — научиться программировать — этого достаточно.
Я бы сказал: Вначале изучить линукс до такого уровня
Тут есть одна проблема: новичок всего этого не знает, в каком направлении копать — не знает, и, самое главное, когда остановиться — тоже не знает. В принципе там и не надо останавливаться, вот только если он изучение программирования оставил "на после линукса", то до программирования дело вообще не дойдёт. Ну то есть возможно, что на выходе получится почти готовый unix-админ, которому потом на пару месяцев стажировки в какой-нибудь провайдер или крупную сетку, и будет хорошая работа и много денег; но, возможно, он свой шанс на более интересную работу (и на бОльшее количество денег, кстати) при этом упустит. Возможно, и нет, если такого шанса изначально не было, но мы этого не знаем.
или всё-таки можно, но с помощью психолога?
Я не психолог и возможностей психологов не знаю. А ещё я не уверен, что найдётся такой психолог, который поймёт, в чём тут заключается проблема, поскольку для этого нужно быть "немножко сисадмином".
ответить
From Anonymous (unverified) Sat Jul 3 11:07:00 2021 UTC
> Тут есть одна
> Тут есть одна проблема: новичок всего этого не знает, в каком направлении копать — не знает, и, самое главное, когда остановиться — тоже не знает.
Ну надо просто или осилить разобрать комп и поменять хард на чистый или осилить сделать бекап всей инфы с компа на внешний носитель. И осилить поставить ОС. Я думаю что даже новичок с этим за день-два справится. Вот и критерий когда можно начинать программировать — если сумел поставить линукс, он загружается, в терминал заходится, компиляторы поставились — значит можно программировать.
> А ещё я не уверен, что найдётся такой психолог, который поймёт, в чём тут заключается проблема
Это не специфично для компа. Например, если кран капает из соединения между смесителем и изливом.
вместо того что бы раскрутить его, купить прокладку, поменять, закрутить, человек так годами и подставляет под него баночку. Или если розетка шатается, он так и включает в неё приборы, придерживая пальцами, вместо того что бы её поменять или просто подтянуть винты.
ответить
From admin Sat Jul 3 13:45:12 2021 UTC
> осилить
> осилить поставить ОС
Ну это как бы я думал, что само собой предполагается. Найти стороннего исполнителя на эту задачу не так просто, всякие "компьютерные мастера" при слове "линукс" обычно сдуваются.
При всём моём уважении, это не называется "изучить линукс".
> Или если
или если человек не знает, когда "что бы" или "чтобы" пишется слитно или раздельно, он так и будет писать как попало, вместо чтоб разобраться. А правило-то простенькое: если убрать "бы" и при этом смысл меняется или вообще фраза разваливается, то это часть слова и пишется слитно. ВотЪ :-P
ответить
From Anonymous (unverified) Sat Jul 3 15:15:00 2021 UTC
Установка системы.
> Ну это как бы я думал, что само собой предполагается.
Ну, понятно что взять какую-нибудь мандриву и прокликать "далее" сможет кто угодно. Я имел ввиду, поставить таким образом, что бы не потерять нужные данные.
Кроме того, я думал в первую очередь о дистрибутивах у которых нет графического инсталлятора, например CRUX, Arch, Gentoo, Slackware, причём у некоторых из них даже текстового инсталлятора нет.
Если уж пользоваться только командной строкой — так по идее нужно начинать это делать прямо с установки.
Создать разделы, прогнать mkfs по ним, смонтировать, распаковать тарболл, написать конфиг загрузчика, загнать его исполнимый файл на EFI System Partition, в раздел DOS Boot или в начало диска...
Да и debian/ubuntu ставятся таким образом с помощью программы debootstrap.
ответить
From admin Sat Jul 3 18:33:04 2021 UTC
Я бы сказал, это
Я бы сказал, это уже перебор. Примерно такой же, как вон люди всерьёз предлагают начинать учить программистских новичков с юнит-тестирования.
ответить
From Oliver (unverified) Sun Jul 4 05:59:00 2021 UTC
Цель Ваша?
Читаю Ваши комментарии, и у меня есть вопрос: какая цель всего того, что Вы пишите? Если показать, что Вы умеете установить Арч, я Вас могу поздравить с этим. Вот только для начинающего пользователя Линукс знать утилиты CLI для создания разделов в текстовом режиме, создания файловых систем на них и прочее, - как я уже писал, НЕ НУЖНО (хотя в этом нет никакой высшей математики, если что)! Совсем! Иначе, образно говоря, получается, что для того, чтоб учиться водить автомобиль, нужно для начала знать, как его собрать.
В том, чтоб установить Линукс на один диск с данными и при этом не потерять эти самые данные, на самом деле, тоже нет ничего сверхестественного. Достаточно, чтоб на Виндовс был создан отдельный раздел для данных, на котором они хранятся. Все. При установке Линукса на тот же жесткий диск выбираем пространство, на кототом нет данных, точкой монтирования выбираем "/", форматируем все это дело в ext4, и далее просто читаем, что нам говорит графический инсталятор и если надо, меняем настройки. Хотя лучше, как тут писалось выше, взять отдельный диск или даже комп для Линукса.
Не нужно пугать людей своими текстами об Арч, Генту, адресациях и т.д., создавая у них впечатление о Линуксе как о каком-то космическом корабле! Большинство Линукс дистрибутивов в установке - проще чем Виндовс, и упомянутые Вами вещи переходящим на Линукс - не нужны! Для того, чтоб начать программировать и пользоваться Линукс, надо освоить базовые терминальные программы (их не так много) и работу в текстовом редакторе! ВСЕ! Остальное - по ходу пьессы, как говориться!
ответить
From Parthen Sat Jul 3 12:15:00 2021 UTC
У человека выше
У человека выше простоая проблема -- прокрастинация. Тут не психолог нужен, а прокрастинотолог.
У IT-бороды было интервью с одним -- Максимом Дорофеевым, где он научно-популярно объяснил что это и как с этми бороться.
ответить
From nelson Sat Jul 3 12:39:20 2021 UTC
Установка
А вот если в линуксе, помимо всего прочего ещё и программировать, возможно это будет уже лучше.
Учитывая, что без использования bash'а линуксом пользоваться не слишком удобно, мягко говоря, программировать юзеру придётся практически сразу.
А если ещё принять во внимание "решения", используемые в "современном" вебе, то практически сразу же встанет вопрос создания скрейперов для человеческого представления информации с посещаемых сайтов. Опять же, какое-никакое, а программирование (пусть даже в баше).
Если же возможности разобрать комп нет по причине кривизны рук или того что это какой-нибудь современный "ультрабук", где накопитель данных вообще распаян на плате или в лучшем случае требует полной разборки что бы до него добраться, то всё же прежде чем переходить на линукс, я бы посоветовал действительно кое-что изучить
Если юзер не является "железячником", то его явно не стоит нагружать ещё и вопросами смены жёстких дисков и т.д.
Проще приобрести недорогой б/у-шный ноут и уже на нём ставить эксперименты по установке линукса или чего он там желает.
ответить
From Oliver (unverified) Sat Jul 3 15:20:00 2021 UTC
Вы написали
Вы написали вещи, которые для переходящего на Линукс - не нужны, и даже вредны, ибо могут создать у человека ощущение того, что Линукс - это что-то сверхестественное, супер сложное и с ним может справиться только матерый ИТ спец. В результате, человек останется на Винде. Для чего человеку, который переходит на Линукс, знать об адресации, таблицах разделов и прочие вещи? Когда я переходил на Линукс, я эти вещи не понимал, тем не менее мне это не помешало совершить тот самый переход. Хватит чистого диска на каких-то 120 Гб, на который установить Линукс, соглаясь со всеми пунктами по умолчанию. Все. Ну а дальше по ходу уже разбираться что там и как устроено. Не надо усложнять простые вещи!
ответить
From Anonymous (unverified) Sun Jul 4 07:48:00 2021 UTC
Установка системы
> Хватит чистого диска на каких-то 120 Гб, на который установить Линукс, соглаясь со всеми пунктами по умолчанию.
Вариант с чистым диском я предлагал. Но что если у тебя какой-нибудь современный ноутбук у которого SSD распаян прямо на плате?
ответить
From admin Sun Jul 4 08:26:24 2021 UTC
То надо взять
То надо взять какой-нибудь старый комп, который в своё время продать то ли забыли, то ли не успели, и поставить Linux на него. В книжке, кстати, предлагается именно это.
ответить
From Igor (unverified) Sun Jul 4 20:54:00 2021 UTC
Убунту на Termux на Android как альтернатива старому компьютеру?
Хоть у меня на ноуте и установлен FreeBSD, но устройство весом под три килограмма не является достаточно удобным, чтобы таскать его с собой на случай "а вдруг будет несколько свободных минут, чтобы попрактиковаться".
Дело в том, что книгу ещё можно почитать посреди рабочего дня, но вот на практику работы с кодом в конечном итоге остаётся только вечернее время -- то самое время, когда мозг уже отказывается работать с освоением нового материала. Как тут быть? Искать устройство полегче?
В ходе чтения первого тома, я открыл для себя Termux на "ВЕДРОйде", и за счёт этого дружба с консолью терминала начала расти более интенсивней, и, можно сказать, даже чуть более играючи. Например, работа с потоками и редактор текстов vim стали уже чуть ли не родными за какую-то неделю. Но, добравшись в книге до раздела с описанием работы с языком Паскаль, обнаружил что в репозиториях Termux'а нет соответствующего компилятора -- было досадно, так как пришлось снова откладывать практику на вечернее время. Но днём следующим обнаружил возможность запустить Ubuntu через Termux, и сразу полез проверять доступность fpc и nand -- всё было на месте -- радости полные штаны. :)
В итоге вся основная практика по книгам у меня сейчас проходит на мобильном устройстве. В домашних условиях на выходных я подключаюсь с ноутбука к телефону с помощью ssh, а для пятнадцати-минутных набегов (в будние дни) прикупил для удобства лёгонькую блютуз-клаву. Счастлив как слон. :)
ответить
From admin Mon Jul 5 10:46:11 2021 UTC
Ну, я бы такого
Ну, я бы такого никому никогда не посоветовал, но в вашем случае может сработать. Видимо, это какие-то ваши личностные особенности. А индикацией тут служит ваше "счастлив как слон" :)
ответить
From nelson Mon Jul 5 08:19:21 2021 UTC
ПК для Linux
современный ноутбук у которого SSD распаян прямо на плате
Такая дичь вроде как только на макбуках встречается. Но пользование макбучком как бы намекает, что человек нормальным специалистом становится не хочет. Технически грамотный человек не будет покупать одноразовый ноутбук с распаянным накопителем.
Макбучки и прочая глянцевая техника вообще не способствует развитию, а приучает к потреблядству. Зачем вообще может понадобится ставить линукс на ноутбук с распаянным SSD? Подобная техника предназначена для гламурных IT-хипстеров, пишущих на "модных язычках" типа жабаскрипта и при этом по недоразумению называющихся программистами.
Сам по себе линукс вполне нормально работает практически на любом железе, продающемся на барахолках.
ответить
From Anonymous (unverified) Wed Jul 14 09:26:00 2021 UTC
eMMC распаян
Отстали вы от жизни. В самых дешевых ноутбуках eMMC является единственным накопителем, и он, естественно, распаян на материнской плате. Это как SD-карта, но в виде BGA-чипа.
ответить
From Anonymous (unverified) Fri Jul 2 22:54:00 2021 UTC
> Что-то мне это
> Что-то мне это кажется сомнительным, поскольку я видел тех кто пользовались линуксом уже долгое время, но всё ещё спотыкались на каких-то довольно простых вещах.
Значит, не достаточно долгое время линуксом пользовались. Либо эти довольно простые вещи им были не нужны (как пример: поставить задачу в cron - вещь простая, однако я делаю это редко и постоянно забываю формат записи времени в crontab).
Да и любая деятельность изучится, если ей постоянно пользоваться. Не знаешь английский - езжай в Британию, через полгода будешь знать, даже если специально не учил. Не умеешь борщ варить - вари как умеешь, после N попыток будешь варить в совершенстве.
Так же и с линуксом.
ответить
From admin Sat Jul 3 09:29:45 2021 UTC
Борщ, говорите? :-)
Гыгыгы :-) Вот уж с борщом оно точно так не работает — я видел хозяек, которые одно и то же блюдо готовят так, что при его употреблении хочется зажать нос и закрыть глаза, и ещё желательно, чтоб вкусовые пупырышки на пару минут выключились. И так — год за годом всю жизнь, без малейших сдвигов.
А один мой бывший студент уехал в Германию в магистратуру, сидит там уже семь, что-ли, если не восемь лет, а по-немецки до сих пор не шпрехает.
ответить
From Anonymous (unverified) Sat Jul 3 11:02:00 2021 UTC
Ну ладно, с
Ну ладно, с борщом я погорячился, там надо еще обратную связь собирать от тех, кто этот борщ ест, чтобы улучшать качество (правда, к сожалению, нельзя исключать фактор, что люди будут нахваливать твое блюдо исключительно из вежливости). В линуксе обратная связь все-таки есть всегда: если сделаешь там что-то не так, то ничего просто не заработает. Или заработает так, что разгребать потом будешь.
А у студента в Германии мотивации не было, мне кажется. Значит, в его окружении можно спокойно жить без нормального знания немецкого.
ответить
From admin Sat Jul 3 12:56:00 2021 UTC
Да конечно
Да конечно можно без немецкого, там вообще все, кроме турецких иммигрантов, по-английски шпарят не просто свободно, а ещё и правильно, как на учебных аудиозаписях. А персонаж этот живёт и функционирует в университетском кампусе, там с английским ещё лучше.
Иной вопрос, что ну живёшь же в стране, и явно там останешься, вокруг толпы носителей языка, а сам немецкий изучать по мне так одно удовольствие. Я когда-то в Германии два месяца прожил, чуть было не заговорил (ну не заговорил, конечно, так, совсем простые бытовые ситуации научился разруливать). Мне бы сейчас туда опять, я за полгода шпрехать начну нормально, с ошибками, с акцентом, но бегло. Так ведь вот нет, не хочет.
ответить
From Anonymous (unverified) Fri Jul 2 03:57:00 2021 UTC
> Просто вы
> Просто вы английский освоите одновременно с программированием, и при освоении у вас стимул будет и постоянная практика, то есть одно другому ещё и поможет.
С этим согласен. Кстати не только программирование, но ещё и чтение мануалов в этом помогает, а для освоение линукса оно нужно.
ответить
From Владислав (unverified) Sat Jul 3 16:59:00 2021 UTC
Мой камень преткновения
> Просто вы английский освоите одновременно с программированием
А такая тактика работает с математикой? Спашиваю, потому что она этим самым камнем для меня и стала (в противовес английскому), когда я читал главы из первого тома про представление чисел с плавающей точкой и двоичную логику. Передаю "Привет!" мантиссе, области определения и области значений. Именно эти темы заставили меня остановиться в изучении программирования. Уже несколько месяцев не могу их освоить. Есть какая-то неопределенность и ощущение, что раз я эти темы не знаю, нужно все учить с самых азов. И я все еще хочу научиться писать код, мечтаю о своей терминальной программе. Как думаете, стоит ли пропустить их и наверстать упущенное позже и пока заняться программированием?
ответить
From admin Sat Jul 3 18:46:09 2021 UTC
С математикой в
С математикой в целом — да, работает; параграфы с 1.3.4 до конца "математической" главы можно оставить на потом. А вот первые три — про комбинаторику, системы счисления и двоичную логику — ну вот лично мне кажется, что всё-таки нельзя. Комбинаторика, возможно, нужна не вся из того, что в соответствующем параграфе изложено, но если вообще её не понимать, то потом будут трудности при изучении систем счисления. Сами системы счисления тоже нужны вроде бы не все, но общие принципы нужно понимать, и для этого на мой взгляд там дан самый что ни на есть минимум. Ну а без логики потом будут сложности с условиями в if'ах и циклах. Будут-будут, можете не сомневаться.
Возможно, нужен какой-нибудь человек, знающий математику, который вам объяснит, что к чему. Вообще там ничего сложного нет, вот та же мантисса — это просто один из компонентов представления числа, и там сразу же написано, который из них, и как устроено всё представление вместе; может быть, вы просто испугались термина? Ну так не надо пугаться. А вот без понятия функции, которое базируется на областях определений и значений, конечно, вообще ничего не выйдет, и если его вам в школе не сформировали, то я вообще не представляю, что с этим делать. Хотя наверняка есть такие люди, которые представляют и могут. Просто я не учил никого математике всерьёз, с методической подготовкой у меня тут так себе.
ответить
☞ From Anonymous (unverified) Thu Jul 1 03:30:00 2021 UTC
Следующий
Следующий левел вебмакакинга. Теперь головой думать совсем не обязательно, глупая машина сделает все сама.
GitHub начал тестирование AI-ассистента, помогающего при написании кода:
https://www.opennet.ru/opennews/art.shtml?num=55411
ответить
From Anonymous (unverified) Thu Jul 1 23:01:00 2021 UTC
Не очень я верю,
Не очень я верю, что там будет что-то невероятно умное.
Может, чуть поумнее автодополнений кода во всяких IDE.
ответить
From admin Fri Jul 2 18:31:13 2021 UTC
Там, как я
Там, как я понял, авторы жутко горды тем, что могут сгенерить кусок кода для работы с JSON, если в комментарии дать его формат. Охренеть какое достижение :-) (особенно если учесть, что вообще любое использование JSON — это признак ментального расстройства).
ответить
☞ From Anonymous (unverified) Sun Jun 27 20:14:00 2021 UTC
Почему Ваш сайт без https?
Добрый день, собственно вопрос: почему не используете https? Может он уже и мелькал тут где-нибудь.
ответить
From admin Sun Jun 27 20:56:00 2021 UTC
давить этот ваш https
https — это бесконечный источник технических проблем и нарушений интероперабельности. Криптография, увы, неспособна стоять на месте, постоянно меняются применяемые наборы алгоритмов, и в мире достаточно моральных уродов, считающих, что "устаревшие" алгоритмы можно не поддерживать. На сообщение об отсутствии пересечения множеств используемых криптометодов на сервере и в браузере я натыкаюсь вполне регулярно.
Так вот, по этому поводу лично я глубочайшим образом убеждён, что в отсутствие крайней необходимости применять https не просто не следует, а вообще нельзя. Этот сайт не работает с номерами банковских карт, с чувствительными персональными данными и прочей информацией такого рода; следовательно, https тут быть не должно; и, заметим, если бы такого рода информация на сайте обрабатывалась, следовало бы сделать доступными через https только те страницы, где это происходит (технически довольно занудно, но надо). К счастью, этот вопрос тут не стоит.
Инициативу гуглофашистов "давайте зашифруем весь интернет" я не поддерживаю и поддерживать не собираюсь, а с самими гуглерами в последнее время не общаюсь и стараюсь не здороваться.
ответить
From Anonymous (unverified) Fri Jul 2 22:28:00 2021 UTC
передача паролей
Андрей Викторович, а как на вашем сайте организована передача паролей на сервер для проверки (в гостевой книге есть возможность залогиниться)?
Чистым текстом (из того расчета, что если перехватят - то и пусть перехватывают, тут банковских данных нет), или есть какой-то протокол проверки паролей внутри самого HTTP, позволяющий скрыть сам пароль при перехвате?
Интересуюсь из академических соображений - не очень разбираюсь, как в HTTP организуется парольная аутентификация в отсутствии SSL (в присутствии SSL все понятно - можно слать чистым текстом на сервер в заголовке HTTP-запроса).
Если это не секрет, конечно.
ответить
From admin Sat Jul 3 14:05:55 2021 UTC
Там просто
Там просто открытый текст, никаких наворотов. Я на сайт хожу через tinyproxy, которая физически на той же машине (на другой её виртуалке), а с самой этой проксёй связываюсь через ssh-туннель. Ну а если кто-то заморочится и стырит пароль обычного пользователя, то большого шухера он при этом не наведёт, как мы понимаем.
ответить
From Алексей Вересов (unverified) Mon Jul 5 04:30:00 2021 UTC
Про пароли в HTTP и HTTPS
Протокол проверки паролей внутри самого HTTP таки есть, но есть и один нюанс — там используется MD5, который был взломан, поэтому использовать его не стоит — как верно написал Андрей Викторович, криптография такая штука которая постоянно меняется.
В принципе я свой сервер настроил так, что он предоставляет сайты и через HTTP, и через HTTPS — на выбор пользователя.
> можно слать чистым текстом на сервер в заголовке HTTP-запроса
Ещё момент — так, делать не стоит всё равно, стоит пароль посолить.
ответить
From admin Mon Jul 5 14:11:17 2021 UTC
Да взломать-то
Да взломать-то его взломали, но там, насколько я понимаю, всё равно какой-то перебор вариантов делается, хотя и ускоренно-"интеллектуальный", то есть чтобы отреверсить конкретную md5-сумму, нужно потратить ненулевое количество ресурсов. "Ценность" паролей от этого или подобного сайта не столь велика, чтобы на это тратиться.
Иной вопрос, что Http Digest я в действии уже много лет не видел, cms'ки все предпочитают свою систему аутентификации, оно и понятно — доступ-то они тоже сами регулируют.
ответить
☞ From Vadim Klimov (unverified) Sun Jun 27 17:25:00 2021 UTC
Вопросы и предложения
Здравствуйте, Андрей Викторович,
я в уже не совсем юном возрасте захотел освоить программирование, понять как вообще работает компьютер, и освоить те вещи, которые нельзя не знать. О ваших книгах узнал на ютьюбе, на одном популярном канале. Там ваши книги рекомендовались потому, что там все объясняется пошагово, и собрано все, что нужно.
Если честно, - я пока что ушел не очень далеко в изучении материала, но активно продвигаюсь, что меня очень радует.
Все объяснено доступным для понимания языком. Но все равно, некоторые вещи бывает понять трудно. Я ставлю для себя целью именно понять все, что там описано. Бывают некоторые примеры кода(для Вас они наверное очень простые), которые не понятны. А спросить особо не у кого, в интернете ничего не нахожу(может быть просто не умею искать). Часто бывает, что если человек что-то не может понять, обучаясь по книге, - он забрасывает вообще обучение. Я конечно же не собираюсь пока что ничего забрасывать, в принципе все хорошо.
Я не знаю, приходила ли Вам такая идея или нет, - а почему бы не создать FAQ по книгам? Можно создать сообщество в контакте, или канал в телеграмме, где читателю смогут объяснять друг другу непонятные вещи из книги. А так же разбить вопросы по категориям, отдельным книгам. Подскажите, - не планируете ли Вы чего-то подобного, или, может быть, уже есть?
Так же было бы хорошо, если бы подтвердили активацию моего профиля. Cпасибо.
ответить
From admin Sun Jun 27 17:44:56 2021 UTC
Кто использует
Кто использует VK, тот похож на...
Ёлки-палки, вот находятся же люди, предлагающие мне — мне!!! — создавать группы в VK и каналы в телеграме.
Нет, не будет такого. Точнее, что-то подобное может возникнуть без моего участия (увы, невозможно запретить людям реализовывать даже самые бредовые и омерзительные идеи), но никогда не будет мной поддержано.
Ах, да, про профиль — он активен, подтверждения не требует. Форма для логина расположена в гостевой книге.
ответить
From Parthen Sun Jun 27 19:32:00 2021 UTC
Не знает
Не знает человек, что поделать.
Нужно какой-то сервис аля Spyware Watchdog, только русский. Чтобы каждому не объяснять, а один раз все подробно написать и потому только ссылочку кидать. Я думаю на днях заняться таким.
ответить
From Anonymous (unverified) Sun Jun 27 20:30:00 2021 UTC
А как насчёт
А как насчёт канала в IRC или XMPP?
ответить
From admin Sun Jun 27 20:39:32 2021 UTC
В XMPP можно,
В XMPP можно, почему бы нет. В IRC — нельзя по тем же причинам, по которым и всякие социалочки: единая сеть IRC-серверов почила в бозе лет двадцать как, сейчас любой IRC-канал намертво привязан к конкретному серверу, а у сервера, как мы понимаем, есть конкретный владелец.
ответить
From Vadim Klimov (unverified) Tue Jun 29 17:19:00 2021 UTC
Вопросы и предложения
Прошу прощения, не понял Вас, - ваш отказ относился к таким вещам, как контакты-телеграммы, - или к самой задумке публичной доски с ответами(пусть это был бы раздел здесь, на вашем сайте)?
Или можно вот сюда просто с конкретными вопросами обращаться?(а то я ведь буду)
ответить
From admin Wed Jun 30 08:52:11 2021 UTC
На конкретные
На конкретные вопросы по книге, заданные здесь, я обычно отвечаю; сделать на сайте ещё один раздел, в принципе, можно, только стоит сначала понять, чем существующие не устраивают.
И да, мой отказ относится к "контактам-телеграмам". Я не использую коммуникационные среды, имеющие (как целое) владельца. И никому не советую. Что касается конкретно VK, то я вообще не понимаю, как можно настолько себя не уважать, чтобы пользоваться этой мерзостью.
ответить
From Anonymous (unverified) Wed Jun 30 16:55:00 2021 UTC
Где можно найти
Где можно найти то, что Вы писали о соцсетях?
ответить
From admin Wed Jun 30 17:34:37 2021 UTC
Первая статья
Первая статья на эту тему под заголовком "Осторожно: частный сервис" изначально была написана (между прочим, ещё в 2006 году! нынешних "социалок" тогда ещё не было) для сайта "независимый обзор провайдеров", но там сейчас недоступна, ибо сайт заброшен. Её можно прочитать в сборнике "Проблемы информационного общества", стр.32.
Вторая статья, тоже исходно написанная для НОПа, как ни странно, там вот прямо сейчас вроде бы доступна: https://www.providernet.ru/article.90.php Если эта ссылка протухнет, текст статьи можно найти по её заглавию "Театр контентного абсурда. Социальные сети: история одной терминологической деформации".
ответить
☞ From Anonymous (unverified) Sat Jun 26 21:22:00 2021 UTC
Среды для обучения программированию
Мне интересно, вы думаете, они вообще ни на что не годны?
Всё-таки люди пишут, кто-то ими пользуется. Неужто совсем зря?
По-моему, ученику будет гораздо интереснее погонять какого-нибудь робота, чем складывать элементы массива в цикле.
Ну и есть же люди, кто программистами не будут. Возможно, их тоже следует научить хотя бы какому-то приблизительному пониманию, что такое программирование?
ответить
From admin Sun Jun 27 05:39:00 2021 UTC
Мне интересно,
Мне интересно, вы думаете, они вообще ни на что не годны?
Абсолютно.
Всё-таки люди пишут, кто-то ими пользуется. Неужто совсем зря?
"Зря" — это когда нет положительного эффекта. От любых "сред" эффект жёстко отрицательный, лучше вообще никак не учить, чем учить с помощью "сред".
По-моему, ученику будет гораздо интереснее погонять какого-нибудь робота, чем складывать элементы массива в цикле.
Эта реплика не имеет отношения к делу. Как сделать, чтобы ученику было интересно — написано в предисловиях к первому тому.
Ну и есть же люди, кто программистами не будут. Возможно,
А вы, глядя на ученика в школе, прямо сразу можете сказать, что он не будет программистом? Я бы, пожалуй, не взялся. Ну то есть через некоторое время, конечно, мне будет всё ясно (хотя не каждому преподавателю будет ясно, увы), но — даже мне — отнюдь не сразу. А "обучение" с помощью всевозможных "сред" дорогу в серьёзное программирование практически полностью закрывает.
По мне так один потенциальный программист, которого вы испортили, заведомо перекрывает сомнительную пользу для сотни тех, кто программистом не будет.
И вот что, на мой сайт вы явно забрели по ошибке. Интернет большой, сходите куда-нибудь ещё.
UPD: Судя по продолжению, которое, конечно, так и останется в очереди на премод, предыдущий коммент про так называемую "среду кумир" был тоже от вас. Я не знаю, откуда берутся такие, как вы, и мне это даже до определённой степени интересно — но не до такой, чтобы с вами что-то обсуждать. Ещё раз, не будете ли вы столь любезны освободить мой сайт от своего присутствия? Дальнейшие ваши комментарии премод не пройдут, мне тут кумиросектанты не нужны.
ответить
From Anonymous (unverified) Sun Jun 27 19:06:00 2021 UTC
Если это
Если это конечно же не "секрет фирмы", не поделитесь, как Вы определяете способен ли ученик стать программистом?
Я с обучением людей дел не имел, но разве это всё не вопрос времени? В плане что если ученик А за неделю не схватывает что такое условно указатели, а ученик Б с легкостью, то при усердии и усидчивости ученик А за 2 недели, месяц или более поймет в итоге и в прикладном плане в будущем не будет уступать.
ответить
From admin Sun Jun 27 20:49:43 2021 UTC
Усидчивость
Усидчивость при изучении программирования скорее вредна, чем полезна. Программирование должно доставлять удовольствие, если это не так — все мучения будут бесполезны.
Если я ученикам выдал длинное задание, которое потом нужно мне же и сдать, и потом лично его принимаю, причём поэтапно, с большим количеством интерактива — то понять, способен человек этим заниматься без вреда для собственной психики или он это всё вымучивает, труда не составляет. Это просто видно.
ответить
From Oliver (unverified) Sun Jun 27 07:37:00 2021 UTC
Люди
Люди пользуюутся многими вещами, которые на самом деле годятся разве что на то, чтоб улететь в мусорник! Взять те же смарфтоны...
Я лично не понимаю, для чего нужно скачивать и установливать IDE, которая может потреблять не мало ресурсов компа, если в том же Линуксе есть все, что нужно для того, чтоб этому программированию учиться. Ничем кроме человеческого не желания углубляться в то, как обучать студентов программированию и пробиванием интересов одной не скромной компании, среду которой мне лично в ВУЗе пихали, это обьяснить нельзя.
ответить
From admin Sun Jun 27 13:28:34 2021 UTC
Тут не тот
Тут не тот случай, тут всё хуже — автор коммента оказался из секты "среды кумир".
ответить
☞ From Parthen Mon Jun 21 14:16:00 2021 UTC
Вдобавок к обсуждению Gemini
Обнаружил, что формы ввода у Gemini таки есть, и они даже используются. Вот здесь, например:
gemini://hugeping.ru/messages.gmi
ответить
From Алексей Вересов (unverified) Mon Jul 5 04:40:00 2021 UTC
Есть подвох
У Gemini есть один критический на мой взгляд минус, делающий его таким же "простым" протоколом как "просты" программы на питоне — и то, и то использует довольно большие и страшные уже готовые вещи. Получается этакий обман — выглядит просто, но реализовывать такие системы сложно. В случае Gemini сложность в TLS:
> Use of TLS for Gemini transactions is mandatory.
>
> Use of the Server Name Indication (SNI) extension to TLS is
> also mandatory, to facilitate name-based virtual hosting.
ответить
☞ From Anonymous (unverified) Mon Jun 21 04:08:00 2021 UTC
У меня что-то не
У меня что-то не так с браузером, или часть фотографий обложек книг на главной странице этого сайта на боку? Если проблема у вас воспроизводится, может исправите?
ответить
From admin Mon Jun 21 12:44:11 2021 UTC
Нет, не
Нет, не воспроизводится. Пока что я ни в одном браузере не видел, чтобы обложки оказались не в той ориентации.
ответить
From Parthen Mon Jun 21 12:47:00 2021 UTC
Такая же
Такая же проблема в Firefox. В Palemoon такого вроде не было
ответить
From admin Mon Jun 21 13:00:59 2021 UTC
Это уже
Это уже интереснее. А какие из обложек "на боку"? И на других страницах это проявляется? Или только на главной?
ответить
From Ivan Romanov (unverified) Mon Jun 21 13:25:00 2021 UTC
На боку..
На боку "Практикум на ЭВМ: многопользовательский игровой" сервер и "Архитектура ЭВМ и системное программное обеспечение." И не только на главной. На странице книги также.
ответить
From Parthen Mon Jun 21 13:51:00 2021 UTC
Вместо тысячи
Вместо тысячи слов:
https://parthen.neocities.org/screenshot.png
ответить
From admin Mon Jun 21 14:15:00 2021 UTC
Занятно, что
Занятно, что это две из четырёх самых старых картинок на сайте, и я их с 2009 года не трогал, как выложил, так ровно в той версии они и лежат. Palemoon появился не так давно, я на него перешёл года два назад, а раньше я сам сидел на firefox, и никогда никаких проблем с ориентацией фотографий не видел.
Кто-нибудь ещё сомневается, что с увеличением номера версии происходит деградация, а не прогресс?
UPD: выстриг из этих картинок exif-теги, теперь должно быть нормально. К сожалению, точно этого сказать не могу — свежих файрфоксов в хозяйстве нету.
ответить
From Anonymous (unverified) Mon Jun 21 17:04:00 2021 UTC
Кто-нибудь ещё
Кто-нибудь ещё сомневается, что с увеличением номера версии происходит деградация, а не прогресс?
Про файерфокс это уже давно аксиома.
ответить
From Parthen Mon Jun 21 19:05:00 2021 UTC
Не ради
Не ради интереса, но какая у вас версия Palemoon?
У меня с обновлением прилитело отключение мозиловских расширений, так что буду откатываться. А на какую версию не знаю.
ответить
From admin Wed Jun 23 14:51:07 2021 UTC
На основной
На основной рабочей машине 28.6.0.1, по нынешним меркам она древняя. На других машинах есть посвежее, сейчас нет времени запускать, к сожалению.
ответить
From Anonymous (unverified) Wed Jun 23 15:17:00 2021 UTC
Сейчас, вроде,
Сейчас, вроде, все обложки отображаются нормально. Как пофиксили, если не секрет?
ответить
From admin Wed Jun 23 15:32:49 2021 UTC
Да очень просто
Да очень просто пофиксил — выстриг оттуда всю exif'овую муть командой
convert -strip
.ответить
From Anonymous (unverified) Tue Jun 22 02:34:00 2021 UTC
Я всё ещё
Я всё ещё сомневаюсь, поскольку если сделать
wget http://www.stolyarov.info/files/gameserv_cover.jpg
А потом geeqie gameserv_cover.jpg, то оно тоже на боку.
GIMP говорит, что в этом файле есть тег EXIF orientation и спрашивает как открывать. Так что мне не совсем понятно, то ли из ффокса убрали поддержку ориентации, то ли наоборот добавили.
ответить
From admin Wed Jun 23 16:39:36 2021 UTC
Добавили. И всё
Добавили. И всё сломалось.
ответить
From Anonymous (unverified) Tue Jun 22 02:40:00 2021 UTC
Проблема
Проблема лечится командой
$ mogrify -strip gameserv_cover.jpg
Заодно оно удаляет метаданные о том, какой камерой сделана картинка с какой выдержкой и прочие.
ответить
From Anonymous (unverified) Tue Jun 22 18:38:00 2021 UTC
Кто-нибудь ещё
Кто-нибудь ещё сомневается, что с увеличением номера версии происходит деградация, а не прогресс?
А чем не прогресс? Браузер научился читать ориентацию метаданные из картинки, а там она повёрнута.
ответить
From admin Wed Jun 23 15:29:00 2021 UTC
Ага, и тем самым
Ага, и тем самым поломал обратную совместимость с тем статус-кво, который существовал со времён появления поддержки формата JPG в браузерах. То есть вот четверть века браузеры (все!) игнорировали exif'овские теги, и всех это устраивало, а теперь нашёлся какой-то чистоплюй, который заявил, что устоявшийся подход, к которому привык весь мир, видите ли, расходится с его, чистоплюя, пониманием правильности.
Найти б этого урода да вздёрнуть. Или просто пристрелить.
ответить
☞ From Anonymous (unverified) Sat Jun 19 18:36:00 2021 UTC
Я часто слышу,
Я часто слышу, чтобы стать программистом, нужно заниматься этим каждый день: ни дня без кода(вот у меня не получается каждый день: день математика, день программирование). Так ли это?
ответить
From admin Sun Jun 20 14:45:16 2021 UTC
Чтобы стать
Чтобы стать программистом, нужно, чтобы программирование доставляло удовольствие. Если это не так — ежедневное биение лбом об стену не поможет.
ответить
From Anonymous (unverified) Sun Jun 20 18:42:00 2021 UTC
Спасибо, за
Спасибо, за ответ! Буду двигаться в том же духе.
ответить
☞ From Anonymous (unverified) Fri Jun 18 14:30:00 2021 UTC
Спасибо за интересную книгу
Просто хотел выразить благодарность за столь интересную и понятную книгу, начал читать и меня воистину увлекло, первый раз такое с книгами по программированию.
Спасибо, Вам большое.
ответить
From Flau (unverified) Sat Jun 19 11:24:00 2021 UTC
По
По не-программированию у А.В. тоже хорошие книги. Пособие по LaTeX'у мне помогла оформить дипломную работу.
ответить
☞ From buq Fri Jun 18 11:18:00 2021 UTC
Google профинансирует
Google профинансирует добавление поддержки Rust в ядро Linux.
https://www.opennet.ru/opennews/art.shtml?num=55349
Как раз давно хотел переходить на какой-нибудь BSD. Кто-нибудь может поделиться своим опотым работы с FreeBSD и/или OpenBSD?.
ответить
From admin Fri Jun 18 18:18:34 2021 UTC
Даже интересно,
Даже интересно, как вы себе представляете такой "обмен опытом" в комментах на сайте.
ответить
From Oliver (unverified) Fri Jun 18 19:53:00 2021 UTC
Время покажет,
Время покажет, что и как будет.
ответить
From admin Fri Jun 18 21:14:42 2021 UTC
Вообще странно,
Вообще странно, чем гуглу мешает Linux и зачем они его хотят прикончить. Вот зачем им весь тот мрак, который творится с вебом — это понятно, но Linux-то чем им помешал? Они ж его сами активно используют.
ответить
From Anonymous (unverified) Fri Jun 18 22:38:00 2021 UTC
Возможно, это
Возможно, это как раз тот случай, который проще объяснить не злонамеренностью, а обычной глупостью и недальновидностью.
ответить
From buq Sat Jun 19 11:02:00 2021 UTC
Думаю что
Думаю что конечная цель -- внедрение бекдоров. Иначе как обьяснить такое радикальное изменение в ядре. Если бы они хотели реализовать поддержку Раста в форкнутой ветке ядра -- это другое, но никак не в основной же. Теперь получается что для компиляции ядра нужно будет 2 компилятора ?!?!.
А насчет "поделиться опытом" я переводил с английского "can you share your experience about ...". Я не русскоязычный, поэтому порой трудно выбирать нужное выражение.Я скорее имел в виду впечетления :).
ответить
From Anonymous (unverified) Sat Jun 26 22:23:00 2021 UTC
> Думаю что
> Думаю что конечная цель -- внедрение бекдоров.
Думаете у программистов из гугла не хватает квалификации делать бэкдоры на си?
ответить
From admin Sun Jun 27 13:18:56 2021 UTC
По мне так сей
По мне так сей вопрос не так прост, как кажется.
Сразу скажу, я не считаю, что цель тут внедрение бекдоров. Но если так всё-таки считать, то дело будет явно не в том, у кого хватит квалификации их делать. Дело скорее будет в том, у кого не будет квалификации их вылавливать. Среди тех, кто пишет ядро, Си знают поголовно все, причём не просто знают, а, я бы сказал, знают на уровне "бог-80"; а вот раст, гм...
ответить
From Anonymous (unverified) Mon Jun 28 17:41:00 2021 UTC
Среди тех, кто
Среди тех, кто пишет ядро, Си знают поголовно все, причём не просто знают, а, я бы сказал, знают на уровне "бог-80"; а вот раст, гм...
Это смотря кого включать в "тех, кто пишет ядро". Если каждого, кто прислал патч, который был принят, то наверняка не поголовно, не все и уж точно не на уровне "бог-80".
Вот, хотя бы, была тут недавно "забавная" (в кавычках потому, что было бы смешно, если бы не было грустно) новость: Работников Huawei подозревают в публикации бесполезных Linux-патчей для повышения KPI
ответить
From buq Sun Jun 27 22:25:21 2021 UTC
Не сомневаюсь
У них квалификации вполне хватает.
Вопрос в том, как и кто будет проводить одобрение и внедрение в ядро кода написанной на расте.
Даже не сомневаюсь что эти группы тоже будут финансироватсья гуглом.
По мне, верить в то, что компания как гугл тратит миллионы чтобы Linux "работал получше" -- не здраво.
Внедрение раста это самое радикальное изменение в ядре.
Все счастливо пользовались Linux-ом,
но вдруг гугл решил что Си -- нехорошо и небезопасно, и надо срочно перейти на Раст потому что,
цитата из их сайта, "Memory safety has been an enduring challenge for software developers",
"Memory safety security defects frequently threaten device safety, especially for applications and operating systems.
For example, on Android, we’ve found that more than half of the security vulnerabilities we addressed in 2019 resulted from memory safety bugs".
Ну если дело в андроиде, возьми и внедряй в твой андроид что хочешь. Зачем трогать основную ветку Linux.
Очень много бессмысленных вещей, много вопросов и ноль ответов.
ответить
From Anonymous (unverified) Mon Jun 28 17:33:00 2021 UTC
Все счастливо
Все счастливо пользовались Linux-ом
Возражаю. ;-)
Счастливо пользовался линуксом я в последний раз задолго до всей этой свистопляски с растом и даже до его появления на свет. Проблемы в линуксе, связанные интересом к нему разнообразных корпораций, начали накапливаться гораздо раньше.
ответить
From buq Mon Jun 28 23:17:00 2021 UTC
Ну ладно
Ну ладно может не так уж и счастливо:), я согласен
что у Линукса есть проблемы, но слушайте,
в отличии от шпионской MacOS или боже упаси windows, GNU/Linux это просто чудо.
ответить
From Anonymous (unverified) Tue Jun 29 12:58:00 2021 UTC
в отличии от
в отличии от шпионской MacOS или боже упаси windows, GNU/Linux это просто чудо.
Чудом оно было лет 15-20 назад. А сейчас просто меньшее из зол.
Я потому и ушёл на OpenBSD, что в линуксе у меня стало пропадать ощущение, что это "моя система", которую я могу настроить так, как мне надо. Это всё ещё возможно (я до OpenBSD пользовался CRUX'ом именно ради таких возможностей), но трудозатраты начинают зашкаливать.
Дополнительный плюс OpenBSD, кстати, в том, что там практически нет возможности запускать закрытые проприетарные программы (в ней нет Wine, нет FreeBSD'шного Linuxulator'а, и готовых бинарников, вроде игр или скайпа, под неё никто не собирает, есть разве что dosbox, да приставочные эмуляторы). В линуксе моей принципиальности не хватало на полный отказ от проприетарщины, иногда бывало скачивал игрушку-другую.
ответить
From Anonymous (unverified) Sat Jun 26 22:32:00 2021 UTC
>Теперь
>Теперь получается что для компиляции ядра нужно будет 2 компилятора ?!?!.
Давно ядро сами собирали? Вы всерьёз считаете, что для сборки ядра достаточно иметь только gcc? Вот в моей генте список зависимостей только для исходников ядра:
* dependency graph for sys-kernel/gentoo-sources-5.12.13
`-- sys-kernel/gentoo-sources-5.12.13 ~amd64
`-- dev-lang/perl-5.34.0 (dev-lang/perl) ~amd64
`-- sys-devel/bc-1.07.1-r3 (sys-devel/bc) amd64
`-- sys-devel/bison-3.7.6 (sys-devel/bison) ~amd64
`-- sys-devel/flex-2.6.4-r1 (sys-devel/flex) amd64
`-- sys-devel/make-4.3 (sys-devel/make) ~amd64
`-- sys-libs/ncurses-6.2_p20210123 (>=sys-libs/ncurses-5.2) ~amd64
`-- virtual/libelf-3 (virtual/libelf) amd64
`-- virtual/pkgconfig-2 (virtual/pkgconfig) amd64
`-- sys-apps/sed-4.8 (sys-apps/sed) amd64
Так что два компилятора, это как раз вообще не проблема, в отличии от всего остального.
ответить
From buq Sun Jun 27 19:04:00 2021 UTC
Нет, недавно
>> Давно ядро сами собирали?
Нет, недавно. У меня тоже стоит Генту на основной машине, я знаю что такое сборка ядра. И про все остальные зависимости тоже знаю.
>>Вы всерьёз считаете, что для сборки ядра достаточно иметь только gcc?
Я не говорил что для сборки нужен только GCC. Я сказал что нужно будет 2 компилятора.
>> Так что два компилятора, это как раз вообще не проблема.
Для многих, в том числе и меня, это как раз и есть проблема. Ядро с растом будет весить гораздо больше, а драйвера написанные на расте будут работать в разы медленнее.
Сколько времени возможно будет оставаться на старых версиях? Может года 3-5 максимум.
В конце концов надо будет или смириться, или попрощаться с Linux-ом.
Внедрение раста == деградация.
ответить
From Anonymous (unverified) Fri Jun 18 22:48:00 2021 UTC
Кто-нибудь
Кто-нибудь может поделиться своим опотым работы с FreeBSD и/или OpenBSD?
У меня OpenBSD на десктопе в качестве основной и единственной системы последние несколько лет. Сбежал с линукса, да. Доволен.
Поделиться опытом могу в формате ответов на конкретные вопросы. Спрашивайте.
ответить
From Parthen Sat Jun 19 08:27:00 2021 UTC
Я спрошу
Есть ли в BSD системах что-то типо .deb пакетов? То есть чтобы скачал с сайта, запустил, оно само установилось и подтянуло зависимости?
Если сравнивать с Линуксом, настройки больше или меньше?
ответить
From admin Sat Jun 19 12:56:16 2021 UTC
"подтянуло
"подтянуло зависимости" -- это не достоинство, это недостаток
ответить
From Parthen Sat Jun 19 15:57:00 2021 UTC
Предлагаете
Предлагаете вручную искать их и устанавливать? Долговато
ответить
From admin Sat Jun 19 16:56:12 2021 UTC
Когда нет
Когда нет механизма автоматического отслеживания зависимостей, авторы пакетов делают их существенно менее зависящими от внешних условий. Если же говорить о том, что я предлагаю — то единственной допустимой зависимостью времени исполнения я считаю ядро системы, а допустимыми зависимостями времени компиляции — компилятор, систему сборки (posix make или gnu make, но не cmake) и — что уже сомнительно — в каком-то виде так называемую стандартную библиотеку, хотя лучше без неё.
ответить
From Oliver (unverified) Sat Jun 19 13:36:00 2021 UTC
При скачивании
При скачивании .deb пакета и установки его в систему, он зависимости не подтягивает. APT этим занимается: он сам и скачивает .deb пакет, и все зависимости.
ответить
From Parthen Sat Jun 19 15:55:00 2021 UTC
Само собой,
Само собой, просто в deb пакете, как я понимаю, они прописаны, что позволяет apt найти их и установить
ответить
From admin Sat Jun 19 16:57:52 2021 UTC
В пакетах
В пакетах довольно часто понапрописано такого, что вам ради какой-нибудь ерунды пакетный менеджер предложит поставить пару сотен пакетов, из которых большая часть вам не нужна.
ответить
From Anonymous (unverified) Sat Jun 19 16:43:00 2021 UTC
Есть ли в BSD
Есть ли в BSD системах что-то типо .deb пакетов?
В OpenBSD есть пакетная система с отслеживанием зависимостей и прочими мелкими удобствами. Есть официальный репозиторий (и зеркала, конечно) с пакетами. Если какой-то пакет в репозитории собран не совсем так, как вам нужно, можно собрать самому из портов (я, например, пересобираю gtk+3 без зависимости от dbus). Если какого-то пакета нет, можно самому создать порт для него (например, я делал себе порт youtube-viewer'а, поскольку готового порта/пакета нет).
(Что касается других BSD-систем, то там пакетные системы вроде бы тоже есть, насколько я знаю. Но в любом случае валить все BSD в одну кучу не надо. Они, по сути, отличаются даже больше, чем разные дистрибутивы линукса. Я здесь делюсь опытом именно про OpenBSD.)
То есть чтобы скачал с сайта, запустил, оно само установилось и подтянуло зависимости?
Несколько извращённый способ, на мой вкус. Если мне нужно поставить какой-то пакет, то я пишу
pkg_add имя_пакета
. В дебиано-деривативах я бы писалapt-get install имя_пакета
. В обоих случаях пакет установится и подтянет зависимости, вручную ходить на сайт и скачивать что-то не нужно.В целом, дерево зависимостей пакетов в OpenBSD гораздо менее развесистое, чем в дебиане и его производных.
Если сравнивать с Линуксом, настройки больше или меньше?
Меньше.
ответить
From Parthen Sat Jun 19 17:48:00 2021 UTC
>То есть чтобы
>То есть чтобы скачал с сайта, запустил, оно само установилось и подтянуло зависимости?
Такое нужно, когда в репозиториях нет программы или есть только старая ее версия.
А так, спасибо за ответ!
Еще вопрос: что с сообществом? Понятно, что поменьше линуксового, но к примеру решение своих проблем я на русском найду?
ответить
From Oliver (unverified) Sat Jun 19 18:45:00 2021 UTC
Знания
Знания русского языка - есть хорошо, но советовал бы Вам учить английский, ибо без него в ИТ - не так комфортно, скажем так. Английский нужен не только в случаях, когда нужной инфы на русском нет: у меня бывало, что подача нужной мне информации на русском, была для меня не так понятна... Нашходил ту же информацию на английском, и там она оказывалась подана удачнее, короче, и в разы яснее... Разумеется, это зависит от автора, но факт есть факт.
ответить
From Parthen Sun Jun 20 15:50:00 2021 UTC
Английский я
Английский я знаю, просто не люблю.
Ну вот серьезно. Я в Википедии предпочту эсперанто английскому. Да на латыни мне удобнее читать, чем на английском, не знаю почему так.
ответить
From admin Sun Jun 20 20:04:55 2021 UTC
Причину нужно
Причину нужно установить и устранить. Всерьёз заниматься даже не программированием, а вообще компьютерами при таких особенностях восприятия просто невозможно.
ответить
From Parthen Mon Jun 21 06:50:00 2021 UTC
Причина
Причина довольно проста -- я с детства читаю скорочтением (никто меня этому не учил, как-то само пришло). А на английском я так читать не могу, приходиться вчитываться в каждое слово, из-за чего кажется, что я торможу. Это и бесит
ответить
From admin Mon Jun 21 12:41:44 2021 UTC
Могу разве что
Могу разве что посоветовать освоить скорочтение на английском. Понимаю, что это непросто, но программист не может себе позволить испытывать проблемы с чтением английских текстов. Вот то есть вообще совсем никак. Тут или дружить с английским, или бросать занятия программированием — всё равно без английского ничего толком не выйдет.
ответить
From Anonymous (unverified) Mon Jun 21 13:46:00 2021 UTC
Без
Без английского может, например, получиться так называемый "программист 1С". Впрочем, к программистам он имеет примерно такое же отношение, как морская свинка к морю.
ответить
From Anonymous (unverified) Mon Jun 21 13:53:00 2021 UTC
Звучит так, как
Звучит так, как будто просто недостаточно практики. Вполне вероятно, что если вы будете много читать на английском, то и там скорочтение "как-то само придёт".
ответить
From Oliver (unverified) Tue Jun 22 08:19:00 2021 UTC
Судя по Вашим
Судя по Вашим коментарием, Вы редко читаете на английском. А практика - едниственный способ, чтобы перестать тормозить на чтении по-английском. Все это в свое время проходили, и находили способы преодолевать. Например, я брал аудио книгу на английском, находил ту же книгу в формате документа, слушал книгу по главам и потом тот же текст читал громко несколько раз. Аудио формат мне помогал узнавать произношение новых для меня слов. Каждое такое новое слово я повторял наверное более десятка раз или даже больше, пока я не начинал его правильно произносить автоматически. Так с каждым разом прочтение текста скорость этого самого чтения росла, и я переставал думать о том, что значит каждое слово, и просто все понимал.
ответить
From Anonymous (unverified) Sun Jun 20 19:03:00 2021 UTC
С переводами
С переводами иногда бывает вообще тьма кромешная.
Я вот купил то ли в прошлом, то ли в позапрошлом году книжку Панос Луридас "Алгоритмы для начинающих". Хорошее издание, шрифты, бумага, твёрдый переплёт, оригинал издан в MIT Press, темы интересные в содержании мелькают, хоть и называется "для начинающих". Короче, позарился. А потом стал читать и на первых же страницах наткнулся на словосочетание "программные языки". Я даже не сразу сообразил, что это переводчица (некто Е.М.Егорова) так перевела "programming languages" (и далее на протяжении книги так же, я проверял). Стало обидно и жалко потраченных денег, честно говоря.
В общем, примерно с тех пор я решил вообще, по возможности, не покупать техническую литературу, переведённую с английского, а читать в оригинале. (Художественную англоязычную литературу-то я давно только в оригинале стараюсь читать.)
ответить
From Anonymous (unverified) Sat Jun 19 18:47:00 2021 UTC
решение своих
решение своих проблем я на русском найду?
Я бы на это особо не рассчитывал.
Ну и в целом, в OpenBSD принято решение проблем искать читая документацию (поскольку разработчики там уделяют документации весьма пристальное внимание). А вся документация в системе только на английском. Так что, не зная английского, пользоваться системой будет затруднительно.
ответить
From Anonymous (unverified) Sat Jun 19 20:14:00 2021 UTC
решение своих
решение своих проблем я на русском найду
Увы, решения многих проблем на русском вы и для Линукса с его обширным сообществом не найдете. Вообще, конечно, для современного "айтишника" (хоть программиста, хоть админа) знание английского хотя бы на минимальном уровне абсолютно необходимо. Это не снобизм, не думайте (сам "читатель", за 7 лет английского в школе и 10 лет с перерывами в универе так и не "разговорили"), а прописная истина, как бы банально это не звучало. Чтение FAQ и всяких вики на английском - не такая уж и сложная задача, как может показаться, но, конечно, нужно попрактиковаться, и скоро увидите, что все они достаточно шаблонны.
ответить
From Parthen Sun Jun 20 15:47:00 2021 UTC
Не, у меня 80%
Не, у меня 80% проблем вполне решаются со знанием только русского. На английском я умею читать, но не люблю
ответить
From admin Sun Jun 20 20:02:05 2021 UTC
Лучше полюбите.
Лучше полюбите. Достигается очень просто — практикой. Когда исчезает потребность лазить в словарь и прочие гугл-транслейты, вот это вот "не люблю" обычно исчезает вместе с ними. А программист, у которого трудности с английским — это зрелище довольно жалкое.
ответить
From Anonymous (unverified) Sun Jun 20 23:01:00 2021 UTC
Когда-нибудь вы
Когда-нибудь вы окажетесь в такой ситуации, что разобраться с новой технологией/языком программирования/библиотекой можно будет только с использованием документации, которая будет только на английском, а на русском ничего внятного вы не найдете. И тогда вам захочется выучить английский)
А такие ситуации нередки - мне на предыдущей работе приходилось разбираться со системой, широко известной в узких кругах, и на русском языке ждать мануалов по ней было слишком оптимистично (ничего толком не гуглилось). А когда английская документация не помогала, спасал форум производителя, на котором, опять же, можно было общаться только на английском.
ответить
From Parthen Mon Jun 21 13:55:00 2021 UTC
Так, еще раз.Я
Так, еще раз.
Я могу читать на английском. А если еще и не по памяти, а со словарем, то вообще что угодно.
Дело в том, что я не хочу, а почему обсуждается в треде ниже.
ответить
From admin Mon Jun 21 14:09:29 2021 UTC
Какие там
Какие там стадии были — отрицание, гнев, торг... короче, всё равно придётся английский полюбить :-) Любовь, говорят, зла, полюбишь и козла.
ответить
From Parthen Mon Jun 21 14:46:00 2021 UTC
Ну, полюбить
Ну, полюбить оно вряд ли, а смириться придется.
Хотя мне в принципе плохо даются естественные языки, с моей-то памятью.
ответить
From (unverified) Mon Jun 21 16:21:00 2021 UTC
Память,
Память, внезапно, тренируется, разнообразные мнемотехники тоже никто не отменял. Вы же, как я понял из обсуждений здесь, школу заканчиваете (или только закончили)? Вам лет-то сколько, простите? Если сейчас жалуетесь на память, что же, лет через 8-10 пополните армию популярных нынче нытиков в стиле: "Ой, как у меня с утра всё болит! -После чего? -После 25..."? Возможно, излишне резок, но не загоняйте сами себя в надуманные/навязанные рамки - много в жизни упустите.
ответить
From Parthen Mon Jun 21 18:29:00 2021 UTC
Да неужели?!
Такой вот геном выпал, что поделать. Если вы видели мои прошлые сообщения, то знаете что у меня еще проблемы с распознаванием речи на слух и с чувствительностью глаз.
То, что у меня в 25 будет че-то болеть -- не сомневаюсь.
То, что я буду ныть -- точно нет, не рационально.
Так вот эти ваши мнемотехники я знаю, причем читал их в оригинале. Только вот оказывается, что мнемоника (как минимум по методу Цицерона) требует воображения, причем активного, конкретного и творческого. А у меня оно слабое, пассивное и абстрактное.
Я могу без проблем запомнить абстрактное -- идею, номер, программу.
Но!
1) С запоминанием образов, слов и т.п. у меня большууущие проблемы
2) Проблемы даже не столько с запоминанием, я могу через интервальные повторения учить вполне сносные объемы. Проблемы в том, что в случае с языками у меня это отзывается сильной головной болью, ибо не доставляет совершенно. Почему? Да потому что логики в современных естественных не особо. (В прошлом была латынь, очень стройный язык) А все, что я не могу понять у меня вызывает желание разобраться. А поскольку фиг его поймешь, откуда взялись исключения и проч. в языках, а докапываться без лингвистического образования дело неблагодарное.
В эсперанто, пусть и с поехавшим сообществом, все строго и понятно, что мне очень доставляет.
ответить
From Trollkarl (unverified) Thu Jun 24 05:52:00 2021 UTC
фиг его
фиг его поймешь, откуда взялись исключения и проч. в языках
Откуда? отсюда, например. А вы думали, комитеты стандартизации и им сочувствующие начали свою активную деятельность только с приходом "айтишной эры"? :)
Кстати, если вдруг кому-то интересно почитать о языках и их причудах, категорически рекомендую "Путешествие по карте языков мира" Алексея Леонтьева - в сопливом ребячестве ей зачитывался.
ответить
From Anonymous (unverified) Thu Jun 24 15:59:00 2021 UTC
"Путешествие по
"Путешествие по карте языков мира" Алексея Леонтьева - в сопливом ребячестве ей зачитывался.
О, аналогично! :-)
Я тут где-то в комментариях упоминал язык луганда, так это оттуда.
У меня с этой книгой в паре обычно вспоминается другая прекрасная книга по этой теме, которой я тоже зачитывался: В.А.Плунгян "Почему языки такие разные?" Также рекомендую всем, кто интересуется.
ответить
From Anonymous (unverified) Mon Jun 21 17:17:00 2021 UTC
Мне сложно вас
Мне сложно вас понять. Я, например, очень люблю иностранные языки. Причём и английский, который я знаю очень неплохо, и испанский или японский, которые я знаю едва-едва, и какой-нибудь язык луганда, про который с восторгом прочёл в детстве, что в нём существует с десяток родов.
Да и вообще, мне не очень понятны разговоры про "нелюбовь" к иностранному языку. В том, что вы освоили "скорочтение" на русском, но не освоили на английском, этот язык ведь совершенно не виноват.
ответить
From Oliver (unverified) Mon Jun 21 15:21:00 2021 UTC
Не то чтоб
Не то чтоб полюбить, но вот изменить свое отношение к английскосу - это вопрос вашего персонального роста.
ответить
From buq Sat Jun 19 11:28:00 2021 UTC
В первую очередь
Я бы хотел узнать есть-ли заметная разница в быстродействии по сравнению с Линукс?.
Играете ли вы в видеоигры? есть ли нормальные драйвера для видеокарт NVIDIA?
ответить
From Anonymous (unverified) Sat Jun 19 17:23:00 2021 UTC
Я бы хотел
Я бы хотел узнать есть-ли заметная разница в быстродействии по сравнению с Линукс?
Разница есть, линукс быстрее во многих случаях. Иногда разница заметна на глаз. Обычно нет. Ну или я уже привык.
Играете ли вы в видеоигры?
А как же. Не так давно много гонял в первый квейк (на современном движке, конечно) и моды к нему (Arcane Dimensions великолепен, рекомендую), я имею в виду сингловый режим, не сетевые бои. Часто залипаю в серьёзных головоломках chroma и xye. В последнее время иногда расслабляюсь в Minetest (это свободный клон майнкрафта). В планах есть научиться играть в нетхак или ещё какие-нибудь рогалики. Какое-то время назад поигрывал в приставочные игры на эмуляторах (SNES, Sega, PS1, GameBoy), сейчас уже нет.
есть ли нормальные драйвера для видеокарт NVIDIA?
Нет. В линуксе, кстати, ситуация хоть в целом и чуть лучше, но и там нормальных драйверов для NVIDIA нет.
ответить
From Oliver (unverified) Sat Jun 19 05:17:00 2021 UTC
Кстати,
Кстати, сравнительно не давно видел сон о том, что работаю с OpenBSD. Очень возможно, это был вещий сон
ответить
From Anon (unverified) Sat Jun 19 10:55:00 2021 UTC
Несколько месяцев
Несколько месяцев сидел на FreeBSD. До этого сидел и сейчас сижу на ArchLinux. Из отличий от Arch'а вспоминается более нормальный пакетный менеджер, который при каждой установке пакета не начинает обновлять всю систему (какая же всё-таки ерунда этот Rolling Release), попроще и поприятнее инит и OSS вместо ALSA (идея чтения и записи в специальные файлы конечно более UNIX'овая, но звук выдаёт заметно более худший), ещё нет procfs. В остальном, как в Arch'е сидел в vim, Alacritty, Zathura, Firefox и i3wm, так и продолжил сидель во FreeBSD.
Тем ни менее, Linux перед FreeBSD имеет одно огромное преимущество - возможность нормальной статичестой линковки (Musl), а это дорогого стоит. Как раз сейчас и занимаюсь сборкой своей системы на статическом Мusl'е, беря за основу LFS (Linux From Scratch). Если в зависимости ядра добавится rust, то останусь на старых версиях ядра, а дальше буду думать.
Ставил и OpenBSD, но в ней нет моей раскладки клавиатуры (dvorak-programmer). Её, конечно, можно написать, более того Colemak так и добавили, но программы в OpenBSD слинкованы динамически, так что оно того не стоит.
ответить
From Алексей Вересов (unverified) Tue Jun 22 04:17:00 2021 UTC
Про OpenBSD
OpenBSD довольно хороша, сидел на ней где-то год — и был в полном восторге. Устроена гораздо проще, понятней и удобней FreeBSD и дистров линукса.
Например, меня абсолютно вынесло, что это чуть ли не единственное место, где таки используют нормальный strlen, а не как в musl, FreeBSD или боже-упаси-glibc. Думаю это о многом говорит.
Тот же подход они продолжают и в прикладных программах — если кто не видел, зацените httpd — очень удобный и простой веб-сервер, после него всякие апачи и нгинксы смотрятся странно. Ещё я до сих пор пользуюсь cwm в качестве своего оконника -- настолько он мне показался удобным и приятным.
Единственная фундаментальная проблема с опятами — что они порой слишком увлекаются безопасностью. Вот тут они могут читаемость кода послать далеко и надолго (про эффективность я вообще молчу). Но в целом они пожалуй имеют самый адекватный код и самое удобное окружение.
Ну и проблема практическая, из-за которой во многом я сейчас на линуксе — OpenBSD меньше. (Да, звучит как оправдание виндузятника перед линуксоидами. =) ) Меньше поддерживает железа (и я не про число аппаратных платформ — их-то больше), меньше поддерживает програм.
В общем, попробуйте, даже если не зайдёт, думаю это будет интересно. =)
ответить
From Anonymous (unverified) Tue Jun 22 20:10:00 2021 UTC
Ну и проблема
Ну и проблема практическая, из-за которой во многом я сейчас на линуксе — OpenBSD меньше. (Да, звучит как оправдание виндузятника перед линуксоидами. =) ) Меньше поддерживает железа (и я не про число аппаратных платформ — их-то больше), меньше поддерживает програм.
Вот да, когда меня спрашивают, есть ли какие-то недостатки у OpenBSD, я всегда говорю, что если аккуратно подбирать железо под систему (а не наоборот) и не иметь необходимости запускать какие-то специфические программы (обычно это всякая проприетарщина, вроде скайпа), то OpenBSD вне конкуренции.
ответить
From Anonymous (unverified) Fri Jun 25 05:07:00 2021 UTC
Примеры с FreeBSD и
Примеры с FreeBSD и glibc - прямо-таки программное воплощение машины Голдберга. Можно показывать кодерам с заниженной самооценкой, убежденных, что у них-то точно самый говнокодистый говнокод, а также для устрашения.
ответить
From buq Fri Jun 25 09:37:00 2021 UTC
Спасибо
Всем большое спасибо за ответы. Попробовал OpenBSD и FreeBSD. Заметил что FreeBSD работает быстрее чем OpenBSD, но мне больше понравилось OpenBSD. Вот несколько причин почему:
1) Главная репозитория исходников находится на ихних собственных серверах(не на гитхаб в отличии от FreeBSD. Лично мне это внушает доверие).
2) Минималистичня операционная среда по дефолту(twm, xterm, vi).
3) Хорошая среда для тех кто хочет изучать UNIX. Весь код OpenBSD 1.5 миллион линий кода. FreeBSD - 7.5+ мил., Linux - 15+ мил..
Про общие достатки могу отметить то, что юзерские приложения по умолчанию установливаются в /usr/local/bin а не смешиваются с системнами инструментами в /usr/bin как в Linux.
К сожалению пока-что не могу поставить OpenBSD на основную машину. Потому что fuck you Nvidia. Постоит пока на нотбуке пока появится нормальный драйвер для Nvidia. Пока не знаю установить ли FreeBSD на основную машину.
ответить
From Anonymous (unverified) Fri Jun 25 19:29:00 2021 UTC
пока появится
пока появится нормальный драйвер для Nvidia.
Я бы на это не рассчитывал. Никаких тенденций, указывающих на то, что он когда-нибудь появится, нет ни со стороны Nvidia, ни со стороны OpenBSD. Купите лучше недорогой Radeon.
ответить
From Oliver (unverified) Sat Jun 26 16:22:00 2021 UTC
Тоже есть
Тоже есть желание попробовать OpenBSD. Установил на свой ноут пока что голую систему, по мере возможности буду ее допиливать, если не надоест :) Единственное, если установить OpenBSD рядом с Линуксом, который загружается с помощью GRUB, и иметь возможность потом с нее загрузиться, я правил /boot/grub/grub.cfg файл, иначе GRUB ее не подхватывает
ответить
From buq Sun Jun 27 11:55:00 2021 UTC
Кстати
Мне, кстати, тоже нужно было как-то совмещать OpenBSD с Linux.
Но я не правил grub.cfg а "решил" это несколько иным способом.
Просто установил OpenBSD на второй диск, и изменил с БИОС-а дефолтный бут-драйв.
А когда нужен Linux, просто нажимаю DEL(на Lenovo) во время запуска и выбираю нужный бут-драйв.
ответить
☞ From Anonymous (unverified) Wed Jun 16 14:22:00 2021 UTC
Элджер, С++
Здравствуйте, Андрей Викторович
В конце своей книги, посвященной С++, вы рекомендовали к прочтению Дж. Элджера. У того в одна из глав книги посвящена коллекциям. В общем у меня вопрос, не являются ли коллекции контейнерами и если нет то в чем между ними отличие?
Спасибо.
ответить
From admin Wed Jun 16 20:26:30 2021 UTC
Во-первых,
Во-первых, коллекции в том виде, в котором их рассматривает Элджер, не обязаны быть контейнерами. То есть то, что рассказано в главе про коллекции, несомненно, возможно использовать для построения контейнеров — таких классов, которые хранят в себе объекты некоторого типа и больше ничего не делают. Но весь тот же материал можно использовать для построения проблемно-ориентированных структур данных под конкретную задачу, и это уже никакого отношения к контейнерам иметь не будет.
Во-вторых, я никогда не утверждал, что вот прямо всё, что есть у Элджера, следует использовать.
ответить
☞ From Anonymous (unverified) Tue Jun 15 22:58:00 2021 UTC
"Умные" указатели
Недавно несколько людей пытались меня упороно убедить в том, что при программировании на языке C++ использовать "сырые" указатели это якобы моветон, поскольку есть же "умные" указатели, которые ничем не хуже, зато спасают от глупых ошибок и облегчают написание серьезных программ, а в серьезных компаниях за использование простых указателей могут чуть ли не уволить с работы. В связи с этим, возник вопрос, как вы относитесь к идее таких "умных" указателей (если не брать во внимание, что зачастую имеется в виду часть пресловутой "стандартной" библиотеки, а рассматривать эту идею в целом) ?
ответить
From admin Wed Jun 16 20:31:06 2021 UTC
Я сам использую
Я сам использую умные указатели, когда под них есть задачи — например, вот тут: http://www.intelib.org на них повешен reference counting.
А вот те отморозки, которые заявляют, что обычные указатели нельзя использовать — не умеют программировать и вообще опасны для окружающих.
ответить
From nelson Thu Jun 17 08:17:56 2021 UTC
Указатели
Недавно несколько людей пытались меня упороно убедить в том, что при программировании на языке C++ использовать "сырые" указатели это якобы моветон, поскольку есть же "умные" указатели
Для таких людей изобрели кастрированный язычёк вообще без указателей - называется Java. Если так сложно использовать нормальные указатели, не нужно себя мучить, можно писать на жабе. Правда не стоит впоследствии удивляться явлению падения уровня своих навыков.
Плюсовые "умные указатели" - это ни разу не замена обычным указателям. Это одна из "фичей" "современного" С++, позволяющая не включать мозг. Хуже, наверное, только бездумное использование контейнеров, вместо проектирования структур данных.
ответить
☞ From Flau (unverified) Tue Jun 15 14:18:00 2021 UTC
Побочные эффекты
Если внутри функции вызывается процедура, которая изменяет только переменные этой функции и никакие другие, то является ли это побочным эффектом? Например, в функции есть рекурсивная процедура, которая заносит в список цифры переданного числа, а также заносит в другую переменную количество цифр.
Тут, конечно, можно написать отдельную функцию для подсчета цифр в числе для лучшей декомпозиции. Но что делать с процедурой, заносящей в список цифры, непонятно, ведь оформить её в качестве функции не получится.
ответить
From admin Tue Jun 15 14:31:34 2021 UTC
> Если внутри
> Если внутри функции вызывается процедура, которая изменяет только переменные этой функции и никакие другие, то является ли это побочным эффектом?
Побочный эффект имеет место, когда при вычислении выражения происходит что-то кроме собственно вычисления значения выражения, и при этом это что-то можно потом обнаружить. Если вы внутри функции вызываете процедуру, которая делает что-то со значениями локальных переменных функции, то после вычисления функции все эти переменные исчезнут и обнаружить будет ничего нельзя. Следовательно, никакого побочного эффекта тут нет.
ответить
☞ From Parthen Sun Jun 13 09:51:00 2021 UTC
Мучаю указатели
Конец страницы 413: "Все это работает только при условии, что мы не забыли перед началом работы со списком сделать его корректным, занеся значение nil в указатель first".
Так вот вопрос, зачем? Понятно, что nil надо совать в конец списка, чтобы знать где его конец, но зачем совать nil в указатель?
На странице 411 сказано, что "превратите ваш указатель в корректный пустой список". Но как указатель может быть списком, если это переменная?
А если мы просто показываем, что указатель ни на что не указывает, почему это критически важно для работы программы?
ответить
From admin Mon Jun 14 10:48:25 2021 UTC
Что, читать
Что, читать совсем не умеем, да? Или просто не хотим? Тяжело же будет.
Вот фраза в книге, вы же её сами цитируете.
> "Все это работает только при условии, что мы не забыли перед началом работы со списком сделать его корректным, занеся значение nil в указатель first".
Эта фраза вами грубо вырвана из контекста, но контекст легко восстановить: фраза завершает абзац, рассказывающий, что при добавлении элементов в начало списка нет никакой разницы, добавляется самый первый элемент в пустой список, или же уже не первый (то есть в списке что-то уже есть). Больше того, книжка снабжена рисунками, подробно показывающими, как это происходит: на стр.412 -- как это выглядит, когда список не пуст, а на стр. 414 -- как те же самые действия выглядят, когда список пуст. А в тексте приведён код, который это делает (и то, и другое -- код, ещё раз повторю, абсолютно одинаков, при добавлении в начало нет никакого специального случая при пустом списке).
При этом, процитировав фразу, что сие будет работать только при условии, что в указатель будет занесён nil, вы ещё имеете наглость вопрошать, зачем выполнять это условие. Ответ тут даже Капитана Очевидность, наверное, поставит в тупик, тут скорее нужен Адмирал Ясенпень: да чтоб работало, твою мать! написано же! Вот прямо в той фразе написано, которую вы цитируете! То есть вы сами!!! цитируете!!! фразу из книги, которая является ответом на ваш вопрос!!! и тем не менее продолжаете задавать вопрос.
А что будет, если в указатель НЕ занести nil, вообще-то проследить проще пареной репы. Если в него nil не занести, то в нём, как и в любой неинициализированной локальной переменной, будет мусор, и именно этот мусор (а не nil) на шаге, показанном на рис.2.8 "c)", окажется в поле next нашего только что созданного единственного элемента списка -- в результате выполнения оператора tmp^.next := first. Так что список как был некорректным, так и останется некорректным -- у него в последнем элементе не будет nil.
> "превратите ваш указатель в корректный пустой список". Но как указатель может быть списком, если это переменная?
А как ещё по-вашему должен выглядеть пустой список, то есть список, не содержащий ни одного элемента? Где здесь вообще источник этого вопроса, что конкретно тут может быть не очевидно? Может быть, вы предпочтёте рядом завести ещё одну переменную, какого-нибудь типа boolean, чтоб она показывала, пустой наш список или нет? Ну так это и лишняя память, и (что намного хуже) лишняя обработка специальных случаев в коде.
И вот что, на вопросы, показывающие такой вопиющий уровень лени и полного отсутствия даже попытки разобраться в тексте, я в дальшейшем раскрывать не стану и отвечать на них не буду. Это уже выходит за рамки приличий.
ответить
From Anonymous (unverified) Mon Jun 14 11:49:00 2021 UTC
Молодому
Молодому человеку просто доставляет с Вами общаться, ведь вопроса там действительно нет.
ответить
From Parthen Mon Jun 14 11:50:00 2021 UTC
>Что, читать
>Что, читать совсем не умеем, да? Или просто не хотим? Тяжело же будет.
Не можем. Если бы я был настолько ленив, я бы не дошел до указателей :)
Устал я, заколебался. Пытаясь решить те задачи, я на отладку я потратил 2 дня (причем полных, вот прям встал с утра и сижу до ночи). А средства отладки проходятся через несколько глав, так что в моем случае "отладка" -- это бесмысленный поиск ошибок взглядом.
Так что когда я это читал и писал, я тормозил по полной. Но вот сейчас я тоже не особо понял, пойду перечитывать
P.S. Текст я между прочим тогда перечитывал -- раз десять точно. Дало бы это еще что-нибудь с замыленным взглядом.
ответить
From admin Mon Jun 14 13:29:59 2021 UTC
Если всё именно
Если всё именно так, как вы говорите — значит, читая текст, вы не понимаете его смысла. Само по себе это нормально, поскольку тут мы имеем чуть ли не самый высокий барьер на пути вхождения в программирование; например, подавляющее большинство школьных учителей информатики этот текст тоже осилить не смогут.
Но есть, увы, и плохая новость: если, невзирая на все имеющиеся иллюстрации, вы всё же не можете понять, о чём идёт речь, то, по-видимому, сейчас вы к дальнейшему освоению программирования не готовы с хорошим запасом. Будете ли вы к этому готовы когда-то в будущем — это, как говорят, вопросительный вопрос. Увы, одним упорством вы тут ничего не победите.
ответить
From Oliver (unverified) Mon Jun 14 14:55:00 2021 UTC
например,
например, подавляющее большинство школьных учителей информатики этот текст тоже осилить не смогут.
-------------------------------------------------------
Андрей Викторович, Вы это - серьезно?
ответить
From admin Mon Jun 14 16:59:58 2021 UTC
Абсолютно
Абсолютно серьёзно, а что?
ответить
From Oliver (unverified) Mon Jun 14 17:15:00 2021 UTC
Удивило, что
Удивило, что учителя, которые преподают информатику, могут это не понимать
ответить
From admin Mon Jun 14 17:28:49 2021 UTC
Так а что вас
Так а что вас удивляет-то? Существуют люди, мнящие себя профессиональными программистами, для которых ручная работа со списками — далеко за горизонтом понимания. Что до школьных учителей, ну вот взять математику, скажем, а школу — обычную, не математическую (и вообще не спецшколу; в спецшколах оазис); как думаете, много вы в простых школах найдёте учителей математики, умеющих решать неравенства, в которых неизвестное помещено под знак квадратного корня? Ну, там, что-нибудь вроде
sqrt(x+50) > x-3
Да блин, я своими глазами видел учительницу русского языка, которая была абсолютно непоколебимо уверена, что к деепричастиям вроде "улыбается" вопрос нужно задавать в форме "что делается". И ежегодно это вдалбливала ученикам. И сделать с этим идиотизмом было вообще ничего нельзя.
Что до информатики, я вам секрет открою: главу про указатели из моего первого тома не осилит большинство авторов учебников по информатике. Ну, тех, которые для школы. Про обычных учителей тут можно вообще не заговаривать.
ответить
From Anonymous (unverified) Mon Jun 14 19:44:00 2021 UTC
Что до
Что до информатики, я вам секрет открою: главу про указатели из моего первого тома не осилит большинство авторов учебников по информатике. Ну, тех, которые для школы. Про обычных учителей тут можно вообще не заговаривать.
Не осилят потому, что не захотят осиливать или вот прямо-таки не смогут, даже если у них будет серьёзная мотивация?
Спрашиваю потому, что мне это весьма удивительно всё. Сам я с указателями особо не работал и, в целом, на низком уровне ничего не пишу. Но, увидев с неделю назад начало этого треда, решил себя проверить и довольно быстро набросал программы для обеих задач (на си, паскалевского компилятора нет под рукой), даже не читая предшествующие задачам объяснения. Хотя у меня, конечно, бэкграунд приличный: спектрум в детстве, паскаль в школе, ассемблер и си в институте. Но неужели в мире всё так плохо?
ответить
From admin Mon Jun 14 20:09:24 2021 UTC
Именно не
Именно не смогут.
Понимаете, вы вон уже давно освоили Си, а это значит — ощущаете на уровне печёнки, что за зверь этот указатель. Очень трудно себе представить, уже умея с ними обращаться, насколько на самом деле указатели — материя мозголомная.
ответить
From unch Tue Jun 15 06:19:00 2021 UTC
В рамках сюжета
В рамках сюжета "а вот еще мнение...". У Joel Spolski есть статья ("The Perils of JavaSchool"). Одна из тем: стенания автора из-за перевода курса 6.001 в MIT со scheme на python. По его словам, неспособность освоения указателей и рекурсии позволяли студенту в самом начале учебы понять, что пора уделить время другой специальности (не CS).
ответить
From admin Tue Jun 15 12:18:43 2021 UTC
Ну, с
Ну, с указателями-то, положим, в Scheme напряжёнка. Но статья Спольски да, доставляет :)
Есть, кстати, русский перевод: https://habr.com/ru/post/122665/
ответить
From Anonymous (unverified) Mon Jun 28 07:12:00 2021 UTC
Деепричастия
> что к деепричастиям вроде "улыбается"
Эээ, но ведь это не деепричастие. Это возвратный глагол настоящего времени третьего лица.
Деепричастие от этого слова — "улыбаясь".
ответить
From admin Mon Jun 28 08:03:11 2021 UTC
Гм, ну да,
Гм, ну да, согласен. Всё-таки лингвистика — не мой предмет :-)
Сами понимаете, бредовости утверждения, что к этому возвратному глаголу вопрос будет "что делается", сие не отменяет.
ответить
From Parthen Mon Jun 14 17:46:00 2021 UTC
Лично мой
Лично мой "Заслуженный учитель России" считает, что введение в школьную программу работу с файлами это, цитирую "совершенно ненужное усложнение и без того сложной школьной программы".
Хех, про указатели я вообще молчу.
ответить
From Oliver (unverified) Mon Jun 14 16:13:00 2021 UTC
на отладку я
на отладку я потратил 2 дня (причем полных, вот прям встал с утра и сижу до ночи).
-------------------------------------------------------
Нет смысла сидеть целыми днями, ибо чем больше часов Вы что-то изучаете, тем сложнее Вам понять материал. Мое мнение - учиться надо желательно утром, когда голова - свежая еще, и максимум 3..4 часа в день, ну может 5. Я - не преподаватель, но так я это дело чувствую. Возможно, Андрей Викторович меня поправит...
ответить
From Parthen Mon Jun 14 18:19:00 2021 UTC
Так, кажется я
Так, кажется я понял в чем проблема.
Получается, в список нельзя просто в конец вставить nil?
Т.е. нельзя написать что-то типо:
tmp^.next := nil
И если нет, то почему?
ответить
From admin Mon Jun 14 19:05:38 2021 UTC
Например,
Например, потому что тогда процедура занесения первого элемента в пустой список будет отличаться от процедуры занесения последующих элементов (в непустой список). А ещё потому что проблемы, как узнать, пуст список или нет, это всё равно не решит, а решать её как-то надо.
ответить
From Parthen Mon Jun 14 19:26:00 2021 UTC
А, ну тогда все
А, ну тогда все просто, спасибо!
ответить
From admin Mon Jun 14 20:05:38 2021 UTC
Шо, really?
Шо, really?
ответить
From Parthen Tue Jun 15 05:08:00 2021 UTC
Ну да, теперь
Ну да, теперь все встаёт на свои места
ответить
From Parthen (unverified) Mon Dec 9 20:01:49 2024 UTC
Re: Мучаю указатели
Испанский стыд...
ответить
From Andrey V. Stolyarov Mon Dec 9 21:07:40 2024 UTC
Re: Re: Мучаю указатели
Да ладно, с чего бы. Никто со встроенным пониманием указателей на свет не рождается, все когда-то эту стадию проходили.
ответить
☞ From Parthen Sat Jun 12 16:06:00 2021 UTC
А как без git хостера?
Ну вот я начал задумываться о том, чтобы между компами синхронизировать мои програмки.
И как я понимаю, вы против Github и его аналогов. Если с Github все понятно, то чем его альтернативы плохи?
При условии, конечно, что я не храню код только у них, а их сервер использую для передачи кода и решения связанных с кодом проблем (багтрекер и иже с ним, к примеру)
ответить
From admin Sat Jun 12 16:47:20 2021 UTC
Они плохи,
Они плохи, во-первых, тем, чем плохи вообще любые "бесплатные" сервисы в интернете: они вам ничего не должны, так что всерьёз полагаться на них просто нелепо. Но всевозможные репо-хостинги плохи ещё и тем, что по факту они предоставляют внутренние (разумеется, ни с чем внешним не совместимые) средства коммуникации между пользователями. В итоге оттуда оказывается обычно трудно уйти — эвакуация приводит к потере наработанных социальных связей.
Ещё раз напоминаю, цены на VPSки начинаются от двух баксов в месяц.
ответить
From joursoir (unverified) Sun Jun 13 09:21:00 2021 UTC
Дело в
Дело в скупости. Моя VPSка обходится мне в 2.5€/мес (условно говоря, заниженная стоимость одного похода в московскую столовую). Open source web frontend'ов для этих дел не мало. Среди них есть монстры, которые сравнятся с github по возможностям, а есть легковесные без js и лишнего функционала (cgit, к примеру).
Это сейчас github более-менее удобен, но я думаю, что в ближайшем будущем там появится реклама, будут еще сильнее пропихивать свою pro версию аккаунта. Если все ваши проекты и связи с людьми будут находиться в рамках этой платформы, то вы окажетесь просто напросто заложником ситуации.
Лично я не буду скрывать, что использую гитхаб, но только как зеркало моих проектов.
К слову, вы еще сможете прикрутить к своей VPSке какой-нибудь сервер для игры (учитывая мощности, тестовый), баг-трекер и почтовый агент. И я тут еще не затрагиваю полезность полученных знаний в ходе настройки своего сервера, а она велика.
ответить
☞ From Anonymous (unverified) Fri Jun 11 13:59:00 2021 UTC
Что такое указатель?
Здравствуйте, на консультации перед экзаменом преподаватель спросил: "Что такое указатель?". На что кто-то из студентов ответил, что это переменная, хранящая адрес. Преподаватель сказал, что за такой ответ будет ставить 3, не думая. Сам он говорит, что указатель - тип данных для работы с адресами. В чем здесь подвох, ведь у вас в книге написано то же самое, что ответил студент?
ответить
From admin Fri Jun 11 20:30:14 2021 UTC
"Подвох" тут
"Подвох" тут разве что в том, что этот ваш преподаватель не знает довольно простой вещи, которую, по идее, любой преподаватель любой дисциплины знать просто-таки обязан: терминология может быть разной, а терминологические споры всегда заведомо бессмысленны. Снижать оценку за используемую терминологию — это мракобесие уровня церковно-приходских школ.
ответить
☞ From Данил (unverified) Wed Jun 9 14:30:00 2021 UTC
Ошибка или нет ?
Добрый день!
Нахожусь на странице, посвященную комбинаторике, а именно на стр 143 первого тома второго издания, где написано определение:
«на самом деле определение факториала натурального числа k считается «число перестановок из k элементов», а то, что факториал равен произведению чисел от 1 до k — это следствие.
Для сформулированной выше задачи ответ составит, таким образом, 7! = 5040 комбинаций.»
Но такое число получается, если перемножать факториал с конца: 7х6х5х4х3х2х1, что не согласуется с определением факториала («произведение чисел от 1 до k)
Возможно, я все-таки что-то не так понял.
Заранее благодарю за ответ!
ответить
From admin Wed Jun 9 15:13:00 2021 UTC
А что, от
А что, от перемены мест множителей у нас теперь произведение может поменяться? (Вообще-то в высшей математике бывает и так, что может, но не на целых же числах, не классическое же умножение).
Кстати, в книге вывод факториала показан в обе стороны — как от больших чисел к мелким, так и от мелких к большим. Это вряд ли что-то всерьёз меняет, но может быть интересно, раз уж такие вопросы начались.
P.S. вопрос к широкой публике — как думаете, он это всерьёз или это теперь троллинг такой? :-)
ответить
From Anonymous (unverified) Wed Jun 9 15:20:00 2021 UTC
думаете, он это
думаете, он это всерьёз
Боюсь, да — у меня недавно студенты единицу в квадрат не смогли возвести...
ответить
From admin Wed Jun 9 15:29:23 2021 UTC
Божечки мои, you
Божечки мои, you made my day.
ответить
From Parthen Wed Jun 9 18:08:00 2021 UTC
А чет тут
А чет тут сложного?
Возведение в степень -- это умножение несколько раз, а умножение -- сложение несколько раз.
В итоге, чтобы возвести во вторую степень надо дважды умножить. По аналогии, умножение на два -- это сложение 4 раза. Значит, 1^2 = 1 + 1 + 1 + 1 = 4
P.S. Какой же бред может генерировать мой мозг, если его не останавливать...
ответить
From admin Wed Jun 9 18:43:08 2021 UTC
Мама. Вы же
Мама. Вы же пошутили, правда?
ответить
From Parthen Thu Jun 10 05:09:00 2021 UTC
Вообще у меня
Вообще у меня там все сообщение было в теге *sarcasm*, но он куда-то пропал. Так что да, это шутка :)
ответить
From Alejandro Tue Aug 15 19:23:21 2023 UTC
Re: А чет тут
Ох, как жаль, что эти выкладки не увидел великий русский учёный, к.т.н. Юрий Степанович Рыбников :(
ответить
From Andrey V. Stolyarov Tue Aug 15 19:58:02 2023 UTC
Аж интересно стало
а это кто ещё?
ответить
From Alejandro Wed Aug 16 04:02:04 2023 UTC
Re: Аж интересно стало
Великий математик :) Особенно на 9:50 и 16:08.
PS: и да, таких персонажей пускают в университеты. В своём видел нечто похожее.
ответить
From Andrey V. Stolyarov Wed Aug 16 09:50:07 2023 UTC
Re: Аж интересно стало
Выдержал пару минут, как вы вообще такое смотрите
ответить
From Alejandro Wed Aug 16 17:15:33 2023 UTC
Re: Re: Аж интересно стало
А я и не смотрел. У меня таймкоды уже были :-) Но вообще, есть в этой категории люди куда опаснее вышеприведённого фрика.
ответить
From Parthen Wed Jun 9 15:43:00 2021 UTC
Всерьез,
Всерьез, всерьез. Мне из моих сверстников IRL говорить не с кем, потому что не о чем. Есть пару знакомых через интернет, с которыми реально можно поговорить, а не поболтать.
А вообще я долго не мог принять того факта, что 0^0=1. Я не могу что-то понять не разобравшись, а как это объяснить так и не понял. Удолетворился тем, что заставил программу начертить график, и там все шло к единице.
А вот недавно узнал, что 0! = 1. Это я вообще хз как работает.
ответить
From admin Wed Jun 9 16:08:00 2021 UTC
Насколько я
Насколько я помню, ноль в степени ноль с формальной точки зрения не определён. Степенная функция произвольного аргумента определена только для строго положительных оснований, а для всех неположительных определены только натуральные показатели степени.
Что касается 0!, то это как раз, как ни странно, очень просто. Вообще считается, что единице равно произведение элементов любого пустого множества :-) Тут можно начать с суммы и вспомнить, как мы считаем сумму элементов: полагаем её равной нулю, затем проходим по элементам и каждый из них добавляем. Ясно, что для пустого множества сумма, вычисленная таким способом, составит как раз ноль, что в общем принять психологически намного легче.
Для умножения роль такого нейтрального элемента играет единица (а вовсе не ноль), то есть чтобы вычислить произведение, например, элементов массива или списка, мы исходно полагаем его равным единице, а потом последовательно домножаем на каждый из элементов. Очевидно, что если множество было пустое, в нашем произведении так единица и останется.
Да и вообще, вы же не хотите, чтобы наша любимая формула Це из эн по ка, которую мы в книжке с таким трудом вывели, вдруг перестала работать для тривиальных, в сущности, случаев, когда либо n совпадает с k, либо k равно нулю :-)
ответить
From Parthen Wed Jun 9 16:17:00 2021 UTC
Хмм, не думал в
Хмм, не думал в таком свете. Спасибо, довольно легко уложилось в голове :)
ответить
From Anonymous (unverified) Fri Jun 11 14:27:00 2021 UTC
Про "говорить не с кем"
У меня тоже была такая проблема, когда я учился в школе в маленьком провинциальном городе - людей, с которыми можно интересно побеседовать, было не так много. Но, когда я приехал в Москву учиться в университет, то эта проблема отпала совсем. Более того - оказалось, что я для многих людей и сам из разряда "да о чем с ним разговаривать"))
Это все к чему - всегда можно найти единомышленников, и тех, у кого есть чему поучиться.
ответить
From Parthen Sat Jun 12 12:09:00 2021 UTC
Ну, осталось
Ну, осталось дождаться того, когда я уеду в Москву :)
ответить
☞ From Владислав (unverified) Mon Jun 7 19:54:00 2021 UTC
Подсветка вывода команд
Злавствуйте, Андрей Викторович. Можно поинтерисоваться, вы используете в имуляторе терминала подсветку вывода команд, например, в выводе команды ls подсветку каталогов синим или битых сылок красным и т.д.? Или у вас все черно-серое?
Просто я постепенно пришел к тому, что для всего имулятора использую только черный и серый цвета. То же самое с подсветкой синтаксиса исходных текстов в редакторах. Раньше же как-то жили до появления цветных мониторов...
ответить
From admin Tue Jun 8 09:55:47 2021 UTC
Раньше я ls'у
Раньше я ls'у цвета откручивал, потом почему-то забил, так что сейчас у меня выдача ls цветная.
В остальном да, серые буквы, чёрный фон. Никакой подсветкой синтаксиса я не пользуюсь.
ответить
From Владислав (unverified) Tue Jun 8 12:31:00 2021 UTC
Цветовая схема
Если кто-то ищет цветовую схему для xterm, могу посоветовать вот эту:
https://how-to.fandom.com/wiki/How_to_configure_xterm/Color_scheme_1 .
У нее приятные не вырвиглазные цвета.
И еще. Кто-нибудь знает, где можно найти предназначение каждого цвета в цветовой схеме для xterm, которые прописываются в .Xresources? То есть узнать за подсветку чего каждый из 16'ти XTerm*color в конфиге отвечает. Можно, конечно, проверить каждый цвет по отдельности, но все же.
ответить
From Anonymous (unverified) Tue Jun 8 18:00:00 2021 UTC
Кто-нибудь
Кто-нибудь знает, где можно найти предназначение каждого цвета в цветовой схеме для xterm, которые прописываются в .Xresources? То есть узнать за подсветку чего каждый из 16'ти XTerm*color в конфиге отвечает.
Те консольные приложения, которые используют цвет, обычно исходят из предположения, что цвета примерно укладываются в такую табличку:
0 Black
1 Red
2 Green
3 Yellow
4 Blue
5 Magenta
6 Cyan
7 White
8 Bright Black (Gray)
9 Bright Red
10 Bright Green
11 Bright Yellow
12 Bright Blue
13 Bright Magenta
14 Bright Cyan
15 Bright White
Подробнее, например, тут:
https://en.wikipedia.org/wiki/ANSI_escape_code#Colors
ответить
From Anonymous (unverified) Tue Jun 8 18:31:00 2021 UTC
Я однажды
Я однажды задался целью сделать себе цвета, которые не будут по яркости сильно отличаться от серого. Получилось вот такое, пользуюсь уже несколько лет, глаза не протестуют (это кусочек моего
.Xresources
):ответить
From Parthen Tue Jun 8 18:31:00 2021 UTC
Между прочим,
Между прочим, глянул я сейчас страничку о светофобии на Википедии.
Там утверждают, что максимально удобный цвет для таких людей -- зеленый на черном. Посмотрел, как по мне не только приятнее глазу, но и все более отчетливо видно.
Может это только для светофобии действует, посмотрите кто еще:
https://ru.wikipedia.org/wiki/%D0%A1%D0%B2%D0%B5%D1%82%D0%BE%D0%B1%D0%BE%D1%8F%D0%B7%D0%BD%D1%8C
ответить
From Anonymous (unverified) Wed Jun 9 04:48:00 2021 UTC
The Matrix has you...
Братьясестры Вачовски о чем-то таком подозревали )))ответить
From admin Wed Jun 9 09:19:00 2021 UTC
Да ладно :-)
Алфавитно-цифровые терминалы с зелёными буквами существовали задолго до съёмок "Матрицы". Я бы сказал, этот цвет для монохромных терминалов был самым популярным.
ответить
From Anonymous (unverified) Wed Jun 9 10:34:00 2021 UTC
Я, скорее, про
Я, скорее, про светобоязнь (да не обидится на меня тов. Pathern) - возможно, что люди с этим недугом яснее других видят, что мир не в порядке и т.д. по тексту. А вообще, конечно, любопытно, что зеленый цвет тут конфортнее - к нему эволюционно у человеческого глаза выше чувствительность. По поводу монохромной зелени - подозреваю, этот люминофор был самым дешевым, а, может, как раз по степени приятности глазу. Сижу вот сейчас, пялюсь в древний (ИЧСХ, зеленый) осциллограф :)
ответить
From Parthen Wed Jun 9 14:02:00 2021 UTC
Не стоит, я на
Не стоит, я на такое не обижаюсь, это не прямое оскорбление все-таки.
По теме -- светофобию приписывают двум людям: те, у кого проблемы с глазами и те, у кого ненормально высокая светочувствительность. Так вот я из вторых. У меня по сути нет никаких болезней в глазу, но любой свет вызывает боль и психологическое отторжение (я из-за этого терпеть белый цвет не могу). К тому же, вот сейчас я печатаю в белом окошке, и если закрою глаза у меня оно "выжжено" на сетчатке. И что только что обнаружил, я даже с закрытыми глазами вижу, где оно находится.
Хех, я так дойду до стереотипного хацкера: куча темных терминалов с тайлингом и зеленым текстом :)
ответить
☞ From Anonymous (unverified) Mon Jun 7 18:43:00 2021 UTC
Хэш-таблицы
В первом томе, в месте, где рассказывается о хэш-таблицах, говорится, что обычно размер массива для таблицы выбирается равным простому числу, чтобу уменьшить вероятность попадания двух ключей в одну позицию. Это как-то следует из сказанного выше в параграфе или нет? Сижу, думаю, не могу понять, как простота влияет на частоту "выпадения" одинаковых остатков. Не могли бы вы разъяснить?
ответить
From admin Mon Jun 7 19:19:15 2021 UTC
Нет, в книге об
Нет, в книге об этом не говорится. Объяснение можно много где найти, вот тут, например: https://medium.com/swlh/why-should-the-length-of-your-hash-table-be-a-prime-number-760ec65a75d1
ответить
☞ From КнигоЛюб3000 (unverified) Mon Jun 7 18:38:00 2021 UTC
Глаза - это серьёзно
Добрый день. Хотел поинтересоваться о возможности чтения ваших книг в темной теме. Если изменить цвета интерфейсов evince или atril фантазия дает возможность представить и сотворить, то как быть с PDF-ками книг? Ума не приложу, как изменить у самой книги символы на серый и "лист" на черный (искать пробовала, но стоило увидеть "Adobe" или "Windows", как тут же судорожно закрывала вкладку).
*Очень, очень-преочень мои глаза будут благодарны тому, кто соизволит помочь мне (и, наверное, многим другим) в данной задаче.
Спасибо! :*
ответить
From admin Mon Jun 7 18:47:03 2021 UTC
В atril есть Ctrl-I
В atril есть Ctrl-I (опция "inverted colors"), но это не совсем то, буквы получаются белыми, это слишком ярко.
ответить
From Trollkarl (unverified) Mon Jun 7 19:20:00 2021 UTC
Насчет atril или
Насчет atril или evince не знаю, но вот, например, в zathura можно инвертировать цвета через ctrl-r, а затем скомандовать
:set recolor-darkcolor \#RRGGBB
для изменения цвета текста (recolor-lightcolor — соответственно, для фона).
ответить
From Anonymous (unverified) Mon Jun 7 20:07:00 2021 UTC
В программе Okular
В программе Okular (KDE). Settings -> Configure Okular -> Accessibility -> Change Colors -> Color mode == Change dark & light colors. Там выбираете подходящее вам значение из всего спектра цветов для Dark color и Light color.
Можно еще и хоткей навешать и/или кнопку на тулбар добавить.
ответить
From Anonymous (unverified) Tue Jun 8 13:39:00 2021 UTC
Ну, DE (а уж KDE тем
Ну, DE (а уж KDE тем паче) затаскивать себе на машину ради pdf-читалки, имхо, прям не очень затея...
ответить
From admin Tue Jun 8 14:25:37 2021 UTC
Насколько я
Насколько я понимаю, в зависимости от фантазии создателя пакета подобные приложения могут и не притащить в зависимостях весь свой DE. Я вон eog использую, но самого гнома у меня при этом нет.
ответить
From Parthen Tue Jun 8 14:13:00 2021 UTC
Немного не по теме
>ХотеЛ поинтересоваться
>закрываЛА вкладку?
Что-то не то :)
А по теме -- Aesop вполне умеет, правда текст не серый, а приглушенный белый. Но с моей светофобией вполне ничего, глаза не болели.
ответить
☞ From Parthen Mon Jun 7 15:49:00 2021 UTC
Спасибо всем
Спасибо всем тем, кто мне советовал Vim.
Попробовал, прошел пару уроков на vimtutor и мне понравилось. В принципе, я ко всему смог привыкнуть, разве что HJKL меня все еще расстраивает.
Осталось полностью запомнить команды, но думаю решу это как обычно -- повешу их себе на стенку.
В остальном, отпишусь еще, когда буду себя полностью комфортно чувствовать.
P.S. А все почему -- несколько дней назад у меня заболело запястье. Не сильно, просто ноет. Но мотивации хватило :)
ответить
From Anonymous (unverified) Tue Jun 8 03:51:00 2021 UTC
Почитай книгу
Почитай книгу "Изучаем редакторы vi и Vim, 7-е издание" автор Роббинс Арнольд. Много интересного узнаешь.
ответить
From admin Tue Jun 8 09:53:19 2021 UTC
А что, эта книга
А что, эта книга транслирует какое-то тайное знание? :-) Просто при имеющемся в интернете изобилии материала на тему vim мне ещё и книги по нему читать как-то не приходило в голову (возможно, зря).
ответить
☞ From Anonymous (unverified) Sun Jun 6 12:05:00 2021 UTC
Получение заработка за счёт доступа к серверу
Здравствуйте, Андрей Викторович! Чтение последних сообщений в Вашей гостевой книге навело на мысль, и мне хотелось бы узнать Ваше мнение на счёт этой мысли...
Допустим, есть некоторая компания, которая разработала программу с открытым исходным кодом и даже с нормальным руководством по её сборке и использованию. Но, чтобы заработать денег, компания предоставляет альтернативный доступ к этой программе в виде платного доступа к своему серверу с этой программой. И пользователю предлагается покупать число запросов к этому серверу, либо скачать исходный код и использовать программу самостоятельно.
Является ли этот способ приемлемым с Вашей точки зрения?
ответить
From admin Sun Jun 6 12:44:00 2021 UTC
Не вижу
Не вижу проблем. Где тут хоть чья-то свобода нарушена? Хочешь — используй, не хочешь — не используй. Это было бы приемлемо даже в том случае, если бы эта фирма вовсе никому не предоставляла никаких исходников и документации. Иной вопрос, что лично я бы такой сервис оплачивать не стал, но я не считаю платные сервисы неприемлемыми.
Копирастия неприемлема по совершенно определённой причине: копирасты считают возможным диктовать сразу всем — вот прямо-таки всему человечеству, а точнее, каждому пользователю любого компьютерного устройства — что можно и что нельзя делать с носителями информации. кому бы таковые ни принадлежали, на компьютерах, кому бы, опять же, таковые ни принадлежали. А тех, кто подчиняться этим (сугубо абсурдным) требованиям не хочет, ещё и смеют называть "ворами" и "пиратами" (за такое вообще в дерьме топить — все прекрасно знают, что такое воровство и что такое пиратство, и ни то, ни другое никакого отношения к созданию копий информации не имеет).
ответить
From Anonymous (unverified) Sun Jun 6 13:47:00 2021 UTC
Правильно ли я
Правильно ли я понимаю, что если бы условный Netflix так же как и сейчас продавал доступ к просмотру своих фильмов, но при этом не было бы преследования людей, скачавших/рипнувших фильмы с него, то вы бы относились к его деятельности нормально?
ответить
From admin Sun Jun 6 14:41:50 2021 UTC
Нетфликс, для
Нетфликс, для начала, засылает на компьютер пользователя вредоносное программное обеспечение, которое затрудняет пользователю делать то, что обычно делают с информацией — а именно, например, сохранять локально копии (замечу, это действие считается законным даже в ныне действующих мракобесных юридических системах, поддерживающих копирастию). Это раз. А два — не бывает такого "если бы". Если бы каждый мог без каких-либо сложностей выложить в открытый доступ любой фильм, полученный с нетфликса, то нетфликс бы не смог существовать.
Посему без всяких "если бы": не только сам нетфликс, но и все, кто ему заплатили хотя бы цент — моральные уроды.
ответить
From Anonymous (unverified) Sun Jun 6 16:34:00 2021 UTC
Это все детали.
Это все детали. Я же хочу лучше понять позицию. Допустим, что смотреть фильмы на сайте некой компании или через их приложение удобнее для среднего зрителя, чем скачивать напрямую.
Просто по аналогии с примером в корне этой ветки комментариев: подобное предоставление сервиса нормально по-вашему или есть какие-нибудь нюансы?
ответить
From admin Sun Jun 6 16:47:00 2021 UTC
Это не "детали",
Это не "детали", это определяющие обстоятельства. Если вы этого всё ещё не поняли, то я уже даже не знаю, каким способом вам можно что-то объяснить и возможно ли это вообще.
Вообще говоря, любая сделка, если она совершается по информированной доброй воле и без каких-либо элементов принуждения (вроде, например, монопольного положения игрока на рынке) и не подразумевает насилия над третьими лицами, допустима. Копирастия к этому никакого отношения не имеет, так как даёт "правообладателям" право (!) требовать чего-то от лиц, никаких договорных отношений с этими правообладателями не имеющих.
Кстати, и засылка на компьютер пользователя заведомо вредоносного ПО тоже не может рассматриваться как часть сделки, поскольку об _информированном_ согласии пользователя здесь никакой речи идти не может.
ответить
From Anonymous (unverified) Sun Jun 6 16:03:00 2021 UTC
А если,
А если, допустим, автор какого-то произведения согласен с тем, чтобы люди могли свободно обмениваться данным произведением (ну, скажем, музыкальным произведением) между собой, но при этом не хочет, чтобы его произведение использовали в каком-нибудь коммерческом ключе (или хочет в таком случае получать процент от прибыли). Например, какая-нибудь песня используется в фильме, за показ которого в кинотеатре берут деньги. Должен ли в таком случае автор иметь возможность контролировать использование своего произведения, как вы считаете?
ответить
From admin Sun Jun 6 16:29:54 2021 UTC
Нет, не должен.
Нет, не должен. Никакие имущественные права, относящиеся к т.н. "интеллектуальной собственности", не имеют права на существование ни в каком виде.
У автора есть целый ряд неимущественных прав, таких как право авторства, право на неизменность произведения и прочее. Ни одно из этих прав не позволяет кому бы то ни было запретить использование произведения, и тут совершенно неважно, коммерческое использование, некоммерческое или какое ещё.
А ещё автор может вообще не публиковать своё произведение, так сказать, не выпускать его из рук. Это вполне очевидно.
ответить
From Anonymous (unverified) Sun Jun 6 17:19:00 2021 UTC
Не поймите меня
Не поймите меня неправильно, не имею цели уперкать вас в чем-то, а хочу только разобраться в вашей позиции. Почему тогда у вас в публичной лицензии запрещено, например, продавать носители с вашими книгами?
ответить
From admin Sun Jun 6 17:30:00 2021 UTC
Потому что,
Потому что, например, копирайтное законодательство ещё пока не отменено. И это, замечу, там же написано.
ответить
From Anonymous (unverified) Tue Jun 8 18:38:00 2021 UTC
Андрей
Андрей Викторович, а можно вас попросить хотя бы тезисно обозначить "идеологически верные" пути монетизации программ/игр вообще? Вы неоднократно приводили здесь пример инициативной разработки про выкопанную яму метр на метр, за которую просят вознаграждение. Но вот, скажем, написал я (вот натурально я свой собственный) какую-нибудь игрушку, которой решил поделиться с общественностью. Какие существуют способы поиметь с этого что-то осязаемое и при этом не оказаться моральным уродом и т.д.?
ответить
From admin Tue Jun 8 19:52:00 2021 UTC
Никаких не
Никаких не существует. Хотите зарабатывать деньги — делайте что-то, о чём вас готовы попросить другие люди и что вы без вознаграждения делать бы не стали. Если вы эту игрушку и так сделали бы, по какой такой причине кому-то следует расставаться с деньгами? Чтобы отдавать деньги, нужна внятная причина, нужен ответ на вопрос, чего человек добьётся в обмен на свои деньги. Оплачивая ваше хобби, никто ничего не добьётся.
Теоретически возможно попробовать донэйтов пособирать, но чтобы реально кто-то стал донэйтить, это должна быть не просто "игрушка", а эпохальное событие в области компьютерных игр.
ответить
From Anonymous (unverified) Wed Jun 9 08:52:00 2021 UTC
А что если
А что если сделать игрушку(сетевую) свободно распространяемой, но при этом предоставлять за деньги возможность поиграть с другими людьми на моих серверах. В этом случае человек приобретает "место" на сервере. Вычислительная мощность -- величина, вроде бы, довольно материальная, а, если денег платить не хочется, то можно и свой сервер поднять, если хватит навыков.
ответить
From admin Wed Jun 9 09:27:12 2021 UTC
Ну и? Не вижу
Ну и? Не вижу проблем, кроме разве что одной: денег никто не заплатит :-) В любом случае вы здесь не на игрушке зарабатываете, а на поддержке сервера.
ответить
From Parthen Sun Jun 6 18:19:00 2021 UTC
Мои 5 копеек
Рассматриваете это с другой точки зрения -- вы продаете серверную мощность, причем вы, как создатель программы, настроите сервера наилучшим образом для работы данной программы.
Ну типо, у меня есть места давняя об игре, и я думаю, что буду продавать в ней приватные сервера для всяких стримеров-тестеров. Сами они сервер не поднимут, а тут уже все готовенькое.
ответить
☞ From КнигоЛюб3000 (unverified) Sun Jun 6 10:59:00 2021 UTC
Близких нужно поддержать!
Parthen и все разделяющие мнение Андрея Викторовича, хочу вас поддержать за ваши трезвые взгляды, за ваше время, которое вы тратите в надежде отрезвить разумы окрепащенных личной выгодой и интересом людей, людей которых самообъявленные пупы земли злых корпораций позволили себе очерствить их резанными бумажками с портретами психов разбирающихся в психологии манипулирования людьми.
Очень надеюсь, что вы не будете сдавать позиции, не будете сдаваться и жить по принципу: "как все".
Я уверен, что капиталистический спрут, пожирающий все до чего может дотронуться, находится в агонии и вскоре сдохнет.
Ну а мы - бравые добровольцы, сражающиеся за свободу информации - вскоре вздохнем с облегчением.
ответить
From admin Sun Jun 6 11:54:56 2021 UTC
Так-с, вот тут
Так-с, вот тут стоит, по-видимому, внести ясность. Я не коммунист; больше того, коммуняк совершенно ни под каким соусом не перевариваю, как и представителей любых других идеологий — впрочем, я полагаю, что идеологии не вполне осмысленно пытаться отличить друг от друга, поскольку это в действительности одно и то же явление, будь то любая из существующих религий, или коммунизм, или фашизм, или "новая этика" — конкретные идеи там никакой роли не играют.
Больше того, я и не социалист, ибо социализм и любые его проявления вроде social welfare, модного ныне в "развитых странах" — лишь оправдание для перманентного грабежа и много чего ещё такого, что мне категорически не нравится.
И против капитализма я ничего не имею, пока речь идёт, во-первых, о материальном производстве, и, во-вторых, пока та же самая речь не заходит о так называемом "крупном бизнесе", который уже не бизнес, а людоедские структуры, срастающиеся с государством — точнее говоря, это просто ещё одно проявление так называемых "правящих элит", чьи интересы прямо противоположны интересам всех лиц, в эти элиты не входящих. И да, я совершенно ничего не имею против денег как таковых, как и против их зарабатывания.
Если интересно, какова моя система ценностей, то тут всё просто: она начинается с моей личной индивидуальной свободы, ею же и заканчивается, и больше мне мир ничего интересного предложить не может. Копирастия — это разновидность цензуры, ну а цензура — это просто таки вопиющее посягательство на мою свободу; впрочем, претензии копирастов на то, что они якобы могут мне запретить копировать что-то с моей флешки на чью-то ещё за запертыми дверями моей квартиры — это очевидный абсурд, можно даже не вспоминать про цензуру. Вообще так называемая "интеллектуальная собственность", в особенности пресловутое "авторское" (на самом деле вовсе не авторское) право — это совершенно одиозное проявление государственного волюнтаризма, нарушающее свободу сразу всех, причём совершенно на ровном месте, и просто так терпеть эту ублюдочную юридическую сущность я не намерен. Но ни коммунистом, ни социалистом, ни противником капитализма это меня не делает.
ответить
From Parthen Sun Jun 6 18:10:00 2021 UTC
Спасибо :)Но
Спасибо :)
Но вот тут я с Андрей Викторовичем солидарен -- коммунистов я не люблю, как минимум российских, у меня с личные счеты, поскольку отец священник.
Но вот коммунизм мне видится малясь утопичным. Я не эксперт, но видится все это все цитатой Шарикова: "Да взять все, и поделить!" Ну на кой черт нужно это "уравнивание", если люди все равно не равны, просто потому что разные?
ответить
From admin Sun Jun 6 18:46:41 2021 UTC
Коммунизм не
Коммунизм не про уравнивание, не позорьтесь.
ответить
From Parthen Sun Jun 6 18:50:00 2021 UTC
Воот, вылезает
Воот, вылезает мое незнание политики, не совался туда никогда.
Не подскажете где ознакомиться?
ответить
From admin Sun Jun 6 19:02:00 2021 UTC
Не подскажу.
Не подскажу. Первоисточники довольно объёмны и занудны, всевозможные иные тексты либо в ту, либо в другую сторону "сдвинуты".
Основное тут, впрочем, вот что — и это мало кто понимает. Между "разными" идеологиями в действительности никакой разницы нет, это сугубо одно и то же явление, имеющее ровно одну цель: оболванивание населения с целью укрепления власти одних над другими. Исключений история не знает. Так что, в общем и целом, обсуждать идейную конкретику, которую использовали коммуняки, бессмысленно — она не играет никакой реальной роли, это просто одна из возможных ширм.
И, на всякий случай, чтобы не было лишних иллюзий: да, абсолютно любая религия (не как вера во что бы то ни было, а как организация и социальное явление) — это тоже частный случай идеологии.
ответить
From КнигоЛюб3000 (unverified) Mon Jun 7 03:55:00 2021 UTC
Виноват
На самом деле я разошелся и коснулся грязного "дна" своих побуждений :) Хотел лишь поддержать все то, что связано со свободой человека, не затрагивающей свободы других и т.д. и т.п.
А в итоге - политика.
Меня уже прошили? :с
(А за ответы спасибо! Правда. Наконец-то сломан очередной стереотип "как нужно жить", о котором я даже не догадывался.)
ответить
From Parthen Mon Jun 7 05:13:00 2021 UTC
Насчет религий
Насчет религий -- вы бы хоть "массовых" приписали. А то 3.5 монаха в глуши тоже оказывается кем-то оболваниваются
ответить
From admin Mon Jun 7 12:08:41 2021 UTC
Ну, в принципе
Ну, в принципе можно и приписать, но вы на мой текст посмотрите внимательно: у этих ваших "трёх с половиной монахов в глуши" где, простите, "организация и социальное явление"?
ответить
☞ From Домарощинер Fri Jun 4 14:17:00 2021 UTC
Это правда?
Здравствуйте!
Ко мне в группу в ВК пришёл человек, который говорит, что в ваших книгах написано следующее:
"Искусство - это информация и больше ничего, а следовательно, платить за это не надо!"
И дальше:
"Писатель - это не профессия, а хобби. А хобби не оплачивается".
Это правда?
ответить
From admin Sat Jun 5 10:24:00 2021 UTC
Ахтунг! Копирасты пожаловали
> Ко мне в группу в ВК
Кто использует ВК, тот похож на мудака. Когда ж вы кончитесь-то, идиоты непуганые.
> "Искусство - это информация и больше ничего, а следовательно, платить за это не надо!"
Ну, такой ахинеи я, разумеется, сказать не мог, хотя бы даже потому, что произведения искусства бывают весьма и весьма материальными — статуи, оригиналы картин, да даже новомодные "инсталляции". Впрочем, сие никак не отменяет других моих утверждений, в частности:
1. Искусство не может иметь своей целью зарабатывание денег, а всё, что делается для зарабатывания денег, никакого отношения к искусству не имеет. Хотя бы даже потому, что искусство не терпит компромиссов, тогда как работа за деньги из компромиссов попросту состоит.
2. Существуют всего два вида сущностей, которые могут стоить денег: (1) материальные объекты и (2) человеческое время, потраченное по конкретному заказу конкретного заказчика. Всевозможные вариации на тему инициативных разработок вида "сейчас тут потратим время и что-то такое склепаем, а потом за это слупим денег с кого-нибудь" под второй пункт не подпадают — здесь нет ни заказчика, ни заказа. Если результатом инициативной разработки стало нечто материальное, то это материальное можно продать, поскольку это материальный объект; но если результат чисто информационный, то тут уж пардон: кто действует в своё удовольствие, тот действует в своё удовольствие. Точка, все свободны.
3. Платить за биты и байты можно разве что даже не ксерокопиями, а электронными сканами денег. Такой "обмен" был бы справедливым.
4. Те, кто готовы платить живые деньги за биты и байты — за электронные книги, за скачивание музыки и фильмов, за компьютерные программы — вредители и враги цивилизации, поскольку своими деньгами продлевают агонию копирастического издательско-медийного спрута, который уже давно должен был сдохнуть. Я с такими людьми предпочитаю переставать здороваться.
> "Писатель - это не профессия, а хобби. А хобби не оплачивается".
Такого в явном виде я тоже, разумеется, не говорил, т.е. вот этот вот текст в кавычках не является цитатой из какого-либо моего текста. Если под писателем понимать любого автора "художественных" (или, лучше сказать, беллетристических, поскольку художественная составляющая там зачастую весьма сомнительна) текстов, то, разумеется, существуют как писатели-любители, так и писатели-профессионалы, это просто констатация факта. Что, опять же, не отменяет следующего моего утверждения:
5. Деятельность так называемых профессиональных писателей мало того, что не имеет никакого отношения к искусству, она ещё и вредоносна: пользуясь издательской "раскруткой", эти деятели отнимают у любителей заслуженную аудиторию, а с ней и жалкие остатки мотивации.
Впрочем, это уже ненадолго. Можете спросить у любого издателя, он подтвердит, что сколько-нибудь заметных денег сейчас могут заработать только "уцелевшие" и хорошо раскрученные писатели доинтернетовской эпохи типа всяких лукьяненко и донцовой, а гонорары всех, кто пытается пробиться сейчас, мизерны настолько, что ни о какой работе за деньги тут и речи идти не может. Так что "профессиональное писательство" в самое ближайшее время окончательно накроется медным тазом, даже если этому процессу не помогать.
ответить
From Parthen Sat Jun 5 13:39:00 2021 UTC
А я тот самый парень
>Кто использует ВК, тот похож на мудака. Когда ж вы кончитесь-то, идиоты непуганые.
Справедливо, но тут есть небольшое оправдание -- мы с Домарощинером скованы -- Летосфера (сфера игры "Бесконечное лето") существует только в ВК, а мы в ней моды делаем.
>"Искусство - это информация и больше ничего, а следовательно, платить за это не надо!"
Я между прочим такой анихеи также не говорил. Я твердил раза 4 простую мысль -- есть носитель информации, есть информация. Информацию продавать нельзя. Носитель -- можно.
Полный срач можно прочитать вот тут -- https://vk.com/domaroshiner?w=wall-153476349_14670
Но можете прочитать по скриншотам на моем сайте --
https://parthen.neocities.org/vk_fight/screenshot.html
ответить
From admin Sat Jun 5 14:11:16 2021 UTC
Посмотрел
Посмотрел скриншоты, благодарю. Вам с такими, с позволения сказать, людьми в одном проекте работать не противно, простите? Да ещё и в ВК (если эта "летосфера" есть только там, то по мне так пусть лучше её вообще не будет).
ответить
From Parthen Sat Jun 5 15:15:00 2021 UTC
> Вам с такими, с
> Вам с такими, с позволения сказать, людьми в одном проекте работать не противно, простите?
Вы немного не поняли. Есть игра -- Бесконечное лето.
У нее есть фанатская база, моды, арты и т.д. -- все это называется Летосфера и обсуждение всего этого обычно польностью в ВК.
Противно? Фиг знает. Большинство тех, кого я знаю копирасты, что поделать. Пока я могу просто не затрагивать эту тему -- с Домарощинером я так-то несколько лет уже знаком, а посрались только сейчас. Если бы я не написал этот комментарий, может и еще несколько лет спокойно бы общались.
Так вот в так называемой "Мастерской" выкладываются модификации к игре. Там публикуются мои модификации, и Домарощинера. Так что мы с ним не пересекаемся особо.
Ну а насчет ВК -- пока он у меня есть, то ладно уж. Вот я из школы выпущусь, зарою свой смартфон вместе с симками, тогда можно удалить ВК и уходить из Летосферы.
ответить
From Oliver (unverified) Sat Jun 5 16:43:00 2021 UTC
А какой смысл у
А какой смысл у этой игры? На что Вы тратите время?
ответить
From admin Sat Jun 5 16:56:07 2021 UTC
По мне так у
По мне так у всех игр смысл ровно один: развлечение. Эта хоть (вроде бы) под свободной лицензией.
ответить
From Parthen Sat Jun 5 17:30:00 2021 UTC
Да,
Да, развлечение. К тому же, это эдакий "социальный лифт" в мире визуальных новелл. Берешь игру, переделываешь свой сюжет (а арты, к слову, у визуальных новелл дорогие) и бесплатно получаешь свою недо-ВН. Так многие стали знаменитыми и уже после сделали настоящие ВН.
И да, игра под лицензией CC BY-NC-SA. Да и визуальные новеллы на Renpy глупо копирастить -- декомпилиция обратно в исходный код занимает от 5 минут до получаса и делается полностью автоматом специальной утилитой.
ответить
From Anonymous (unverified) Sun Jun 6 13:31:00 2021 UTC
Я твердил раза 4
Я твердил раза 4 простую мысль -- есть носитель информации, есть информация. Информацию продавать нельзя. Носитель -- можно.
Цена носителя при этом может быть любой, какую продавец хочет? Например, написал книгу и решил распространить её на флешках для всех желающих купить. Продавать по цене новой флешки или за любою цену?
ответить
From admin Sun Jun 6 16:19:16 2021 UTC
Достали, а... включите мозг
Минуточку, флешка чья? Моя? Ну так никто мне не будет рассказывать, почём её продавать, почём хочу, по том и продаю.
Вопрос тут не в том, почём флешку продавать. Можно вообще-то и без флешки, я не знаю, чего Parthen так к носителям привязался. Уж на что Столлман весь из себя такой за свободу, но от него ещё лет тридцать назад было разъяснение, что GPLную программу _можно_ продать за миллион баксов, если найдётся покупатель. Вопрос лишь в том, что в случае с GPLной программой покупатель получает все права, гарантированные лицензией, и, как следствие, имеет полное право выложить в открытый доступ ту программу, которую только что купил. И продавец даже не имеет права его _просить_ этого не делать, такая просьба текстом лицензии явным образом запрещена и её нарушает (и делает недействительной, что характерно).
Если же речь идёт не о GPLной программе (или о программе с другой лицензией, или вообще не о программе, а о музыке, книге, фильме, мало ли что там бывает), то можно даже и попросить никому только что купленные биты и байты не давать. Можно даже договор на эту тему подписать, NDA называется (non-disclosure agreement). Договор — продукт обоюдной доброй воли, тут всё чисто. Можно даже, если покупатель договор нарушит, его за это засудить, денег слупить, всё такое. С одним покупателем такое сработает. С двумя тоже. Даже с пятью. А вот дальше фигушки, потому что даже если копии персонализировать, то несколько покупателей вместе соберутся, копии свои сравнят, выявят, где тут зашита персонализация, и состряпают новую копию, которая уже не будет содержать информации, позволяющей понять, кто конкретно из покупателей нарушил NDA. И — всё, биты и байты утекли в открытый доступ, а претензии предъявлять некому.
Копирайтное законодательство позволяет так называемым "правообладателям" требовать от _всех_ — и без всяких договоров, заметим — не создавать копий какой-то информации. То есть вот им прямо все должны. Весь мир, поголовно. При том что пользы от них вообще-то никакой нет, а вред несомненен.
Вот не поймут люди, что тут нет никакой "морали", "допустимого" или "недопустимого" и всей прочей подобной галиматьи. Есть два базовых принципа: (1) любое взаимодействие индивидов должно совершаться с их общего согласия и никак иначе и (2) право собственности на материальные объекты, созданные человеческим трудом, абсолютно и непререкаемо, т.е. человек всегда вправе сам решать, что можно и что нельзя делать с его материальным имуществом. Так называемое "авторское" право этому противоречит. Всё. Можно больше ничего не выдумывать.
ответить
From Parthen Sun Jun 6 18:06:00 2021 UTC
Я к носителям
Я к носителям првязался для упрощения -- но также Токачиров меня не понял. В итоге еще около 100 комментариев, разошлись вроде что друг-друга не поймем. Что хорошо, там даже есть мои сторонники -- это радует.
ответить
From admin Sun Jun 6 18:43:59 2021 UTC
Да ничего,
Да ничего, скоро поймёт — когда реально попытается денег заработать на своих подельях. Хотя, конечно, некоторых и это ни в чём не убеждает, продолжают верить в сказки копирастов, что мол даже тут виноваты злые пираты. А что "авторское" право изначально никакого отношения не имеет к интересам авторов и никогда не имело — доходит почему-то сильно не до всех.
ответить
☞ From Parthen Thu Jun 3 16:49:00 2021 UTC
Вопрос с бодуна
Предположим, мы создали указатель А, указывающий на сам себя.
Теперь вопрос, что будет если присвоить значение в A^^?
А^ также изменится? Или вообще какая ошибка вылезет?
ответить
From admin Thu Jun 3 17:43:36 2021 UTC
Ну, тут есть
Ну, тут есть одна небольшая проблемка: мы такой указатель создать не можем. Точнее, типизированный не можем, поскольку непонятно, какого он будет типа. Можем сделать абстрактный pointer и даже в него занести его собственный адрес, но к абстрактному pointer'у неприменима операция ^.
ответить
☞ From WaldemarSky (unverified) Thu Jun 3 15:15:00 2021 UTC
Pascal, eof....
Решил в-общем я окончательно победить для себя тему чтения до eof. Показалось мне что автор в первом томе чего то не договаривает, утверждая что когда мы читаем посимвольно, то с eof'ом у нас все ок, в отличие от представленного плохого примера, когда мы читаем сразу целыми числами, и eof не срабатывает с первого раза.
Короче говоря, взял я пример программы из книги(стр. 326), подсчитывающей количество символов в вводимой строке и немного доработал её:
Вывод показал что так и есть:
asd
test: 1
test: 2
test: 3
filal output: 3
test: 0
Вот оно, после того как программа прочитала Enter, она прочитала ещё что-то. Но почему ноль в конце подумал я, ведь по идее n мы обнулили, если программа еще что то нашла в стандартном вводе, должна была сработать ветка 'else', а в ней для начала к n прибавляется единица. Что за дела?
Подумав я немного переделал ветку else:
writeln('test start: ', n);
n := n + 1;
writeln('test finish: ', n)
Вывод озадачил:
asd
test start: 0
test finish: 1
test start: 1
test finish: 2
test start: 2
test finish: 3
filal output: 3
test finish: 1
Теперь сложение сработало и программа в конце выдала единицу, но съела первый оператор в ветке else.Получается в последней итерации съедается один оператор после else.
Что это баг, или я чего-то не понимаю?
ответить
From admin Thu Jun 3 16:29:00 2021 UTC
Что вы делаете
Что вы делаете не так? По-моему, очевидно: нарушаете расстановку структурных отступов. У вас в тексте программы
writeln('test: ', n)
сдвинут так, как будто он входит в ветку else. А он, представьте себе, в неё не входит, поскольку обрамить её begin-end'ом вы забыли. Так что срабатывает он на каждой итерации цикла, в том числе и на той, на которой печатается загадочное "filal output" (даже интересно, что такое filal). Разумеется, ничего, кроме трёх символов и перевода строки, ваша программа не прочитала, итераций цикла было ровно четыре. Пресловутое test: 0 было выдано ровно на той итерации, где был прочитан конец строки, после этого eof стал ложью и цикл завершился.Ну а когда вы программу принялись редактировать, то думали, судя по вашему тексту, что редактируете ветку else, в действительности же первый writeln у вас стал как раз телом ветки else, а вот увеличение на единицу и второй writeln из неё выпали.
Внимательнее надо, короче. Отступы для этого и придуманы.
ответить
☞ From buq Mon May 31 17:48:00 2021 UTC
Вопрос про компиляторы
У меня есть некоторый опыт с GCC и CLANG. Недавно наткнулся на такой софт -- TCC(tiny c compiler). У него очень быстрое время компиляции по сравнению с GCC. Например исходники примеров программ с графической API OpenGL(300 - 500 строк) компилируются 9-10x быстрее. А теперь собственно говоря вопрос.
Кто-нибудь может поделится своим опытом работы с TCC, и привести некоторые достатки/недостатки? Я например заметил что GCC и CLANG лучше генерируют сообщения о возможных ошибках.
Заранее спасибо.
ответить
From ScrollLock (unverified) Tue Jun 1 17:33:00 2021 UTC
О компиляторе
Помню, что когда-то лично сталкивался с некоторыми проблемами в TCC при попытках откомпилировать программы, в которых были сложные выражения с "плавающей запятой". Видел это на 64 разрядах под Win64, когда компилятор работает с SSE2, а не с классическими командами x87. Этими же программами я сумел нарушить работу и компилятора Pelles C на 64 разрядах с включенной оптимизацией. GCC, Clang, Open Watcom и MSVC работали нормально.
ответить
From Anon (unverified) Wed Jun 2 18:50:00 2021 UTC
TCC написан с
TCC написан с одной целью - потешить ум своего автора. Мне не известно как далеко он продвинулся, но последняя версия датируется 2017-ым годом. Да и команда "tcc -static dummy.c" выдаёт ошибку сегментации, что уже о чем-то говорит. Про его производительность вы можете прочитать на "https://en.wikipedia.org/wiki/Tiny_C_Compiler".
GCC - основной компилятор для Linux уж точно (FreeBSD использует CLANG/LLVM, но это вызвано скорее идеологическими причинами), за остальных не скажу - не знаю. Ему уже 34 года и за все это время над ним работало бесчисленное количество людей. Соответствено он имеет в свом распоряжении значительное количество оптимизаций (отчасти поэтому он и медленее компилирует), да и ошибки должны оперативно устранять, ведь он просто более популярен. У него полно минусов: попробуйте как-нибудь его им же скомпилировать (тут никакие оптимизации оправдениями быть не могут), еще код его необычайно раздут, бинарники пичкает ерундой. Но тут, как говорится, спасибо за то, что имеем.
Clang, вообще говоря, не является самостоятельной сущностью. Он транслирует исходники в LLVM IR, а он, в свою очередь, транслируется LLVM'ом в машинные команды. Эта пара поновее, но её уже используют разные большие дяди, например Apple, Nvidia.
Про сам Clang, как про фронт-енд, сказать что-либо сложно: IR генерирует - программы работяют. А вот LLVM имеет такие же проблемы как GCC, плюс к тому же на него положили глаз комерциалы, а это ничем хорошим не сулит.
Но с идеологической точки зрения идея промежуточного кода видится мне более верной.
ответить
From admin Wed Jun 2 21:53:15 2021 UTC
Про gcc
Мне мои студенты недавно притащили дивную ссылочку — каюсь, я про неё не знал:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=30475
По-моему, после этого об использовании gcc вообще говорить не приходится. Проблема в том, что больше использовать тупо нечего.
ответить
☞ From Anonymous (unverified) Sun May 30 14:40:00 2021 UTC
Хватит ли знаний
Здравствуйте. Родилась идея программы - консольные заметки в текстовом файле. Основная идея вызвать программу с параметром, тегом для заметки и она будет в конец заметки по тегу добавлять мой текст. В дальнейшем может добавить возможность добавлять дату, поиск и еще какой то функционал. После рождения этой идеи была нагуглена утилита jrnl собственно и представляющая эту идею, и она написана на питоне. Хватит ли знаний изложенных в первом томе, чтобы написать такую программу на Паскале? Заранее спасибо за ответ.
ответить
From admin Sun May 30 14:51:56 2021 UTC
Хватит с
Хватит с хорошим запасом.
ответить
From Parthen Sun May 30 21:03:00 2021 UTC
Offtopic
Возможно кто-то захочет найти себе текстовый редактор, помощнее Nano, но полегче Vim. (А не пытаться его написать, как я). И такой есть -- micro. В нем по умолчанию виндовые горячие клавиши, но можно их поменять. Также как и vim имеет командный режим, но более простой. Имеет нормальную поддержку мыши и вдобавок приятную глазу расцветку -- черно белый nano начинает действовать на глаза.
ответить
From admin Mon May 31 11:59:44 2021 UTC
Редакторов
Редакторов существует очень много, можно выбирать. Но вот расцветка "чёрно-белая" чтоб "действовала на глаза" — это сильно. Вообще-то как раз от серых букв на чёрном фоне — для большинства эмуляторов терминала это цвет по умолчанию — глаза практически не устают, но тут есть одно условие: на экране вообще не должно быть ничего яркого, фон чёрный, рамки какие-нибудь тусклые-тусклые. К сожалению, невозможно ничего сделать с браузером, а "современные" вредители-уёб"дизайнеры" считают своим долгом ставить на сайтах белый фон, самый, можно сказать, враждебный зрению. Надо, видимо, просто поменьше торчать в браузере.
Ну а поддержка мыши, если поискать, есть и в vim'е, только она не нужна. Вообще. Хвататься за мышь следует как можно реже, лично я её трогаю только в том же проклятом браузере.
ответить
From Parthen Mon May 31 15:09:00 2021 UTC
Ответ вам и buq
Я говорил не про подсветку кода (а она есть в любом нормальном редактрое), а про расцветку интерфейса.
Расцветка у micro, как по мне лучше -- вместо белого приятный бежевый, вместо черного серый.
Без подсветки мне в принципе нормально, и я в nano так и сидел, пока свою не сделал (ибо для Pascal там нет, только для Lazarus). Но лучше с ней, а то когда много вложенных конструкций начинаешь путаться.
>Ну а поддержка мыши, если поискать, есть и в vim'е
Есть-то она есть, да только хреновая. В Vim есть командый режим, чтобы быстро скопировать что-то. А мне быстрее мышкой из одного абзаца выделить и в другой вставить (это притом, что мышка у меня находится на половине руки, т.е. чтобы взять мышку я разворачиваю весь корпус тела.)
А вообще для меня тема черно-белого интерфейса как нельзя близка -- у меня светофобия, я психологически ненавижу белый цвет. Так вот глаз у меня что-то вроде кинескопа -- если долго смотреть на интерфейс nano, то у меня светлые элементы просто "выжигаются" на сетчатке, вплоть до того, что я закрываю глаза и вижу их как яркие пятна.
P.S. Кстати, серый цвет у вашего сайта тоже не ахти. ИМХО, но лучше был бы белый на черном.
ответить
From admin Mon May 31 20:53:57 2021 UTC
> про расцветку
> про расцветку интерфейса
Насколько я могу судить, тут все говорят именно о расцветке интерфейса.
Если что, лично я подсветкой кода не пользуюсь вообще никогда, при моих цветовых предпочтениях любая подсветка -- как прожектором в глаз.
> А мне быстрее мышкой из одного абзаца выделить и в другой вставить
Это очень плохо. Если вы не видите ничего плохого в таком использовании мышки — то ваш личный пусть к просветлению в лучшем случае только-только начался. Впрочем, посмотрю на вас, когда правый плечевой сустав всерьёз болеть начнёт. Ну хотя я, может, до того времени и не доживу, у вас развитие этой болячки ещё лет пятнадцать займёт, скорее всего.
ответить
From Anonymous (unverified) Mon May 31 22:50:00 2021 UTC
Если что, лично
Если что, лично я подсветкой кода не пользуюсь вообще никогда, при моих цветовых предпочтениях любая подсветка -- как прожектором в глаз.
Я со временем пришёл к такой схеме: подсветка только для комментариев и строковых литералов, можно одним и тем же цветом. Не ярким, естественно, например слегка синеватый #88A. Весь остальной код -- серый (#999) на чёрном.
Почему именно комментарии и строки? Чтобы многострочный текст и, тем более, закомментированный код не сливался при чтении с собственно выполнимым кодом.
Очень раздражает, кстати, подсветка кода на всяких гитхабах. CSS'ов на них не напасёшься...
ответить
From admin Mon May 31 22:57:09 2021 UTC
Пробовал что-то
Пробовал что-то подобное (правда, только для комментариев, поскольку строковые литералы и так прекрасно вижу). Как сейчас говорят, не зашло.
А гитхабы всякие использовать не надо, бросьте бяку.
ответить
From Anonymous (unverified) Mon May 31 23:16:00 2021 UTC
А гитхабы
А гитхабы всякие использовать не надо, бросьте бяку.
Не ну как бросить?... Сам-то я там не зарегистрирован и осуждаю, но код-то иногда смотреть надо. А каждый раз делать
git clone
ради того, чтобы глянуть один-два файлика, утомляет.ответить
From admin Tue Jun 1 13:59:33 2021 UTC
Ну, git clone
Ну, git clone утомляет, подсветка на сайте раздражает, поди теперь выбери из двух зол... В общем да, сам иногда поглядываю.
ответить
From Parthen Tue Jun 1 05:20:00 2021 UTC
>Это очень
>Это очень плохо. Если вы не видите ничего плохого в таком использовании мышки — то ваш личный пусть к просветлению в лучшем случае только-только начался
Про то, что вредно знаю -- наслышаны про туннельный синдром, но все же это пока удобнее.
Кстати, я так понял вы в браузере мышкой пользуетесь? Попробуйте аддон Vimium -- вам, как пользователю Vim'a будет еще проще им пользоваться. Я уже давно, кроме как копирования и вставки мышкой в браузере не пользуюсь.
ответить
From Anonymous (unverified) Mon May 31 23:08:00 2021 UTC
А мне быстрее
А мне быстрее мышкой из одного абзаца выделить и в другой вставить
Тут, кстати, возникает вопрос: печатаете ли вы слепым десятипальцевым методом (по английски называющимся короче и приятнее: "touch typing")?
Потому что все преимущества богатых средств редактирования (имеющихся, например, в vi или в emacs) и все недостатки использования мыши всплывают обычно после освоения этого метода.
Если нет, то настоятельно рекомендую освоить. И нет, дело не в скорости печати. Дело в комфорте. Правильный touch typing в сто раз комфортнее обычного бессистемного "ну я как-то печатаю более-менее вслепую, более-менее быстро".
ответить
From admin Tue Jun 1 03:29:48 2021 UTC
Правильный touch
Правильный touch typing в сто раз комфортнее обычного бессистемного "ну я как-то печатаю более-менее вслепую, более-менее быстро".
а вот не соглашусь :-) использовать мизинцы для чего-то кроме shift'ов и прочих ctrl'ов — контр-эргономическое извращение. Безымянные намного длинее, и обслуживать ими крайние вертикальные ряды клавиш ничуть не более дискомфортно, нежели указательными — середину клавиатуры. А вот чтобы в классическом десятипальцевом нажать Q или там P (про русские Х и Ъ я вообще молчу), приходится двигать всю руку, задействуя аж мышцы на спине.
ответить
From Anonymous (unverified) Thu Jun 3 22:42:00 2021 UTC
Не буду
Не буду спорить, тут вопрос скорее в том, что современные массовые клавиатуры -- это контр-эргономическое извращение. Да и пальцы у всех разные. Хотя про "мизинец для Ctrl" емаксеры вам много печальных историй могут рассказать.
Но вот сама основная идея touch typing'а -- каждый палец отвечает строго за свою группу клавиш -- здорово разгружает мозг. Когда я решил научиться touch typing'у, в довольно зрелом возрасте, я уже довольно сносно печатал типичным "на 2/3 слепым восьми-с-половиной-пальцевым методом". И очень чётко прочувствовал в сравнении то ощущение комфорта, которое даёт touch typing. (Правда, я при этом ещё и перешёл сразу с Qwerty на Colemak, может это тоже сыграло свою роль.)
Что касается клавиатур, то массовые клавиатуры, к моему глубокому сожалению, застряли в эпохе механических пишущих машинок. Например, этот абсолютно контр-эргономичный горизонтальный сдвиг рядов друг относительно друга (из-за которого, в том числе, так сложно тянуться мизинцем к Q) нужен (был) лишь для того, чтобы удобно расположить рычажки, ведущие от клавиш к литерам пишущей машинки. Или тот факт, что два самых подвижных пальца заняты одной общей на двоих клавишей пробела.
А ведь, по-хорошему, начинать пытаться сделать клавиатуру более эргономичной можно было уже при появлении электрических пишущих машинок, не говоря уже о компьютерах.
ответить
From admin Fri Jun 4 17:18:14 2021 UTC
Куда там :( Вон
Куда там :( Вон переход на DVORAK не требует вообще ничего менять в железе, только этикетки переклеить (ну, наклеить новые поверх нарисованных буковок) и перенастроить систему. И движений рук при наборе английского текста становится чуть ли не втрое меньше. Но я не знаю ни одного пользователя DVORAC.
В некоторых аспектах цивилизация жутко консервативна. Взять бы процента два от этого консерватизма да применить к долбаному Вебу :(
ответить
From Anonymous (unverified) Fri Jun 4 20:03:00 2021 UTC
Ну теперь вы
Ну теперь вы знаете по крайней мере одного пользователя раскладки Colemak. ;-)
Этикетки, кстати, не наклеивал. Поскольку смысла переходить на более эргономичную раскладку и не печатать при этом вслепую вообще не видел. Сделал только распечатку с раскладкой и держал её первое время рядом с монитором, а через пару недель она стала и не нужна.
ответить
From Anonymous (unverified) Sat Feb 5 19:05:00 2022 UTC
А ведь,
А ведь, по-хорошему, начинать пытаться сделать клавиатуру более эргономичной можно было уже при появлении электрических пишущих машинок, не говоря уже о компьютерах.
Сегодня я узнал, что есть патент аж от 1915 года на эргономичную клавиатуру для пишущей машинки. Смотрится достаточно современно, и даже идея о нескольких клавишах для каждого большого пальца присутствует. И проблема с рычажками выглядит на картинках вполне решаемой.
ответить
From Parthen Tue Jun 1 05:13:00 2021 UTC
>слепым
>слепым десятипальцевым методом
Нет, у меня полуслепой 8-пальцевый. Мизинцы для спец.клавиш, большие для пробела, указательный и средней для всего остального. Насчет слепоты, я вот сейчас смотрю, я раз в минуту посматриваю на клавиатуру, когда сбиваюсь.
А "эти ваши" тренажеры мне не хватает терпения пройти. Что "Соло на клавиатуре" в 6 классе, что сейчас "Стамину".
ответить
From buq Tue Jun 1 00:26:00 2021 UTC
Интерфейс NANO
Копируйте файл /etc/nanorc в директорию ~/.config/nano/. После этого, редактируйте те свойства интерфейса которые вам нужны. Например, директивы set titlecolor bold,lightwhite,blue и set errorcolor bold,lightwhite,red меняют цвета титула и сообщений об ошибках соответственно.
Вот часть текста из этого файла:
## Paint the interface elements of nano. These are examples; there are
## no colors by default, except for errorcolor and spotlightcolor.
# set titlecolor bold,lightwhite,blue
# set promptcolor lightwhite,lightblack
# set statuscolor bold,lightwhite,green
# set errorcolor bold,lightwhite,red
# set spotlightcolor black,lime
# set selectedcolor lightwhite,magenta
# set stripecolor ,yellow
# set scrollercolor cyan
# set numbercolor cyan
# set keycolor cyan
# set functioncolor green
ответить
From Parthen Tue Jun 1 05:04:00 2021 UTC
Сдаюсь
Признаю, не знал.
ответить
From admin Tue Jun 1 14:32:36 2021 UTC
Нафига такое
Нафига такое знать, достаточно предположить, что подобная возможность существует, и пара запросов поисковикам решит вопрос.
ответить
From Oliver (unverified) Tue Jun 1 06:30:00 2021 UTC
В Vim есть
В Vim есть командый режим, чтобы быстро скопировать что-то. А мне быстрее мышкой из одного абзаца выделить и в другой вставить (это притом, что мышка у меня находится на половине руки, т.е. чтобы взять мышку я разворачиваю весь корпус тела.)
----------------------------------------------------------
По времени правда быстрее вот разворачиваться, брать мышку и ею скопировать и вставлять нужный текст, нежели переключится в командный режим VIM и там это сделать? Я очень не уверен в этом. Да и удобство - сомнительное. Мой Вам совет: уберите от себя мышку далеко, и освойте VIM: хороший, удобный редактор.
-----------------------------------------------------
Я говорил не про подсветку кода (а она есть в любом нормальном редактрое)...
-----------------------------------------------------
Термин "нормальный редактор" зависит от личных предпочтений пользователя. Мне не очень нравится подсветка кода, а еще просто раздражает, когда редактор вместо меня решает и сам вставляет, например, закрывающие скобки: не надо, я сам вставлю!
ответить
From Parthen Wed Jun 2 09:47:00 2021 UTC
>По времени
>По времени правда быстрее вот разворачиваться, брать мышку и ею скопировать и вставлять нужный текст, нежели переключится в командный режим VIM и там это сделать?
В командом режиме Vim быстрее. Но в обычном редакторе мышка быстрее, чем стрелочками с зажатым Ctrl.
Но я выше говорил -- мне много чего в Vim'e вызывает внутренний протест. Может через время привыкну и пересяду, кто знает.
>Термин "нормальный редактор" зависит от личных предпочтений пользователя. Мне не очень нравится подсветка кода ...
Я говорил про то, что есть возможность ее создать. Если редактор такого не умеют, хотя бы с плагинами, то это странноватый, как по мне редактор.
ответить
From Anonymous (unverified) Mon May 31 17:44:00 2021 UTC
К сожалению,
К сожалению, невозможно ничего сделать с браузером
Ну почему же, возможно. Для тех сайтов, с которых я часто и много что-то читаю, я просто делаю кастомный CSS: чёрный фон / серый текст. Глаза говорят "спасибо".
Вообще-то как раз от серых букв на чёрном фоне глаза практически не устают
Кстати, а как так сложилось, что и ваш сайт не избежал стандартной схемы "светлый фон / тёмный текст"?
ответить
From admin Mon May 31 21:15:00 2021 UTC
> я просто делаю
> я просто делаю кастомный CSS:
стесняюсь спросить, а дальше с ними что делать? Не, ну для palemoon вроде какой-то addon есть на эту тему, описание у меня почему-то доверия не вызывает
> а как так сложилось,
я бы сказал, что "стандартная" схема сейчас подразумевает белый фон (вот то есть 0xffffff и, э... возле птички в общем)
а сложилось очень просто -- я эту тему (twilight) долго крутил и так и эдак, а результат -- это единственный вариант, который у меня получился так, чтоб не бесил :) (если что, чёрный фон я пробовал, но в сочетании с элементами интерфейса самого браузера получалась полная хрень)
ответить
From Anonymous (unverified) Mon May 31 22:31:00 2021 UTC
стесняюсь
стесняюсь спросить, а дальше с ними что делать?
В файрфоксе есть такой файл (если нет, то можно создать самому):
~/.mozilla/firefox/blah-blah-blah/chrome/userContent.css
Вот тут я про него читал когда-то давно: http://kb.mozillazine.org/index.php?title=UserContent.css
В этом файле можно создавать конструкции вроде:
Ну или, если много разных CSS для разных сайтов, то раскидать по отдельным файлам, а тут делать
@import 'lor.css';
В палемуне это должно работать, по идее. Если нет, то от меня ему будет жирный минус.
Ну а ещё есть у меня идея попытаться эти CSS подсовывать на уровне прокси. Чтобы уже не зависеть от конкретных возможностей конкретного браузера.
Не, ну для palemoon вроде какой-то addon есть на эту тему
Аддон есть, да. И для файрфокса есть, и для хрома. Но они мне не нравятся. Просто редактировать файлы в привычном текстовом редакторе гораздо удобнее.
Кстати, многие вещи, для которых существуют специализированные аддоны, на самом деле можно делать просто редактируя userContent.css, userChrome.css или ещё какие-то файлы.
если что, чёрный фон я пробовал, но в сочетании с элементами интерфейса самого браузера получалась полная хрень
Понимаю. У меня-то интерфейс браузера тоже тёмный, так что получилось бы нормально. Но широкая публика не поймёт, это да.
ответить
From Parthen Tue Jun 1 05:10:00 2021 UTC
>а дальше с ними
>а дальше с ними что делать?
Ну вот анон ниже предложил, что делать. Я малясь мухлюю, у меня всю работу делет аддон Dark Reader.
Насчет некрасивости, вот вам пример темных красивых сайтов:
Сайт DgDeeper -- digdeeper.neocities.org
Ну и мой сайт -- parthen.neocities.org
Уж сам себя хвалить не буду, но у DigDeeper прекрасный сайт, от которого не болят глаза.
ответить
From admin Tue Jun 1 14:07:42 2021 UTC
Всё-таки,
Всё-таки, видимо, глаза у людей устроены по-разному. Ваш сайтик ещё ничего, а digdeeper по мне так вообще смотреть невозможно, эти яркие цветные флажки на почти чёрном фоне -- проще уж сразу в глаз лазерной указкой.
ответить
From Parthen Tue Jun 1 14:36:00 2021 UTC
Вот кстати в
Вот кстати в Gemini, в отличие от WWW, сайт присылает только текст -- внешний вид задает клиент.
ответить
From admin Tue Jun 1 15:49:00 2021 UTC
Так и должно
Так и должно быть. Но Gemini чрезмерно примитизирован, он в таком виде вытеснить веб не сможет. Нужно, во-первых, добавить элементы ввода, чтобы можно было на стороне сервера при желании реализовывать всевозможные информационные системы. Конечно, рендерить их по-прежнему должен клиент так, как сам хочет, сервер должен просто указывать, какую информацию он готов получить от пользователя, и это всё должно быть упрощено до предела, но всё-таки не выкинуто. Во-вторых, я бы туда ввёл опциональную поддержку таблиц: если клиент может, он таблицу рендерит, если не может, просто показывает содержимое в виде вложенных списков.
ответить
From Anonymous (unverified) Tue Jun 1 17:55:00 2021 UTC
Английская
Английская версия сайта parthen, уж не знаю пользовались ли переводчиком или сами, практически не понятна анлглоязычному читателю.
> I'm a Parthen
неопределенный артикль тут не употребляется.
> And I'm trying doesnt use
I am trying not to use
> but it's not validate now
but it doesn't pass the validation
> Maybe I create authorization, but now it's not
Maybe i will create authorization in the future, but now there is not
> On this and other questions like this, I don't want to answer. I can say, that I'm Russian teen which family roots with Ukrain.
I prefer not to expose my identity, all i can say is i am a Russian teenager with some roots from Ukraine.
>I have a lightphobia, this colors is best for me.
I have photophobia, these colors are preferred for me.
> we have some problems: braking,
: lags
> your political vision?
What is your opinion on politics?
>Policy is overrated.
Politics are
Если Андрей Викторович откроет, может будет полезно исправить самые критические ошибки.
ответить
From Parthen Tue Jun 1 18:03:00 2021 UTC
Да-да, я знаю.
Да-да, я знаю. Переводил я сам, а английский у меня крайне плохой, и вся английская версия сделана ради приличия. Скорее всего вообще ее снесу, ибо никакого смысла она не несет.
Однако вам все же спасибо, свои ошибки взял на заметку.
ответить
From Oliver (unverified) Mon May 31 12:20:00 2021 UTC
Я пользуюс не
Я пользуюс не VIMом, а VI. А что в нем сложного?
ответить
From admin Mon May 31 13:06:43 2021 UTC
Достаточно
Достаточно высокий барьер вхождения — надо быть морально готовым запомнить несколько десятков команд. Это окупается, и мы это прекрасно знаем, но...
Среди студентов, которые у меня учатся, бытует поверье, что я благосклоннее отношусь к тем, кто использует vim (на самом деле это совершенно не так, и я это постоянно повторяю, но миф развеять не так просто). Так вот, вы бы видели, КАК некоторые из них "используют vim". Временами, ей-богу, плакать хочется.
ответить
From Parthen Mon May 31 15:17:00 2021 UTC
HJKL для меня
HJKL для меня исчадие ада. (И да, я не буду в таком редакторе использовать стрелочки).
Ну, для начала: почему клавиши поставлены именно так? Честно, не знаю, наверное традиция, но я постоянно сбиваюсь, потому что обычно указательный палец держу на J, а не на H.
Ладно, к этому еще можно привыкнуть если постоянно нащупывать бугорок. Но почему буква J это стрелочка вниз? Я инстиктивно постоянно ее нажимаю как стрелочку вверх. Да блин, я даже ради этой цели себе NetHack поставил, один фиг за час игры так и не привык.
Да, можно залезть в конфиг и все поменять, только вот смысл от редактора, если я меняю самые его основы?
Ну и второе это командный режим. Крайне непривычно им пользоваться.
Ну и последнее -- когда я захожу в Vim, я чувствую себя как на Белазе вместо велосипеда. Ну незачем мне такая мощность, я сервера не администрирую, и логи на 20К+ строк не смотрю
ответить
From admin Mon May 31 16:37:21 2021 UTC
С J как раз всё
С J как раз всё просто, она сама по себе напоминает стрелку вниз. Ну, если от стрелки правую часть самой стрелки отгрызть, то вот как раз что-то похожее получится.
Между прочим, я стрелками в vim'е пользуюсь :-) А пресловутые hjkl применяю только в составе более сложных команд, ну или когда редактирую файл удалённо через неустойчивое соединение. То есть работать с ними умею, но от стрелок так и не отвык.
Что до мощности, то она как раз понятно зачем, она сокращает время и трудоёмкость редактирования текстов. Даже самых маленьких. И на белаз это не похоже совершенно, белаз -- машина слишком специальная, вне карьеров просто не проедет. А vim — редактор универсальный. Если уж сравнивать с велосипедом — то это скорее этакий гоночный велосипед с кучей наворотов и вдобавок с электромотором :-) Впрочем, дело хозяйское.
ответить
From Parthen Mon May 31 17:27:00 2021 UTC
>С J как раз всё
>С J как раз всё просто, она сама по себе напоминает стрелку вниз
Да вот как-то вообще не просто. Я когда нажимаю букву на клавиатуре, не задумываюсь как она выглядит. А у меня, как и скорее всего у вас, на стрелочках указательный палец лежит именно на верхней стрелочке.
P.S. А почему вы ответ про расцветку и подсветку не пропустили? Я там обещал человеку ответить, нехорошо получается
ответить
From admin Mon May 31 22:44:11 2021 UTC
Вы
Вы указательный со средним не путаете? Указательный у меня (и я практически уверен, что у вас тоже) при работе с допклавиатурой лежит на стрелке влево. А средний (известный также как fuck finger :) ) вынужденно работает как по стрелке вверх, так и по стрелке вниз.
Чего совершенно не понимаю, так это кто вам мешает его на K положить, а не на J. Сейчас попробовал -- такое положение даже более естественно, оно соответствует положению пальцев для слепой печати.
Сообщение про расцветку я "пропустил", но вообще-то странно, что такой вопрос у вас возник. Вот тут есть официальная политика премодерации, и сводится она ровно к одному: я не собираюсь ни перед кем отчитываться, какие комментарии я раскрываю, какие не раскрываю и по каким причинам.
ответить
From Parthen Tue Jun 1 05:02:00 2021 UTC
>Вы
>Вы указательный со средним не путаете?
Да, путаю. Но вот все мое детство, проведенное во Flash играх упорно отзывается тем, что пальцы ставятся IJKL.
>Сообщение про расцветку я "пропустил", но вообще-то странно, что такой вопрос у вас возник
Политику премодерации я читал, и не раз. Вы довольно часто мои комментарии не пропускали, когда я не был зарегистрирован.
Конечно, это ваш сайт и вы тут никому и ничего не обязаны, но вот когда коммент не проходит премодерацию, не понятно почем, это сбивает столку. Знал бы причину, хотя бы в следующий раз не писал бы об этом.
ответить
From admin Tue Jun 1 14:09:00 2021 UTC
А нету никаких
А нету никаких причин, понимаете? Может, вам проще будет считать, что я тут монетку подбрасываю.
На самом деле, понятное дело, существуют вещи, которые увеличивают или уменьшают вероятность комментария пройти премод, но пытаться формализовать их бессмысленно, поскольку последней инстанцией в любом случае выступает моё личное субъективное "хочу"/"не хочу".
ответить
From Anonymous (unverified) Mon May 31 17:36:00 2021 UTC
Ну, для начала:
Ну, для начала: почему клавиши поставлены именно так?
А вы посмотрите на клавиатуру терминала, на котором был написан vi. Вот хотя бы на википедии: https://en.wikipedia.org/wiki/Vi Сразу многое станет понятнее. В том числе и про клавишу Esc.
А вот сама идея командного режима и богатого набора команд редактирования весьма плодотворна, надо сказать.
Ну незачем мне такая мощность, я сервера не администрирую, и логи на 20К+ строк не смотрю
Смотреть логи на 20К+ в текстовом редакторе совершенно не стоит, неважно, будь то vi или что-то другое. Для этого (в UNIX-подобных системах) есть гораздо более подходящие средства.
Да и для "администрирования серверов" в целом развитый текстовый редактор не особенно нужен. Того же nano должно хватать за глаза.
Развитые средства редактирования (при условии умения ими пользоваться) более полезны скорее программисту, чем сисадмину.
Кстати, это же вы в каком-то другом комментарии задавали вопрос про изучение UNIX? Попробуйте полистать классическую книгу Кернигана и Пайка "The UNIX Programming Environment" (не помню точно, как наши переводчики её назвали).
ответить
From admin Mon May 31 20:58:00 2021 UTC
Кернигана-Пайка
Кернигана-Пайка вы человеку рано советуете, там, если ничего не путаю, предполагается знание Си, а тут имеется затык с освоением указателей (временный, скорее всего, но он есть), так что к Си приступать не получается.
Да и вообще проблема тут уж точно не в том, "что полистать". Гляньте оглавление от моего второго тома, сами в этом убедитесь.
ответить
From Anonymous (unverified) Mon May 31 22:01:00 2021 UTC
Там есть Си, но
Там есть Си, но только во второй половине книги, которую можно пока не читать. Для чтения первой половины книги ни знания Си, ни, тем более, указателей не требуется. Там описана работа с системой с т.з. пользователя: шелл и стандартные утилиты. Как раз то, чего в ваших книгах очень мало.
Да, может есть и более подходящие для новичка книги по работе в командной строке UNIX, но мне в первую очередь вспомнилась именно эта, что называется, непосредственно от создателей.
ответить
From Anonymous (unverified) Wed Jun 2 03:42:00 2021 UTC
Самая
Самая подходящая книга для новичка, мне кажется, "Командная строка Linux" автор Уильям Шоттс.
ответить
From Parthen Tue Jun 1 04:58:00 2021 UTC
>А вы
>А вы посмотрите на клавиатуру терминала, на котором был написан vi.
Ну вот как знал, традиция.
>Кстати, это же вы в каком-то другом комментарии задавали вопрос про изучение UNIX?
Нет, мне пока что только Линукс интересен :)
ответить
From Anonymous (unverified) Tue Jun 1 18:41:00 2021 UTC
Нет, мне пока
Нет, мне пока что только Линукс интересен :)
Гм, вообще, конечно, находятся снобы, которые небезосновательно утверждают, что "Linux это не UNIX". Но большинство всё-таки сходятся во мнении, что Linux является по крайней мере UNIX-подобной ОС. ;-)
Ну, то есть, если вы хотите изучать внутреннее устройство ядра, то, конечно, Linux -- это одно, а FreeBSD -- совсем другое. Но если вы хотите научиться эффективно работать (и жить) в командной строке, то имеет смысл говорит именно об "изучении UNIX" (по крайней мере если речь об основах, в тонкие отличия конкретных систем можно будет углубиться позже).
Так что, вот к этому вашему комментарию мой совет вполне подходит.
ответить
From Parthen Wed Jun 2 09:22:00 2021 UTC
>Гм, вообще,
>Гм, вообще, конечно, находятся снобы, которые небезосновательно утверждают, что "Linux это не UNIX"
Так, вот вы сейчас начинаете приписывать несуществующую позицию, так делать ненужно.
Просто, как я понимаю, когда читают книжки по Юниксу, то хотят разбираться и в BSD, и в Linux. Я как-то пока на BSD не планирую пересаживаться, поэтому лучше читать книжки конкретно по Линуксу.
Да и с командной строкой у меня проблем не особо, благо я ей часто пользуюсь. У меня проблемы как раз с пониманием устройства системы.
А вообще книжки по Unix я читал, когда еще компа не было, и я хотел его себе купить, уже разобравшись.
ответить
From Владислав (unverified) Wed Jun 2 14:54:00 2021 UTC
Про совместимость оборудования
> когда еще компа не было, и я хотел его себе купить, уже разобравшись.
Ты когда собирал компьютер, подбирал "железки", для которых есть драйвера и поддержка в выбранном тобой дистрибутиве? Просто я озадачил себя вопросом совместимости комплектующих с конкретным дистрибутивом Linux и из того, что я нашел -- это https://linux-hardware.org/ (совместимость "железок". Я удивился, что даже есть пункт с поддерживаемыми мониторами. Это немного сбивает) и http://www.openprinting.org/printers (совместимость принтеров).
Если ты подбирал комплектующие, можешь поделиться соответствующими ресурсами?
ответить
From Parthen Thu Jun 3 04:49:00 2021 UTC
>Ты когда
>Ты когда собирал компьютер, подбирал "железки", для которых есть драйвера и поддержка в выбранном тобой дистрибутиве?
Я когда собирал компьютер, надеялся что он хотя бы заработает, а не сгорит. :) Какие-то 3 года назад я не отличил бы жесткий диск от видеокарты, ибо в компьютерах не понимал вообще.
Да и у ПК с Линуксом проблем не особо, вот ноутбуки это да.
ответить
From Anonymous (unverified) Thu Jun 3 22:12:00 2021 UTC
Кстати, если
Кстати, если что, предостерегу от покупки видеокарт Nvidia. Графика AMD и Intel в линуксе поддерживается гораздо лучше. В случае с Nvidia придётся либо мириться с закрытым проприетарным драйвером, либо пользоваться плохоньким открытым.
ответить
From admin Thu Jun 3 22:14:50 2021 UTC
дык вроде после
дык вроде после видео с Торвальдсом, орущим прямо в камеру на конференции fuck you nvidia, сие более-менее и так понятно :-)
ответить
From Anonymous (unverified) Thu Jun 3 23:28:00 2021 UTC
Так это нам с
Так это нам с вами понятно, а молодые люди этого могли и не застать. Почти десять лет прошло, как-никак. И память о том, как Линус показал нвидии палец, уже потихоньку стирается, как мне кажется.
ответить
From Anonymous (unverified) Fri Jun 4 10:07:00 2021 UTC
А в чем
А в чем заключается сложность написать FOSS драйвер для тех же видеокарт от nvidia? Точнее даже не просто написать, а чтобы он был более производительный, чем проприетарный.
Драйвер ведь является программой которая даёт доступ ОС к железу. Насколько я представляю, "хороший" драйвер указывает какие инструкции и оптимальную их последовательность в видеокарте нужно применить для того чтобы вычислить что-либо (в моём представлении). Нельзя ли эти оптимальные инструкции вычислить даже методом тыка?
ответить
From admin Fri Jun 4 17:23:29 2021 UTC
Попробуйте
Попробуйте как-нибудь на досуге. Спецификаций нет (ну то есть нет за пределами периметра энвидии), дизассемблировать их драйверы (включающие в себя, как я понимаю, блобы, которые грузятся в саму карту) в целом бесполезно, там ведь результат работы оптимизатора, разобраться в них практически невозможно.
ответить
From Владислав (unverified) Fri Jun 4 03:12:00 2021 UTC
Об Nvidia не единой мысли
Я и расчитываю, что если буду брать дискретную карточку, то это точно AMD. Подожду, пока цены снизятся и в магазины завезут еще, потому что сейчас их на полках -- кот наплакал.
ответить
From Anonymous (unverified) Thu Jun 3 22:17:00 2021 UTC
Так, вот вы
Так, вот вы сейчас начинаете приписывать несуществующую позицию, так делать ненужно.
Нет. Перечитайте внимательнее, из текста никак не следует, что я что-то кому-то приписывал. В данном случае это вы мне сейчас приписываете несуществующие намерения. Так делать ненужно.
Просто, как я понимаю, когда читают книжки по Юниксу, то хотят разбираться и в BSD, и в Linux.
Нет, это не так. Книжки по UNIX читают в том числе и тогда, когда хотят начать разбираться только в какой-либо одной UNIX-подобной системе.
Да и с командной строкой у меня проблем не особо, благо я ей часто пользуюсь.
У меня возникло предположение, что вы не очень хорошо знакомы со стандартными утилитами, когда вы предлагали сисадминам смотреть логи на 20K+ строк в текстовом редакторе. А не владея стандартными утилитами сложно эффективно работать в командной строке.
Но в любом случае, я не настаиваю. Не хотите -- не надо, моё дело предложить. Да и вообще, чем спорить тут со мной, проще было бы пролистать рекомендуемую книгу и убедиться самостоятельно, есть ли в ней полезные для вас знания или таких знаний там нет.
ответить
From buq Mon May 31 12:33:00 2021 UTC
Вообще-то
Вообще-то, в NANO можно изменить расцветку текста как угодно.Для редактирования расцветки надо смотреть в директорию /usr/share/nano и изменить соответсвующий файл(например c.nanorc или asm.nanorc). А для изменения клавиш надо смотреть в конце файла /etc/nanorc.
Если хотите альтернативный редактор, то могу посоветовать e3 (http://www.texteditors.org/cgi-bin/wiki.pl?E3). Он полностью написан на ассемблере и имеет keybindings emacs, vi, pico(nano) и wordstar.
ответить
From Parthen Mon May 31 14:54:00 2021 UTC
Отвечу немного
Отвечу немного ниже
ответить
From Anonymous (unverified) Tue Jun 1 06:23:00 2021 UTC
UTF-8
Здравствуйте. В связи с желанием делать заметки на русском языке, возник вопрос как его обрабатывать. Я уже уяснил, что в тексте самой программы не должно быть никаких символов кроме ASCII. А диалог с пользователем можно хранить в отдельном файле. Но вот как сам текст обрабатывать в другой кодировке мне пока не ясно. Например, если пытаться хранить UTF8-ru символ в Char ничего хорошего не выйдет. Строки еще вроде читает и пишет, но длину корректно уже не измерить. Может я чего то упустил.
Нашел такую инфу. Это в нужную сторону?
http://www.freepascal.ru/article/freepascal/20120718142000/
И еще такой вопрос про ввод с неизвестным количеством символов. В Паскале вроде есть тип для динамических строк. Но является ли хорошей идеей в данном случае обрабатывать все посимвольно и хранить такой ввод в своих динамических структурах данных тем самым обучаясь работе ними? Заранее спасибо за ответы.
ответить
From admin Tue Jun 1 14:29:42 2021 UTC
Я бы не
Я бы не рекомендовал лезть в эти дебри библиотек Free Pascal, увязнете.
Между прочим, посчитать длину строки в UTF8 очень просто: нужно игнорировать при подсчёте байты, начинающиеся с битов 10. Иначе говоря, с двоичного 10000000 до двоичного же 10111111. В хексе это будет с $80 до $BF, в десятичной -- от 128 до 191. Эти байты являются "хвостовыми" для многобайтовых символов, а первый байт своей структурой определяет, сколько у него будет этих "хвостовых" (если начинается с 0, то ни одного, если с 110 -- то один, и так далее). Поскольку utf8 в реальности единственная многобайтовая кодировка, все остальные слишком одиозны, чтобы вообще использоваться, то достаточно в программе иметь какой-нибудь флажок, означающий, работаете вы сейчас с однобайтовой кодировкой (вроде koi8r или cp1251) или многобайтовой (это только utf8), и если кодировка многобайтовая, то при подсчёте длины строки учитывать все байтики, кроме вот этих вот $80..$BF.
И да, идея хранить всё в своих динамических структурах — правильна. Думаете, почему я в книгу не включил ни динамические массивы, ни вот эти вот строки разновсяческие? Потому что если их рассказать, основная цель траты времени на Паскаль — научить работе с указателями — достигнута не будет.
ответить
☞ From Anonymous (unverified) Sun May 30 10:09:00 2021 UTC
Здравствуйте! А
Здравствуйте! А где архив примеров программ?
ответить
From admin Sun May 30 13:59:04 2021 UTC
Ссылка на файл
Ссылка на файл архива имеется на странице, посвящённой соответствующей книге (верно для каждой книги, к которой есть архив примеров).
ответить
☞ From КнигоЛюб3000 (unverified) Sat May 29 14:06:00 2021 UTC
Неинформативно, но искренне
Просто хочу вас поблагодарить за ваши труды, Андрей Викторович, спасибо!
ответить
☞ From Parthen Sat May 29 12:18:00 2021 UTC
Следующий вопрос
Как заставить Pascal взаимодействовать с shell?
Т.е. к примеру в процессе выполнения вывести выхлоп команды ls?
Я так понимаю, надо с потоками ввода-вывода поработать, но как -- не представляю.
ответить
From admin Sat May 29 13:19:35 2021 UTC
При чём тут shell,
При чём тут shell, он же сам — программа. И ls — тоже программа.
Запустить внешнюю команду из программы на Free Pascal, разумеется, можно, вот тут написано, как: https://wiki.freepascal.org/Executing_External_Programs
Вопрос только, а оно вам надо? Со всем этим работать, не понимая, как система устроена — это что-то вроде езды на велосипеде с завязанными глазами. Ну то есть вот запустить-то программу вы запустите, а дальше наверняка захочется, чтоб её вывод шёл не юзеру на терминал, а куда-то, где его можно проанализировать средствами самой программы. Или чтобы она в фоне работала. Или ещё что. Всё это ни разу не сложно, даже очень просто, только нужно знать, что происходит. Устройство системы — во втором томе, но это уже после Си; рассказывать управление процессами, каналы, сигналы и всё вот это вот прочее без Си мне кажется задачей крайне неблагодарной.
ответить
From Parthen Sat May 29 14:44:00 2021 UTC
Вот я про то и
Вот я про то и говорю -- у меня в голове возникают только такие проекты, которые требуют нормального знания системы. А без этого мне остается только решать на Паскале математические задачки.
ответить
From admin Sat May 29 23:17:28 2021 UTC
В
В математических задачах указатели не нужны обычно, вот в чём проблема.
Вообще если у вас такая склонность к системщине, с Паскаля нужно уже слезать :-) — но нельзя, без указателей Си вам не покорится. Попробуйте всё-таки придумать полноэкранную игрушку, и чтобы там списки требовались (ну, они в игрушках почти везде требуются), напишите её, просто чтобы получить соответствующий опыт, и двигайтесь дальше.
ответить
From Parthen Sun May 30 00:06:00 2021 UTC
Вообще,
Вообще, насколько я понял по своему изучению математики, единственный способ для меня понять что-то сложное -- это изобрести это с нуля. Ну, как минимум я перед сном изобретал добрую половину теорем геометрии и тригинометрии, после чего на утро просто узнавал как они называются.
Так что мой true way -- просто ждать и представлять, как их придумали. В конце-концов озарение появится и я заново изобрету указатели.
ответить
From admin Sun May 30 08:19:11 2021 UTC
Очень
Очень правильный путь, кстати.
ответить
From Anonymous (unverified) Sun May 30 13:19:00 2021 UTC
У меня в
У меня в детстве была такая книжечка: Жак Арсак. Программирование игр и головоломок.
Посмотрите, там много всяких идей, в том числе и для текстовых консольных игр (что неудивительно, поскольку написана книга была в 1985-м). Может вам какая-нибудь приглянётся.
ответить
☞ From Anonymous (unverified) Sat May 29 11:05:00 2021 UTC
Вывод из файла ОТ и ДО
Подскажите, пожалуйста, как выводить информацию из файла построчно ОТ определенной строки ДО определенной строки стандартными утилитами Linux? Хочу вести конспект в файле и, при необходимости, доставать инфу оттуда по нужной теме. Естественно, текста получится много, поэтому нужно чтобы в stdout выводилась только нужная тема. Заранее спасибо!
ответить
From admin Sat May 29 12:04:20 2021 UTC
Если имеются в
Если имеются в виду строки по номерам, то вам поможет комбинация команд head и tail. Например, если нужны 35 строк, начиная со 129й, это будет вот так:
Если же строки нужно находить по их содержанию, то это сложнее; можно сделать с помощью awk и/или sed, но я, разумеется, не помню, как конкретно, так что man вам в руки.
Вообще, подозреваю, на самом деле вам это всё нафиг не нужно, просто используйте программу less. Там, замечу, поиск есть и по подстроке, и по номеру строки.
ответить
☞ From Parthen Fri May 28 07:41:00 2021 UTC
"Установка" приложений
Есть у меня консольное приложение на Паскале. Несколько вопросов:
1) Как без alias сделать запуск приложения через команду?
$ pascal-app к примеру.
2) Как вообще работает обработка флагов в самой программе?
3) Где находятся все установленные программы, т.е. как заставить мой лаунчер приложений (Rofi/dmenu) видеть мои программы?
ответить
From admin Fri May 28 11:11:08 2021 UTC
> 1) Как без alias
> 1) Как без alias сделать запуск приложения через команду?
Откройте для себя переменные окружения и среди них — переменную PATH; например, дайте такую команду:
Дальше есть два пути: либо добавить в эту PATH какую-то свою директорию вроде /home/vasya/bin и бинарники складывать туда, либо положить бинарник в одну из директорий, которые в PATH уже есть; в соответствии с обычными соглашениями об использовании директорий в ОС Unix лучше всего для этого подходит /usr/local/bin, она обычно уже в PATH, если это не так в вашей системе — просто исправьте, то есть найдите, где в недрах /etc задаётся значение для PATH и добавьте туда /usr/local/bin и /usr/local/sbin. Недостаток этого решения в том, что для "установки" вашего приложения вам потребуется давать команды с правами root'а.
"Свою" директорию для бинарников вы можете организовать без root'а, достаточно в ~/.bash_profile добавить что-то вроде
Добавлю, что рассказ про переменные окружения есть в первом томе, пар.1.2.16.
> 2) Как вообще работает обработка флагов в самой программе?
Если вы под "флагами" имеете в виду аргументы командной строки, то ответ на ваш вопрос приведён в пар.2.6.12. Собственно, параграф именно этому вопросу и посвящён.
> как заставить мой лаунчер приложений (Rofi/dmenu) видеть мои программы?
А вот фиг его знает :-) Ну то есть я могу, наверное, полезть в поисковики и найти ответ, но вы это можете сделать ничуть не хуже меня.
ответить
From Parthen Fri May 28 16:28:00 2021 UTC
Почему-то у
Почему-то у меня такое чувство, что лучше хотя бы на уровне простенького сисадмина сначала изучить Линукс, а уже после садиться писать за программы. Иначе любые попытки написать что-то серьезное останавливаются плохим знанием ОС.
ответить
From admin Fri May 28 20:30:21 2021 UTC
А зачем
А зачем "изучать" Linux? Вы же в нём живёте, он сам собой через некоторое время "изучится". Вот переменная PATH и вообще окружение вам уже потребовались, поздравлям-с, +1 к админству :-)
На самом деле всерьёз изучать систему, не зная Си, несколько тяжко; но чтобы научиться программировать на Си, нужно сначала просто научиться программировать, и Си для этого не подходит, нужен Паскаль. Вот тут круг, собственно, и замыкается — ну, во всяком случае так может показаться.
В действительности нет никакого "круга", барьер вхождения в использование Linux вы уже преодолели — вы же в нём живёте теперь. Просто дёргаться не надо и комплексовать, что, мол, того не знаю, этого не знаю. Вы же не на работу устраиваетесь админом, правда? Ну, во всяком случае не прямо сейчас.
ответить
From Trollkarl (unverified) Fri May 28 12:04:00 2021 UTC
как заставить
как заставить мой лаунчер приложений (Rofi/dmenu) видеть мои программы
Rofi и dmenu просматривают каталоги, прописанные в $PATH, тут никакой магии.
ответить
From Anonymous (unverified) Fri May 28 14:53:00 2021 UTC
> 3)Легко. Если
> 3)
Легко. Если rofi запускаешь в режиме run, то там будет список всех приложений, которые лежать в директориях, которые указаны в PATH. То есть, как уже писал Андрей Викторович, нужно создать какую-нибудь директорию (~/bin, например), где будут лежать бинарники твоих программ и добавить путь в PATH. Ну или можешь свои программы положить в любой из каталогов, перечисленных в PATH, но мне кажется ~/bin получше будет.
C dmenu, вроде, всё так же. У rofi есть, кстати, тема, которая точь в точь копирует dmenu.
ответить
From buq Fri May 28 20:57:00 2021 UTC
Если dmenu
> 3) Если вы пользуютесь dmenu(точнее dmenu_run), то после добавления директории в переменную $PATH (как описал Андрей Викторович) надо сделать еще 2 шага:
1) удалите папку ~/.cache/dmenu_run
2) и сделайте вот так: source .bash_profile
ответить
From admin Fri May 28 21:06:00 2021 UTC
какую ещё папку?!
ПАПКИ — В ШКАФУ!!!
А source делать не обязательно, даже в систему можно не перезаходить, достаточно xterm закрыть и новый открыть.
ответить
From buq Sat May 29 11:42:00 2021 UTC
> ПАПКИ — В ШКАФУ!!! ... так и есть, извиняюсь)
После добавления директории в $PATH, емулятор терминала находит(автозаполняет) имя бинарника в свежедобавленной директории. А вот dmenu_run -- нет. В dmenu можно будет написать полное имя программы и он запустится, но автозаполнять не будет. Поэтому надо удалить его кэш, и сделать "source .bash_profile"(Или можно просто перезаходить).
ответить
☞ From Flau (unverified) Thu May 27 15:48:00 2021 UTC
Указатель на указатель
На странице 429 приведен пример удаления отрицательных чисел из односвязного списка с помощью указателя на указатель. Если число в
pp^^.data
отрицательное, то изменяется указатель текущего элемента на следующий. Но как осуществляется соединение указателяnext
предыдущего элемента с новым? Ведь в указателеnext
предыдущего элемента лежит адрес старого удаленного элемента.Вроде как мы изменили указатель
pp^
, положив в него адрес следующего элемента, но указатель предыдущего (его поляnext
) остался неизменным. Не могу догадаться, что происходит.При этом конструкция
tmp^.next := tmp^.next^.next
на стр.427 мне понятна: изменяем адрес указателя следующего элемента (если его поле отрицательно) на следующий следующего, т.е. выполняется как бы сдвиг влево.ответить
From admin Thu May 27 19:04:42 2021 UTC
> Если число в
> Если число в pp^^.data отрицательное, то изменяется указатель текущего элемента на следующий.
Совсем наоборот: это происходит в ветке else, то есть в случае, если элемент неотрицательный и удалять его не нужно. Указатель pp (тот самый "на текущий элемент", переменная цикла) меняется _только_ в ветке else, если кажется, что это не так, то это только кажется.
> Ведь в указателе next предыдущего элемента лежит адрес старого удаленного элемента.
Если говорить о той ветке, которая then, то там первая строчка
tmp := pp^;
запоминает в переменной tmp адрес того элемента, который будет удалён. Следующая строка
pp^ := pp^^.next;
как раз изменяет поле next предыдущего элемента (либо указатель first, если речь идёт о самом первом элементе списка), ведь именно на него указывает pp, а изменяется тут не сам pp, а pp^ — то, на что указывает pp (то самое поле next либо указатель first). Между прочим, сам-то pp при этом вообще не меняется.
Ну а третья строка просто удаляет элемент, который из списка уже исключён и больше не нужен.
> т.е. выполняется как бы сдвиг влево.
Точно нет. Как прокомментировать ваше "понимание", я не знаю, поскольку вашу фразу не понял; но точно не так.
ответить
From Flau (unverified) Fri May 28 07:20:00 2021 UTC
Как гром среди
Как гром среди ясного неба. Я осознал, что в pp хранится указатель на next (если это не первый), а через pp^ мы собственно указываем на этот следующий и его же удаляем. Еще раз рассмотрев рисунок и прочитав ваши объяснения, понял. Спасибо!
> Точно нет. Как прокомментировать ваше
Визуально это можно представить так: один элемент удаляется, вместо него ставится "хвост". Ну или перебрасывается стрелочка на следующий следующего.
ответить
From admin Fri May 28 11:15:32 2021 UTC
> Как гром среди
> Как гром среди ясного неба.
Ничего, не вы первый, не вы последний :-) Указатели — это такая штука, что в какой-то момент мозги должны сделать некий "щёлк", чтобы начать нормально с ними работать. Вот у вас только что этот "щёлк" и произошёл, поздравляю.
> перебрасывается стрелочка на следующий следующего.
Такое понимание намного правильнее, ведь все элементы остаются, где были (в смысле, где лежали в памяти, там и лежат), никто никуда не сдвигается. А вот стрелочки — дело совсем другое.
ответить
☞ From Anonymous (unverified) Tue May 25 14:44:00 2021 UTC
Способности
Здравствуйте.Возник вопрос. Какого уровня желательно придумывать алгоритмы, чтобы быть более менее хорошим программистом. Мне вот нужно было перемешать символы в строке. Я кое как придумал на основе random, но я понимаю что это плохой алгоритм, так как он сравнивает выдачу random с массивом индексов которые были выданы и использованы до текущей проверки. Для моих целей он подойдёт, но думаю если будет он мешать очень большой массив данных то это может быть очень долго.
Нашел другой элегантный алгоритм тасование Фишера — Йетса. И понял, что сам бы я вряд ли догадался до такого. Вот и вопрос возник, насколько важно мочь придумать нечто подобное. Или все же можно дойти до какого то уровня более менее сносного не придумывая супер хороших алгоритмов, а используя и разбираясь в уже придуманных до меня?
ответить
From admin Tue May 25 15:58:00 2021 UTC
Всё ещё проще
Всё ещё проще — можно и своих не придумывать, и в чужих не разбираться, а просто писать программы. Серьёзная алгоритмистика в практическом программировании требуется довольно редко. Конечно, иногда она всё-таки требуется, никуда не денешься, так что желательно понимать, что делать, если вдруг чего; ну, хотя бы куда посмотреть. Но изучение этой области можно оставить "на потом" :-)
Но вообще вот это вот "берём последний из оставшихся, меняем со случайным, и так пока элементы не кончатся" — штука довольно очевидная.
ответить
☞ From Anonymous (unverified) Thu May 20 17:44:00 2021 UTC
Жабаскрипт
После просмотра вашего видео о вреде жабаскрипта появился следующий вопрос. Существуют методы выхода за пределы "песочницы" и последующего исполнения произвольного кода, но правильно ли я понимаю, что все равно выполнение этого кода ограничено полномочиями процесса браузера (хотя, даже если и так, то этого все равно достаточно, чтобы отключить жабаскрипт в браузере) и, следовательно, на систему в целом этот код повлиять не может?
ответить
From admin Thu May 20 18:22:17 2021 UTC
В принципе да,
В принципе да, разграничению полномочий пользователей системы лично я с горем пополам доверяю, гоняю браузер с включённым JS из-под изолированного аккаунта и не особенно волнуюсь.
Иной вопрос, что мейнстрим пока ещё форточки, и много мы там видим пользователей, создающих (хотя бы просто создающих) не-администраторские учётки? Таких, которые специально для браузера используют альтернативные учётные записи, я вообще не уверен, что хоть один найдётся.
А с другой стороны, даже если из песочницы никто не вырвется -- вот, например, повесить браузер наглухо, чтоб его пришлось прибивать, JS может всегда и без каких-либо проблем. Одного этого уже достаточно, чтоб вебмакак, использующих JS (т.е. просто всех) начать отстреливать.
ответить
From Parthen Fri May 21 04:15:00 2021 UTC
На ПК повлиять
На ПК повлиять не может, а вот телеметрию соберёт с большим удовольствием. Так что лучше все-таки в виртуалке как по мне.
ответить
From admin Fri May 21 12:16:17 2021 UTC
Пожалуй,
Пожалуй, соглашусь — на виртуалке в целом правильнее.
ответить
☞ From donlineri26 (unverified) Mon May 17 20:04:00 2021 UTC
Здравствуйте,
Здравствуйте, Андрей Викторович, прочитал первую часть вашей книги про паскаль, пытаюсь сделать свою игрушку (простенькое 3д - рейкастинг), так вот хочется чтобы размеры карты для игры задавались из текстового файла - файла настроек. Как лучше всего реализовать 2d-карту игры (XZ - вид сверху), которая необходима для определения столкновений объектов? Какую структуру данных использовать? Так как размеры берутся из файла, то необходимы динамические данные, но реализовать это с помощью очереди, или деки получается затратно (много переходов по указателю для определения столкновения). Хочется использовать динамический массив, но вы говорили, что они представляют из себя не то, что о них думают. Нашел, что можно выделять память по указателю с помощью getmem, допустимо ли это? Также обнаружил такую вешь как адресная арифметика, прибавление к указателю какого-нибудь значения будет всяко эффективнией, чем переходы по указателю (ведь так?). Что лучше всего использовать для решения данной задачи?
ответить
From admin Mon May 17 21:04:12 2021 UTC
Я вот чего не
Я вот чего не понял — в книге ни слова про графику, вы её-то как делать будете? Или я словосочетание "3д - рейкастинг" неправильно истолковал?
Что касается динамических массивов и адресной арифметики, то тут всё зависит от ваших целей. Вы сейчас чего хотите достичь? Варианты такие: 1) написать игру (ну, мало ли зачем — например, денег заработать); 2) научиться программировать конкретно на Free Pascal; 3) научиться программировать вообще. Если ваша цель первая или вторая — допустимо всё, что найдёте. Если третья — то от освоения списков пользы будет на порядки больше, чем от динамических массивов, адресной арифметики и getmem. Эти-то штуки от вас никуда не денутся, рано или поздно доберётесь до Си, там это всё в полный рост; а вот списки если сейчас не освоите, то так и будете их побаиваться подсознательно.
В общем, если цель именно научиться, то вот прямо сейчас лучше подобрать какую-то задачу, в которой накладные расходы от использования списков не создают проблем.
ответить
From donlineri26 (unverified) Mon May 17 21:17:00 2021 UTC
Нет, вы всё
Нет, вы всё правильно поняли, графику реализовываю с помощью crt) Списки у меня тоже используются для очереди врагов, например. Просто интересна, как тогда написать пару-тройку программ на паскале объемом +- 2000 строк? Что писать? Данная задача мне показалась интересной (хардкорной)).
ответить
From admin Mon May 17 21:38:45 2021 UTC
Если задача
Если задача кажется интересной, то её надо решать :-) пофигу мороз, как говорится.
Тут, пожалуй, есть два пути. Первый — таки да, динамический массив. Лучше карту хранить в одномерном массиве, а индекс нужного элемента вычислять как (y*width + x) — так намного проще, чем возня с динамическим массивом динамических массивов.
Второй путь скорее сугубо учебный, то есть я бы не посоветовал такое делать в "боевой" программе, но пока вы учитесь -- почему бы и нет. Способ в принципе не так чтоб сложный: вместо массива с индексами использовать дерево поиска, например, двоичное, с пресловутым индексом в роли ключа. В вашей задаче совершенно неважно, в каком конкретно порядке создавать клетки карты, так что можно чуток посоображать и придумать такой порядок, при котором дерево окажется идеально сбалансированным, так что поиск нужного элемента будет проходить за log_2^N операций.
ответить
From donlineri26 (unverified) Mon May 17 22:13:00 2021 UTC
Понятно,
Понятно, спасибо за интересную идею
ответить
From Anonymous (unverified) Wed Jun 23 15:19:00 2021 UTC
ну, мало ли
ну, мало ли зачем — например, денег заработать
А как это можно сделать? В смысле, не вообще :), а в контексте вот так вот возникшего желания написать игру.
ответить
From admin Wed Jun 23 16:18:06 2021 UTC
Вообще-то,
Вообще-то, конечно, никак, но не все это понимают.
ответить
From Anonymous (unverified) Fri Jun 25 14:06:00 2021 UTC
Ну, судя по
Ну, судя по комментам, игра расположенная полностью на сервере и просящая деньги за доступ к этому серверу - рабочий вариант. Если кто-то достаточно трудолюбивый, сможет её вытащить - ну молодец, игра стала бесплатной. :)
Например, текстовый квест, какой-нибудь. Даже тот, кто заморочится и постарается достать все возможные ответы сервера на текст пользователя, всё равно нет гарантии, что это были все возможные команды.
ответить
From admin Fri Jun 25 17:21:17 2021 UTC
Тут дело в чём,
Тут дело в чём, обычно люди "за поиграть" денег не платят, поскольку хватает вариантов убить время, за которые денег никто не просит.
Серверные игры в большинстве своём устроены так, что в них можно играть совершенно бесплатно, просто в какой-то момент можно забашлять денег и получить в игре что-то такое, что можно вообще-то и без денег, но надо потратить массу времени. А денег просят заведомо (в десятки раз) меньше, чем стоит это время.
Но, в общем, по этой схеме тоже мало кому удаётся денег заработать, так что не ожидайте слишком многого — будет разочарование.
ответить
From Parthen Tue May 18 05:15:00 2021 UTC
Эка вы замахнулись
Один парень на ютубе таким же занимается (правда на С++, но вам сам алгоритм понять).
Ютуб:
https://www.youtube.com/user/ivan78641
Invidious:
https://yewtu.be/channel/UCq95P8i1jJLLegYcm0Y2YTw
ответить
From donlineri26 (unverified) Tue May 18 16:27:00 2021 UTC
Да, спасибо,
Да, спасибо, наверное, первое видео, которое я посмотрел по этой теме) Хоть реализация и похожа на реализацию другого блогера (англоязычного) javidx9 (https://yewtu.be/watch?v=xW8skO7MFYw), объяснения очень доступные. Вообще, изначально наткнулся на данный проект: https://github.com/myxo/ascii_doom (ролик: https://yewtu.be/watch?v=glu4Nv1USdo), после чего и захотелось сделать что-то подобное
ответить
☞ From Parthen Mon May 17 17:35:00 2021 UTC
Чувствую себя дурачком
Начал осваивать главу про указатели. Вроде сначала все просто, а вот на тех 2 задачах у меня полнейший ступор.
Это нормально? Понятно, что сложная глава, но чтобы прям вообще ступор на этих задачах -- это норма?
P.S. Очень сильно подозреваю в этом свое не до конца очищенное Питоновское мышление. При обучении питона односвязные списки преподаются вместе с массивами. Поэтому у меня даже мысли не возникло, что с ними можно обращаться так, как сделано в решении задачи.
ответить
From admin Mon May 17 17:53:41 2021 UTC
"На тех двух"
"На тех двух" — это какие?
Вообще указатели — это штука весьма нетривиальная. Если бы не они, то в принципе можно было бы, наверное, вздохнуть по поводу побочных эффектов и таки начинать обучение сразу с Си. Но указатели есть, и, как ни крути, а факт их существования — это основная причина того, что во "Введении в профессию" вообще есть часть про Паскаль.
Что до Питона — ну, могу посочувствовать, действительно мозги от этой гадости прочистить довольно сложно.
ответить
From Parthen Mon May 17 18:03:00 2021 UTC
Задачи на
Задачи на странице 411.
Просто вот в общем, ученики долго ее понимают? Может просто надо несколько недель, чтобы устаканилось
ответить
From admin Mon May 17 18:48:22 2021 UTC
Да, это тот
Да, это тот самый барьер. Если можете себе позволить сделать паузу — сделайте её. Там в книжке на последующих страницах эти две задачи подробно рассмотрены, разжёваны и разложены по полочкам, но сообразить самому — многократно полезнее.
ответить
From Oliver (unverified) Tue May 18 10:23:00 2021 UTC
А сколько раз и
А сколько раз и с какой скоростью Вы прочитали главу про указатели?
ответить
From admin Tue May 18 14:29:50 2021 UTC
Подозреваю, всю
Подозреваю, всю главу он не прочитал, и это правильно. Перед формулировкой этих двух начальных задач в тексте книги есть рекомендация (жирным шрифтом) попытаться придумать их решение самостоятельно — не читать текст дальше, а то там они разобраны. Это тот случай, когда остановиться и дальше не читать — это путь настоящего джедая :-)
ответить
From Рекурсия (unverified) Sun Jun 27 23:24:00 2021 UTC
Задачи
Я бы, не зная контекста, эти две задачи решил через рекурсию. Правда, во второй бы потребовалось два раза переворачивать список чисел для второго вывода, что не очень экономично по отношению к оперативной памяти и тоже довольно мозгодробительно.
ответить
From admin Mon Jun 28 06:38:08 2021 UTC
Это потому что
Это потому что вы умеете рекурсию. Для большинства новичков рекурсия сама по себе — это барьер примерно такой же высоты, как и указатели.
Ну и такой момент, эти две задачи на языках, не предполагающих оптимизацию хвостовой рекурсии, в "боевых" условиях лучше всё-таки рекурсивно не решать. Стек не резиновый.
ответить
From Рекурсия (unverified) Thu Jul 1 15:43:00 2021 UTC
> Это потому что
> Это потому что вы умеете рекурсию.
Походу, не умею. То ли решение через «чистую» рекурсию вообще нет, то ли у меня не хватает ума его найти.
Двухкратный вывод с использованием рекурсии у меня получается только с помощью указателей, которые позволяют развернуть стек вызова, находясь на вершине рекурсии.
> не предполагающих оптимизацию хвостовой рекурсии
В данном случае всё равно рекурсия не хвостовая получается. Рекурсия просто заменяет собой new/dispose. Хоть и с потерей эффективности, но зато код становится гораздо понятнее, чем если с циклами.
ответить
From admin Thu Jul 1 19:05:26 2021 UTC
> То ли решение
> То ли решение через «чистую» рекурсию вообще нет
Честно говоря, не знаю, что такое чистая рекурсия. Двойной вывод делается тупо двумя вызовами одного и того же. Или если вот прям припёрло дважды всё напечатать за одно "заныривание" в рекурсию, то вторым параметром передаём указатель на начало (первым, естественно, указатель на текущий элемент). Когда список кончился, а второй параметр не пуст, вызываем сами себя, поместив значение из второго параметра в первый, а во второй -- нулевой указатель.
> В данном случае всё равно рекурсия не хвостовая получается.
Преобразуется в хвостовую без особых проблем введением дополнительных параметров.
> Рекурсия просто заменяет собой new/dispose.
А, подождите, вы что, имеете в виду вообще без списков? Нет, без списков, конечно, не получится, аппаратный стек всего один.
ответить
From Рекурсия (unverified) Fri Jul 2 02:59:00 2021 UTC
> А, подождите,
> А, подождите, вы что, имеете в виду вообще без списков?
Это я и имел ввиду под чистой рекурсией — использовать стек вызовов вместо самодельного.
> аппаратный стек всего один.
А, ну да, и в норме достать что-то со дна не получится. не разобрав вершину стека.
> задачи на языках, не предполагающих оптимизацию хвостовой рекурсии, в "боевых" условиях лучше всё-таки рекурсивно не решать.
Как оказалось, в FPC всё-таки есть оптимизация хвостовой рекурсии, если при компиляции добавить какой-нибудь из флагов: -O2, -O3, -O4.
> Стек не резиновый.
А вот проверки его переполнения в FPC, по крайней мере, по умолчанию, нет. Если подать на вход моей программы слишком много данных, она сегфолтится.
ответить
From Parthen Tue May 18 16:34:00 2021 UTC
Андрей
Андрей Викторович прав, я остановился на тех задачах.
Вот что насчет чтения, тут вылезают все странности моего мозга. Быстрое мышление и отсутствие памяти. В итоге читаю быстро, но каждый абзац по 3 раза перечитываю, чтобы моментально не забыть
ответить
From Oliver (unverified) Fri May 21 08:23:00 2021 UTC
Я бы не
Я бы не советовал читать очень уж быстро, по-крайней мере пока Вы не уверены в том, что все правильно поняли. По-крайней мере я так поступаю: каждую новую главу читаю сначала несколько раз достаточно не быстро, углубляясь в каждое слово и каждую фразу. Это, кстати, помогает лучше запомнить то, что я прочитал и понял! Нет смысла спешить читать, а после перечитывать все заново, когда окажется, что Вы не правильно поняли материал.
ответить
From Anonymous (unverified) Fri May 21 17:05:00 2021 UTC
У нас вот в
У нас вот в Универе на первом курсе был Паскаль, но указатели нам почему-то не преподавали. Мы писали на Паскале игры, естественно на Виндовс, а теперь на втором курсе нам преподают указатели на С++ и мне почти ничего не понятно. Я теперь в растерянности, с одной стороны я могу начать учить указатели на Паскале по вашим книгам, но с другой, мне нужно сдавать лабораторные по указателям на С++. И наверное мой мозг уже испортился от указателей на С++. Не могли бы вы мне дать совет, что мне делать в моей ситуации?
ответить
From admin Sat May 22 11:09:49 2021 UTC
> был Паскаль,
> был Паскаль, но указатели нам почему-то не преподавали.
Преподавать Паскаль без указателей — практически пустая трата времени.
> естественно на Виндовс
Ещё лучше.
> нам преподают указатели на С++ и мне почти ничего не понятно
Не волнуйтесь, здесь проблема не в вас. Точнее, в вас тоже может быть какая-то проблема (нельзя же в самом деле утверждать, что её нет), но при таком построении "курса программирования" понятно быть просто не может.
> что мне делать в моей ситуации?
Что-то, мозги беречь. Ту хрень, которую вам втюхивают под видом программирования — сдать и забыть. А если хотите при этом ещё и научиться программировать — ну вот книжка есть.
ответить
From Vilnur_Sh (unverified) Mon May 17 23:04:00 2021 UTC
При первом
При первом прочтении темы про указатели в Паскале, после долгих и усердных попыток понять их, в какой-том момент мне показалось, что я их понял. Но попытки с ними поработать, отойти в чуть в сторону показали, что это не так. Решил оставить это место на перечитку. Так дошел до указателей в Си. Сделал довольно долгую паузу. Вернулся обратно в Паскаль. По примерам в книге наконец разобрался, как они работают. Однако, не представлял, где я могу их использовать. Написал пару мелких программ без них. Снова сделал продолжительную паузу пока не придумал для себя интересную задачку с указателями. Применение на практике дало результат -- теперь обращаюсь с ними свободно. В голове есть чёткое представление, что это и как работает.
ответить
From Parthen Thu May 20 09:27:00 2021 UTC
А там в главе
А там в главе указано, что если не понял, лучше дальше пойти.
Или все-таки не сильно мозг травмирует?
Я вот эту задачу решаю, даже что-то понимаю, но мозг упорно отказывается воспринимать это все.
Кстати, а не помните ту задачку?
ответить
☞ From Anonymous (unverified) Mon May 17 16:47:00 2021 UTC
Экзамены...
Здравствуйте, Андрей Викторович. В связи с нынешней обстановкой в университете, где я учусь, экзамены проводятся онлайн (что уже само по себе смешно, конечно) и преподаватели настоятельно требуют у студентов включать камеры и микрофоны (а иногда, даже, демонстрировать различные документы в камеру), аргументируя, якобы, необходимостью в идентификации студента. Дело усугубляется тем, что это все происходит через сторонние иностранные платформы для видеоконференций. Я писал различные заявления и просьбы преподавателям провести эказмен очно, либо без видеоконференций, писал в инстанции, занимающиеся "защитой" персональных данных, но все безуспешно. Насколько я знаю, вы преподаете в МГУ и, если можно, не могли бы вы сказать как дела с этим обстоит там ?
ответить
From admin Mon May 17 17:49:21 2021 UTC
Грядущая
Грядущая сессия у нас будет проводиться полностью очно, а те две, которые прошли как-то иначе, можно было с тем же успехом не проводить вовсе. Комментировать коронавирусный маразм мне, ей-богу, не хочется.
ответить
☞ From Anonymous (unverified) Fri May 14 15:14:00 2021 UTC
Добрый день,
Добрый день, Андрей Викторович! Хотелось бы узнать ваше мнение. Как вы относитесь к криптовалютам? Есть ли за ними будущее? В последнее время они стали слишком популярны и многие известные люди твердят, что именно за криптой будущее. Думаю многим бы хотелось услышать ваше мнение по этому поводу.
ответить
From admin Mon May 17 10:23:00 2021 UTC
Вообще я
Вообще я праздные вопросы не по делу обычно не раскрываю, но конкретно эта тема совсем недавно тут обсуждалась: http://www.stolyarov.info/node/316#comment-4238
ответить
☞ From Parthen Wed May 12 19:32:00 2021 UTC
Покуда вспомнил
Я узнал, что с tmux в консоли можно сделать подобие тайлинга, что нивелирует преимущества Иксов. Собственно, отказываюсь от Иксов, переходу в консоль, но вот проблема: русская локализация. Vk-cli, который в консоли на русском
пишет у меня отображается кракозябрами:
"10 А русс∆∆∆ ∆∆∆∆ ∆ ∆∆∆ера∆ура"
Только вместо треугольников ромбики -- без знаков вопроса внутри, просто закрашенные.
Русская локаль есть, locale -a выдает en и ru UTF-8.
Вопроса два: как решить эту проблему (я, так понимаю, проблема с кодировкой) и как блин вводить русский текст? setxkbmap без Иксов не работает.
ответить
From admin Thu May 13 11:31:49 2021 UTC
Лично я понятия
Лично я понятия не имею, как с этим всем работать, у меня вообще везде koi8r (но консолью я пользуюсь только для root'овых сеансов, всё остальное в иксах). Коммент я ваш раскрыл в надежде, что тут будет мимо проходить кто-нибудь, кто понимает, о чём речь.
ответить
From djek0 (unverified) Thu May 13 15:14:00 2021 UTC
Нужно поменять
Нужно поменять шрифт (который поддерживает кириллицу) в /etc/default/console-setup. Их, в свою очередь, можно найти /usr/share/consolefonts/. Дай знать, если что-то получись из этого!
У самого такая проблема была, когда нужно было поменять размер шрифта в виртуальной консоли. На то время у меня был Arch Linux с systemd и это можно было сделать в /etc/vconsole.conf, установив переменную FONT в нужное название шрифта. У себя на Devuan'е (с sysvinit) я этого, конечно, не нашел, но нашел вот такую статейку, которая загрузиться и без джаваскрипта :)
ответить
From Parthen Thu May 13 19:32:00 2021 UTC
Большое спасибо!
Русский отлично отображается после вот такого маневра в /etc/default/console-setup:
CODESET="CyrSlav"
Остается только проблема ввода русского текста
ответить
From Anonymous (unverified) Thu May 13 15:33:00 2021 UTC
console-cyrillic
console-cyrillic
ответить
From Parthen Thu May 13 19:18:00 2021 UTC
console-cyrillic is already
console-cyrillic is already the newest version (0.9-17)
ЧЯДНТ?
ответить
From Anonymous (unverified) Thu May 13 18:05:00 2021 UTC
Для изменения
Для изменения раскладки есть команда loadkeys. Из готовых раскладок есть, например, "ru", где переключение происходит по Ctrl+Shift. loadkeys действует только на текущую консоль, изменения теряются после перезагрузки. Способ задания раскладки при загрузке зависит от дистрибутива. Например, в Дебиане/Убунту это делается командой "dpkg-reconfigure keyboard-configuration" либо прямым редактированием /etc/default/keyboard.
Кракозябры, скорее всего, из-за некорректного шрифта. Меняется он через setfont. Попробуйте, скажем, "cyr-sun16". Опять же, это только для текущей консоли, и задание шрифта при загрузке, опять же, зависит от дистрибутива. В Дебиане/Убунту можно через "dpkg-reconfigure console-setup" либо прямым редактированием /etc/default/console-setup.
ответить
From Parthen Thu May 13 19:17:00 2021 UTC
При loadkeys ru -- cannot
При loadkeys ru -- cannot open file ru.
На всякий случай вывод locale -a:
parthen@devuan-pc:~$ locale -a
C
C.UTF-8
en_US.utf8
POSIX
ru_RU.utf8
Шрифт cyr-sun16 открыть не может.
ответить
From donlineri26 (unverified) Mon May 17 20:21:00 2021 UTC
man loadkeys, нужно
man loadkeys, нужно грузить keymap, они расположены в /usr/share/kbd/keymaps
ответить
From Parthen Sat May 22 17:20:00 2021 UTC
А все решения в
А все решения в инете для системд. У меня вот директории kbd не существует.
ответить
☞ From ZMV811 Tue May 11 16:22:00 2021 UTC
Выживание в цифровом мире
Андрей Викторович, сейчас, кажется, без смартфона никуда, особенно в Москве, QR-коды, мобильный банкинг, приложения такси, гос-мос-услуги и все остальное в Интернете. Многие вещи уже заведомо подразумевают использование смартфонов, т.к требуются селфи или данные с датчиков (геолокация или даже гироскоп, по которому следят за манерой вождения автомобиля таксистами). Для образования требовались компьютер с Windows, Zoom, Skype, Microsoft Office, а на смартфоне WhatsApp, никто с СПО возиться не хочет. Как с этим быть? С теми кто хоть как-то высказывает свое возмущение не церемонятся, семеро одного не ждут, не хочешь - твои проблемы, увольняйся, отчисляйся. Не только о приватности и столлмановщине речь, но ведь даже альтернативы нет, человек должен использовать "экосистему" от Apple, либо от Google, соглашаться с и их пользовательскими соглашениями, что бы получить услугу от своего государства, должен в случае с таксистами, подвергаться штрафам от работодателей, которые используют данные с датчиков, которые не имеют никакой поверки и никто не отвечает за их точность и многое другое. Как-то это странно и не отрегулировано все, ведь нет даже законов, которые обязывали бы человека иметь не то что смартфон, а даже номер телефона, но такой человек выпадает из жизни
ответить
From admin Wed May 12 06:24:46 2021 UTC
Лично я не
Лично я не использую смартфоны. И я пока что не заметил, чтобы "выпал из жизни".
Всё это вопрос личного выбора. Готов быть цифровым рабом на цифровых галерах и носить цифровые зонды в заднице — им и будешь. Не готов — разбей смартфон об асфальт и купи бабушкофон (и, кстати, желательно, чтобы этот бабушкофон лежал всегда дома, то есть работал как телефон, но не как мобильный), забудь про то, что можно деньги платить как-то иначе, нежели наличными, предложение поставить мобильное приложение (любое) рассматривай как личное оскорбление. И всегда, везде, где только кому-то придёт в голову спросить, есть ли у тебя мобильное приложение такое-то там, гордо отвечай "я не пользуюсь смартфонами". Во всяком случае, я вот именно так и делаю.
Да, придётся обойтись без каршеринга и арендных велосипедов. А такси придётся либо голосом заказывать, либо "тормозить" по-старинке, встав на краю тротуара и подняв руку (часто выходит дешевле, чем через агрегаторов). Ничего, это не страшно. Я, во всяком случае, серьёзных неудобств не замечаю.
Ну а работать таксистом, наверное, просто не надо. Впрочем, сейчас столь жёсткий дефицит этих самых таксистов, что я вообще категорически не понимаю тех из них, кто соглашается на отслеживание стиля вождения через гироскопы в смартфоне. Послать такого "работодателя" в пешее эротическое и работать так, как самому нравится.
ответить
From Parthen Wed May 12 13:09:00 2021 UTC
Андрей
Андрей Викторович, это все конечно хорошо, но вы забываете одну вещь. Вы можете отказаться от вещей, где используются смартфоны. А вот ТС (как я понял, студент или школьник) не может, ровно как и я.
Ну вот представьте мой день. Утром встаешь, лезешь в телефон за расписанием, которое есть только во ВКонтакте. Приходишь на урок, все общаются о том, какие они посты выложили в Инстаграмме. Учитель приходит на первый урок и скидывает во ВКонтакте задание на урок. После окончания урок во ВКонтакте скидывается ДЗ, а оценки ставятся в электронный журнал, существующий только в виде более-менее нормального приложения на смартфон или в виде глючного сайта на жс (кстати, единственный сайт который требует от меня включить XHR, я даже не знаю, что это такое).
Я конечно могу сидеть сам по себе (чем я занимаюсь), но вот игнорировать дз не могу.
Так еще на дистанционке заставили переименовать аккаунт в реальные ФИ. И блин, я уже не говорю чтобы перенести все это в Matrix/XMPP/Email, вы мне хотя бы в Телеграм скидывайте, он в разы лучше ВКонтакте.
А 2 месяца назад закрылся бот-мост в Телеге. Теперь приходится сидеть с клиента ВК, у которого по данным Aurora Store 14 трекеров.
ответить
From admin Wed May 12 17:23:00 2021 UTC
Да неужели?!
А вы директору школы заявление о невозможности использования смартфонов подавали? А вы жалобу в Рособрнадзор направили? А вы хоть что-то сделали, чтоб тем моральным уродам, которые являются вашими учителями, стало плохо?
Если нет (а очень похоже, что нет) — то это тоже личный выбор. Вы можете отказаться от использования всей этой мерзости точно так же, как и я. Просто вы считаете для себя неприемлемыми последствия такого отказа, а продолжение использования всей перечисленной дряни считаете приемлемыми. А нужно наоборот: vk и смартфоны неприемлемы, точка, все свободны, мне по сараю, что вы там про это думаете, а попытаетесь меня за это покарать (ну там двойку поставить) — я телеги накатаю во все инстанции, до каких дотянусь.
Учтите простую вещь: фраза "я так не могу" — это тоже личный выбор.
ответить
From Parthen Wed May 12 19:19:00 2021 UTC
Справедливо
>Просто вы считаете для себя неприемлемыми последствия такого отказа, а продолжение использования всей перечисленной дряни считаете приемлемыми.
Вообще да, бодаться я не буду по той простой причине, что приедет ОбрНадзор, проходили (выставили мою фотографию в интернет, а я это дело сильно не терплю), бодались в итоге 2 месяца. Дободался, фотографию удалили, а учитель смотрит на меня как на бесенка.
Так что да, справедливо -- мой выбор не бодаться так с учителями основных предметов, т.к. мне ещё как-то ЕГЭ сдавать, а денег на репититора нет. И если в условной информатике я уверен, математику также вытащу, то вот русский язык мне даётся тяжко.
P.S. А вообще полный отказ от ВК мне же и выйдет боком -- у одноклассников не спросить ничего будет.
ответить
From admin Thu May 13 09:37:28 2021 UTC
Понимаю и не
Понимаю и не осуждаю.
Впрочем, даже в такой ситуации всё ещё можно много чего сделать. Например, для смартфона иметь отдельную сим-карту и использовать его (вместе с симкартой) только для того, чего от вас в школе хотят, а для всего остального (в том числе для общения с кем бы то ни было кроме учителей) — бабушкофон и другую симку. Смартфон с собой носить в школу, но обесточенным — включать его только в школе и ещё дома во время выполнения домашней работы, всё остальное время держать выключенным (хотя бы в авиарежиме). И так далее.
ответить
From Parthen Thu May 13 15:19:00 2021 UTC
Собственно, все
Собственно, все эти меры давно приняты.
Но что ещё: я помню, вы как-то Андроид в один ряд с виндой поставили, а Андроид все же получше. Гугл по решению антимонопольной комиссии выкладывает исходники каждый год. Некоторые энтузиасты из этих исходников собирают нормальный Андроид. На одном из таких я и сижу -- AOSP (Android Open Source Project) Extended.
ответить
From Anonymous (unverified) Sun May 16 08:59:00 2021 UTC
Смартфон - не
Смартфон - не только Андроид. Есть ядро Linux с вендорскими блобами, есть отдельные от ядра драйверы, цепочка аппаратно-специфичных загрузчиков, прошивка модуля связи, etc. И всё это с закрытыми исходниками, без возможности создать аналог (спецификации железа тоже закрыты, а метод проб и ошибок не катит в силу быстрой смены моделей в продаже). Всё это создатели открытых прошивок вынуждены заботливо сохранять, да ещё и плясать с бубном, чтобы заставить работать.
В ПК намертво закрытого и безальтернативного почти нет. Даже закрытую со всех сторон Винду можно сменить на другую ОС. И, как ни странно, Микрософт даже приложил усилия, чтобы сохранить эту возможность после повсеместного внедрения Secure Boot. Но только на ПК - на планшеты и смартфоны с виндой они продвигают те же запреты, что и Гугл на Андроид-фоны.
ответить
From Anonymous (unverified) Mon May 17 20:17:00 2021 UTC
Почему же тогда
Почему же тогда Libre Boot поддерживает так мало материнских плат? А за свободные компьютеры (purism, system76) требуют немалых денег? На пк с этим тоже немало проблем
ответить
From Parthen Tue May 18 05:03:00 2021 UTC
Вообще,
Вообще, насколько я понимаю, железо надо подбирать для программ, а не наооборот. Идешь в магазин покупать ПК -- смотришь, есть ли он в списке всяких свободных прошивок
ответить
From Anonymous (unverified) Sun Jun 27 22:19:00 2021 UTC
> Идешь в
> Идешь в магазин покупать ПК -- смотришь, есть ли он в списке всяких свободных прошивок
А вот фиг тебе. ME или PSP есть во всех новых x86-компьютерах.
Разве что одноплатники на ARM смотреть.
ответить
From nelson Wed May 12 09:40:10 2021 UTC
Жизнь без смартфона
Как-то это странно и не отрегулировано все, ведь нет даже законов, которые обязывали бы человека иметь не то что смартфон, а даже номер телефона, но такой человек выпадает из жизни
Выпадает он разве что из "жизни" в понимании т.н. "потребителей контента", живущих в смартфонах.
Все сферы "деятельности", работа в которых требует какого-то активного использования смартфона, в подавляющем большинстве случаев будут представлять из себя лютую дичь.
Про сенсорный экран лучше вообще промолчать - этот "интерфейс" ни для чего серьёзного не годится. Ну, может, только в электронных книгах (планшетах) как-то более-менее юзабелен и то только для очень ограниченного класса задач.
Навязывают очередное мобильное приложение? Активно отказываться, всем своим видом показывая, что предпочитаете пользоваться нормальным ПК.
ответить
☞ From Parthen Sun May 9 13:46:00 2021 UTC
Итак, у нас есть
Итак, у нас есть программа с посимвольной обработкой ввода.
Внимание вопрос: если во время исполнения прцедуры произойдет ошибка, как себя поведет программа? Выйдет ли она из процедуры, или в самой процедуре напишет невнятную ошибку?
ответить
From admin Mon May 10 13:52:23 2021 UTC
Зависит от
Зависит от того, в каком режиме (
{$I-}
или{$I+}
) была откомпилирована та строчка программы (внутри этой TestProcedure), при выполнении которой случилась ошибка.ответить
From Parthen Tue May 11 20:35:00 2021 UTC
Тогда вопрос.
Тогда вопрос. Изменится ли IOResult, если ошибка возникла в процедуре, а директива {$I-} прописана:
1) после процедуры, но перед проверкой
2) в самой процедуре
ответить
From admin Wed May 12 06:14:25 2021 UTC
Всё это не
Всё это не имеет значения. Имеет значение только одно: тот оператор, который произвёл ввод или вывод, был скомпилирован в I- или в I+.
ответить
☞ From Anonymous (unverified) Sat May 8 12:49:00 2021 UTC
Опечаточки и одна НЕПОНЯТКА :-)
Том 1, страница 602, конец последнего абзаца:
"Паскаля закончит командой" - пропущено ":" в самом конце.
Том 1, страница 613, первый абзац параграфа про Псевдокоманды:
"--- нам уже известны из \Sx\ref{memory_reservation}" - я так понимаю это синтаксис какой-то команды LaTeX'а, который подставил бы: <длинное тире> нам уже известны из <знак параграфа>.3.2.3. (Директивы для отведения памяти).
Том 1, страница 624, 2 абзац с черточки после определения <<ленивой>>:
Однако ассембер... - пропущена буква 'л', ассембЛер
Ну и лично для себя хотелось бы прояснить одну непонятку:
Том 1, страница 579, предпоследний абзац. Никак не пойму пример с использованием and, написано, что можно получить остаток от деления беззнакового числа на степень двойки (от 1 до 32 степени); приводится пример "and eax,3" - мол, оставит в eax остаток от деления его исходного значения на 4. 2 в степени 3 = 8. Даже если говорить, что 3 - это не степень, а то на что делим, то почему в конечном итоге мы делим на 4?
Ну не понимаю, и все бы ничего, но ведь зудит в одном месте от любопытства происходящего :D
С наилучшими пожеланиями, Anonymous!
( Капчу как орешки щелкаю <смеется/> )
ответить
From admin Wed May 12 06:40:34 2021 UTC
> "Паскаля
> "Паскаля закончит командой" - пропущено ":" в самом конце.
Ни черта там не пропущено, не нужно здесь двоеточие.
> Том 1, страница 613
Есть вот такая страничка: http://www.stolyarov.info/books/programming_intro/e2errata Там эта ошибка уже упоминается.
> ассембер
Спасибо, эту вы первым заметили :-)
> and eax,3
Ох. Ну вот 3 -- это в двоичной системе что? Это 00000...00011 (все нолики, только два младших разряда единички). Что, стало быть, делает and eax, 3? Выделяет два младших разряда, точнее -- все разряды, кроме двух младших, обнуляет. Ну а два младших двоичных разряда и есть остаток от деления на 4.
Вы случайно с ассемблерной части не начали? Если да, бросайте немедленно, вы к этому ещё не готовы. Нет, Паскаль пропустить нельзя, ничего хорошего не получится.
ответить
☞ From Дмитрий (unverified) Wed May 5 14:16:00 2021 UTC
Вопрос по системам счисления
Андрей Викторович, добрый день!
Вопрос может и глупый, но для меня важный: почему при переводе, скажем, из двоичной системы счисления умножением каждой цифры этого числа на 2 в n-ой степени мы получаем число именно в десятичной системе? И как, скажем, перевести число сразу из двоичной в семеричную систему?
ответить
From admin Mon May 10 13:54:59 2021 UTC
> почему ... мы
> почему ... мы получаем число именно в десятичной системе?
Потому что сами в ней считаем. Так нас в детстве научили.
> как, скажем, перевести число сразу из двоичной в семеричную систему?
Научиться все арифметические действия, в том числе возведение в степень, умножение, деление и всё прочее делать сразу в семеричной системе. Не так чтоб совсем невозможно, но для большинства людей нереально.
ответить
From Anonymous (unverified) Thu May 13 21:00:00 2021 UTC
почему при
почему при переводе, скажем, из двоичной системы счисления умножением каждой цифры этого числа на 2 в n-ой степени мы получаем число именно в десятичной системе?
Потому что мы умножаем эти цифры на 2 в n-ой степени в десятичной системе. Если будем умножать цифры (предварительно переведя их, если необходимо) в другой системе, то получим и результат в другой системе.
И как, скажем, перевести число сразу из двоичной в семеричную систему?
Да легко!
Чтобы не было путаницы, я буду записывать каждое число в форме n[k], где k -- десятичное число, задающее основание системы счисления (в книгах обычно используют нижний индекс для этой цели), а n -- собственно число в заданной системе. В системах счисления, основание которых превышает 10, в дополнение к десятичным цифрам буду использовать последовательные буквы английского алфавита (а системы счисления, основание которых превышает 36 рассматривать не буду). Примеры: 12AB0[16], 1011[2], 356[7], 234[5]=153[6], 17B[13]+23[4]=93[31], и т. д.
Перевод из двоичной в десятичную, по формуле:
1011[2] =
= 1[2]*10[2]^0[2] + 1[2]*10[2]^1[2] + 0[2]*10[2]^10[2] + 1[2]*10[2]^11[2] =
= 1[10]*2[10]^0[10] + 1[10]*2[10]^1[10] + 0[10]*2[10]^2[10] + 1[10]*2[10]^3[10] =
= 1[10] + 2[10] + 0[10] + 8[10] =
= 11[10]
Из двоичной в семеричную, ровно по той же формуле:
1011[2] =
= 1[2]*10[2]^0[2] + 1[2]*10[2]^1[2] + 0[2]*10[2]^10[2] + 1[2]*10[2]^11[2] =
= 1[7]*2[7]^0[7] + 1[7]*2[7]^1[7] + 0[7]*2[7]^2[7] + 1[7]*2[7]^3[7] =
= 1[7] + 2[7] + 0[7] + 11[7] =
= 14[7]
Пример посложнее, из [15] в [11]:
27E[15] =
= E[15]*10[15]^0[15] + 7[15]*10[15]^1[15] + 2[15]*10[15]^2[15] =
= 13[11]*14[11]^0[11] + 7[11]*14[11]^1[11] + 2[11]*14[11]^2[11] =
= 13[11] + 96[11] + 37A[11] =
= 478[11]
Из [3] в [2]:
101210[3] =
= 0[3]*10[3]^0[3] + 1[3]*10[3]^1[3] + 2[3]*10[3]^2[3] + 1[3]*10[3]^10[3] + 0[3]*10[3]^11[3] + 1[3]*10[3]^12[3] =
= 0[2]*11[2]^0[2] + 1[2]*11[2]^1[2] + 10[2]*11[2]^10[2] + 1[2]*11[2]^11[2] + 0[2]*11[2]^100[2] + 1[2]*11[2]^101[2] =
= 0[2] + 11[2] + 10010[2] + 11011[2] + 0[2] + 11110011[2] =
= 100100011[2]
Чтобы стало понятнее, попробуйте сами перевести несколько случайных чисел между разными системами счисления. Всё, что для этого нужно, это внимательность. Ну и табличка умножения под рукой для той системы, в которую переводите, не помешает.
ответить
From admin Fri May 14 06:50:16 2021 UTC
> Да
> Да легко!
фигассе легко :-)
ответить
From Anonymous (unverified) Fri May 14 13:23:00 2021 UTC
Ненуачо? :-)
Ненуачо? :-) Процесс нудный, но не сложный.
Вся эта писанина с n[k] выглядит громоздко, конечно. Но тут мне важно было показать вопрошающему, что для всякого числа в процессе перевода нужно учитывать, в какой системе счисления оно записано. А так-то можно и попроще записывать:
раскладываем в двоичной:
1011 = 1*10^0 + 1*10^1 + 0*10^10 + 1*10^11
переходим к семеричной и собираем обратно:
1*2^0 + 1*2^1 + 0*2^2 + 1*2^3 = 1 + 2 + 0 + 11 = 13
ответить
From Anonymous (unverified) Thu May 20 12:09:00 2021 UTC
собираем обратно
1 + 2 + 0 + 11 =
1314ответить
☞ From Anonymous (unverified) Fri Apr 30 06:38:00 2021 UTC
Несколько
Несколько месяцев как прочитал Вашу трилогию. Можете подсказать что можно почитать теперь?
Больше всего понравился Си и хотел бы изучить алгоритмы и «практическую математику».
Спасибо.
ответить
From admin Mon May 10 13:56:31 2021 UTC
Думаю, что
Думаю, что стоит перейти от "чтения" к программированию. Что нужно читать дальше — станет ясно в ходе решения практических задач.
ответить
☞ From Flau (unverified) Wed Apr 28 13:09:00 2021 UTC
su заменил sudo
Последовал вашему совету и давно уже удалил sudo. Недвано нужно было установить пакет из исходников (из AUR). Решил посмотреть, что произойдет, если я вызову
makepkg --install
не будучи root. Я ожидал, что мне откажут в доступе. А выдалось такое:Так этот su потребовал еще пароль от root. Этот su тоже следует удалить? Стоит Arch Linux.
ответить
From admin Thu Apr 29 13:43:36 2021 UTC
su бывает
su бывает полезен для понижения полномочий (в сеансе root'а выполнить команду под обычным пользователем). Поэтому удалять его не надо, с него надо сбросить setuid bit командой
chmod u-s /bin/su
ответить
From mg (unverified) Tue May 11 07:46:00 2021 UTC
Простите, но
Простите, но чем именно в сути плохо использовать 'sudo/sudors' то/те? Естественно, кроме того что уязвимости находят частенько, как к примеру недавняя так уж, CVE-2021-3156. Вроде бы как бы позволяет гибко настроить доступ в сравнении с использованием 'su', что есть собою более безопасней использование именно 'sudo' вместо 'su' как концепции.
ответить
From admin Tue May 11 11:08:00 2021 UTC
Ещё раз, и
Ещё раз, и медленно: в сеансе работы нельзя повышать полномочия. Нельзя и всё. Точка.
Разумеется, su для повышения полномочий тоже использовать нельзя, отсюда рекомендация сбросить с него suid bit. И да, ssh root@0 тоже, естественно, нельзя. И мне, ей-богу, уже надоело отвечать на этот дебильный вопрос — до вас практически в той же формулировке его успели задать человек пятнадцать. Если для вас не очевидно, почему повышение полномочий в сеансе работы — действие категорически недопустимое и полностью запретное, то вам не следует обслуживать серьёзные системы.
ответить
From mg (unverified) Tue May 11 15:23:00 2021 UTC
Весьма
Весьма благодарю! Теперь понял вопрос тот выше задаваемый не мною благодаря ответам вашим, а то из вырванного контекста как-то сложно было понять правильно о чем речь шла. И таки да, понимая ответы ваши сейчас понимаю что вопрос мой действительно /дебильный/ получился. Было бы здорово /если бы был бы/ поиск по гостевой... /вопрос в случае том ведь вовсе не задавал бы/. Спасибо.
ответить
☞ From Anonymous (unverified) Mon Apr 26 20:03:00 2021 UTC
Андрей
Андрей Викторович, здравствуйте.
Вопрос, который может Вам показаться глупым (сразу извиняюсь): как в настоящее время можно заработать честному айтишнику на три корочки хлеба (может быть с маслом), не прибегая к госбюджету, работе на чужого дядю и всяческой копирастии?
Очень хочу услышать совет вольного художника. Заранее благодарю!
П.С. Куда мне идти, догадываюсь :)) но хотелось бы с пояснениями :))
ответить
From admin Mon Apr 26 22:26:52 2021 UTC
Зависит от
Зависит от того, что этот честный айтишник умеет.
Вообще странная постановка вопроса. Госбюджет для айтишника, я бы сказал, так себе кормушка, там, судя по качеству результата, всё начальники распиливают, а всю работу делают набранные непонятно откуда обезьянки, которым, разумеется, платят как обезьянкам, а не как айтишникам (для того их и набирают). Копирастия могла бы быть актуальна для меня, поскольку я книжки пишу, но как бы большинство айтишников в этом не замечены, а в области программирования копирастия актуальна разве что для (условно) коробочного софта, какового не так много в общей массе.
Вот работы на чужого дядю избежать сложнее, тут я не знаю, чем помочь. Скажем, заказчик, который бабло платит — он к чужим дядям относится или это какой-то другой дядя, не совсем чужой? Мы вообще так или иначе обычно работаем на кого-то другого, на то и разделение труда.
ответить
☞ From Parthen Sun Apr 25 07:57:00 2021 UTC
В дополнение к Aseprite
Раз уж такое дело, как вообще разобраться, что опенсорс, а что нет, если плохо знаешь английский?
Ну то есть вот к примеру есть игра, на которую я всегда равнялся и считал ее идеалом в своей сфере -- Katawa Shoujo.
Я ее вроде как считал опенсорсом, потому что это одна из немногих программ, исходники которой я смотрел лично.
Но вот если посмотреть лицензию, там CC BY-NC-ND. То есть модификации делать запрещено (насколько помню, их сценарист не хотел, чтобы фанаты изуродовали произведение).
И если это программа, у которой нельзя делать производные, то она вроде как под GPL не подходит. Но в тоже время исходники всех версий открыты, денег не просят.
ответить
From admin Sun Apr 25 10:54:26 2021 UTC
Ну, начать с
Ну, начать с того, что GPL — не догма. Больше того, раз уж я сертифицированный философ :-) — скажу, что с философской точки зрения та "свобода", которую Столлман воплотил в GPL, представляет собой прямо-таки хрестоматийный случай так называемой позитивной свободы, или свободы для. В действительности свобода (если это свобода, а не что-то другое) бывает только негативной, только "свободой от", а всевозможные "свободы для" — это, как ещё Исайя Берлин верно подметил, представляют собой лишь маски жестокой тирании (за дословность не ручаюсь, но можете глянуть мою диссертацию по философии вот тут: http://www.croco.net/croco/papers/stolyarov_philosophy_thesis_infofreedom.pdf — там это всё разобрано).
С другой, ну вот вроде бы для программ должна быть свобода модификации. Но, например, для книг — ну, я бы сказал, вот прямо-таки ни за что, иначе найдётся масса желающих, например, исправить непонравившийся финал; ненуачо, пусть Эдмон Дантес таки женится на этой своей Мерседес, предварительно грохнув её мужа, а Базаров пусть выздоровеет, а а сын Атоса найдёт себе новую невесту, чтоб сам Атос вместе с Портосом и Д'Артаньяном славно погуляли на его свадьбе, и нефиг их всех там в финале морить, как это сделал Дюма. В общем, кто как, а вот лично я не хотел бы появления свободы модификации литературных произведений, если только это не сугубо утилитарная документация.
Если исходники открыты и денег не просят — это уже не копирасты. Конечно, правильнее было бы выделить некий "движок" и его отдать в более свободном варианте, то есть разрешить на нём делать другие игры (и совершенствовать сам движок при желании); но конкретная игра — всё-таки скорее не инструмент, как большинство программ, а художественное произведение, и требование его неизменности лично меня ни грамма не удивляет и не напрягает.
ответить
From Parthen Sun Apr 25 11:22:00 2021 UTC
Движок они не
Движок они не свой импользуют -- Renpy, де-факто стандарт в мире визуальных новелл, идет по лицензии MIT. И кстати он и есть причина моего выбора питона когда-то :)
Ну вот насчет художественных книг есть же фанфики. Оригинал не уродуют, а своих произведениях хоть что творите.
Ну в общем, если я правильно понял, свобода изменять нужна программам-инструментам, а не произведениям.
ответить
From admin Sun Apr 25 11:41:55 2021 UTC
Подозреваю,
Подозреваю, фанфик вы здесь сделать вполне можете — взять тот же самый движок, позвать кого-нибудь, кто умеет быстро рисовать хентайных девочек (люди, умеющие рисовать на таком уровне, встречаются намного чаще, чем можно было бы ожидать), и вперёд :-)
Про "свободу модификаций для программ-инструментов" вопрос не такой простой, как кажется — я таки считаю, что она должна быть, но я при этом не считаю врагами каждого, кто против (тогда как тех, кто против свободы копирования, т.е. копирастов, таки да, врагами считаю). Но вот "свобода модификации целостных художественных произведений" — это, IMHO, идея крайне неудачная.
ответить
From Parthen Sun Apr 25 12:23:00 2021 UTC
Ну, созданием
Ну, созданием ВН я занимаюсь последние года 4 :)
Другое дело, что я вдруг вспомнил, что я вроде бы как хотел стать программистом, а не скриптером на языке Renpy/Python. Полез в Гугл искать языки, с которых пытался изучать программирование -- С++. (Спасибо тебе Гоша, удосужил).
Наткнулся на ролик IT-бороды, и вот я здесь, уже несколько месяцев изучаю все с нуля :)
P.S. Между прочим, мне вот сейчас друг предложил свою ВН сделать. Я такого не делал, всегда работал на кого-то.
Ну я конечно заявил, что только при условии распостранения исходников вместе с игрой, он согласился.
И вот фиг его знает на чем делать -- то ли на Renpy/Python, то ли пытаться вывести графику на Паскале.
Скорее все же первое, ибо я вообще не представляю, как работает Паскаль на Винде.
Ладно, я к чему. Помнится, где-то вы упоминали, что между программированием на Паскале (а я как раз осилил часть про Паскаль, но не начал еще Асссемблер) и переходу на Си должно пройти некоторое время. Так вот какое? (Ну, с небольшой поправкой на то, что на Питоне я делал некоторые вещи)
ответить
From admin Sun Apr 25 22:32:03 2021 UTC
На Паскале
На Паскале нужно не так чтобы именно время как таковое, на Паскале нужно наработать опыт, привыкнуть думать так, как это обычно происходит при работе на Паскале.
Кстати, Free Pascal, по идее, под виндой должен работать ещё лучше, чем под *nix'ами, поскольку, как я понял, там в команде одни виндузятники.
А что такое "BH"?
ответить
From Parthen Mon Apr 26 03:20:00 2021 UTC
ВН -- визуальная
ВН -- визуальная новелла.
А вот как вообще понять, что уже все, готов? Или это как "только избранный может понять что он избранный"?
ответить
From admin Mon Apr 26 17:07:32 2021 UTC
Самый надёжный
Самый надёжный способ — появление у ваших программ сторонних пользователей. Ну то есть тогда уже можно точно считать, что всё окей. Второй вариант — пара-тройка законченных и работающих программ объёмом от 2000 строк каждая.
Оба этих критерия работают с некоторым "запасом", то есть, возможно, вот это вот "всё, готов" наступит намного раньше. Но вот фиг знает.
ответить
From Parthen Mon Apr 26 18:18:00 2021 UTC
Ну, сторонние
Ну, сторонние пользователи были, если считать мои программы на питоне за программы, а не скрипты для движка :). Но я их считать не буду, мне и так за тот говнокод стыдно.
Но вот кстати сейчас что-то странное творится. К программированию немного охладел, мне все больше начинает нравиться возиться с Линуксом. Если уж начну задачу решать оо да, интересно. Но вот заставить себя начать уже сложно.
ответить
From admin Mon Apr 26 19:57:53 2021 UTC
Я имел в виду
Я имел в виду код на Паскале, мы же вроде бы Паскаль обсуждаем, точнее, ту стадию самообучения, когда нужен Паскаль.
По поводу "охладения" — можете не волноваться, это проходит :-) просто, скорее всего, локальный эффект выгорания. Заставлять себя не надо, толку всё равно не будет.
ответить
From Parthen Tue Apr 27 08:35:00 2021 UTC
>Заставлять
>Заставлять себя не надо, толку всё равно не будет
Вот кстати да, только недавно это понял.
А вообще, книжек по программированию у нас нормальных, кроме ваших нет. А книжек по Линуксу? (Желательно вот прям по Линуксу, а не по всем *nix)
Хотелось бы пока его "посильнее" изучить
ответить
From admin Tue Apr 27 08:56:09 2021 UTC
А чёрт их знает
А чёрт их знает :( Книг море, а вот есть ли среди них нормальные — ...
Понимаете, лично я Linux изучал без книжек. Собственно, тогда и не было по нему книжек толком, публика слова такого не знала. А сейчас мне как-то уже и не слишком актуальны книжки по линуксу. Так что я просто не в курсе.
ответить
From Anonymous (unverified) Sat May 1 17:32:00 2021 UTC
А не хотели бы
А не хотели бы вы написать свой учебник по Линуксу? У меня вот как-то появилось желание изумить его вдоль поперек, прошерстив половину интернета, я всё-же ничего не нашёл. Множество книг где учат работать с Линуксом через GNome или KDE и очень мало книг где хоть что-то есть про командную строку.
ответить
From admin Wed May 12 07:46:39 2021 UTC
Честно говоря,
Честно говоря, не понимаю, каким должен быть такой учебник. Конкретика слишком разнится от одного дистрибутива к другому, увы.
ответить
From Anonymous (unverified) Thu May 13 21:07:00 2021 UTC
Множество книг
Множество книг где учат работать с Линуксом через GNome или KDE и очень мало книг где хоть что-то есть про командную строку.
Попробуйте поискать книги по работе не в Linux, а в Unix. Так проще будет отсеять всю эту попсу, "где учат работать с Линуксом через GNome или KDE".
ответить
From Anonymous (unverified) Sat May 15 21:31:00 2021 UTC
Согласен с
Согласен с автором предыдущего сообщения.
Когда я изучал FreeBSD, мне попалась, на мой взгляд, хорошая книга:
Майкл Лукас
FreeBSD. Подробное руководство, 2-е издание.
В ней графический режим даже не упоминается.
И хоть в данный момент у меня установлена Devuan2, а до этого пользовался Debian, я использую данное пособие, как
справочник, при решении возникающих проблем, поскольку программы в unix-системах одни и те же.
А вообще, как мне кажется, надо просто пользоваться любой unix OS и решать конкретные возникающие проблемы.
Еще один хороший ресурс, где можно найти ответы на множество вопросов - ArchWiki:
https://wiki.archlinux.org/title/Main_page_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9)
ответить
From Владислав (unverified) Fri May 14 15:49:00 2021 UTC
Можете
Можете посмотреть книгу The Linux Command Line
by William Shotts.
Мне лично понравилось то, что автор дает начальное представление о какой-нибудь теме и не перестает упоминать, что нужно читать man-страницы и постоянно практиковаться. Единственное, что хочется выделить, так это то, что он считает допустимым и демонстрирует в виде примеров использование комманд с программой sudo (например для монтирования flash-брелка), что, по советам Андрея Викторовича, НЕДОПУСТИМО. Если развернуто, то недопустимо в рабочей сессии повышать свои полномочия. Если эти моменты фильтровать, книга, на мой взгляд, может быть хорошим стартом для изучения коммандной строки.
Ссылка на книгу на сайте автора:
http://www.linuxcommand.org/tlcl.php
Книга также издана в России.
ответить
From Гоша (unverified) Mon Apr 26 06:05:00 2021 UTC
Простите, что влезаю
Уважаемые Парфён и Андрей Викторович, извините что так грубо врываюсь со своим оффтопиком в ваш разговор, но просто прочитав увидел своё имя и подумал не про меня ли идёт речь?
Парфён, раз уж тут ружьё с именем Гоша на стене оказалось, необходимо чтобы оно выстрелило к концу пьесы :) Я никого к С/С++ не призывал, но может просто я не тот Гоша?
ответить
From Parthen Mon Apr 26 18:12:00 2021 UTC
Некрасиво получилось
Я вообще про Гошу Дударя. О нем в программистком рутубе знает каждый. (На случай если Андрей Викторович замажет -- я про парня, создающего ролики языков за час)
Если вы -- он, то я на самом деле удивлен, что вы собственно здесь. И да, про С++ я говорил, когда Гоша пилил туторы по нему. Собственно его вины здесь особой и нет (разве что надо было предупредить, что это ролики не для изучения а для повторения.)
Мои извинения, если кого-то обидел :)
ответить
From Гоша (unverified) Tue Apr 27 17:33:00 2021 UTC
Очень даже красиво
Да какие тут извинения. Тут в любом случае независимо от того кто каким Гошей является, никаких обид ни у кого не могло быть.
Я в итоге не Дударь, но видимо хоть раз гляну тёзку с языком за час.
ответить
From admin Tue Apr 27 19:58:47 2021 UTC
Вы, прежде чем
Вы, прежде чем это глядеть, я не знаю, шапочку из фольги наденьте, что ли... мозги же испортятся.
ответить
From Anonymous (unverified) Tue Jun 8 19:14:00 2021 UTC
Ага-ага, он вам
Ага-ага, он вам расскажет, что "объект - это такая штучка, с которой мы вот так можем поставить точку и вот у нас тут как бы переменная, которая внутри у этого объекта".
ответить
From Trollkarl (unverified) Mon Apr 26 11:27:00 2021 UTC
то ли на Renpy/Python,
то ли на Renpy/Python, то ли пытаться вывести графику на Паскале
Позволю себе влезть — а что понимается под "графикой"? В смысле, возможностей паскалевского crt хватит, или нужен "честный" графический режим? Просто я сомневаюсь, что пользователи-виндузятники оценят такую графику, будь игра хоть трижды гениальна по сюжету и прочему. Конечно, необходимость поддержки под Виндой вам жизнь несколько осложняет — есть, например, вот такая простая как валенок сишная "библиотека" из 13 функций, позволяющая открыть окно в графическом режиме, закрасить пиксель, нарисовать линию и реагировать на нажатие клавиш и клики мышью в этом окне — на эти кости любое мясо в плане не сильно динамичной графики нарастить можно без проблем, для ВН уж точно. Привязать ее к Паскалю вполне возможно (по крайней мере, в случае fpc — прямо сейчас попробовал треугольники по экрану погонять), но ей нужны Иксы, коих в Винде, понятно, нет (хотя, вроде, в Cygwin есть Cygwin/X, можно посмотреть-погуглить). Если хотите игру с графикой, звуком и прочим - лучше, конечно, лезть в Си, там есть, например, швейцарский нож в виде кроссплатформенной библиотеки SDL. Если интересно, у нее есть привязки к Паскалю, хотя, конечно, документация вся с примерами на Си. Короче, насчет Cygwin надо посмотреть сперва — возможно, если удастся решить вопрос с иксами, стоит утянуть вышеупомянутую gfx.
ответить
From admin Mon Apr 26 17:08:52 2021 UTC
crt вообще не про
crt вообще не про графику
ответить
From Trollkarl (unverified) Mon Apr 26 17:43:00 2021 UTC
Согласен,
Согласен, формулировка не очень удачная вышла, кавычки бы "графике" не помешали. Из комментария не совсем понятно было, какого уровня графика нужна — автор указал, что освоил часть вашей книги про Паскаль, следовательно, с crt знаком. Раз вопрос был, в числе прочего, о возможности создания игры на Паскале, логично было предположить, что с иными средствами, кроме crt (а в книге в качестве инструмента для создания "игрообразных" программ разобран он), доступными в этом языке, не знаком.
ответить
From Anonymous (unverified) Mon Apr 26 15:33:00 2021 UTC
Но вот "свобода
Но вот "свобода модификации целостных художественных произведений" — это, IMHO, идея крайне неудачная.
А как же ремиксы? :)
Однажды, в студеную зимнюю пору,
Сижу за решёткой в темнице сырой.
Гляжу, поднимается медленно в гору
Вскормлённый в неволе орёл молодой.
...
ответить
From admin Mon Apr 26 17:16:59 2021 UTC
С пародиями
С пародиями особых проблем не наблюдается, во многих юрисдикциях этот момент даже специально оговорён (в российской вроде бы нет).
Так или иначе, пародию с оригиналом никто не спутает, так что целостности исходных произведений она не нарушает.
ответить
From Anonymous (unverified) Mon Apr 26 15:27:00 2021 UTC
С другой, ну вот
С другой, ну вот вроде бы для программ должна быть свобода модификации. Но, например, для книг — ну, я бы сказал, вот прямо-таки ни за что, иначе найдётся масса желающих, например, исправить непонравившийся финал;
И что в этом плохого? Если есть желающий исправить финал и есть желающий этот исправленный финал прочесть, то зачем же им мешать? Это уже будет проявлением информационного насилия.
Другое дело, что должен быть механизм, позволяющий читателю без проблем узнать, какая часть текста какому конкретному автору принадлежит. Иначе это будет обычным плагиатом. Но в остальном-то какие проблемы?
ответить
From admin Mon Apr 26 17:14:00 2021 UTC
Это будет
Это будет дичайшее зашумление, в котором невозможно будет отыскать оригинальные произведения, и никакие "механизмы, позволяющие что-то там узнать", тут не помогут — они будут либо сбоить то и дело, либо ими просто никто не станет пользоваться из-за полной бесполезности этого.
Если говорить об информационном насилии, то публикация таких вот "исправленных" произведений — это именно что информационное насилие, только уже над широкой публикой. А личные неимущественные права автора, к которым относится, в числе прочего, право на неприкосновенность произведения — как уже довольно давно показано, ничьих прав не нарушают и требование их соблюдения насилием не является.
Да, кстати, вы что на моём сайте забыли? Идеи, противоположные моим, вы имеете полное право высказывать, только не здесь.
ответить
☞ From Flau (unverified) Fri Apr 23 10:51:00 2021 UTC
Глобальная переменная ScreenWidth
ScreenWidth
из модуляcrt
является глобальной переменной, а не константой. Отсюда возникают некоторые трудности, поскольку её нельзя сравнивать со своими переменными.Например, мне нужно проверить является ли текущая позиция последней, т.е. равна ли она значению
ScreenWidth
:Компилятор ругается на 8-ю строчку и выдает
Error: Constant Expression expected
. Я, конечно, могу завести собственную константу, но она будет работать только для окна эмулятора терминала определенной ширины, которую еще предварительно нужно узнать. Но такой вариант меня не очень устраивает.ответить
From admin Fri Apr 23 13:57:00 2021 UTC
Да-с... тяжело
Да-с... тяжело как-то.
Ну, во-первых, и в-главных: а как это, по-вашему, ScreenWidth может быть константой, если вы можете терминальное окошко сделать любого размера?
Второй момент: сравнивать ScreenWidth, разумеется, можно с чем угодно, лишь бы это "что угодно" было целым. Иной вопрос, что в операторе
case
можно использовать только константы времени компиляции. Следовательно, здесь просто не надо использоватьcase
, он не для этого.Ну и последнее. Чтобы достичь того, чего вы тут хотите достичь, никакой цикл не нужен. И никакой case. Если вы хотя бы для себя сформулируете, чего конкретно хотите добиться, возможно, вам станет проще.
Да, кстати, а что вы сказать-то хотели своим комментарием? Что модуль crt должен быть устроен как-то иначе? Ну так с этим не ко мне, с этим к авторам Free Pascal.
ответить
From Flau (unverified) Fri Apr 23 15:55:00 2021 UTC
3 случая обработки
Оператор выбора я использую, потому что у меня есть еще третий случай, который я хотел показать своим комментарием, но оставил ради экономии места (но не заметил, что вставил не совсем туда). Более полный код выглядит так:
Я реализую обычный клеточный автомат. Каждая клетка нового поколения образуется из состояний клеток предыдущего поколения. Причем, берутся состояния клеток, стоящих на предыдущей, текущей и следующей позициях прошлого поколения по отношению к позиции нового поколения. Поэтому при обработке первой клетки нужно также получить состояние последней, а при обработке последней -- состояние первой. Получается некий эффект кольца.
ответить
From admin Fri Apr 23 17:03:00 2021 UTC
Рискну
Рискну предложить сделать вот так:
Впрочем, можно и так, как у вас, только не с case, а с обычными if'ами. Например:
Возможны, естественно, и другие варианты.
ответить
☞ From hey4nm Fri Apr 23 08:38:00 2021 UTC
ld компоновщик
сейчас читаю 3 часть книги,а конкретно: 3.1.4
Дочитав до момента с компоновщиком у меня возникли трудности, а именно мой дистрибутив(Manjaro) не воспринимает команду в стоке. Дальнейшие мои действия состояли в попытках установить утилиту, однако в официальных репозиториях её не оказалось(во всяком случае по прямым запросам найти не смог).
Поискав в интернете я нашёл лишь это:
https://www.gnu.org/software/binutils/
Но использовать Линукс я начал лишь в начале главы про паскаль(~3 месяца назад), и единственное на что меня хватило - распаковать архив. Впрочем, я даже не уверен что это то что мне нужно.
Поэтому и хотел спросить откуда, и как установить "ld", или его аналоги. Заранее благодарю за ответ.
ответить
From admin Fri Apr 23 09:25:44 2021 UTC
Вообще это всё
Вообще это всё крайне странно, тот же fpc, насколько я понимаю, использует ld для компоновки. Да и nasm, если его поставить, должен был binutils притащить с собой.
Так или иначе, ld действительно входит в состав binutils; ставить binutils из исходников смысла нет, тем более что он и не соберётся без того же ld. Разумеется, этот пакет есть в репозиториях manjaro: https://discover.manjaro.org/packages/binutils
Могу посоветовать попробовать
pacman -S binutils
Если это не поможет — тогда я уже не знаю, надо смотреть, но как тут посмотришь.ответить
From hey4nm Fri Apr 23 10:21:00 2021 UTC
Спасибо, вышло
Спасибо большое за ответ, команда "ld" работает исправно.
Про fpc, вышло что между главой про Паскаль и Ассемблер я сломал grub - пришлось переустанавливать дистрибутив, и по скольку связывать жизнь с Паскалем я не собираюсь(до вашей книги уже успел изучить c#, поэтому есть желание написать что то, предпочитаю его), fpc уже не устанавливал
ответить
From admin Fri Apr 23 14:03:54 2021 UTC
C#, говорите? Ну
C#, говорите? Ну вообще реализации C# под Linux есть, но они тоже binutils с собой бы притащили. Так что остаётся только заподозрить, что вы так под форточками и сидите.
Не, ну дело хозяйское, конечно, но мои книжки вам тогда зачем? Толку не будет, я об этом прямо в предисловиях предупреждаю.
ответить
From hey4nm Fri Apr 23 14:23:00 2021 UTC
Я сейчас в
Я сейчас в процессе перехода на Линукс, да и с самого c# на время слажу, в пользу c/c++(не без вашей помощи, за что спасибо), а изучать как использовать шарп на новой для меня ОС, когда не собираешься его использовать в принципе, затея немного странная
ответить
From admin Fri Apr 23 14:54:16 2021 UTC
Для C++ не
Для C++ не рановато? Впрочем, любой компилятор хоть C, хоть C++ под линукс тоже притащил бы за собой binutils, они по-другому не умеют.
Изучать C# под Linux действительно смысле нет, а вот в чём смысл точно есть — это слезть с форточек.
ответить
From hey4nm Fri Apr 23 15:57:00 2021 UTC
Конечно
Конечно рановато, не правильно выразился.
Конечной целью является c/c++, собственно, поэтому и начал читать ваши книги. Если конкретнее, на ютьюбе есть канал "АйТиБорода", он берёт интервью у разного рода программистов,в одном из таких роликов, про c++
(https://www.youtube.com/watch?v=QQZmDWnV618)
гость и порекомедовал ваши книги.
А писать я буду(за исключением паскаля, я конечно попробовал написать что-то сложнее условного калькулятора, очень не понравилось) на тех языках, которые изучают в разделе книги, который сейчас читаю
А с форточек я почти слез, на самом c# практически не писал.
Только с играми проблемы бывают, многие отсутствуют(хотя критичным назвать это трудно, ведь в таком случае использование форточек сводится к запуску 1-2 игр)
ответить
From admin Fri Apr 23 17:06:26 2021 UTC
Между прочим,
Между прочим, если на Паскале не понравилось — в большинстве случаев это значит, что мозги уже испорчены. Увы. Не так чтоб прямо безнадёжно, но путь к исправлению идёт через тот же Паскаль.
ответить
From hey4nm Fri Apr 23 17:33:00 2021 UTC
Не то что бы,
Не то что бы, скорее не желание разбираться в некоторых его особенностях(в каких не вспомню, а исходники утеряны)
А сейчас уже намного более занимательная глава про ассемблер(Паскаль в базисе схож с c#, и изучать его соответственно не так интересно, чего уже не скажешь про ассемблер)
ответить
From admin Fri Apr 23 18:20:54 2021 UTC
На асме писать,
На асме писать, несомненно, прикольно, используйте возможность на всю катушку — вряд ли когда доведётся делать это в практических задачах, а опыт этот чрезвычайно полезен.
Но проблема в другом. Паскаль нужен, во-первых, чтобы отбить желание громоздить в программе побочные эффекты, и, во-вторых, чтобы освоить указатели. С указателями вы после асма, возможно, справитесь и так (хотя не факт); а вот полное отсутствие тормозов с применением побочных эффектов, известное также как "сишность головного мозга", боюсь, в итоге ваш мозг таки сожрёт.
ответить
From hey4nm Sat Apr 24 11:04:00 2021 UTC
Постараюсь
Постараюсь использовать nasm как смогу.
Указатели ещё на Паскале меня увлекли, и всё в той же главе их осилил.
Побочные эффекты в функциях перестал писать, ещё в начале изучения и написания кода на c#, товарищ хороший попался, объяснил почему так делать плохая идея(делал он это с позиции полиморфизма, с тех пор и пытаюсь придерживаться принципа: одна функция -одна задача).
ответить
From admin Sat Apr 24 11:33:00 2021 UTC
Вы не поверите,
Вы не поверите, но принцип "одна функция — одна задача" относится к правилам декомпозиции и — пабабамс! — к побочным эффектам не имеет вообще никакого отношения. Вот вообще, совсем, ну то есть вот никакого. Это из другой сказки.
Ну то есть это очень важный принцип, конечно, а ещё есть такое "правило одной фразы" (ответ на вопрос, что делает эта подпрограмма, должен состоять из одной простой фразы, причём из этой фразы должно быть в первом приближении понятно, зачем нужен каждый из параметров), и это тоже важно. Просто это не о том.
ответить
From hey4nm Sat Apr 24 21:18:00 2021 UTC
Для меня
Для меня побочный эффект выглядит как выход из "одной задачи",возможно из за моего не слишком большого опыта.
Побочные эффекты использовать не буду, по возможности конечно.
Спасибо за ответы
ответить
From admin Sun Apr 25 11:20:32 2021 UTC
Побочный
Побочный эффект (англ. side effect) — это строгий термин, тут не может быть никаких "для меня", "выглядит" и прочего в таком духе.
В первом томе, причём в части II, которую вы якобы уже прошли, побочным эффектам посвящён отдельный параграф 2.3.6, и, кроме того, они неоднократно упоминаются в дальнейшем тексте (см. пример на стр. 323 и т.д.)
И недавно совсем этот вопрос обсуждался здесь в гостевой, вот эта ниточка: http://www.stolyarov.info/guestbook/archive/4#comment-3918
ответить
From hey4nm Mon Apr 26 19:54:00 2021 UTC
Вторую часть я
Вторую часть я действительно прочёл,
оттуда впервые и услышал про побочные эффекты(не слышал само определение, с побочными эффектами естественно имел дело)
Поразмыслив ещё пару дней, я понял, что написал глупость, за что мне несколько стыдно
ответить
From Oliver (unverified) Sat Apr 24 08:26:00 2021 UTC
Знаете, мне
Знаете, мне тоже ВУЗе пихали C#: все, что из того получилось, так это то, что у меня пропало было желание изучать программирование. Спасибо Андрею Викоторичу, благодоря которому у меня это желание вернулось и урепилось!
Я - не преподаватель, и нет у меня пока что того уровня профессионализма как у программиста, однако на подсознательном уровне я убежден, что Вам стоит забыть (по-крайней мере на время) C# как дурной сон, и изучать программирование по книге уважаемого преподавателя так, словно Вы вообще первый раз столкнулись с программированием! Уверен, от этого будет значительно больше толка, чем от того, что Вы постоянно будете оглядываться назад на C#, сравнивая материал Андрея Викторовича с тем, что Вы изучали по C#
ответить
☞ From Anonymous (unverified) Thu Apr 22 16:10:00 2021 UTC
Разыменование
Здравствуйте. Читаю про указатели. Возник вопрос. Операция всегда вычисляет значение. Когда производится операция разыменования с целью получения значения результат вычисления это значение из ячейки памяти. Какое значение тогда вычисляется при разыменовании когда мы, например, присваиваем что то по адресу в указателе? Заранее спасибо за ответ.
ответить
From admin Thu Apr 22 18:06:59 2021 UTC
> Операция
> Операция всегда вычисляет значение.
Это вам кто сказал? У операции есть значение, это верно, но далеко не всегда оно вычисляется — тут дело даже не в разыменовании, есть вот такая операция «приведение типа выражения», так она в подавляющем большинстве случаев ничего не вычисляет; есть случаи, когда вычисляет, но они редки, а обычно просто то, что было (буквально те же биты) продолжают использоваться как выражение другого типа.
> Какое значение тогда вычисляется при разыменовании когда мы, например, присваиваем что то по адресу в указателе?
Никакое. Если говорить о Паскале и чистом Си, тут даже о преобразовании типа речи не идёт, поскольку "леводопустимость" в этих языках не отражается в системе типов. В Си++ происходит (с формальной точки зрения) преобразование адреса в ссылку (если что, тут тоже вычислять нечего от слова "совсем", но тут хоть что-то происходит, и можно сказать, что именно).
ответить
From Anonymous (unverified) Tue May 18 04:06:00 2021 UTC
Эх не понял
Пытался я понять этот момент и так и не понял. Искал в интернете, потом случайно заглянул в том про Си. Там есть тема про L-value. Я из описания понял, что в случае нахождения выражения подобного *ptrvec[5] слева от присваивания оно вычисляется до адреса по которому можно, что то присвоить. Таким образом получается вычисляемым значением этого выражения будет адрес? Может я плохо отличаю операции и выражения. Разыменование(которое не вычисляется) здесь часть выражения которое вычисляется?. На просторах прочитал, что операция это то же, что и функция это верно?
ответить
From admin Tue May 18 17:19:20 2021 UTC
> Таким образом
> Таким образом получается вычисляемым значением этого выражения будет адрес?
На уровне машинного кода — да, но от нас (программстов) компилятор сей факт скрывает с упорством, достойным лучшего применения.
> Разыменование(которое не вычисляется) здесь часть выражения которое вычисляется?
Ну да, и что? В полученном коде не будет ни одной команды, которая "соответствовала бы" операции разыменования.
> На просторах прочитал, что операция это то же, что и функция это верно?
В общем случае — нет.
ответить
☞ From Parthen Tue Apr 20 10:12:00 2021 UTC
Как вам такой вариант?
Есть одна программа - Aseprite. Пиксель-арт редактор, довольно популярный в узких кругах.
И у них очень интересная схема монетизации идет.
Сначала они делают новую версию, ее продают. Потом, когда сделали еще более новую версию, они у старой открывают исходники. И так каждый раз.
Но да, если хочешь бесплатно - то собирай сам из исходников. Если не умеешь, и хочешь новейшую версию - можешь купить.
Как вам такой вариант?
ответить
From admin Tue Apr 20 11:07:00 2021 UTC
Надо
Надо посмотреть их лицензию, но вообще в целом копирастия как копирастия. Я лицензии не видел, но практически уверен, что там нельзя взять исходники старой версии и сделать свой форк, например. Или взять исходники, откомпилировать и выложить в таком виде на своём сайте.
UPD: Посмотрел. Старые версии там под GPL, но, похоже, их стратегию вы поняли неверно. Вот абзац из FAQ:
Aseprite started being open source since its very beginning in 2001, and we were happy with that until August 2016. Now you can still download its source code, compile it, and use it for your personal purposes. You can make commercial art/assets with it too. The only restriction in Aseprite EULA is that you cannot redistribute Aseprite to third parties.
Ну то есть всё, фенита ля комедия, раньше было всё в порядке, а теперь оно копирастическое.
Как я к этому отношусь? Как и к любой копирастии: давить без сожаления.
ответить
From Parthen Tue Apr 20 13:27:00 2021 UTC
Ну, там пока
Ну, там пока только 2 версии: 1.0 и 2.0. Полагаю, что когда выпустят третью, вторую заопенсорсят.
Я не силен в английском и понял так: делай с ней что хочешь, главное другим не давай, то что сделал.
ответить
From admin Tue Apr 20 13:39:28 2021 UTC
> Полагаю, что
> Полагаю, что когда выпустят третью, вторую заопенсорсят.
Вы это откуда взяли? Там сказано прямо противоположное: до 2016 года нас устраивал opensource, а теперь выкусите.
> главное другим не давай
Вот-вот. Мне вот что непонятно, вы эту копирастическую мразоту оправдываете? Напрасно.
ответить
From Parthen Tue Apr 20 13:58:00 2021 UTC
Не оправдываю.
Не оправдываю. Просто рушится замок представлений о любимой программе.
Эхх :(
ответить
☞ From Anonymous (unverified) Thu Apr 15 07:48:00 2021 UTC
Здравствуйте!
Здравствуйте! Ещё в прошлом издании читал, что системные администраторы могут ограничивать ресурсы, выделяемые системой каждому процессу, и меня это заинтересовало. Я искал в интернете, но всё, что я нашёл — это cgroups, но он не входит в стандартные поставки ПО дистрибутивов. Вы про него писали или имели в виду какое-то другое средство контроля?
Вообще, было бы интересно почитать про ваш опыт сисадминства, может сделаете как-нибудь заметку о своём опыте или историями о работе? :-)
ответить
From admin Thu Apr 15 09:16:40 2021 UTC
Нет, я не имел в
Нет, я не имел в виду cgroups. Что я в действительности имел в виду, подробно описано во втором томе, пар. 5.3.12.
Писать мемуары в мои планы не входило.
ответить
☞ From Anonymous (unverified) Thu Apr 15 05:39:00 2021 UTC
Батька
Батька Торвальдс оказался все-таки не из этих...
https://www.opennet.ru/opennews/art.shtml?num=54970
ответить
From admin Thu Apr 15 09:12:19 2021 UTC
Примечательно,
Примечательно, что в роли главной мрази опять этот долбаный Гугл.
ответить
☞ From Владислав (unverified) Wed Apr 14 17:04:00 2021 UTC
Times New Roman в LaTeX
В LateX по-умолчанию используется шрифт Computer Modern, созданный Кнутом, но в учебных заведениях (в моем случае, в колледже) требуют для оформления более-менее серьезных работ, в том числе квалификационных, использовать именно Times New Roman.
Нормального решения я так и не нашел, пачкать руки об Microsoft Word я не хочу, с LibreOffice Writer я обращаться не умею. Может кто-нибудь подсказать, как можно поставить в LaTeX данный шрифт, если это вобще возможно? Буду очень благодарен.
ответить
From admin Wed Apr 14 17:54:51 2021 UTC
Вот интересно,
Вот интересно, у нас в МГУ ничего подобного ни от кого не требуют, а в вашем колледже — требуют. Вы уверены, что вам нужен такой колледж?
ответить
From Anonymous (unverified) Wed Apr 14 19:36:00 2021 UTC
Здесь поддержу
Здесь поддержу тредстартера - требуют, причем не в колледже, а на факультете федерального универа, прям "русским по белому" в методичке по оформлению квалификационных работ. Упрощает жизнь то, что под TNR вполне успешно косит Liberation Serif, идущий в комплекте с LibreOffice.
ответить
From admin Thu Apr 15 09:09:45 2021 UTC
Отправьте
Отправьте ксерокопию нужных страниц методички в Рособрнадзор с соответствующим комментарием вроде "безосновательно навязывают студентам использование коммерческого программного обеспечения, изготовленного американскими компаниями" — чиновники такой язык понимают очень неплохо.
ответить
From Anonymous (unverified) Thu Apr 15 04:32:00 2021 UTC
А вы думаете
А вы думаете кто-то учится за Москвой/Петербургом ради образования?)
ответить
From admin Thu Apr 15 09:10:23 2021 UTC
Встречный
Встречный вопрос — а вы думаете, в Москве и Питере ситуация сильно отличается?
ответить
From Anonymous (unverified) Sun Apr 18 07:35:00 2021 UTC
Всё же ответа на вопрос пока нет
Добрый день!
Поддержу автора вопроса. Принципиальность - это конечно прекрасно и писать можно посылать хоть в спортлото, но на поставленный вопрос ответа, что характерно, не оказалось.
Автор, может тебе будет полезна эта статья, исключительно про варианты использования шрифтов в LaTex
https://lisakov.com/blog/latex-fonts/
ответить
From admin Sun Apr 18 09:43:44 2021 UTC
Дело в данном
Дело в данном случае не в принципиальности. Я просто не изучал этот вопрос, мне шрифты из ворда никогда не казались привлекательными.
ответить
From Oliver (unverified) Mon Apr 19 02:33:00 2021 UTC
Дело сдесь не в
Дело сдесь не в принципиальности, с моей точки зрения, а в том, что никто ничего вот такое требовать не в праве, по моему сугубо личному убеждению. Ну вот то есть требовать использовать платный продукт никто не имеет право, а сие требование есть ничто иное как намек на использование продукта одной скромной компании, которая через учебные заведения в том числе пробивает использование своей продукции. Ну вот если бы было требование использовать что-то из мира свободного ПО, ну вот тогда - иное дело, а так... Они могут рекомендовать, а не требовать.
ответить
☞ From Parthen Sat Apr 10 19:24:00 2021 UTC
Как сделать mutt как у вас?
Я тут занялся созданием нормального постоянного почтового ящика, решил заодно скачать себе клиент на компьютер. В интернете посоветовали mutt, да и вы вроде как им пользуетесь.
И вот в чем проблема: у меня mutt в терминале весь в синей гамме (эмулятор sakura-terminal). Мне этот цвет крайне режет глаза.
Если в голой консоли открыть, то уже лучше: там синеньким подсвечивается только верхняя и нижние строчки.
А у вас видео про спам из мерии Москвы был скриншот как раз mutt. Как выглядит у вас мне крайне нравится: черно-белое, не режущее глаза контрастное выделение.
В общем, как сделать как у вас? Это, я так понимаю, зависит от эмулятора терминала, тогда какой он у вас?
ответить
From admin Sat Apr 10 20:13:06 2021 UTC
У меня обычный
У меня обычный xterm, как ни странно. Что касается цветных извращений, то вроде бы они настраиваются в /etc/Muttrc.d/* — но если сделать свой .muttrc в домашней директории, то его можно начать со слова reset, и тогда системные настройки действовать не будут. А по умолчанию вроде он и так чёрно-белый.
Вообще, честно говоря, не помню, как там всё устроено, я mutt для себя лет 15 назад настроил и с тех пор не трогал.
ответить
☞ From Anonymous (unverified) Sat Apr 10 12:21:00 2021 UTC
Будет
Будет ли хорошим выбором эмулятор терминала xfce4terminal или предпочтительнее Xterm? Xterm мне больше нравится, а вот как добавить новую вкладку, я не умею? В xfce4terminal это делается нажатием клавиш Ctrl+Shift+t.
ответить
From admin Sat Apr 10 14:45:44 2021 UTC
В самом xterm'е
В самом xterm'е нет вкладок и никогда не было, эта функциональность для эмулятора терминала избыточна. Во-первых, самих терминалов можно открыть сколько угодно, и в общем случае это намного более удобно, ведь их можно расположить так, как удобно здесь и сейчас — например, чтобы видеть их сразу несколько. Во-вторых, если зачем-то хочется несколько сеансов в одном окошке, есть ещё программа screen (кстати, очень рекомендую её освоить, при удалённом доступе к серверам она просто незаменима).
ответить
From Parthen Sat Apr 10 16:59:00 2021 UTC
Вот между прочим
Предложу развлечение для отъявленных мазохистов.
Удалите/отключите у себя иксы. И попробуйте так недельку.
Могу вам гарантировать - в консоли вы вскоре будете чувствовать себя как рыба в воде.
Столько плюсов: запустить такую вещь можно вообще без дискретной видеокарты на старейшем процессоре, скорость сильно повысится, разберетесь как вообще можно ВСЕ делать в терминале.
А то у меня как-то в начале становления линуксоидом иксы повисли и я "все". Стартануть не получается, бекапов по классике не делал.
Но опять же, это для мазохистов.
ответить
From admin Sat Apr 10 20:17:27 2021 UTC
А чего для
А чего для мазохистов-то? Я в консоли сидел года до 2005го, то есть startx говорил, только когда припрёт. Потом уЁбдизайнеры совсем сломали веб, стало невозможно жить без графического браузера, и постепенно, увы, перешёл на постоянную работу в иксах.
ответить
From Parthen Sun Apr 11 05:35:00 2021 UTC
Ну вот
Ну вот представьте человек с детства больше 15 лет сидел на Винде. И тут ему такое дать. Это ж ломка натуральная будет.
ответить
From admin Mon Apr 12 21:15:16 2021 UTC
Так когда ломка
Так когда ломка — это не мазохисты, это наркоманы :-)
ответить
From Anonymous (unverified) Sun Apr 11 05:56:00 2021 UTC
Все хорошо, но
Все хорошо, но только как читать pdf и djvu файлы без Х. И музыку не послушать и видео не посмотреть.
ответить
From admin Mon Apr 12 21:24:54 2021 UTC
Для музыки-то
Для музыки-то зачем графика? Впрочем, графика и иксы — это не одно и то же, без иксов при известной сноровке можно всё перечисленное, framebuffer никто не отменял.
ответить
From Anonymous (unverified) Tue Apr 13 01:20:00 2021 UTC
без Х. И музыку
без Х. И музыку не послушать
Хех. У меня на кухне долгое время стоял комп не только без иксов, но и вообще без монитора. Как раз чтобы слушать музыку. Этакий самопальный интернет-радиоприёмник. Вместо полноценной клавиатуры я прицепил к нему USB-нумпад, на котором нужно было набирать трёхзначный индекс нужной "радиостанции" (распечатка со списком станций висела рядом на холодильнике). Ну и управлялось всё это несложной самописной программой.
ответить
From Anonymous (unverified) Sat Apr 10 20:01:00 2021 UTC
За программу
За программу screen большое спасибо! И не пришлось менять терминал.
ответить
From Anonymous (unverified) Thu Apr 22 13:31:00 2021 UTC
Есть еще
Есть еще программа tmux, которая тот же screen но для меня чуть более удобная. Раньше тоже использовал screen.
ответить
☞ From Parthen Fri Apr 9 15:17:00 2021 UTC
Зачет по информатике
Готовлюсь к зачету по информатике. "Обработка строк и символов в Паскале". Среди прочих такие вопросы:
1. Что такое символьная строка?
2. Почему неудобно заменять строки массивами символов?
(весь зачет кидать не буду: все остальное мне вроде понятно, да и сам зачет в ВК в формате docx)
Так вот, разве символьная строка не является массивом символов?
ответить
From admin Fri Apr 9 19:50:39 2021 UTC
Формально
Формально является, то есть да, это массив, и если индексирование применить, то каждый элемент будет типа char. Но обрабатываются строки совершенно не так, как массивы символов. Я бы сказал, что у строк намного больше своих собственных свойств, чем таких, которые ими унаследованы от простых массивов.
Подробности см. в параграфах 2.6.9, 2.6.10 и 2.6.11. Ну да, в первом томе, естественно.
ответить
☞ From Anonymous (unverified) Fri Apr 9 02:13:00 2021 UTC
>FreeBSD, где
>FreeBSD, где пакетного менеджера с автоматическим отслеживанием зависимостей просто нет.
Я, наверное, чего-то не понимаю. А в чём проявляется отсутствие пакетного менеджера с автоматическим отслеживанием зависимостей?
ответить
From admin Fri Apr 9 08:04:21 2021 UTC
Проявляется?
Проявляется? Ну, например, в том, что когда вы хотите установить в системе просмотрщик PDF-файлов, вам никто не говорит, что надо поставить ещё 165 пакетов, в число которых входит, например, программа для разбиения жёсткого диска на разделы (реальный случай, между прочим; описан в третьем томе, параграф 12.5.5).
ответить
From Anonymous (unverified) Fri Apr 9 14:21:00 2021 UTC
Вы
Вы действительно правы. Предлагают установить только caja, dconf, enchant2, mate-desktop. Общей сложностью всего на 158МБ. Эти зависимости не автоматически отслеживаются?
ответить
From admin Fri Apr 9 14:52:00 2021 UTC
Автоматически,
Автоматически, конечно. Похоже, мои сведения о FreeBSD несколько устарели — когда я с этой системой работал, pkg там ещё не было.
Пожалуй, вопрос тогда, на который беглое знакомство с материалом мне ответа не дало. Насколько этот pkg стоит рассматривать как часть FreeBSD? Вот port collection — это однозначно часть системы, тут никуда не денешься; pkg, насколько я понимаю, ставится в /usr/local, как и другие "дополнения", то есть это одна из программ, работающих на FreeBSD — но далеко не все такие программы являются частями FreeBSD. Самостоятельно ответить на этот вопрос я могу разве что поставив FreeBSD и попытавшись с ней поработать, но времени у меня на это нет вот просто категорически.
ответить
From Anonymous (unverified) Sat Apr 10 04:09:00 2021 UTC
```% which
```
% which pkg
/usr/sbin/pkg
```
Насколько я могу ответить — это часть системы. Ports collection можно опционально не выбрать при установке, pkg — не выбирать нельзя. Устанавливается везде как jails и bhyve. Я не видел, чтобы pkg кто-то не использовал или агитировал против него.
Вот в NetBSD pkgsrc изначально не стоит, его предлагают поставить самостоятельно.
Наверное смогут ответить полноценние.
ответить
From admin Sat Apr 10 14:42:34 2021 UTC
Понятно,
Понятно, спасибо. Да, если не в local, то это уже часть системы, без вариантов. Просто, видимо, те материалы, которые я вчера нашёл в режиме "быстро-быстро", тоже уже успели устареть.
В общем, поправить надо будет это место в книжке.
ответить
From Anonymous (unverified) Sun Apr 11 01:30:00 2021 UTC
В копилку
В копилку фактов: в современной OpenBSD пакетная система тоже является частью базовой системы, если что.
ответить
☞ From Parthen Thu Apr 8 18:22:00 2021 UTC
Различия Freepascal и PascalABC.net
Внезапно осознал, что на ЕГЭ, который мне предстоит сдавать, скорее всего не будет ни Линукса, ни FreePascal. В связи с этим вопрос тем, кто работал с PascalABC.net -- будут ли там нормально компилироваться программы с синтаксисом FreePascal?
ответить
From admin Thu Apr 8 18:39:06 2021 UTC
А что, на ЕГЭ
А что, на ЕГЭ теперь ещё и программировать на компьютерах надо? Слон сдох.
ответить
From Parthen Thu Apr 8 19:04:00 2021 UTC
Давно уже
Только вот в 2021 вводят кЕГЭ. Теперь оно будет ТОЛЬКО на компьютере. Сайтик на js сделали, загружаешь и скачиваешь с него и на него файлы. Учителей заставляют готовить усиленно, чтобы ученики могли вдобавок работать с файлами, строками как с массивами (раньше такого не было).
И вот между прочим небольшой оффтопик: код на бумажке писать это норма или нонсенс? Вы у студентов как зачеты проводите?
И да, объясните пожалуйста шутку про слона, а то такое чувство, что поисковик меня дизинформируте :)
ответить
From admin Fri Apr 9 07:59:23 2021 UTC
Зачёты и
Зачёты и контрольные я провожу на машинах, то есть да, программирование на бумажке как вид деятельности мне совершенно не симпатичен — кроме прочего, ЭТО проверять крайне тяжело.
Про ЕГЭ посмотрел, там ахтунг какой-то с языками. Но есть и хорошая новость: от программы, которую напишете вы сами, передавать нужно только ответ. Ну а те задачи, в которых дан в том или ином виде код на нескольких языках, как правило, не зависят от особенностей диалекта, да и вообще там для человека, умеющего программировать, проблемы разобраться обычно нет.
ответить
From Anonymous (unverified) Fri Apr 9 21:38:00 2021 UTC
работать с
работать с файлами, строками как с массивами
Помню, в 11 классе (эх, уж 10 лет прошло) послали меня на олимпиаду по информатике (правда, из информатики на уроках у нас была подготовка презентаций да игры в "Звездного юнгу" - кто не в теме, был на Винде XP такой стандартный пинбол, ну да не суть). Вот где-то за две недели до того сказали: "Пойдешь!", была найдена на просторах Тырнета какая-то книженция по Паскалю (ага, по Turbo, с синим окошком) и все заверте... И до глубины души я, помнится, был поражен вот этим вот моментом с файлами. Во всех заданиях входные данные нужно было читать из файла, это было отдельно оговорено. Но когда организатор заглянул через плечо и увидел вот эти вот assign, reset и т.д., у него в глазах был ужас:
- Это чо?
- Ну как, файл же тут читать надо, написано же.
- Убирай это все, пиши read - проверять будем, набьем с клавиатуры!
Вот в тот самый момент я, как та девочка из анекдота, "впервые понял, что взрослые тоже бывают тупорылыми..."
Мне-то, повторюсь, сравнивать было не с чем, я думал, когда изучают Паскаль, это рассказывают - как без файлов-то? А оказалось, что только спустя 10 лет кто-то там додумался. Вообще, можете в меня чем-нибудь кинуть, но, имхо, это первый более-менее здравый шаг - включение хоть какой-то практики в эти "тестилки".
ответить
From Anonymous (unverified) Fri Apr 9 05:58:00 2021 UTC
Сдавал информатику в 2012
На ЕГЭ в практической части уже давно предусмотрено написание программ. На бумажке.... как сочинение по русскому языку, только пишется блок-схема решения и программа на одном из приведённых языков.
У нас кроме Паскаля (в ЕГЭ не оговаривается какой именно Паскаль), были ещё варианты написать на Си, псевдокоде и вроде бы Си++. И уже тогда казалось что это какие-то лютые школы где выпускники на Си.
Сейчас Гугл показывает что Си++ заменён на Питон.
ответить
From admin Fri Apr 9 08:01:16 2021 UTC
C++ раньше не
C++ раньше не было, были бейсик, ШАЯ, Паскль и чистый Си. Сейчас вместо бейсика питон (sapienti sat, так их растак), а чистый Си заменили на Си++ (вроде и смешно, а вроде и плакать хочется).
ответить
From Anonymous (unverified) Fri Apr 9 21:10:00 2021 UTC
чистый Си
чистый Си заменили на Си++
Особенно веселит, как сформулирована причина замены - дело-то, оказывается, в большей актуальности и востребованности Си++. И пофиг, что от Си++ в тех примерах только cin и cout...
ответить
From admin Fri Apr 9 21:18:45 2021 UTC
Да уж больше
Да уж больше десяти лет известно, что дело на самом деле в неосиляторстве этих несчастных "педагогов", которые и сами-то не могут понять, что за зверь указатель, не то что ученикам рассказать.
А то, что работа на C++ без понимания основ превращается в заклинания, спеллбуки, переписывание древних свитков и прочее вот это вот — этого все эти моральные уроды в упор не видят, чо.
ответить
From Parthen Fri Apr 9 09:42:00 2021 UTC
>в ЕГЭ не
>в ЕГЭ не оговаривается какой именно Паскаль
Только вот я очень неуверен, что проверяющие осилили Линукс.
> Сейчас Гугл показывает что Си++ заменён на Питон.
Таки нет. Мне прислала учитель пробник, там С++, Паскаль, Питон и алгоритмический язык.
Basic до этого года был, но исключили.
ответить
From admin Fri Apr 9 14:10:00 2021 UTC
А не пофигу, что
А не пофигу, что там проверяющие осилили? Вам же не нужно посылать программу на проверку, нужно отправить только ответ.
ответить
From Parthen Fri Apr 9 15:02:00 2021 UTC
А вот это для
А вот это для меня новость. Мне с 8 класса твердили, что проверяющие будут проверять программы. Да и на тайной имитации ОГЭ так и было.
Ну коли такое дело -- так вообще все отлично. Еще бы как-то поставить себе Линукс на комп и вообще проблем не будет.
ответить
From admin Fri Apr 9 20:04:59 2021 UTC
Так вы линукс
Так вы линукс до сих пор не поставили? А может, ну его нафиг, это программирование? :) В мире есть много других хороших профессий.
ответить
From Parthen Sat Apr 10 04:10:00 2021 UTC
Вы меня не так поняли :)
Линукс у меня стоял уже как полгода до того, как я вообще ваши книжки нашел :)
Я про то, чтобы на ЕГЭ себе его поставить. Я на пробнике ОГЭ смог уговорить проверяющих разрешить мне скачать и установить puppy linux. (Самый маленький по весу дистрибутив, что я нашел)
ответить
From admin Sat Apr 10 14:50:10 2021 UTC
Э, да, пардон,
Э, да, пардон, что-то я о вас слишком плохо подумал.
Не, ну в крайнем случае отнеситесь к этому как к досадной, но не слишком серьёзной помехе. Ничего сильно сложного писать на ЕГЭ вам не потребуется, и, опять же, четыре часа — и все свободны. Не слишком приятно, но пережить можно.
ответить
From Parthen Sat Apr 10 16:51:00 2021 UTC
Может и у меня
Может и у меня просто крыша едет. Обстановка вокруг ЕГЭ страшненькая, вся жизнь зависит от клочка бумаги и 4 часов.
Линукс для меня уже не помеха. Я натурально не представляю, как можно на долгосрочной основе работать под чем-то другим. Неудобно крайне, без тайлинга и терминала.
ответить
From admin Sat Apr 10 16:53:23 2021 UTC
Что линукс не
Что линукс не помеха — это я не сомневаюсь :-) Помехой может стать винда с паскалем-абц или что там ещё вам предложат на ЕГЭ.
ответить
From Anonymous (unverified) Fri Apr 9 11:52:00 2021 UTC
PascalABC.NET есть
PascalABC.NET есть под Линукс, работает через mono, а не дот-нет. Соответственно, байт-компилилованные "экзешники" нужно запускать через:
mono program.exe
Если не использовать ничего Windows-специфичного (например GUI) или наоборот, FreePascal-специфичного (вроде Graph/CRT), то должно работать точно также.
Единственный тонкий момент - там точно не поддерживаются обозначения некоторых специфичных типов, вроде longinteger (integer в pascalabc соответствует лонгу в fpc), но в рамках школьного курса вряд ли такое может понадобиться. Если что, для него есть документация.
ответить
From admin Fri Apr 9 14:12:46 2021 UTC
Оно, может, и
Оно, может, и есть, но ЗАЧЕМ? Pascal.ABC никогда не был живым инструментом и не задумывался в качестве такового, это как вместо самолёта на симуляторе летать — суррогат как он есть. На симуляторах, конечно, пилоты тренируются, но это потому что на настоящих самолётах летать чертовски дорого. Работать с тем же Free Pascal ни разу не дорого.
ответить
From Anonymous (unverified) Fri Apr 9 23:23:00 2021 UTC
Затем, чтобы
Затем, чтобы сдать ЕГЭ, очевидно. Вопрос был о том, будет ли написанное под fpc работать под pabc. Ответ - в большинстве случаев будет, но есть нюансы.
ответить
From admin Sat Apr 10 14:50:57 2021 UTC
Ага, понятно. Ok,
Ага, понятно. Ok, принято, возражения снимаю.
ответить
From Parthen Sat Apr 10 17:00:00 2021 UTC
Встречный
Встречный вопрос - а есть список всех этих нюансов для ознакомления?
ответить
From Anonymous (unverified) Sun Apr 11 02:21:00 2021 UTC
Тут сложно -
Тут сложно - PascalABN.NET очень быстро развивается. Условно говоря, вчера еще не было in-place объявлений переменных или срезов массивов - сегодня появились. Но, опять же, базовый язык в основном совместим с fpc (то есть с Turbo Pascal), а использование лямбд и паттерн-матичинга в рамках школьного курса информатики, наверное, все-таки избыточно (но тут уже от учителя зависит).
Для этого и стоит держать у себя оба компилятора, чтобы написанное под одно с минимальным допиливанием заработало бы на другом. Мы ребенком пока напоролись только на случай с Integer/Longinteger; когда дойдут до плавучки, наверняка еще что-нибудь вылезет.
Впрочем тут уже пояснили, что для ЕГЭ требуются только ответы, на чем писать - не важно.
Да, еще одно уточнение: не PascalABC.NET есть под Линукс, а консольная версия PascalABC.NET может работать под mono.
ответить
☞ From Anonymous (unverified) Thu Apr 8 12:28:00 2021 UTC
Этот наконец сломался, несите следующего
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p2028r0.pdf
Весь документ представляет собой "плач Ярославны" о проблемах поддержки "стандартной" библиотеки (в отличие от любой другой, ага), но третий снизу абзац на последней странице тонко намекает, что на самом деле она нафиг никому не нужна, и все об этом знают.
ответить
From admin Thu Apr 8 12:56:57 2021 UTC
К сожалению,
К сожалению, эти мрази, превратившие C++ в дурно пахнущее месиво, всё равно не остановятся.
ответить
From Anonymous (unverified) Sat Apr 10 20:12:00 2021 UTC
Где вы вообще
Где вы вообще это увидели? Там нет никакого плача о проблемах поддержки std, там говорится о том, что современная имплементация крайне неэффективна (а всякие хэш-мапы вообще небезопасны, их нельзя совать в продакшен), но её не меняют, потому что боятся сломать совместимость со старым кодом, который существует только в бинарном виде. Наоборот, чувак пишет о том, что нужно смело ринуться в бой, всё сломать, но сделать всё более эффективным, иначе Си++ останется на задворках истории, потому что даже стандартные регулярные выражения в два раза медленнее питонячьих (даже удивительно как им удалось достичь таких феноменальных результатов). А абзац, который вы упомянули, говорит о том, что многие перестают использовать std, потому что она тормозная, а ускорить нельзя без ломания обратной совместимости, и что скоро std будет использоваться только студентами на лабах. Вердикт - надо ломать. Пишу это безотносительно отношения своего и окружающих к std, просто вы неверно проинтерпретировали текст (с точностью до наоборот, я бы сказал), а я не могу спать пока в интернете кто-то не прав.
ответить
From Anonymous (unverified) Sun Apr 11 13:50:00 2021 UTC
Читаем в контексте
Что ж, давайте разбираться. Во-первых, реализации в таком состоянии по одной-единственной причине -- спецификация не позволяет сделать иначе.
За спецификацию во многом отвечают члены комитета, которые имеют весьма посредственное представление о последствиях своей "деятельности".
Собственно, основная часть документа представляет собой ликбез по теме ABI, с которым, цитирую, "relatively few of us have much hands-on experience".
Эти же персонажи часто плачут, что люди, занимающиеся реализацией, не дают исправить недостатки спецификации (известные уже на момент выхода оной) десять лет спустя.
Причём, один раз такую глупость уже совершили, а раз уж члены комитета (пусть и компиляторщики) не хотят повторения перехода на С++11 -- это кое о чём всё-таки говорит.
Тем не менее приводится ряд мотивирующих примеров, который надо трактовать так: "да, мы сами сделали эту хрень, но уж в следующий раз мы точно всё сделаем правильно(tm)".
Во-вторых, последний абзац на самом деле перечисляет примитивы, которые (с оговорками) нет смысла переписывать: динамические массивы и строки.
Но только потому что с ними сложно напортачить, да и используются они почти повсеместно.
(Здесь следует оговориться, что автор представляет интересы Гугла в комитете, для которых вычислительные ресурсы дороже человеческих)
Особенно уморительно это смотрится на фоне последних двадцати лет, на протяжении которых от сторонников стандартной библиотеки можно было слышать лишь "используйте её: она есть везде, переносима, написана людьми умнее и оптимизирована по самое что ни на есть -- написанное вручную не будет более эффекитвным".
В-третьих, предложение "всё сломать" на самом деле влечёт за собой предложение "давайте ломать каждый раз".
И речь не только о "старом коде, который существует только в бинарном виде" -- так и видится картина полной пересборки репозиториев дистрибутивов Linux, потому что разработчики нескольких библиотек поддержки решили использовать новый ABI.
То есть каждые три года (5? 10?) предлагается пересобирать весь существующий софт, потому что кто-то решил "Почему бы нет? Зато производительность!".
(Описанное является очевидным преувеличением, но видимость стабильного ABI не стоит недооценивать)
Наконец, сама проблема является штатной для библиотек в целом -- рано или позно приходится выбирать между обратной совместимостью и новыми возможностями.
В данном случае всё раздуто из-за выдуманной статусности "стандартной" библиотеки (в реалиях С++) -- это всего лишь библиотека, и если она плохо решает (или не решает вовсе) практические задачи, то она никому не нужна.
Очевидно, есть тот самый эффект насаждения в течение двадцати лет, но собственные мозги никто не отменял.
А если язык программирования может "остаться на задворках истории" из-за библиотеки, там ему и место.
ответить