Ошибки округления во время перехода

Общий средний балл \(2{,}33\) подтверждает пригодность для поступления в среднюю школу в Баварии, \(2{,}34\) больше не подтверждает пригодность для поступления в среднюю школу. При такой четкой границе порядок двух раундов может решить, на какой стороне приземлится ребенок. Возможные последствия этого эффекта округления обсуждаются в блоге Гюнтера Фельбингера . Просто ради интереса я сам рассчитал эффекты для всех комбинаций классов, разрешенных в модели.

.­.­.

Сбросить двухфакторную аутентификацию Facebook

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

.­.­.

Кто вообще знает что-то подобное?

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

.­.­.

Правильно или неправильно сократить

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

.­.­.

Тихий поезд

Занимательные шахматные задачи скрашивают жизнь. Задача на сегодня: ход белых, мат в два счета. Позиция принадлежит Эриху Бруннеру в 1926 году – и она интересна именно тем, что совсем не похожа на типичную двухходовую позицию. Вы пробуете прямые шахматные ставки, проверяете ходы ладьи, ищете ходы ферзя и через несколько минут замечаете: это не очевидные идеи.

.­.­.

Let's Encrypt DomainFactory

Некоторые пакеты общего хостинга с cPanel не предлагают AutoSSL или предлагают его только по более высоким тарифам. Результат: вы не можете выдать бесплатный сертификат Let's Encrypt через интерфейс cPanel, и все домены привязаны к самозаверяющему сертификату. Браузер отображает страницу как «небезопасную». Выход: получить сертификат самостоятельно с помощью acme.sh и установить его через cPanel UAPI — автоматически обновляясь, без AutoSSL.

.­.­.

Делимость

Недавно на конференции «Кто хочет стать миллионером» был задан небольшой приятный вопрос, над которым явно нужно было задуматься Гюнтеру Яуху: «Число всегда делится на \(4\) без остатка, если оно образовано из двух последних цифр...?» – и именно здесь вам нужно на мгновение подумать математически, вместо того, чтобы позволять себе отвлекаться на красивые отвлекающие факторы. Потому что, хотя такие ответы, как «четно», «содержит \(0\) » или «перекрестная сумма равна \(4\) » на первый взгляд кажутся правдоподобными, правильный ответ основан на простом свойстве нашей десятичной системы.

.­.­.

ИИ против Эрдоша

Некоторые математические задачи сформулированы настолько просто, что их можно объяснить даже ребёнку, но при этом они настолько сложны, что занимают целые поколения математиков. Одна из таких задач — так называемая задача о единичном расстоянии: расположите \(n\) точек на плоскости. Сколько пар точек могут иметь расстояние, равное ровно \(1\) ? Эта задача восходит к работам Пола Эрдоша и изучается с 1946 года. Компания OpenAI опубликовала результаты исследования, в которых внутренняя модель опровергла давнюю гипотезу об этой проблеме.

.­.­.

Кодирование простыми числами

В октябре 1999 года группа во главе с тогда еще 16-летним норвежцем Йоном Лехом Йохансеном выпустила программу DeCSS , предназначенную для обхода защиты воспроизведения DVD-дисков, обеспечиваемой системой шифрования контента (CSS). CSS использовала 40-битное шифрование, ключи к которому распространялись среди лицензированных производителей, для ограничения воспроизведения DVD. Поскольку распространение кода подпадало под действие американского закона DMCA и было юридически запрещено, активисты искали способы замаскировать код под математическую модель.

.­.­.

ℚ не завершен

На первый взгляд рациональные числа \(\mathbb{Q}\) кажутся континуумом без пробелов: между любыми двумя дробями всегда находится еще одна. Но это впечатление обманчиво: существуют множества рациональных чисел, которые ограничены, но верхняя или нижняя грань которых просто не существует в \(\mathbb{Q}\) . Причина кроется в существовании иррациональных чисел типа \(\sqrt{2}\) , которые, так сказать, разрывают невидимые дыры в строке рациональных чисел.

.­.­.

Полоски боссов в Minecraft

PaperMC предоставляет простую основу для расширения серверной части Minecraft с помощью небольших плагинов, не требуя от клиентов установки чего-либо. При разработке плагинов возникает вопрос о том, как отображать динамическую информацию для игрока. Ответ кроется в часто упускаемой из виду особенности ванильной версии игры: панели босса . Изначально предназначенная для боссов в эндгейме, панель босса может быть перепрофилирована и использована в качестве минималистичного HUD.

.­.­.

IPv6

Протокол IP (Internet Protocol) является основой всех интернет-приложений. Другие протоколы, такие как TCP и UDP, строятся на его основе, в свою очередь, передавая такие сервисы, как HTTP(S), электронная почта, телефония и DNS. Протокол IPv6 заменяет более старый протокол IPv4, поскольку его относительно небольшое адресное пространство, составляющее около 4 миллиардов адресов, давно исчерпано. IPv6 сейчас практически повсеместно распространен и гораздо полезнее, чем многие думают.

.­.­.

Git без SSH

Все мы оказывались в такой ситуации: нужно быстро что-то скачать с дешевого хостинга (например, с IONOS). git pull Вам может понадобиться запустить программу или использовать базу данных, но ваш хостинг-провайдер не предоставляет доступ по SSH — или предоставляет его только в более дорогих тарифных планах. Часто единственным оставшимся вариантом является утомительный процесс ручной загрузки файлов через FTP, что делает развертывание излишне сложным и подверженным ошибкам.

.­.­.

Amazon и налог с продаж

Amazon — идеальный канал для покупок для фрилансеров: быстро, доступно и всё в одном месте. Amazon теперь постоянно предоставляет своевременные и легкодоступные счета-фактуры для скачивания (даже для покупок на Marketplace). Будь то новый ноутбук, офисное кресло или просто быстрая покупка бумаги для принтера — товары можно заказать всего за несколько кликов, обычно через личный аккаунт, который у вас и так уже много лет.

.­.­.

git-статус 2.0

Тот, кто первый утром git status печатать и пить кофе понравится этому маленькому помощнику. Особенно, когда параллельно разрабатывается множество веб-проектов, один из них того стоит. компактный обзор: Где рабочее дерево чистое, где висят неслитые изменения и где ждут pull/push? Небольшой инструмент оболочки справится с этой задачей - при условии, что он надежно обрабатывает пробелы/Юникод в путях и не захлебывается зависающими пультами дистанционного управления.

.­.­.

Язык и логика

Есть прекрасная песня Кали Роуз под названием "It Is What It Is and It Ain't What Is Ain't ". Её можно упростить до "It is what it is and it isn't what it isn't". Всего несколькими словами можно исследовать целые миры истины. Варьируя и комбинируя две части, возникает небольшая площадка для логического анализа. Теперь вы можете взять это предложение и найти другие интересные примеры.

.­.­.

Автоматизация Thunderbird

С 2022 года Thunderbird пережил замечательное возрождение. После нескольких лет стагнации Фонд Mozilla вновь активно инвестирует в его развитие. Инициатива Supernova (Thunderbird 115+) принесла фундаментальные модернизации, такие как интеграция Rust для компонентов, критически важных с точки зрения производительности, модернизированный пользовательский интерфейс на основе веб-компонентов и нативная поддержка Exchange через API EWS/Microsoft Graph.

.­.­.

Оператор Walrus в PHP

В октябре 2019 года в Python 3.8 появился оператор Walrus (:=) с помощью ПЭП 572 – и тем самым вызвал один из самых больших споров в истории языка программирования. Споры были настолько ожесточенными, что создатель Python Гвидо ван Россум в июле 2018 года – еще до освобождения – его должность BDFL (Доброжелательный пожизненный диктатор). С начала 2019 года Python управляется избранным Руководящим советом.

.­.­.

О градусах Цельсия и Фаренгейта

Вы разговариваете по телефону с другом из США морозным зимним днём. «У нас минус \(40\) градусов!» — восклицаете вы оба одновременно. Обычно это было бы вопросом выяснения, кто имеет в виду градусы Цельсия, а кто — Фаренгейта, но не при этой конкретной температуре. Почему? Это единственная температура, при которой шкалы Цельсия и Фаренгейта совпадают!

.­.­.

Путаница в естественном порядке сортировки

Большинство графических файловых менеджеров сортируют не строго лексикографически, а используют «естественную сортировку». Блоки цифр в названии интерпретируются как цифры — побеждает больший блок цифр, даже если в чисто алфавитном порядке получилось бы обратное. Идея естественной сортировки: люди больше всего хотят «9 до 10», «Глава 2 перед главой 10», без необходимости добавлять ведущие нули.

.­.­.

