БлогNot. Блог ПерСа

Помощь дата->рейтинг Поиск Почта RSS канал Статистика nickolay.info Домой

программирование ошибка список софт english социалки картинка маразм преступление php random числа алгоритм история россия общество дата тоталитаризм опсосы жпрезы деньги мошенничество игра учебное html javascript ретро чат шахматы цензура рунет домены образование email личное ссылки сказка медвепуты психология эзотерика образ философия mysql сервис стихи сон коммуникатор вирус безопасность sms все теги все комментарии


[1-15] [16-30] [31-45] ... [1741-1755] [1756-1761]


"Белый экран смерти" в PHP 5.6 и выше :)

Что делать, когда после обновления версии PHP вместо сайта вдруг отображается белый экран? Ясно, что где-то в коде ошибка, а попробуй найди :)

Обычно достаточно поставить в начале файла .htaccess из корневой папки сайта следующее:

php_flag display_errors on
php_value error_reporting 32767

(для версий PHP 5.4 и выше). Ну и

error_reporting (E_ALL);

(что то же самое) в коде писать всегда не помешает.

Чаще всего после этого ошибки обнаруживаются, например, они могут быть связаны с тем, что "устарел" MySQL и вместо него нужно использовать mySQLi. Страница статьидалее...
03.06.2017, 03:08 [291]


Monkey Chess или безумные шахматы...

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

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

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

После этого можно, например, проверить код PGN в конвертере длинной нотации в короткую (для простоты тот работает всегда с начальной позиции, хотя это нетрудно поправить), погонять его во вьюере PGN, например, тут (вставить PGN в многострочное поле, нажать "view game from textbox", кнопки листания под доской, для следующей партии жмём "reset viewer" и "ok" для подтверждения), ну или даже импортировать короткую версию нотации в lichess :)

Monkey Chess
Monkey Chess

Рубится генератор случайных чисел "сурово", вот, например, пат в 163 хода: Страница статьидалее...
02.06.2017, 18:38 [365]


Глаза урагана

Не моё заглавие, если вдруг не знаете, Самойловых :) Настроение какое-то эзотерическое, просят напейсать ещё по теме...

Помните историю с окаменевшей Зоей, которую даже советские пропагандисты отрицали как-то странно?

Да, произошло такое чудо, позорное для нас, коммунистов...

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

Общее - Николай Чудотворец, всегда особо почитаемый в России, вплоть до того, что православные крестьяне 19-го века искренне называли его третьим лицом Троицы.

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

Я выражаю сердечную благодарность Святейшему Франциску, а также всем, кто исполнил волю своего Первоиерарха, и в первую очередь Вам, Ваше Преосвященство владыка Франческо, архиепископ города Бари. Слова особой благодарности к братьям святой обители, которая несет попечение о сохранении мощей святителя Николая в городе Бари, гражданским властям, ученым специалистам и всем, кто трудами своими осуществил решение, принятое Папой и Патриархом на встрече в Гаване.
Мы верим, что святитель Николай, которого почитает и Восток, и Запад, предстоит в молитве пред Богом за всех нас. Сегодня мы еще разделены, поелику богословские проблемы, пришедшие из древности, не дают нам возможности воссоединиться. Тем не менее, как прозревали многие святые люди, если Господу угодно будет соединить всех христиан, то произойдет это не по их усилиям, не благодаря каким-то церковно-дипломатическим шагам, не по каким-то богословским соглашениям, а только если Дух Святый снова соединит всех, кто исповедует Имя Христово. И верим, что святитель Николай, слышащий молитвы христиан Востока и Запада, предстоит пред Господом, в том числе прося у Него соединить Церкви воедино.

Похоже, св. Николаю столь вольная трактовка его намерений не понравилась :) Страница статьидалее...
01.06.2017, 13:48 [336]


Осваивайте лбом бетонные стены...

Сновидцу г-ну Г. Литвинову (Драгунову) искренне желаю выздоровления (нельзя желать никому "не болеть", мир всё понимает буквально без "не", которого в природе нет).

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

Снились гамбургеры с добавлением человеческого мяса, которыми сегодня кормит пол-мира всем известная сеть. Код её - код человеческий, и кто имеет ум, прочти его: "команда J2". Но это-то самое лёгкое из всего, могло просто прийти из медийного.

Я не хочу этого знать, но оно хочет знать меня.

