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

статистика блог памятка железо windows софт ошибка bluetooth android дата excel javascript время браузеры тест php программирование dos форматы личное форум шахматы россия общество история ссср игра числа математика мошенничество деньги random графика цвет учебное безопасность css html вебдезигн сервис список психология поиск политика маразм медвепуты геноцид мем алгоритм c++ все теги все комментарии


[1-15] [16-30] ... [2266-2280] [2281-2291]


Прикреплённое сообщение, правила и всё такое

Остеклить балкон, лоджию в Новосибирске? Проверено, Вам сюда

Encoding: Windows-1251 (Russian). Для полноценной работы блога нужны включённые в браузере картинки + JavaScript + Cookies.

Ссылки, открывающие новое окно (вкладку), везде подсвечены.

Даже по законам Эрефии этот блог - не СМИ, все сообщения выражают личную точку зрения автора блога и являются оценочными суждениями, при этом любые совпадения мест, имён, названий и действующих лиц далеко не случайны. В блоге нет файлов, способных нанести вред Вашему компьютеру или мобильному устройству. Если Вам не исполнилось 18+, срочно отвалите отсюда, прикиньтесь ветошью и не отсвечивайте покиньте этот блог. Учтите, что читая его, Вы вторгаетесь на мою личную территорию :) Страница статьидалее...
19.01.2038, 15:15 [12287]


Убылей

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

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

Вот теги - это показатель меняющихся интересов, сегодня они выглядят так: Страница статьидалее...
14.11.2019, 21:56 [4]


Windows 10 в 2 клика?

По-прежнему занят фигнёй с "железом", сохраню пару ссылок про "десятку".

Скачать "средство" от Мелкософта, а затем образ .iso диска Windows 10 для другого компьютера отсюда; https://www.microsoft.com/ru-ru/software-download/windows10

В "семёрке" можно записать .iso на обычную болванку DVD 4,7 Гб просто двойным кликом, чего, кстати, нет в более новых версиях.

Ещё лучше не возиться с "болванкой", а сделать загрузочную флешку, удобно через Rufus.

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

Дурацкое устройство dwa-131 (дешёвая серия WiFi-адаптеров) сама Windows 10 не определяет, но дрова отсюда, установленные без галочки "Устанавливать SoftAP" рулят, будет работать адаптером. Страница статьидалее...
13.11.2019, 17:02 [9]


Bluetooth-клавиатура Slim Line K9 bt, переключить язык на русский?

При подключённом девайсе в расширенных настройках Андроида находим "Язык и ввод", а там - "Физическая клавиатура" (при отключённой клаве пункта не будет или внутри меню будет пусто). Выставим в настройке "Bluetooth Keyboard" русский язык.

Если включена опция "Подсказки клавиатуры" - "Виртуальная клавиатура", то комбинация клавиш Ctrl и Shift слева "формально" будет переключать язык виртуальной клавиатуры, но с девайса всё равно работает только одна раскладка.

Проверено вот на етом с Андроид 7. Страница статьидалее...
12.11.2019, 22:17 [11]


Таквими мехнати - 2020

Проще говоря, батрак күнтізбе, или традиционный календарь батрака на следующий год, ровно на лист A4, есть 5- и 6-дневка. На этот раз там даже недельки выровнены как надо и для чёрно-белых принтеров выходные отмечены подчерками, а не только красным. Ещё года 3 и станет нормальный шаблон :)

Вот примерно официальная инфа:

Установить 2020 году дни отдыха:

1. Для работающих по 5-ти дневной неделе:

  • с 1 по 8 января включительно;
  • с 22 по 24 февраля включительно;
  • с 7 по 9 марта включительно;
  • с 1 мая по 5 мая включительно с учетом переноса 4 января (сб.) на 4 мая (пн.) и 5 января (вск.) на 5 мая (вт.);
  • 9 мая по 11 мая включительно;
  • с 12 по 14 июня включительно;
  • 4 ноября.
Страница статьидалее...
11.11.2019, 16:40 [16]


Функция array_unique на Javascript?

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

function unique(arr) {
  let result = [];
  for (let str of arr) {
   if (!result.includes(str)) result.push(str);
  }
  return result;
}

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

Куда лучше так, с применением встроенного в язык Set:

function unique (arr) {
 return Array.from(new Set(arr));
}

Протестируем оба кода таким образом: Страница статьидалее...
11.11.2019, 15:01 [16]


"Настоящие" таблицы в псевдографике Юникода

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

Сегодня мне понадобились рамки как в старой доброй псевдографике DOS, только для кодировки Юникода UTF-8. По ссылке уже есть таблица с нужными символами (или вот эта рамочница в английской Вики).

Класс Tabber очень прост в обращении - достаточно передать конструктору двумерный массив с данными и номер рамки (от 0 до 4, по умолчанию 1). Потом вызываем метод get(), который вернёт всю таблицу, отформатированную и заключённую в тег <pre> (если шрифт не моноширинный, разумеется, всё "разъедется"):

$data = [
 [ -1, 2, 3, 4 ],
 [ 5, 6, 7 ],
 [],
 [9,10]
];
$tab = new Tabber ($data,1);
echo $tab->get();

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

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

Пришлось также написать собственную функцию str_pad, работающую с символами Юникода, стандартная делать это отказалась. Функция называется str_pad_unicode, другими данными класса она не пользуется, поэтому легко "достаётся" из его листинга. Страница статьидалее...
09.11.2019, 13:41 [25]


Памвело с CN

Памвело - "памяти Великого Октября"

"Гражданская война в России началась 25 октября 1917 года (по старому стилю), когда большевики захватили власть в Петрограде, и закончилась в декабре 1922 года с образованием СССР в его первоначальном варианте" - пишет в обычном довольно безсодержательном анализе очередной еврейский доктор наук, специализирующийся на русской истории.

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