Приоритет в планировщике задач Windows

Любой, кто запускает задания в планировщике задач Windows, рано или поздно наткнется на необъяснимые различия во времени выполнения. PHP-скрипт, который выполняется за 5 минут в командной строке, внезапно занимает 20 минут при запуске через планировщик задач Windows. Тот же пользователь, те же права, тот же код – время выполнения в четыре раза больше. Что там происходило?

.­.­.

Тест ARC-AGI

Постоянное снижение стоимости вычислительной мощности — на два порядка за десятилетие — чрезвычайно подпитывало модели глубокого обучения с 2010 года. Более крупные сети и больше данных, казалось бы, надежно обеспечивали все более высокие баллы на общих бенчмарках — и подпитывали надежду, что масштабирование само по себе неизбежно приведет к AGI. Еще в 2019 году Франсуа Шолле представил бенчмарк ARC-AGI . для измерения интеллекта.

.­.­.

Показать адрес электронной почты отправителя в Outlook

Адрес электронной почты отправителя остается хорошим индикатором того, является ли письмо спамом или нет. По умолчанию в Microsoft Outlook Desktop не интуитивно понятна возможность добавления столбца, отображающего фактический адрес электронной почты вместо имени. Microsoft пока не реализовала эту функцию в качестве простой опции, однако ее можно добавить в классическую версию Outlook для Windows с помощью встроенных инструментов.

.­.­.

SSL в локальной среде разработки

Во времена браузеров, поддерживающих только HTTPS, файлов cookie SameSite и реалистичных условий разработки важно работать локально с настоящими SSL-сертификатами. Let's Encrypt проделал в этом отношении новаторскую работу: с помощью certbot и Cloudflare создание и продление сертификатов wildcard стало быстрым и простым. Это позволяет вам получать зашифрованный доступ к вашим веб-проектам на любом устройстве (смартфоне, виртуальной машине, ...) в локальной сети или через VPN.

.­.­.

Создайте свою собственную большую языковую модель

«У машины может быть большая память, но она не может думать — если мы ее не научим». – Алан Тьюринг. Современные модели ИИ, такие как GPT-4 или Llama, основаны на огромных наборах данных и сложных математических структурах. Но что на самом деле за этим стоит? В этой статье мы рассмотрим ключевые компоненты, необходимые для создания языковой модели с нуля.

.­.­.

Хостинг OpenStreetMap самостоятельно

OpenStreetMap (OSM) — это бесплатная карта мира, созданная совместно людьми по всему миру — свободная, открытая и независимая. В то время как Google Maps, как лидер рынка, часто является первым выбором для цифровых карт, OSM опирается на совершенно другой принцип: совместное сообщество, которое собирает, улучшает и делает географические данные доступными бесплатно.

.­.­.

Доступ с PHP к Exchange/Office 365

Давно анонсированноетеперь реальность : Microsoft отключила аутентификацию по паролю для определенных протоколов в Exchange Online с сентября 2022 года в пользу oAuth2. Проблемы GitHub со многими библиотеками и сценариями резервного копирования ясно показывают, что переход застал многих администраторов врасплох. Ниже мы покажем, как вы можете продолжать получать доступ к содержимому вашего почтового ящика Exchange с помощью oAuth2 через PHP через IMAP.

.­.­.

Отправка писем задерживается

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

.­.­.

Управляйте браузерами с помощью ИИ

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

.­.­.

Отладка PHP с помощью Xdebug

Xdebug — это мощный инструмент отладки и профилирования для PHP, который помогает анализировать и оптимизировать PHP-приложения. Он поддерживает такие функции, как пошаговая отладка, измерение производительности и трассировка стека, что значительно упрощает поиск и устранение неисправностей и позволяет лучше понять код. Ниже приведено краткое руководство по настройке для использования Xdebug в VS Code.

.­.­.

О жидкостях

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

.­.­.

Сообщения о фиксации в Git с помощью ChatGPT

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

.­.­.

Прямоугольный февраль

Февраль иногда принимает в календаре необычайно привлекательную форму. Например, в феврале 2021 года можно было наблюдать такой «идеально прямоугольный февраль». Этот редкий эффект возникает, когда в феврале ровно \(28\) дней, а 1 февраля выпадает на понедельник. Но как часто это происходит на самом деле, и как долго нам придется ждать следующего раза?

.­.­.

Вертикальное центрирование в CSS

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

.­.­.

Анимируйте height: 0 до height: auto с помощью CSS

Переходы CSS - хороший способ создать интерактивность., transition в начальное состояние элемента, и браузер анимирует переход между двумя состояниями. Переходы для внутренних переменных элемента, таких как auto были проблемой для веб-разработчиков на протяжении десятилетий, и единственным выходом было динамическое вычисление высоты с помощью JavaScript.

.­.­.

Не существует целого числа между 0 и 1

Не существует \ (n \в \mathbb{Z}^+\), чтобы \ (0 < n < 1\).

.­.­.

Парадокс лифта

В 1950 году физики Джордж Гамов и Марвин Стерн заметили интересное явление: Гамов, у которого был офис на первом этаже шестиэтажного здания, заметил, что в пяти случаях из шести следующий лифт ехал вниз, хотя поднимался вверх. Стерн, работавший на пятом этаже, наблюдал обратное.

.­.­.

Quine

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

.­.­.

Ротация файлов с помощью сценария bash

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

.­.­.

Закон Бенфорда

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

.­.­.

Парадоксальное вычисление вероятности

У меня двое детей, сын, родившийся в четверг. Какова вероятность того, что у меня родится дочь? Обозначим дни недели числами \(1, 2, … , 7\) , где \(1\ =\) понедельник, \(2 =\) вторник и так далее. Теперь мы можем определить событие «В день \(n\) родился мальчик» как \(B_n\) , и аналогично для \(G_n\) .

.­.­.

Аргумент конца света

Предполагая, что число \ (Y\) всех людей, которые когда-либо родились и когда-нибудь родятся, ограничено, пусть \ (x\) - это ваше абсолютное положение от начала списка. Тогда \ (0 < \frac{x}{Y} \leq 1\). Теперь мы можем с вероятностью \ (95\%\) сказать, что вы находитесь среди последних \ (95\%\) всех людей, когда-либо родившихся, то есть \ (0.05 < \frac{x}{Y} \leq 1\) и, таким образом, \ (Y < \frac{x}{0.05} = \frac{100 \cdot x}{5} = 20 \cdot x\).

.­.­.

Парадокс пьяницы

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

.­.­.

Угадывание чисел

Мальчик загадывает число \(1\) , \(2\) или \(3\) , а девочке разрешается задать только один вопрос об этом числе. Мальчик может ответить только « да », « нет » или « не знаю». Умело задавая вопрос, девочке удается назвать правильное число, о котором задумал мальчик, после того, как мальчик ей ответит. Какой у вас вопрос?

.­.­.

Объект без происхождения

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

.­.­.

CI с действиями GitHub

В качестве альтернативы высоко ценимому Travis CI уже некоторое время доступны GitHub Actions . Как инструмент непрерывной интеграции, он очень хорошо интегрирован в платформу кода GitHub и теперь работает очень стабильно. GitHub Actions использует файлы конфигурации YAML, которые размещаются в репозитории, где должен выполняться рабочий процесс.

.­.­.

Парадокс Штейна

В 1961 году Джеймс и Штейн опубликовали статью « Оценка с квадратичными потерями ». Возьмите нормально распределенные данные с неизвестным средним значением \(\mu\) и дисперсией \(1\) . Если теперь вы выбираете случайное значение \(x\) из этих данных и должны оценить среднее значение \(\mu\) на основе этого, интуитивно \(x\) является разумной оценкой для \(\mu\) (поскольку присутствует нормальное распределение, случайно выбранное \(x\) , вероятно, близко к \(\mu\) ).

.­.­.

UUID в базах данных

UUID (Объекты универсального уникального идентификатора) — это 128-битные значения, которые используются в базах данных, помимо прочего, для уникальной идентификации записей таблиц. Они представлены в виде шестнадцатеричной строки, разделенной на пять групп, разделенных дефисами (пример: 09fe49b3-4d2b-471c-ac04-36c9e706b85f). Есть многочисленные Обсуждения о преимуществах и недостатках UUID в базах данных — они незаменимы в распределенных системах.

.­.­.

Очистка истории Git, часть 2

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

.­.­.

Ограничение памяти в WordPress

Вкратце: задавайте значения вручную или используйте значения по умолчанию. WP_MEMORY_LIMIT/WP_MAX_MEMORY_LIMIT не иметь никакого эффекта, если WP_MEMORY_LIMIT/WP_MAX_MEMORY_LIMIT меньше или равно ограничению памяти PHP (далее именуемому memory_limit называется) есть. Они используются для установки слишком низких значений memory_limit динамически до рекомендуемого минимума.