Снился лжепатриарх, слившийся в содомско–брежневском поцелуе с лжепапой.

Снилась проповедь в какой-то деревне, прочитанная году в 1950-м. Народу было всего человека три, запомнилось оттуда: Страница статьидалее...
01.06.2017, 11:34 [373]


Как проверить подозрительную ссылку или безопасно открыть её? :)

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

Если по каким-то причинам всё же надо проверить подозрительную ссылку отдельно, лет 8-9 назад я пользовался следующими онлайн-сервисами, в принципе, все они ещё живы: Страница статьидалее...
31.05.2017, 21:41 [322]


Где взять базу данных с FEN'ами позиций для шахматных задач?

Понадобилась коллекция задач на мат в 2, 3 хода и т.д., в простейшем текстовом формате "одна строка - одна позиция"...

Ясно, что для записи задачи достаточно иметь только FEN позиции, хотя, конечно, можно сохранять в файле и дополнительную информацию, скажем, об типе задачи, авторе и/или партии, откуда взята задача, и её решении, например:

White Mates in 2.
Alexander Motylev vs David Baramidze, Germany, 10/21/2012
4rk2/1bq2p1Q/3p1bp1/1p1n2N1/4PB2/2Pp3P/1P1N4/5RK1 w - - 1 0
1. Bxd6+ Qe7 2. Qxf7#

Поиск по запросам вроде "checkmate in 2 problem FEN database download", "chess puzzles fen database" и т.п. ничего дельного не дал, а ковырять FEN'ы из форумных тем с задачами - долго. Впрочем, немного эту проблему можно облегчить, если есть текстовые файлы, откуда нужно "вытащить" FEN. Напишем соответствующий скрипт и соберём немного позиций.

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

Несложный Regexp для сущности "шахматная позиция в формате FEN": Страница статьидалее...
30.05.2017, 12:57 [391]


С++: самая длинная цепочка элементов, для которой выполняется признак, или "указатель на шаблон функции"

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

При этом нам хочется, чтобы алгоритм работал с разнотипными данными, например, и с числами, и со строками. Сам по себе код, реализованный в функции max_series, несложен - мы ищем очередной элемент, отвечающий нужному признаку f и считаем длину цепочки таких элементов, запоминая номер первого элемента цепочки в переменной start, а длину цепочки - в переменной maxlen.

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

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

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

"Указатель на шаблон" можно объявить только после подстановки конкретного типа вместо class Type, тогда у функции появится и адрес в памяти.

Иными словами, template существует только в исходном коде. В исполняемый код попадает экземпляр (instance) шаблона, специализированного конкретными типами.

Соответственно, использовать оператор typedef для объявления такого указателя тоже нельзя.

К счастью, если написать обычную функцию-шаблон, аргументом которой инстанцируется ещё одна шаблонная функция для проверки элемента типа T на нужное свойство, то адрес такой функции вполне можно передать и решить нашу задачу, по коду, наверное, сказанное будет понятней: Страница статьидалее...
29.05.2017, 22:06 [315]


KQK checkmate in 10 moves?

Странно, всегда считал (по какому-то старому источнику), что мат KQK достигается в 9 ходов, но есть одна позиция, где ходов требуется 10:

8/8/8/5k2/8/8/1Q6/K7 w - - 0 1

"Заоптимизированный" Онлайн-стокфиш видит здесь мат аж в 16 ходов, моя изначально неоптимальная решалка эндшпиля KQK ставит мат на 13-м.

Сами таблицы согласны, что на 10-м :)

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

Вот сами 8 позиций мата в 10 ходов эндшпиля "король и ферзь против короля" при ходе белых: Страница статьидалее...
28.05.2017, 17:15 [280]


С++: шаблон класса, использующего шаблоны функций :)

Развёрнутый листинг с комментариями показывает, в общем, довольно классический для шаблонизации классов пример - шаблон класса Array одномерного динамического массива. Разумеется, пример мог бы содержать больше кода, но тогда он стал бы ещё объёмней. Весь код для простоты помещён в один файл, пригодный для вставки в пустой (консольный) проект Visual Studio или QT.

Имеет смысл обратить внимание на следующие моменты:

Страница статьидалее...
27.05.2017, 16:08 [433]


А об икорницах и 10-летних задержанных линковать не противно? :)

Где-то в 2013-м мне стало окончательно