Во-вторых, их нынешние наследники из тех же самых красных эту войну успешно продолжают.

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

Хотя хорошие мысли в статье всё же есть:

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

Зачем, например, я, убеждённый "белый", полез к столь же убеждённому "красному" ГМ Корнееву даже не с критикой его предложений на CN ("chess news"), впрочем всё равно нереализуемых, а с "переводом стрелок" на общественно-политическую подоплеку обсуждаемого?..

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

При этом, живёт себе красный ГМ в Испании. Ну и живи спокойно, а с "заботой о трудящихся РФ" отстань, до края могилы уже давели красные заботники. Так нет же, будет лезть "испанец" со своим социализмом. Характернейшее для красных лицемерие.

Сохраню некоторые небезынтересные фрагменты "загубленной" мной дискуссии. Страница статьидалее...
09.11.2019, 10:48 [25]


Игра Пенни

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

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

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

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

Называется это чудо математческого "мошенничества", приводившее в ярость самого Гарднера, игрой Пенни.

Ниже можно поиграть с компьютером (бесплатно!) и посмотреть исходник в виде файла .html без обрамления заголовочными тегами. Ход состоит в том, что вы отмечаете нужные чекбоксы из трёх и нажимаете кнопку OK :) Все необходимые элементы разметки игра создаёт себе сама в разделе с идентификатором pennyId. Для сброса можно просто обновить страницу клавишей F5. Страница статьидалее...
06.11.2019, 01:11 [49]


Рисование мышью на канве с помощью JavaScript

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

Ниже показан пример на создание простейшей рисовалки, только не на компилируемом языке, а прямо на страничке в динамически созданном элементe canvas.

Полезного в коде немного, но есть:

  • функция получает аргументом только id раздела, в котором выполняет всю работу;
  • чтобы не возиться с многочисленными свойствами создаваемых канвы и кнопок, создаются просто вложенные div, а туда в свойство innerHTML заталкивается канва и коды для кнопок;
  • эти кнопки потом легко "вытащить" методом querySelectorAll по идентификатору класса myBtn и динамически навесить на динамически созданные элементы обработчики нужных событий (главное, чтобы элементы были к этому моменту созданы, а динамические они или статические никакой роли не играет).

Вот эта заготовка в работе: Страница статьидалее...
04.11.2019, 16:57 [61]


Как отменить переход по ссылке в какое-то время суток?

Ну, если в браузере включен JavaScript, то это несложно... вот только если додумаются выключить и таки перейти? :)

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

Тем не менее, если так уж надо, то вот эта ссылка не разрешает переход после 12 часов по времени вашего компьютера: Гуглик

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

Вот код простейшего JS-решения из этой заметки: Страница статьидалее...
04.11.2019, 14:14 [48]


CSS: как вложить три блока "матрёшкой" и центировать контент в них?

То есть, получить вот такое:

  ← margin →
border ↑
Для горизонтального центрирования всё просто. Вертикальное же изначально не было предусмотрено в спецификации CSS и по сей день вызывает ряд проблем.
← padding  

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

В принципе, это же общая схема элемента HTML получилась. В Firefox, IE11 и "Хромом" из Андроида 7 дома сработало. Ниже - разметка: Страница статьидалее...
03.11.2019, 12:40 [43]


Меню из вкладок на web-странице

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

  • Хоронили тёщу...
  • Что такое Юриюрич?
  • Lorem ipsum?

Порвали три баяна...

Смеялась даже обезьяна

  • Коммуняка
  • Волчара
  • Античитер
  • Запутинка

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Рыба, рыба!

Всё, сказанное про баян, верно и для этого кода. Ниже приводится полный листинг документа HTML5, предполагается, что он будет сохранён в кодировке Юникода utf-8. Страница статьидалее...
02.11.2019, 17:54 [33]


Заменяем табуляции на пробелы без изменения внешнего вида текста

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

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

Прилагаемый ниже маленький сервис на PHP сегодня помог мне решить проблему замены табуляций пробелами.

Предполагается, что основной исходный файл сервиса index.php будет сохранён в кодировке Юникода utf-8 и загружаемые текстовые файлы будут закодированы в ней же.

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

В папке с файлом index.php также расположен файл .htaccess со следующим содержимым:

AddDefaultCharset utf-8
php_value display_errors 1

Для загрузки файлов в папке со скриптом создана вложенная папка uploads. Обработанный текстовый файл удаляется из неё, а результат работы выводится в многострочное текстовое поле <textarea>.

Следите, чтобы ваш текстовый редактор, куда вы будете вставлять текст из поля результата, не делал автоматическую замену пробелов табуляциями. Например, Notepad++ перестаёт баловаться с автозаменой табуляциями, если заранее отключить соответствующую опцию: меню Опции - Настройки - Синтаксисы - Настройка табуляции, включить флажок "Заменять пробелом".

Ну и, наконец, сам исходник. Страница статьидалее...
02.11.2019, 17:06 [49]


Все страны и территории мира на одном листе Excel

Жалко выкидывать файлик, может, ещё пригодится для справки.

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

Столбцы листа: Страна или территория; Столица; Площадь, км^2 (округлено до целого); Население, чел.; Континент; Является территорией или владением (если не заполнено - признанное государство, иначе - непризнанное или частично). На заголовках столбцов стоит автофильтр для удобства сортировки, фильтрации и т.п.

Следует учесть, что население "непризнанных" территорий, как и их территория, могут быть учтены в таблице дважды - например, население всей Сомали может числиться также в квази-государствах на её территории. Всего в базе 278 записей. Страница статьидалее...
02.11.2019, 16:51 [37]


[1-15] [16-30] ... [2266-2280] [2281-2291]