.­.­.

Быстрый совет: измените iframe

Если вы внедрили сторонний iframe (например, виджет), вы не сможете получить доступ к его содержимому ни с помощью CSS, ни с помощью JavaScript (из-за так называемой политики того же происхождения ). Однако существует очень простая процедура изменения любого кода (в том числе и в других файлах, которые перезагружаются внутри iframe). Для этого вы направляете URL-адрес через свой собственный прокси-сервер PHP и изменяете содержимое по своему усмотрению.

.­.­.

Монеты в приложении ANTON

ANTON — одно из самых популярных обучающих приложений для учащихся 1–10 классов. Класс. На первый взгляд геймифицированный аспект приобретения монет ("монет") может показаться взрослым странным - но он заметно приумножает мотивацию не только моих детей. Он даже сохраняет небольшую «подушку» из монет, к которым вы не прикасаетесь.

.­.­.

О надежности IBAN

Немецкий IBAN состоит из кода страны (DE), двухзначной контрольной цифры (согласно ISO 7064 ), кода банка (8 цифр) и номера счета (включая номер субсчета, 10 цифр, пропущенные цифры дополняются ведущими нулями), что в сумме составляет 22 символа. Для вычисления контрольной цифры сначала формируется последовательность из так называемого BBAN (код банка и номер счета), числового кода страны \(1314\) для Германии и контрольной цифры \(00\) .

.­.­.

Математика в игре Доббль

На нашем последнем семейном вечере игр дети с энтузиазмом достали игру «Доббл» (издание по мотивам «Гарри Поттера»). После пяти проигранных раундов (при этом моя карта явно не совпадала с игровой картой), я с удивлением обнаружил, что каждый игрок всегда может найти пару в каждом раунде. Однако мое недоверие лишь усугубилось новыми проигранными раундами — дети просто оказались быстрее.

.­.­.

Время блока биткойнов

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

e50bfacc95975a4e7545d83d8954645f

.­.­.

Корона математика

В еженедельном отчете RKI от 11.11.2021 на стр. 22 указано, что \(36\%\) пациентов с коронавирусом старше 60 лет в отделении интенсивной терапии уже были полностью вакцинированы. В этой возрастной группе \(87\%\) полностью вакцинированы на данный момент (см. Стр. 18).

.­.­.

Десятичные дроби

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

$$\frac{z}{n} = \frac{q_1}{1} + \frac{q_2}{10} + \dots + \frac{q_k}{10^k}$$

с \(k \in \mathbb{N}\) и \(q_k\) \(k-1\) -м местом справа после запятой.

.­.­.

Совет: автоматическое изменение версии узла

Для быстрой установки и смены версий узлов рекомендуется использовать nvm . Если вы хотите явно указать требуемую версию узла в проекте, вы помещаете файл с именем .nvmrc с точным номером версии (например, «12.10.0») в ту же папку, в которой находится package.json . Если вы теперь перейдете в папку, следующее расширение файла ~ / .bash_profile для bash выполнит команду nvm use , которая автоматически устанавливает эту версию:

fe497e1c7f9f1547263eb3bffe15f9f6

.­.­.

Используйте контейнерные запросы сегодня

С появлением адаптивного веб-дизайна разработчики постоянно просили о возможности стилизовать элементы DOM в зависимости от их фактического размера, а не от размера области просмотра браузера (используя медиа-запросы ). Фактически, запросы контейнеров (первоначально запросы элементов) — это, пожалуй, самая востребованная функция CSS, которой до сих пор не хватает браузерам.

.­.­.

Очистить историю Git

Конфиденциальные данные, такие как пароли, следует хранить в файлах .env и, по возможности, не в репозиториях Git. Однако, вероятно, с каждым из нас хотя бы раз случалось это по ошибке: быстрая публикация полезного скрипта Google Maps JS API в GitHub Gists (как "public") и непреднамеренное сокрытие собственного закрытого ключа API Google Maps.

.­.­.

Вырезайте SVG из изображений с помощью clip-path

Если вы хотите вырезать изображение из SVG, рекомендуется использовать свойство CSS `clip-path` . Следующий скрипт устраняет несколько препятствий: SVG-файлы можно сохранять в Illustrator, можно указать (относительный или абсолютный) URL-адрес SVG (в Chrome в настоящее время поддерживаются только встроенные SVG-файлы), а вырезанный фрагмент полностью адаптивен.

.­.­.

Совет: WP_Query и многострочные поля

Используя атрибут `meta_query` в мощном классе WordPress `WP_Query`, вы можете фильтровать записи, содержащие определенные значения в своих метаполях. Если вы создали многострочное метаполе (например, с помощью Advanced Custom Fields ) и хотите найти только записи, содержащие определенное значение в этом поле, разделенном строками, рекомендуется использовать регулярные выражения MySQL.

.­.­.

Встроенная интеграция анимации Adobe Animate

В предыдущей статье я описал, как можно легко интегрировать анимацию из Adobe Animate на веб-сайт с помощью экспорта APNG. Существует также собственный способ через HTML5 Canvas Export , но любой, кто когда-либо работал с ним, заметит, что проблемы возникают на каждом шагу (недостаточная отзывчивая поддержка, громоздкая интеграция в существующие веб-сайты, отсутствие различий в частоте кадров для анимации и т. д.). Здесь может помочь библиотека adobe-animate-embed .

.­.­.

Карты Google без ключа API

Обычно при интеграции Google Maps вы работаете с Maps JavaScript API , который требует ключа API и может привести к затратам, которые не следует недооценивать при более высоких числах доступа. Существуют отличные альтернативы, такие как mapbox или OpenStreetMap , но они еще не обладают разнообразием функций, предлагаемых Google. Сам Google также предлагает способ без ключа API через функцию общего доступа, которую мы можем использовать для наших целей.

.­.­.

Adobe Animate Экспорт APNG

Поддержка анимированных PNG-файлов в браузерах теперь настолько развита, что анимации, созданные в Animate CC, можно легко экспортировать в формат APNG, а затем встраивать в веб-страницу с помощью простого тега `<img>`. Это обеспечивает простую и высококачественную альтернативу методу публикации в Animate CC, который генерирует JavaScript. Необходимые шаги описаны ниже.

.­.­.

Расширьте поиск WordPress

Если вы хотите расширить встроенный поиск WordPress, включив в него, например, метаполя, рекомендуется ознакомиться с фильтрами, срабатывающими в результате поиска. Для обеспечения корректной работы пагинации и сохранения возможности улучшения поиска в будущем рекомендуется использовать хук `posts_search` . Следующий код, использующий функции REGEXP и ExtractValue , расширяет этот поиск, включая записи, содержащие один из введенных поисковых запросов во всех метаполях.

.­.­.

Расчет индекса видимости SISTRIX

Наряду с Xovi, инструмент SISTRIX является наиболее широко используемой программой анализа в Германии в области SEO. Индекс видимости зарекомендовал себя как квазистандарт для видимости страницы в поиске Google. Параметры, которые включены в его расчет , объясняются, например , здесь, здесь, здесь, здесь и здесь , но точная формула расчета официально не публикуется. Ниже приведены результаты моего личного исследования в течение шести месяцев, которые не претендуют на полноту или правильность.

.­.­.

Шедевр Годеля

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

.­.­.

Используйте WhatsApp через API

Несмотря на все проблемы с защитой данных, WhatsApp по-прежнему остается любимым мессенджером немцев. В дополнение к специальному приложению WhatsApp Business Facebook также создал официальный интерфейс WhatsApp Business API, чтобы сделать его более интересным для компаний. Если вы хотите программно отправлять сообщения WhatsApp из своего веб-приложения, есть и другие варианты.

.­.­.

Размытие страницы за наложением с помощью CSS

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

.­.­.

Совет: сплит-тестирование с Apache

Для простых A/B-тестов URL-адресов вам не понадобится мощный инструмент, такой как Google Optimize ; вы также можете реализовать A/B-тестирование с помощью Apache, используя файл .htaccess. Следующий фрагмент кода равномерно распределяет посетителей с двух страниц https://vielhuber.de/test1.php (Вариант 1) и https://vielhuber.de/test2.php (Вариант 2) между обеими версиями. Рандомизация основана на текущем времени сервера.

.­.­.

Об обозначениях разветвленных функций

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