О политике, думе, медвепутах и проч. - противно линковать. Пусть горят в аду

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

Вот, например, могут же наши доблестные силовики работать быстро, споро и мужественно! На Арбате за публичное чтение вслух "Гамлета" схвачен, сунут в воронок и доставлен в участок... десятилетний мальчик. Это ж не Бобокулова с отрезанной детской головой, вокруг которой они часа полтора вежливо ходили...

Просто вся страна в одном кадре, который, думаю, станет очень популярным:

10-летний арестант
10-летний арестант

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

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

Основное сходство двух ситуаций - колоссальное унижение большинства населения (2012-й)

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

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

Ну и в других сферах помаленьку всё сбывается. Вот я пишу в том же 2012-м: Страница статьидалее...
27.05.2017, 13:14 [350]


Почему оппозиция должна любить айфон и телеграм :)

А ведь лет надцать назад г-н Носик казался нам "авторитетом" (газета.ру, ЖЖ "dolboeb" и т.п.).

Постарел или всегда таким был, соответственно нику в ЖЖ? Дикий бред про "защищённый Телеграм". С ходу наводит на мысль, что тов. Носик таки тоже да, тук-тук, и очень давно. Не просто же отрабатывает "пост ненависти к Сирии"?

Потому что интеллигенция должна свято верить в Айфон и Телеграм, а не в то, что Дуров в Сент-Невисе вместе с безымянным тов. майором в Москве хихикают над их маленькими тайнами :)

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

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

Мила также уверенность интеллигента, что обновлённый на айфончеге "телеграм" - это действительно "телеграм", а не подменённый нужному человечку с известным номером файлик из репозитория гэбни, через который товарищ майор не только слышит, но и видит, чем вы там занимаетесь на горшке :) Ведь сравнить побайтно файлики вы в iOS не сможете, в отличие от Андроида. Страница статьидалее...
25.05.2017, 22:19 [307]


Реальная партия в шахматы Шифера...

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

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

Все эти шахматы Капабланки, Фишера и прочие проекты, которые, по словам Алехина, "всегда выдвигаются шахматистами, утратившими мировое первенство" (если бы только ими!), замечательны только своей вторичностью и бьющей в глаза "безблагодатностью", а единственное, что они показывают - богатство начального "генотипа" шахмат, прямо как бесконечность собачьих пород демонстрирует, разве что, вариативность и крепость волчьего генотипа :) В красоте, силе и гармоничности "классического" волка не превзошёл пока никто. Более того, чем от него дальше, чем уродливее выходят разные "пекиннесы" и "мопсы".

Вот демка одного такого "пекиннеса", в шахматы Шифера сыграли (не путать с Фишером, мы их сами придумали). Всего одна, но существенная перестановка, а результат... Страница статьидалее...
22.05.2017, 23:30 [339]


Javascript: Random Word Generator из одной строки

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

Просто в современных версиях Javascript не нужно использовать document.write, да и массив можно описать компактней.

Кроме того, имя name элемента формы или атрибут id HTML-элемента не нужно никуда передавать, прекрасно сработает и передача this.id, так что код не будет зависеть от каких-либо внешних имён.

Вот скрипт в работе, ниже прикреплён исходник.

Click me
Страница статьидалее...
22.05.2017, 00:30 [306]


Угадайки дня

В РФ отменена частная собственность. Не верите? А свершилось. Теперь "для государственных нужд" у крепостных можно забирать вообще всё:

Указ 13

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

В Госдуму внесли законопроект о наказании за... незаконные занятия магией. Угадайте, сядет ли Глоба или кухонный "асторолух" да бабка-"гадалка". Страница статьидалее...
20.05.2017, 15:17 [393]


В Энциклопедию Юного Сурка :)

- Хаос вечен, и поэтому я не сдамся. Моя борьба с ним также будет вечной.

Сказав это, я даже немного смутился. Поэтому решил записать в Энциклопедию Юного Сурка :)

Злата одобрила, но уточнила:

- А что такое вечность?

Я:

- То, что никогда не кончится.

Она:

- Как счёт? Счёт же бесконечен! Страница статьидалее...
19.05.2017, 23:01 [293]


[1-15] [16-30] [31-45] ... [1741-1755] [1756-1761]

  в началопоиск по блогунаписать авторустатистика

Наверх Яндекс.Метрика
© PerS
вход