$$f: \mathbb{R} \to \mathbb{R}, f(x) = \left\{\begin{matrix} 42, & \text{falls } x = 0 \\ x, & \text{sonst} \end{matrix}\right.$$

представить его в виде одной строки, используя четыре основных арифметических действия?

.­.­.

Серии дат в Google Таблицах

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

.­.­.

Совет: PHP clearstatcache

Найдите ошибку:

72aaa2dbd201d49fc2ee429ebf68f15b

.­.­.

Взлом Google Translate API

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

.­.­.

Совет: автоматическая пометка Git

При связывании GitHub с Composer обязательно присваивать номер версии с помощью команды `git tag` . Следующая команда командной строки определяет текущий тег и увеличивает его (в соответствии с SemVer ) на единицу номера версии. Например, версия 1.1.0 следует за 1.0.9. Если тег не присвоен, версия автоматически помечается тегом 1.0.0. Такие инструменты, как flimsy или ` git hooks`, сокращают этот длительный процесс присвоения тегов.

8cd852c96ec1e60e8a5ac1f3614b2397

.­.­.

Изменить триггер MySQL

К сожалению, MySQL не предоставляет функцию ALTER TRIGGER. Чтобы отредактировать существующий триггер, необходимо сначала удалить его, а затем создать заново. К оператору CREATE TRIGGER можно получить косвенный доступ через information_schema . Это позволяет нам косвенно изменять триггеры. Для этого внесите изменения в результат следующей команды SELECT (после изменения имен базы данных и триггера) и выполните запрос.

.­.­.

События изменения триггера в VanillaJS

VanillaJS был на одном уровне с ветераном jQuery почти во всех областях, начиная с ES6, и теперь намного превосходит его. Так что постепенный перенос устаревшего кода с jQuery окупается. Однако вы должны быть осторожны при запуске событий ручного изменения. Например, document.addEventListener не запускается для jQuery.change () . В следующем обзоре перечислены особенности.

.­.­.

Управление файлами cookie с помощью PHP и JS

Настройку файлов cookie с использованием собственных или сторонних скриптов можно точно контролировать с помощью PHP и JavaScript. Хотя это недостаточное решение для реализации решений по использованию файлов cookie после решения суда против Planet49 (здесь крайне важно, чтобы инструменты отслеживания, такие как Google Analytics, вообще не отслеживали и, следовательно, не устанавливали файлы cookie), в целом может иметь смысл вносить файлы cookie в белый/черный список.

.­.­.

Деактивировать устройства через скрипт в Windows

Чтобы сэкономить электроэнергию или уменьшить вашу собственную паранойю слежения, рекомендуется полностью отключать устройства, которые не используются на вашем компьютере. Такие устройства, как звуковые блоки или веб-камеры, можно активировать / деактивировать классическим способом с помощью диспетчера устройств. Все это также работает через скрипт. Стандартным способом сделать это раньше был devcon . Windows 10 теперь предлагает более удобный способ сделать это через PowerShell .

.­.­.

Размытие фона в Skype

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

.­.­.

Оптимизация загрузки OPcache PHP

Например, для веб-сайтов, основанных на WordPress , Joomla или Laravel и не имеющих пользовательского контента, рекомендуется хранить все страницы в статическом HTML-кэше и регенерировать кеш вручную (или автоматически) только в случае изменений в серверной части. Однако, если страница содержит динамический контент, который зависит от сеансов и файлов cookie, языка и местоположения, использование OPcache подходит.

.­.­.

Экспорт SVG из Illustrator

SVG играет центральную роль в современной сети. Они не только заменили шрифты значков, но также предлагают возможность манипулирования через CSS или JavaScript. Если вы хотите сохранить векторную графику для Интернета из Adobe Illustrator в формате SVG, вам необходимо выполнить некоторые настройки, чтобы избежать ошибок и сократить время загрузки, которые я представлю в следующей статье.

.­.­.

Проект Эйлер: Решетчатые пути

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

.­.­.

Автоматические обновления WordPress

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

.­.­.

Google Таблицы: Расширяющиеся формулы

Чтобы распространить формулы на целые столбцы в Google Sheets, мы рекомендуем использовать полезную функцию ARRAYFORMULA . К сожалению, это не работает в сочетании с некоторыми другими важными функциями, такими как QUERY или INDIRECT , поэтому вам придется полностью настраивать логику с помощью Google Apps Script или, как вариант, вручную копировать формулу до последней строки.

.­.­.

Парадокс Симпсона

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

.­.­.

Совет: Диспетчер тегов Google

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

.­.­.

Совет: точка доступа FRITZ! Box WLAN

Начиная с FRITZ! OS 07.10 и далее, в случае сбоя интернета FRITZ! Box может временно использовать беспроводную точку доступа сотового телефона в качестве запасного варианта. Функция скрыта в разделе Интернет> Данные доступа> Интернет-провайдер> Существующий доступ через WLAN . После этого FRITZ! Box сам работает как маршрутизатор и предоставляет сети собственный диапазон адресов. Когда Интернет снова станет доступен, вы просто сбросите настройки. Мне также пришлось проверить параметры WLAN> Радиосеть> активен диапазон частот 2,4 ГГц и Интернет> Данные доступа > IPv6> Поддержка IPv6 активна .

.­.­.

Цветок Жизни

«Цветок жизни» — это хорошо известный геометрический узор, напоминающий цветок, который на протяжении тысячелетий встречался в храмах, рукописях и, в последнее время, в популярной культуре. Этот узор также играет роль в эзотерике. Здесь мы оставим все это без внимания и сосредоточимся на простой конструкции геометрической формы, которая состоит из нескольких равномерно расположенных, перекрывающихся кругов.

.­.­.

Задержка электронной почты в Outlook

Асинхронное средство связи электронная почта — несмотря на все пророчества о гибели Slack и Discord — является доминирующим средством коммуникации в бизнесе во всем мире. Помимо Inbox Zero от Merlin Mann, существует множество других стратегий борьбы с ежедневным потоком электронных писем, включая так называемую задержку электронной почты, то есть задержку доставки электронных писем.

.­.­.

Спираль чисел

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

..  9 10 11 12
23  8  1  2 13
22  7  0  3 14
21  6  5  4 15
20 19 18 17 16
.­.­.

Права на чтение в Google Таблицах

При работе с Google Sheets можно задавать детальные правила редактирования листов, столбцов и строк в таблице на основе действий пользователей. К сожалению, возможности ограничить доступ для чтения нет. Это было бы очень полезно во многих ситуациях, например, чтобы показывать клиентам только те заявки, которые к ним относятся, или сотрудникам — только те проекты, над которыми они работают.

.­.­.

Пряжа plug'n'play

npm — менеджер пакетов по умолчанию для Node.js. Facebook уже давно разрабатывает альтернативное решение для управления пакетами под названием Yarn . Yarn, похоже, постепенно исчезает из файлов чтения GitHub в качестве решения по умолчанию, а статистика на официальном сайте показывает, что только часть установок пакетов выполняется с помощью Yarn. Тем не менее, стоит посмотреть нестандартно.

.­.­.

Конвертировать PDF в LaTeX


Система набора \(\TeX\) была разработана в 1977 году легендарным Дональдом Э. Кнутом . Программный пакет \(\LaTeX\) по-прежнему является частью стандартного репертуара при создании научных статей. С помощью следующих двух инструментов уже созданные PDF-файлы и рукописные заметки можно полностью автоматически преобразовать в TeX. Результаты очень многообещающие.

.­.­.

Аргумент моделирования

Аргумент Ника Бострома о моделировании впечатляюще прост и ясен. Он не пытается доказать, что мы живем в симуляции, а вместо этого элегантно формулирует три возможности, одна из которых должна быть верной. Илон Маск также выступает за аналогичный тезис, который сделал эту идею известной широкой публике. Официальной газете более 14 лет, и столько же страниц короткие. Центральное утверждение легко понять и компактно.

.­.­.

Критическая ошибка при использовании WPML + ACF

Мощные плагины WPML для многоязычия и расширенные настраиваемые поля для ваших собственных полей являются стандартным оборудованием во многих установках. Досадно, когда сбои в работе и потеря данных происходят одновременно. Отчеты об ошибках по этому вопросу существуют несколько лет назад и остаются без ответа ( здесь, здесь, здесь, здесь и здесь ). Я только что присмотрелся к проблеме.

.­.­.

Загрузка файла в Facebook в браузере приложений

На некоторых телефонах Android встроенные браузеры Facebook и Instagram (на сегодняшний день) ведут себя неправильно, когда атрибут Accept указан для поля загрузки на рекламируемой или связанной целевой странице. Таким образом, кнопка не имела никакой функции. Если открыть страницу во внешнем, обычном браузере вне приложения Facebook, все в порядке. Это раздражает (тем более, что об этом сообщалось уже давно), но это можно решить обходным путем.

.­.­.

Chrome Devtools: перемещение элементов DOM

Инструменты разработчика Google Chrome — одни из самых мощных на рынке браузеров. Новые функции добавляются ежемесячно, и Google в сжатом виде представляет их на YouTube . Но часто радость приносят мелочи. Если вы хотите удалить элементы DOM в Google Chrome, вы можете сделать это с помощью клавиши Delete. Но только сегодня я понял, что элементы DOM также можно просто перемещать с помощью перетаскивания.:

.­.­.

Совет: git status --r

Золотое правило вселенной git: «Делайте коммиты рано и часто». Если ночь была немного длиннее или вам просто нужен обзор текущей ситуации на вашем компьютере, команда приведет вас

d8a38f92d0baa14f9d4568826c13ad46

"git status" для всех репозиториев, которые находятся в текущей папке или в любой подпапке, и объединяет значения в хороший обзор:

.­.­.

Стек LAMP в подсистеме Windows для Linux

При поиске оптимальной среды разработки Windows 10 предлагает широкий спектр вариантов, помимо готовых решений, таких как XAMPP , WAMP и MAMP , а также ручных установок и решений для виртуализации, таких как Vagrant ( ScotchBox ) и Docker ( DevilBox , Laradock ). Однако ни одно из решений не соответствовало моим требованиям — таким как свобода настройки, настоящие SSL-сертификаты с подстановочными знаками, доступ со всех устройств в локальной сети, а также высокая стабильность и производительность — за исключением одного.

.­.­.

Уловки для красноречивых отношений в Laravel

Одной из сильных сторон Laravel является его элегантный синтаксис. Если у вас много моделей и отношений в Laravel (из-за большого количества таблиц в базе данных), обход часто может закончиться менее элегантным кодом. Со временем мне пригодились три небольших расширения, о которых я хотел бы кратко рассказать ниже. Для этого мы просто используем наследование, магические методы и собственные коллекции.

.­.­.

Запретить публичный доступ к .git

Система контроля версий Git в настоящее время является стандартной практикой практически в каждом веб-проекте и среде (включая производственную). Git всегда создает подкаталог с именем `.git` , и если он расположен на том же уровне, что и общедоступный каталог веб-сайта, доступ к конфиденциальным файлам может быть открыт для всех (например, доступ к `/.git/logs /HEAD` отображает последние коммиты). В этом руководстве подробно объясняется, как клонировать другой репозиторий Git даже без просмотра содержимого каталога.

.­.­.

Node.js / npm / Composer без рута

В более старом сообщении блога я описал, как бесплатно разместить Node.js с помощью Heroku . Теперь я покажу вам, как вы можете установить Node.js , npm и Composer на любой другой общий хост без прав root с помощью нескольких строк кода. С его помощью вы можете устанавливать пакеты, развертывать приложения Vue.js или просто запускать сервер Express.js. Мы всегда работаем в каталоге пользователя и используем nvm - диспетчер пакетов узлов.

.­.­.

Ошибка ассоциативных массивов в PHP <7.2

В PHP <7.2 вы можете создавать массивы, к которым больше нельзя получить доступ должным образом.:

91367d1c4636fd753b381406024e303c

С ним можно кое-что делать.

.­.­.

Выполнять команды сразу после SSH-соединения

Следующая команда устанавливает SSH-соединение с сервером, выполняет несколько команд (например, переходит в подкаталог и запускает `git status` ) и оставляет оболочку открытой. При этом загружается файл `.bashrc`, который включает цветные подоболочки. Хитрость заключается в сохранении временного файла `/tmp/initfile`, содержащего нужные команды, и запуске подоболочки (в нашем случае, `bash`) с помощью команды `--init-file`. Внутри этого файла `initfile` тот же файл немедленно удаляется, чтобы не оставить следов.

.­.­.

Сетевой диск от имени администратора

При подключении сетевого диска в проводнике Windows это изменение применяется не ко всей системе, а только к текущей учетной записи пользователя. Это означает, что приложение, работающее с правами администратора, не сможет получить доступ к этому сетевому диску. Это легко изменить: создайте новое значение DWORD (32-разрядное) с именем EnableLinkedConnections и значением 1 в реестре по адресу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System и перезагрузите компьютер. После этого подключенные сетевые диски будут видны везде.

.­.­.

Совет: включите папку как диск

Если вы хотите быстро получить доступ к локальной папке под Windows, которую вы используете снова и снова, вы можете просто назначить ей собственную букву диска. Есть только обход через «Подключить сетевой диск», так как вы не можете указать путь, например, C: \ Users \ David \ Downloads. Решением является так называемая административная общая папка диска, которая существует по умолчанию для каждой папки: в приведенном выше примере это будет \\ localhost \ c $ \ Users \ David \ Downloads .

.­.­.

Ловить лягушек

Лягушка прыгает по числовой прямой, и цель — поймать её. Прыжки и ловля чередуются. Лягушка начинает движение из позиции \(s \in \mathbb{Z}\) и с каждым ходом прыгает на расстояние \(z \in \mathbb{Z}\) (если \(z>0\) , она прыгает вправо; в противном случае — влево). \(z\) одинаково для каждого прыжка. Поимка лягушки включает в себя указание целочисленной позиции. Ни \(z\) , ни \(s\) неизвестны. Мы покажем, что существует процедура, которая всегда позволяет нам поймать лягушку.

.­.­.

Длинные имена файлов в Windows 10

Не только при использовании npm в Windows вы сталкиваетесь с ограничением, которому уже почти 30 лет и которое ограничивает пути к папкам и файлам максимум 255 символами. Тут не NTFS виновата, а LFN . Это приводит к досадным ошибкам и несовместимости между операционными системами. Это неудачная ситуация во времена WSL , но, к счастью, вы уже некоторое время можете исправить ее самостоятельно в реестре.

.­.­.

Очереди Laravel на localhost

В PHP-фреймворке Laravel в производственной среде такие обработчики, как supervisor, обеспечивают выполнение задач, хранящихся, например, в Redis . Если вы хотите полностью отказаться от этого на локальном сервере, вы можете использовать драйвер синхронизации для немедленного выполнения задач. Однако это имеет тот недостаток, что текущий PHP-процесс блокируется, и запрос зависает до завершения задачи.

.­.­.

Совет: объединяйте цели в Google Analytics

С помощью библиотеки JavaScript analytics.js из Google Analytics можно отслеживать любые события на веб-сайтах. К таким событиям относятся, например, точное измерение времени пребывания на сайте, максимальной глубины прокрутки посетителями или других индивидуальных действий, таких как отправка форм. Если впоследствии вы захотите оценить эффективность рекламных кампаний или провести A/B-тестирование, вы создадите так называемые цели.

.­.­.

Прагматическая инвалидация кеша

Рендеринг на стороне сервера теперь является стандартной практикой для веб-сайтов и приложений. Браузеры, такие как Google Chrome, также стремятся кэшировать как можно больше данных, чтобы минимизировать время загрузки для последующих запросов. Аннулирование кэша файлов CSS, JS и изображений может быть достигнуто с помощью `mod_pagespeed` , заголовка управления `Expires` / `Cache` , манифеста кэша или, более прагматично и напрямую, путем добавления пользовательских параметров к имени файла.

.­.­.

Bitbucket и SSH-ключи

Провайдер Bitbucket не предлагает (даже в платных тарифах Standard и Premium) возможность хранения ключей SSH с правами записи на уровне репозитория. Хранить ваш личный SSH-ключ на рабочем сервере невозможно, иначе вы сможете получить доступ ко всем другим проектам, над которыми в настоящее время работаете, оттуда. Есть так называемые ключи доступа , но они позволяют только читать права.

.­.­.

Windows Sysinternals через сетевой диск

Инструменты Sysinternals от Марка Руссиновича необходимы для любого компьютера под управлением Windows. Чтобы всегда иметь под рукой последнюю версию, подключите диск как сетевой. Просто выполните команду `net use s: \\live.sysinternals.com\DavWWWRoot` в командной строке (от имени обычного пользователя). Это обеспечит портативный доступ к полезным инструментам, таким как PsList, PsKill и Process Explorer, на диске S.

.­.­.

Совет: Google Таблицы и Недели Календаря

При выводе календарных недель для определенной даты нужно быть осторожным в Google Таблицах (как и в Microsoft Excel). Функция = КАЛЕНДАРНАЯ НЕДЕЛЯ (СЕГОДНЯ ()) вычисляет с использованием американского стандарта, для которого первый день года всегда присваивается календарной неделе 1. В Германии это определяется по- другому: здесь первая календарная неделя - это неделя, с которой по крайней мере 4 дня приходятся на новый год. В Google Таблицах вы можете решить эту проблему (среди других интересных альтернатив, таких как = КОРОТКИЙ ((СЕГОДНЯ () - ДАТА (ГОД (СЕГОДНЯ () - ОТДЫХ (СЕГОДНЯ () - 2; 7) +3); 1; ОТДЫХ (СЕГОДНЯ ( ) -2; 7) -9)) / 7) и измененный = КАЛЕНДАРНАЯ НЕДЕЛЯ (TODAY (); 21) ) легко с помощью специально разработанной функции = ISOWEEKNUM (TODAY ()) .

.­.­.

Самоподписанные SSL-сертификаты в Chrome 58

Начиная с Let's Encrypt , зашифрованные веб-сайты стали стандартной практикой. SSL-сертификаты также практически незаменимы при локальной разработке (например, navigator.geolocation требует локального SSL-шифрования). Начиная с версии Chrome 58, поддержка CN (Common Name) была прекращена, и теперь обязательным является SAN (Subject Alternative Name). В результате Chrome больше не принимает SSL-сертификаты, созданные традиционными методами .

.­.­.

В два раза старше двух человек

Рассмотрим двух людей \(A\) и \(B\) , у которых разные дни рождения, причем \(A\) моложе, чем \(B\) . Покажите: существует ровно два возрастных созвездия \(a,b \in \mathbb{N}\) к которым применимо следующее: \(2\cdot a = b\) . Сначала мы устанавливаем \(d \in \mathbb{R}^+\) как разницу в возрасте между \(A\) и \(B\) при рождении \(A\) с \( d = d_0 + d_1 \) , \( d_0 \in \mathbb{N}_0, d_1 \in \mathbb{R}, d_1 \in [0;1[\) . Теперь мы рассмотрим произвольное время \(x \in \mathbb{R}^+\) после рождения \(A\) с \(x = x_0 + x_1\) , \(x_0 \in \mathbb{N}_0, x_1 \in \mathbb{R}, x_1 \in [0;1[\) .

.­.­.

Git и пустые папки

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

.­.­.

Бесплатный хостинг Node.js на Heroku

Хостинг для Node.js все еще не очень распространен, особенно в немецкоязычных странах. Американская облачная компания Heroku предлагает здесь решение - и даже бесплатно . Вы всегда замечаете парадигму «Создавайте приложения ... а не инфраструктуру» и почти не имеете никаких ограничений. В качестве примера мы реализуем небольшое задание cron на основе PhantomJS , которое каждый день отбрасывает веб-сайт и отправляет заголовок страницы по электронной почте.

.­.­.

Функция спаривания Кантора

В дополнение к диагональным аргументам Георг Кантор также разработал функцию спаривания Кантора \(\mathbb{N}^2 \to \mathbb{W}, \quad c(x,y) = \binom{x+y+1}{2}+x = z\) , который кодирует любые два числа \(x,y \in \mathbb{N}\) в новое число \(z \in \mathbb{N}\) . Например, \(c(3,4)=\binom{3+4+1}{2}+3 = \binom{8}{2}+3=\frac{8!}{6!\cdot 2!} +3 = 31 = z\) уникальное кодирование чисел \(3\) и \(4\) в числе \(31\) . Показать: набор значений \(\mathbb{W} = \mathbb{N}\) , т.е. \(z\) принимает все натуральные числа.

.­.­.

Земля и горох

Рассмотрим Землю (как сферу с \(r_1 = 6370km\) ) и горошину (как сферу с \(r_2 = 2mm\) ) и протяните веревку через экватор так, чтобы она плотно прилегала к поверхности. Теперь вытяните обе веревки на один метр каждую. Оба троса теперь должны лежать полностью вытянутыми над экватором – но они уже не полностью находятся на поверхности, а плавают над экватором. На какой высоте над землей плавает веревка, на какой высоте над горошиной?

.­.­.

Вероятности на аналоговых часах

В каком% времени суток все три стрелки аналоговых часов находятся в правой половине циферблата? Во-первых, посмотрите на часовую стрелку, которая находится справа каждые 12 из 24 часов (50%). С этого момента минутная стрелка будет находиться справа через 6 часов из 12 (25%). Из этих 6 часов секундная стрелка проводит 3 часа на правой стороне (12,5%).

.­.­.

Laravel: работа с красноречивыми отношениями

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

.­.­.

Bitbucket: удалить папку из истории Git

При размещении Git на Bitbucket существует жесткий лимит в 2 ГБ — если он превышен, у вас будет доступ к репозиторию только для чтения. Чтобы предотвратить это, вы можете, например, задним числом удалить большие папки или файлы из ваших коммитов. Но и в других случаях (если данные доступа попали в историю или node_modules снова перешли в мастер) вам придется задним числом манипулировать историей Git, вопреки ее природе.

.­.­.

Интегрировать SSL-сертификат от DomainFactory в IIS

В эпоху Let's Encrypt зашифрованные веб-сайты стали стандартом. Однако часто также требуются сертификаты с подстановочными знаками или расширенные сертификаты с особо надежной проверкой владельца. DomainFactory предлагает экономичные SSL-сертификаты, которые также можно использовать вне сети. Настройка на современном сервере IIS возможна без запроса на подписание сертификата (CSR) с использованием OpenSSL . Ниже я кратко опишу необходимые шаги.

.­.­.

Парадоксальная выигрышная стратегия при угадывании чисел

Томас М. Ковер задал следующий удивительный вопрос в 1987 году в «Открытых проблемах коммуникации и вычислений»: Игрок \(X\) записывает два разных и случайно выбранных натуральных числа \(A\) и \(B\) в два разных. Кусок бумаги и положите лицевой стороной вниз на стол. Игрок \(Y\) теперь случайным образом выбирает один из этих клочков бумаги, видит число и должен решить, больше или меньше это число, чем другое число, которое все еще лежит лицом вниз на столе.

.­.­.

Футбол и линейная алгебра

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

.­.­.

Laravel: отладка шаблона Blade

При отладке шаблонов блейдов в Laravel 5.* вы часто получаете бессмысленные сообщения об ошибках, указывающие на кэшированные представления. Раньше все было лучше: представление отладки в версии 4 содержало больше полезных функций, а также было визуально более привлекательным. С помощью нескольких строк кода вы можете вернуть эту функциональность с помощью «упс» («Ошибки PHP для крутых ребят»).

.­.­.

Гармоничное отображение логотипов с помощью JavaScript

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

.­.­.

Проверить наличие переменных в PHP / JS

При ежедневной работе с переменными в PHP и JavaScript часто возникает вопрос, является ли переменная пустой. Для проверки полезно знать собственные функции и их различия. К сожалению, нет простого способа интуитивно проверить, присутствует ли переменная или нет. Приведенная ниже матрица иллюстрирует, что под этим подразумевается. Однако то, что вы хотите, можно дополнить небольшими вспомогательными функциями.

.­.­.

Массовые звонки с sipgate.io

С помощью sipgate.io компания Sipgate создала захватывающий облачный API, с помощью которого можно получить множество опций для интернет-телефонии. Учетная запись является бесплатной, и есть также возможность бесплатно установить любой бесплатный номер отправителя в магазине функций. Документация sipgate.io по-прежнему может быть расширена, но, немного прочитав официальный Sipgate API, можно быстро реализовать интересные вещи.

.­.­.

Рекурсия в SQL

Реляционные системы управления базами данных, основанные на SQL, лишь частично подходят для иерархических или рекурсивных запросов. Для этого лучше подходят другие системы, такие как ArangoDB (об этом был отличный доклад на GOTO 2016 ). Однако также возможно создавать рекурсивные запросы в SQL с использованием общих табличных выражений (Common Table Expressions) , что позволяет, например, запрашивать все предки и потомки из классических таблиц «родитель/потомок».

.­.­.

WordPress: отключить архивные страницы

По данным w3techs.com , около 27,4% всех веб-сайтов во всем мире в настоящее время работают с помощью WordPress. В очень многих случаях это не блоги. WordPress автоматически генерирует множество, часто неиспользуемых URL-адресов и создает столько ссылок, проиндексированных Google, что оператор веб-сайта даже не отображал их на экране. Все это можно отключить простой командой.

.­.­.

Массовое переименование полей формы PDF

Если вы, как и я, столкнетесь с проблемой переименования тысяч имен полей формы, идеально подойдет консоль JavaScript, включенная в Acrobat. При этом вы можете не только выполнить любой код JavaScript, но и получить доступ ко всему содержимому PDF-файла (включая поля формы). Поскольку в JS API нет собственной функции для переименования, поля формы копируются со всеми их свойствами и получают новое имя.

.­.­.

Торговое ПО: изменение варианта ремонта

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

.­.­.

Одна строка для бесконечности простых чисел

Существует множество доказательств бесконечности простых чисел - известная теорема Евклида из Книги Элементов не пропущена ни в одном базовом курсе теории чисел. В American Mathematical Monthly (выпуск 122) в 2015 году Сэм Нортшилд опубликовал не менее элегантное доказательство противоречия в виде однострочного текста, о котором я не хочу от вас утаивать (с краткими комментариями).

.­.­.

Сделайте командную строку Windows ярче

Скучную командную строку Windows можно визуально обновить, выполнив несколько простых шагов. Таким образом, вы можете не только настроить цвет и размер командной строки, но и расширить ее функционально (увеличить буфер, установить большой набор инструментов UNIX). Хотя командная строка не похожа на PowerShell 6.0 или новую оболочку Windows 10 Bash Shell , ее не нужно прятать для повседневных задач.

.­.­.

Динамические URL-адреса в Joomla

В системах управления контентом URL-адреса часто не предопределены и, следовательно, не создаются статически (как записи или пункты меню) заранее, а обращаются к объектам из базы данных. Подобно WordPress ( как описано здесь ), в Joomla также можно создавать динамические структуры URL-адресов (независимо от внутренней системы псевдонимов). Этого можно добиться либо с помощью JRouter , либо с помощью одной строки кода в файле .htaccess.

.­.­.

JavaScript PasteJacking

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

.­.­.

Поменять местами столбцы в PostgreSQL

Обмен столбцами таблицы SQL является частью стандартного репертуара MySQL - это (пока) не поддерживается в PostgreSQL. Хотя официальная вики посвящает проблеме отдельную статью , в ней не показано практического решения, которое также поддерживает представления, индексы и триггеры. Следующий класс выполняет эту работу (как для MySQL, так и для PostgreSQL) либо в командной строке, либо непосредственно в Laravel 5.

.­.­.

Совет для проводника Windows

Если вы хотите быстро открыть командную строку в папке в проводнике Windows, щелкните (на один уровень выше) правой кнопкой мыши и удерживайте нажатой клавишу Shift в папке, а затем выберите «Открыть командную строку здесь» из контекстного меню. Я только что обнаружил другой, более быстрый способ, когда вы находитесь внутри папки: здесь вы нажимаете на текущий путь к папке, набираете «cmd» и подтверждаете нажатием Enter.

.­.­.

Категории WordPress: просмотр в виде дерева / наследование

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

.­.­.

PHP 7 и оператор космического корабля

В дополнение к новым функциям, таким как подсказка типов для скалярных типов данных или оптимизированная производительность , PHP 7 также содержит множество новых полезных расширений языка. «Оператор космического корабля» наконец-то попал в мир PHP (программисты на Ruby и Perl знали его давно). \($a <=> $b\) возвращает \(0\) тогда и только тогда, когда оба операнда равны, \(1\) если левый больше, и \(-1\) противном случае.

.­.­.

IIS 7.5 PHP FastCGI timeout

Если вы интегрируете PHP через FastCGI в IIS 7.5, каждый скрипт по умолчанию прерывается через 600 секунд (т. е. 10 минут). Изменение известной переменной «max_execution_time» в php.ini на это не влияет; вы также должны (также) настроить параметры FastCGI. Для этого IIS предлагает удобный интерфейс управления соответствующими переменными.

.­.­.

Парадокс стохастики

Теория условной вероятности влечет за собой красивые задачи с нелогичным решением. Помимо хорошо известной проблемы братьев и сестер , я сейчас кратко рассмотрю еще один пример: «Теперь у меня двое детей. Один из них - мальчик, родился в четверг. Какова вероятность того, что другой ребенок тоже мальчик?»

.­.­.

Git, Shopware и пустые папки

Система контроля версий файлов Git проста, быстра и портативна. Git всегда обрабатывает объекты, а именно файлы. Папки создаются только в том случае, если в них есть файлы, иначе Git даже не запишет их. В некоторых проектах это имеет неприятные побочные эффекты. Например, для функционирования система Shopware shop полагается на строгое соблюдение структуры папок.

.­.­.

Посуда: индивидуальные расходы на доставку

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

.­.­.

Динамические постоянные ссылки в WordPress

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

.­.­.

Поврежденные гиперссылки в Word и Excel

Можно было бы ожидать, что открытие гиперссылок из документа Word/Excel запустит браузер по умолчанию с нужным URL-адресом. Как ни странно, это не так, что приводит к нежелательным побочным эффектам и делает невозможным создание ссылок на страницы, защищенные авторизацией на основе сессий или cookie, в этих программах Office.

.­.­.

Парадокс ко Дню отца

Сегодня ко Дню отца дочь дарит отцу картину, которую она нарисовала сама и которую так долго ждал от нее. Дочь говорит: «Я подарю вам картину, которую вы желали, и мой подарок будет сюрпризом». Отец делает паузу и обдумывает истинность этого утверждения.

.­.­.

Интегрируйте динамические скрипты с HTTPS и без него

Если вы включаете незашифрованные сценарии в область <head> и вызываете страницу с существующим зашифрованным сертификатом SSL, эти сценарии блокируются и, следовательно, не выполняются. Если вы просто опустите протокол, все скрипты автоматически вызываются в зашифрованном виде, если доступ к веб-сайту осуществляется через https: // - в противном случае - без шифрования.

.­.­.

Удобство использования в раскрывающихся меню

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

.­.­.

Shopware: автоматическое отключение вариантов

В Shopware весь товар деактивируется в случае реального заказа на продажу, если у всех вариантов уровень запасов меньше или равен 0. Чтобы реализовать это в качестве варианта, я запрограммировал небольшой плагин, Bootstrap.php которого я предоставлю ниже.

.­.­.

Двойной запрос пароля с SSL

Следующий сценарий всегда приводит к нежелательному побочному эффекту: если вы защищаете свой сайт с помощью htaccess/htpasswd и одновременно используете SSL-соединение, вам всегда приходится вводить один и тот же пароль дважды (один раз для http и еще раз для https после успешного ввода). Эту проблему можно легко решить, используя разделы конфигурации, появившиеся в Apache 2.4.

.­.­.

Многострочные строки в JavaScript

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

.­.­.

mail () в PHP с UTF-8 и умляутами

Отправку электронной почты с помощью PHP лучше всего реализовать с помощью мощных классов, таких как PHPMailer . Удобные функции оболочки позволяют использовать содержимое UTF-8, вставлять изображения и отправлять зашифрованные вложения с помощью всего нескольких строк кода. Если вы хотите сэкономить накладные расходы и использовать PHP-функцию mail () вопреки рекомендациям, у вас могут возникнуть проблемы при использовании umlauts и UTF-8 в последнем случае.

.­.­.

Google PageSpeed ​​Insights vs. Гугл Аналитика

Инструменты проверки, такие как W3C Markup Validation Service или Google PageSpeed Insights, полезны для объективной оценки кода и производительности веб-сайта. Google, в частности, оказывает влияние на целую отрасль, используя такие концепции, как «в верхней части экрана» , а также устанавливает строгие, но полезные рекомендации в отношении сжатия изображений и кэширования. Однако, делая это, Google иногда может сам себе создавать проблемы.

.­.­.

Добро пожаловать в JavaScript 2.0

JavaScript доминирует в веб-разработке, а ECMAScript, ядро этого языка, развивается. Новая спецификация (ES6 или JS2), ожидаемая в середине года, привносит множество нововведений, которые уже можно протестировать. В настоящее время Firefox предлагает наилучшую поддержку , но также возможны полифилы через транспайлеры, такие как Google Traceur . Ниже приведён краткий обзор новых возможностей ES6.

.­.­.

0,99999... = 1?

Будь то в школе или в университете: время от времени \( 0,99999... = 1 \) интересный вопрос, включающий вопрос о том, верно ли следующее уравнение: \( 0,99999... = 1 \) . Хотя бесконечность \(0,99999... = A\) в левой части уравнения, мы даем ей имя: \(0,99999... = A\) . После умножения на множитель \(10\) и простых алгебраических преобразований мы получаем первое поразительное понимание.

.­.­.

SQL: низкая производительность, несмотря на индекс

Я только что столкнулся со следующей проблемой производительности базы данных SQL: в таблице SQL под названием «пользователи» с ~ 1 000 000 записей потребовалось недопустимо 28 секунд, чтобы определить количество сегодняшних регистраций. Время регистраций было сохранено в формате «Ymd H: i: s» в столбце «создано».

.­.­.

Маленькая шахматная задача

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

.­.­.

Файлы, доступные в Интернете с помощью OneDrive

Если Один диск, Dropbox, Гугл драйв, OwnCloud, Box.net: Вне зависимости от того, в каком ящике вы храните файлы - сервисы практически одинаковые. Клиенты, доступные для всех настольных и мобильных систем, стандартные незашифрованные файлы и параметры совместного использования отличаются незначительно. Но OneDrive, который был постоянно интегрирован в систему с Windows 8.1, имеет особую особенность: только файлы доступны в Интернете.

.­.­.

PHP: доступ к файлам с умляутами под Windows

Файлы на веб-серверах всегда должны храниться без пробелов (не "this is an image.jpg"), без умлаутов или специальных символов (не "football.jpg"), без обратных косых черт (не "work\car.jpg") и в нижнем регистре (не "test.JPG"). Однако недавно в рамках клиентского проекта мне пришлось получить доступ к большому количеству предопределенных файлов с произвольными именами и обработать их.

.­.­.

SQL-запрос для определения списка ранжирования

Сегодня во время работы над клиентским проектом я столкнулся со следующей задачей: взять таблицу SQL «пользователь» со столбцами «id» и «оценка» и определить список ранжирования всех пользователей, отсортированный по «оценке», в котором пользователи с одинаковым рейтингом получают одинаковый рейтинг. Используя определяемые пользователем переменные, эту задачу можно решить интуитивно и легко.

.­.­.

Facebook SDK: проверка токенов на стороне сервера

При работе с Facebook SDK (точнее, при реализации функции входа в Facebook в интерфейсе REST) ​​токен, полученный клиентом от Facebook, должен быть сначала проверен на достоверность сервером перед выполнением дальнейших операций. .

.­.­.

Chrome DevTools: адресация элементов DOM

Будь то Chrome, Firefox, Opera, Safari или даже Internet Explorer: хотя хорошо спроектированные инструменты разработчика были уникальным преимуществом Firefox и популярного плагина Firebug еще несколько лет назад, мощные инструменты разработчика теперь являются частью стандартной области применения каждого браузера, в котором есть что открыть. дает.

.­.­.

Доступ к файловой системе с помощью SQL

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

.­.­.

Анимированные фоны с холстом

Анимированные векторные фоны могут разнообразить веб-ландшафт, характеризующийся полноэкранными фотографиями и видео. Было бы хорошо, если бы это сопровождалось временем загрузки и широкой аппаратной и программной поддержкой. Одно из решений: холст. Элемент HTML, управляемый JavaScript, поддерживается всеми текущими браузерами и воспроизводится с высокой производительностью на мобильных устройствах.

.­.­.

Фиксированное соотношение сторон для элементов HTML

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

.­.­.

Решение суда об использовании стоковых фотографий

После того, как на прошлой неделе Региональный суд Кёльна отступил от своих решений по скандалу с RedTube и заявил, что никогда не должен был разрешать публикацию спорных IP-адресов, он вынес еще одно крайне спорное и сомнительное решение — постановление № 14 O 427/13: имя автора стоковых фотографий от конкретного агентства изображений должно быть указано и при прямом доступе к его изображениям по их URL-адресу.

.­.­.

Goodbye Block & Inline - Добро пожаловать в HTML5

Нововведения спецификации HTML5 многочисленны, и многие из них уже поддерживаются большинством браузеров — ниже я хотел бы выделить интересное изменение правил вложенности элементов. HTML всегда различал блочные и строчные элементы. Например, в определении типа документа HTML4 h1, p и div называются блочными элементами, а a, span и img — встроенными элементами.

.­.­.

Ведение журнала HTTP в IIS и Apache

И Apache в Unix, и IIS в системах Windows сразу же регистрируют HTTP-запросы в виде файла. Чтобы защититься от хакерских атак, запросы к вашему собственному веб-сайту следует регулярно оценивать и анализировать вручную и автоматически (например, с помощью анализаторов файлов журналов, таких как AWStats ). Например, в широко используемых конфигурациях пути к соответствующим файлам журналов следующие::

  • /var/log/apache2/access.log (Пример: Ubuntu 12.04, Apache 2.2.)
  • C:\inetpub\logs\LogFiles\W3SVC1\u_ex<YYMMDD>.log (Пример: Windows Server 2012 R2, IIS 8.5.)
.­.­.

Joomla, IIS и права на каталог

При интеграции Joomla 3.2 на Windows Server 2008 R2 с IIS 7.5 часто возникают проблемы с правами доступа к каталогам, которые часто неадекватно решаются с помощью слишком щедрых настроек. Следующее решение безопасно и полностью функционально:

  • Группе IIS_IUSRS требуются права для C: \ inetpub \ wwwroot \: чтение и выполнение, отображение содержимого папки, чтение, запись
  • Группе IIS_IUSRS требуются права для C: \ Windows \ Temp \: чтение и выполнение, отображение содержимого папки, чтение, запись
  • Пользователь IUSR должен быть в группе IIS_IUSRS (Управление компьютером> Локальные пользователи и группы> Группы)

Если вам нужны дополнительные специальные права доступа к каталогу (например, для SSH или FTP) для всех файлов, загружаемых через PHP, вам также следует установить их для папки C:\Windows\Temp\. Если вы загружаете файл через PHP, PHP сначала копирует этот файл во временный путь, а затем в конечный путь. Если файл оказался во временном каталоге, он наследует его права и сохраняет их после перемещения в конечный каталог.

.­.­.

Анонимный онлайн: невозможно?

Во время скандала с АНБ не только пользователи, разбирающиеся в сетях, задаются вопросом, можно ли и как можно анонимно перемещаться в Интернете, чтобы избежать мании сбора данных властями и секретными службами. Однако это часто приводит к ошибкам и неверным предположениям. Основное заблуждение - это сокращение анонимности до обфускации IP-адреса.

.­.­.

McFIT - новый логотип, новый имидж

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

.­.­.

Photoshop: путешествие в прошлое

Когда братья Томас и Джон Нолл начали разрабатывать Adobe Photoshop в 1987 году, я еще не родился. Сегодня, в 2013 году, программа является одной из самых популярных программ в целом и считается безусловным лидером рынка в секторе редактирования изображений. Благодаря Adobe и Музею истории компьютеров, программное обеспечение теперь сохранится для потомков в совершенно особой форме.

.­.­.

Курьезы в игре королей

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

.­.­.

Доку-мыло вместо блокбастера: 48 кадров в секунду

Фильмы обычно записываются и воспроизводятся со скоростью 24 полных кадра в секунду, но почти 100-летний стандартный формат «24p», похоже, шатается. Чтобы предотвратить неприятные побочные эффекты (например, сильные рывки при среднебыстром панорамировании камеры) проекции 24 кадра в секунду, уже давно ведутся работы по удвоению частоты кадров до 48 кадров в секунду и более.

.­.­.

Проверка орфографии на сайтах

Автоматическая проверка орфографии и грамматики теперь является стандартным оборудованием в программах обработки текста, но до сих пор автоматическая проверка орфографии на веб-сайте была относительно обременительной. Google Chrome делает первый шаг в этом направлении со встроенной проверкой в ​​многострочных полях ввода (textarea). Теперь есть услуга, которая делает это возможным для целых веб-сайтов.

.­.­.

Телефонные номера в ссылках - угроза безопасности?

Несколько недель назад я сообщал, как вы можете разрешить своим посетителям открывать приложение для телефона на мобильных устройствах, нажав на номер телефона. Теперь появилась возможность безвозвратно заблокировать SIM-карту или сбросить устройство до заводских настроек без каких-либо действий со стороны пользователя.

.­.­.

Интересные электронные письма

Должны ли доменные имена и адреса электронной почты всегда быть написаны строчными буквами, чтобы вы могли быть уверены, что доберетесь туда, куда хотите? Или это совершенно неважно? Например, почтовые серверы Google имеют странные настройки с интересными эффектами, о которых я кратко расскажу ниже.

.­.­.

Дизайн биржевых цен в ежедневных темах

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

.­.­.

Свяжите номера телефонов правильно

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

.­.­.

Повторяющийся контент в блогах

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

.­.­.

Повышение безопасности WordPress

Безопасность WordPress, в настоящее время самой популярной системы управления контентом, можно значительно улучшить, изменив всего две небольшие настройки. На это потребуется всего 5 минут и две строки кода. Хотя проблему можно решить и с помощью различных плагинов, я намеренно ограничусь здесь решениями, не требующими плагинов.

.­.­.