Помилки округлення під час переходу

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

.­.­.

Скинути двофакторну аутентифікацію у Facebook

Через нещасний випадок усі експортовані коди було видалено під час процесу експорту в Google Authenticator ; я зберіг коди відновлення для всіх записів, крім коду для Facebook . У мене не було потреби чи терміновості, оскільки я роками не користувався соціальною мережею, але я хотів спробувати відновити доступ. Початок одіссеї.

.­.­.

Хто знає щось подібне?

Іноді одного питання у вечірній програмі (у цьому випадку від шановного ведучого Кая Пфлауме) достатньо, щоб перетворити нешкідливий фінал вікторини на незначну проблему оптимізації. Саме це відбувається на «Хто знає що?». Головне питання: Категорія відома, відповідь ще ні, але ставки вже визначають, які результати все ще хороші.

.­.­.

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

Базові знання про дроби: Спрощення подібних дільників дозволено. Спрощення подібних цифр – ні. І все ж є дроби, для яких це заборонене спрощення, здається, працює. Варто детальніше розглянути особливо просту групу дробів: дроби, у яких однакова цифра стоїть в кінці чисельника та на початку знаменника.

.­.­.

Тихий поїзд

Розважальні шахові завдання підсолоджують життя. Сьогоднішнє завдання: хід білих, мат у двох. Позиція походить від Еріха Бруннера в 1926 році - і вона цікава саме тому, що зовсім не схожа на типову позицію на два ходи. Ви пробуєте прямі шахові ставки, перевіряєте ходи тури, шукаєте ходи ферзя, і через кілька хвилин ви помічаєте: це не очевидні ідеї.

.­.­.

Давайте зашифруємо DomainFactory

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

.­.­.

Подільність

У Who Wants to Be a Millionaire нещодавно Гюнтер Яух мав подумати про приємне маленьке запитання: «Число завжди ділиться на \(4\) без залишку, якщо воно складається з останніх двох цифр...?» – і саме тут вам доведеться на мить подумати математично, замість того, щоб дозволити себе заманити гарними відволікаючими факторами. Оскільки відповіді на кшталт «є парним», «містить \(0\) » або «перехресна сума дорівнює \(4\) » на перший погляд звучать правдоподібно, правильна відповідь базується на простій властивості нашої десяткової системи числення.

.­.­.

Штучний інтелект проти Ердеша

Деякі математичні задачі формулюються настільки просто, що їх можна пояснити дитині, проте вони настільки складні, що займають цілі покоління математиків. Однією з таких задач є так звана задача одиничної відстані: розмістити \(n\) точок на площині. Скільки пар точок можуть мати відстань рівно \(1\) ? Ця задача сягає корінням Пауля Ердеша та вивчається з 1946 року. OpenAI тепер опублікував, що внутрішня модель спростувала давню гіпотезу щодо цієї проблеми.

.­.­.

Код у простих числах

У жовтні 1999 року група під керівництвом 16-річного норвежця Йона Леха Йохансена випустила програму DeCSS для обходу захисту відтворення DVD-дисків за допомогою системи Content Scramble System (CSS). CSS використовувала 40-бітове шифрування, ключі до якого розповсюджувалися серед ліцензованих виробників, для обмеження відтворення DVD. Оскільки розповсюдження коду підпадало під дію DMCA США та було юридично заборонено, активісти шукали способи замаскувати код під математичну сутність.

.­.­.

ℚ не завершено

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

.­.­.

Бари босів у Minecraft

PaperMC надає просту основу для розширення серверної частини Minecraft за допомогою невеликих плагінів, без необхідності встановлювати щось клієнтам. Під час розробки плагінів виникає питання, як відображати динамічну інформацію гравцеві. Відповідь криється в часто недооціненій функції: панелі босів . Спочатку призначена для кінцевих босів, панель босів можна перепрофілювати та використовувати як мінімалістичний HUD.

.­.­.

IPv6

Інтернет-протокол (IP) є основою всіх інтернет-застосунків. Інші протоколи, такі як 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 цей маленький помічник сподобається друкувати, а потім пити каву. Особливо, коли багато веб-проектів розробляються паралельно, один вартий того компактний огляд: Де чисте робоче дерево, де зависають необ’єднані зміни, а де очікується витяг/штовх? Невеликий інструмент-оболонка зробить свою справу - якщо він надійно обробляє пробіли/Unicode у шляхах і не захлинається від висячого пульта.

.­.­.

Мова та логіка

Є чудова пісня Калі Роуз під назвою «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

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

.­.­.

Оператор 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 для робочого столу неінтуїтивно зрозуміло додавати стовпець, який відображає фактичну адресу електронної пошти замість імені. Microsoft досі не реалізувала цю функцію як простий варіант, проте її можна додати до класичної версії Outlook для Windows за допомогою вбудованих інструментів.

.­.­.

SSL у локальному середовищі розробки

У часи браузерів, які підтримують лише HTTPS, файлів cookie SameSite та реалістичних умов розробки, важливо працювати локально зі справжніми сертифікатами SSL. Let's Encrypt виконали новаторську роботу тут – за допомогою certbot і Cloudflare можна швидко й легко створювати й оновлювати сертифікати підстановки. Це дозволяє отримати доступ до ваших веб-проектів, зашифрованих на будь-якому пристрої (смартфоні, віртуальній машині, ...) у локальній мережі або через VPN.

.­.­.

Створіть власну велику модель мови

"Машина може мати велику пам'ять, але вона не може думати - якщо ми її не навчимо". – Алан Тюрінг. Сучасні моделі ШІ, такі як GPT-4 або Llama, базуються на величезних наборах даних і складних математичних структурах. Але що насправді стоїть за цим? У цій статті ми розглянемо ключові компоненти, необхідні для створення мовної моделі з нуля.

.­.­.

Розмістіть OpenStreetMap самостійно

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

.­.­.

Доступ за допомогою PHP до Exchange/Office 365

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

.­.­.

Надсилати електронні листи із затримкою

Час не той? Електронний лист надіслано занадто рано? Затримка електронних листів може бути корисною в багатьох ситуаціях: чи для того, щоб дати собі час на перегляд, чи для ефективного керування власним робочим навантаженням – час може бути вирішальним. Ось три способи, за допомогою яких можна відкласти надсилання електронних листів і оптимізувати власні комунікації.

.­.­.

Керуйте браузерами за допомогою ШІ

Автоматизація веб-переглядача відіграє важливу роль у таких сферах, як сканування веб-сторінок, автоматичне тестування та взаємодія веб-додатків. Досі, наприклад, для цього використовувався Puppeteer . З появою штучного інтелекту відкриваються нові можливості для того, щоб зробити автоматизацію браузера більш інтуїтивно зрозумілою та менш потребуючою в обслуговуванні – звільніть сцену для Stagehand .

.­.­.

Налагодження PHP за допомогою Xdebug

Xdebug — це потужний інструмент для налагодження та профілювання PHP, який допомагає нам аналізувати та оптимізувати PHP-додатки. Він підтримує такі функції, як покрокове налагодження, вимірювання продуктивності та трасування стека, що значно спрощує усунення несправностей та забезпечує краще розуміння коду. Нижче наведено короткий посібник з налаштування для його використання у VS Code.

.­.­.

Про рідини

Уявіть собі дві однакові чашки — одну з кавою, а іншу — з молоком, обидві на одному рівні. Тепер чайну ложку кави зачерпують із чашки для кави в чашку з молоком і перемішують. Потім додайте чайну ложку суміші з чашки з молоком назад у чашку для кави. У якій чашці потім більше сторонньої рідини?

.­.­.

Коміти Git за допомогою ChatGPT

Повідомлення про коміти в Git часто нехтують. Багато хто розглядає їх лише як необхідне зло для збереження змін. Однак змістовні повідомлення про коміти є вирішальним фактором успіху проекту: вони забезпечують хорошу відстежуваність змін, ефективну співпрацю команди та швидше виправлення помилок. Достатня причина для того, щоб повідомлення про коміти готувалися автоматично за допомогою штучного інтелекту.

.­.­.

Прямокутний лютий

Лютий іноді набуває надзвичайно привабливої форми в календарі. Наприклад, у лютому 2021 року можна було спостерігати такий «ідеально прямокутний лютий». Цей рідкісний ефект виникає, коли лютий має рівно \(28\) днів, а 1 лютого припадає на понеділок. Але як часто це насправді трапляється, і скільки нам доведеться чекати наступного разу?

.­.­.

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

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

.­.­.

від висоти: 0 до висоти: автоматична анімація за допомогою CSS

Переходи CSS — чудовий спосіб створити інтерактивність. Досить, transition до початкового стану елемента, а браузер анімує перехід між двома станами. Переходи для внутрішніх розмірів елементів, наприклад auto Однак це була проблема для веб-розробників протягом десятиліть, і єдиним варіантом було динамічне обчислення висоти за допомогою JavaScript.

.­.­.

Між 0 і 1 немає цілого числа

Не існує такого \(n \in \mathbb{Z}^+\) що \(0 < n < 1\) .

.­.­.

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

У 1950 році фізики Джордж Гамов і Марвін Стерн помітили цікаве явище: Гамов, який мав офіс на першому поверсі шестиповерхового будинку, помітив, що п’ять із шести разів наступний ліфт, який прибув, опускався, хоча він хотів підніматися вгору. Стерн, який працював на п'ятому поверсі, спостерігав протилежне.

.­.­.

Куайн

Програма 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 Actions

Як альтернатива високоцінному 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

tl;dr: Встановлення значень вручну або значення за замовчуванням 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\) .

.­.­.

Математика в грі Dobble

На нашому останньому сімейному ігровому вечорі діти з ентузіазмом дістали гру Dobble (видання про Гаррі Поттера). Програвши п'ять раундів (моя карта не збігалася з ігровою картою), я з подивом дізнався, що кожен гравець завжди може знайти пару в кожному раунді. Однак моє здивування призвело лише до більшої кількості програних раундів – діти просто були швидшими.

.­.­.

Час блокування біткойн

Ви знаєте: очікуваний час між двома блоками біткойнів становить в середньому \(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 (як "публічний") і ненавмисно не приховувати власний закритий ключ Maps API.

.­.­.

Вирізайте SVG із зображень із кліп-контуром

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

.­.­.

Швидка порада: WP_Query та багаторядкові поля

Використовуючи атрибут `meta_query` у потужному класі WordPress `WP_Query`, ви можете фільтрувати публікації, мета-поля яких містять певні значення. Якщо ви створили багаторядкове мета-поле (наприклад, за допомогою розширених настроюваних полів ) і хочете знайти лише публікації, які містять певне значення в цьому полі, розділеному рядками, рекомендується використовувати світ регулярних виразів MySQL.

.­.­.

Вбудуйте анімацію Adobe Animate вбудовано

У попередній статті я описав, як можна легко інтегрувати анімацію з Adobe Animate на веб-сайт за допомогою експорту APNG. Існує також рідний спосіб через HTML5 Canvas Export , але будь-хто, хто коли-небудь працював з ним, помітить, що проблеми виникають на кожному кроці (недостатня підтримка швидкої реакції, громіздка інтеграція в існуючі веб-сайти, відсутність різної частоти кадрів для анімації тощо). Тут може допомогти бібліотека adobe-animate-embed .

.­.­.

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

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

.­.­.

Експорт APNG Adobe Animate

Підтримка браузерами анімованих файлів 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

Вам не потрібен потужний інструмент, такий як Google Optimize, для простих спліт-тестів URL-адрес; ви також можете реалізувати спліт-тест за допомогою 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

.­.­.

Злом API перекладу Google

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, вам потрібно зробити деякі налаштування, щоб уникнути підводних каменів та скоротити час завантаження, про що я розповім у наступній статті.

.­.­.

Проект Ейлера: Lратчасті шляхи

Проект Ейлера – це серія захопливих програмних задач, часто з математичним підґрунтям. Задачі часто розроблені таким чином, щоб вимагати розробки складних алгоритмів для досягнення мети в розумні терміни. Сьогодні ми розв'яжемо задачу 15: Ґратчасті шляхи , яку можна розв'язати за допомогою простих комбінаторних методів.

.­.­.

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

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

.­.­.

Google Sheets: Розширення формул

Щоб поширити формули на цілі стовпці в Google Таблицях, ми рекомендуємо використовувати корисну функцію ARRAYFORMULA . На жаль, це не працює в поєднанні з деякими іншими важливими функціями, такими як QUERY або INDIRECT , тому вам доведеться повністю налаштувати логіку за допомогою Google Apps Script або, як альтернатива, вручну скопіювати формулу до останнього рядка.

.­.­.

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

Парадокс Сімпсона - одне з легко зрозумілих і водночас дивовижних явищ у статистиці. Це відбувається, коли групи даних демонструють певну тенденцію, але ця тенденція змінюється, коли групи об'єднуються. За допомогою простого прикладу парадокс можна зрозуміти відразу.

.­.­.

Швидка порада: Менеджер тегів Google

Менеджер тегів Google зарекомендував себе як фактичний стандарт інтеграції сценаріїв відстеження. Таким чином, з одного боку, обов'язки (Інтернет-маркетинг проти програмування) акуратно розділені, а з іншого боку, Ви можете швидко налаштувати та змінити відстеження за допомогою додаткового каналу розгортання. Ось дві маленькі поради щодо налаштування тригерів.

.­.­.

Коротка порада: Точка доступу WLAN FRITZ! Box

Починаючи з 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 Таблицями, ви можете визначити детальні правила редагування робочих аркушів, стовпців і рядків у електронній таблиці на основі користувачів. На жаль, немає можливості обмежити доступ для читання. Це було б дуже корисно в багатьох сценаріях, наприклад, щоб показувати клієнтам лише ті заявки, які їм стосуються, або співробітникам лише ті проекти, над якими вони працюють.

.­.­.

Пряжа plug'n'play

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

.­.­.

Перетворити PDF на LaTeX


Набірна система \(\TeX\) була розроблена в 1977 році легендарним Дональдом Е. Кнутом . Програмний пакет \(\LaTeX\) досі є частиною стандартного репертуару при створенні наукових робіт. За допомогою наступних двох інструментів уже створені PDF-файли та рукописні примітки можна повністю автоматично перетворити на TeX. Результати дуже багатообіцяючі.

.­.­.

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

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

.­.­.

Критична помилка при використанні WPML + ACF

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

.­.­.

Завантаження файлів у браузері Facebook In App

На деяких телефонах 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-сертифікати wildcard, доступ з усіх пристроїв у локальній мережі, висока стабільність і продуктивність, окрім одного.

.­.­.

Хитрощі для красномовних відносин Laravel

Однією з сильних сторін Laravel є його елегантний синтаксис. Якщо у вас багато моделей і зв’язків у Laravel (через велику кількість таблиць у базі даних), обхід часто може закінчитися менш елегантним кодом. З часом три невеликі розширення виявилися успішними для мене, про які я хотів би коротко представити нижче. Для цього ми просто використовуємо спадковість, магічні методи та спеціальні колекції.

.­.­.

Заборонити публічний доступ до .git

Контроль версій Git зараз є стандартною практикою майже в кожному веб-проекті та середовищі (включно з продакшеном). Git завжди створює підкаталог під назвою `.git` , і якщо він розташований на тому ж рівні, що й публічний каталог веб-сайту, доступ до конфіденційних файлів можливий публічно (наприклад, доступ до `/.git/logs /HEAD` відображає останні коміти). У цьому посібнику детально пояснюється, як клонувати інший репозиторій Git навіть без списку каталогів.

.­.­.

Node.js / npm / Composer без кореня

У попередньому дописі в блозі я описав, як безкоштовно розмістити Node.js за допомогою Heroku . Зараз я покажу вам спосіб, як ви можете встановити Node.js , npm та Composer на будь-який інший спільний хост без прав користувача з декількома рядками коду. За допомогою нього ви можете встановлювати пакети, розгортати програми 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, у виробничих середовищах, такі виконавці, як, наприклад, супервайзер , забезпечують виконання завдань, що зберігаються в Redis . Якщо ви хочете бути повністю незалежними від цього на localhost, ви можете використовувати драйвер синхронізації для негайного виконання завдань. Однак це має недолік: поточний PHP-процес блокується, і запит зависає, доки завдання не завершиться.

.­.­.

Короткий підказка: об’єднайте цілі в Google Analytics

За допомогою бібліотеки JavaScript analytics.js з Google Analytics можна відстежувати будь-які події на веб-сайтах. Ці події включають, наприклад, точне вимірювання часу перебування відвідувачів на сторінці, максимальну глибину прокручування або інші окремі дії, такі як надсилання форм. Якщо ви пізніше захочете оцінити рекламні кампанії або провести A/B-тестування, ви створюєте так звані цілі.

.­.­.

Прагматична інвалідність кешу

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

.­.­.

Ключі Bitbucket та SSH

Постачальник Bitbucket не пропонує (навіть у стандартних та преміальних тарифах, що базуються на платі ) можливості зберігати SSH-ключі з дозволами на запис на рівні сховища. Зберігання вашого особистого ключа SSH на робочому сервері не є можливим, інакше ви зможете отримати доступ до всіх інших проектів, над якими ви зараз працюєте. Існують так звані ключі доступу , але вони дозволяють лише права на читання.

.­.­.

Windows Sysinternals через мережевий диск

Інструменти Sysinternals від Марка Руссіновича є важливими для будь-якого комп'ютера з Windows. Щоб завжди мати доступ до найновішої версії, підключіть його як мережевий диск. Просто виконайте команду `net use s: \\live.sysinternals.com\DavWWWRoot` у командному рядку (як звичайний користувач). Це надасть портативний доступ до корисних інструментів, таких як PsList, PsKill та Process Explorer, на диску S.

.­.­.

Швидка порада: Google Таблиці та Тижні календаря

Виводячи календарні тижні на певну дату, ви повинні бути обережними в Google Sheets (так само, як у Microsoft Excel). Функція = КАЛЕНДАРНИЙ ТИЖДЕНЬ (СЬОГОДНІ ()) обчислює за американським стандартом, для якого перший день року завжди призначається календарному тижні 1. У Німеччині це визначається по- різному: тут перший календарний тиждень - це тиждень, з якого щонайменше 4 дні припадають на новий рік. В Google Sheets ви можете вирішити проблему (разом з іншими захоплюючими альтернативами, такими як = SHORTEN ((TODAY () - DATE (YEAR (TODAY () - REST (TODAY () - 2; 7) +3); 1; REST (TODAY ( ) -2; 7) -9)) / 7) та модифікований = КАЛЕНДАРНИЙ ТИЖДЕНЬ (СЬОГОДНІ (); 21) ) легко за допомогою спеціально розробленої функції = ISOWEEKNUM (СЬОГОДНІ ()) .

.­.­.

Самопідписані сертифікати 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 знову вислизнув до master) ви повинні заднім числом маніпулювати історією Git, всупереч її природі.

.­.­.

Інтегруйте сертифікат SSL від DomainFactory на IIS

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

.­.­.

Парадоксальна стратегія перемоги при відгадуванні цифр

Томас М. Кавер задав таке дивовижне запитання в 1987 р. У "Відкритих проблемах у зв'язку та обчисленнях": Гравець \(X\) записує два різні і випадково обрані натуральні числа \(A\) та \(B\) до двох різних Шматок паперу і покладіть його лицем вниз на стіл. Гравець \(Y\) тепер випадковим чином вибирає один із цих аркушів паперу, бачить номер і тепер повинен вирішити, чи менший він чи більший за інший номер, який все ще є на столі.

.­.­.

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

Коли починається футбольний матч, м'яч лежить у центрі поля, а потім переміщується по полю протягом 45 хвилин, переміщуючи та повертаючи. На початку другого тайму м'яч знову знаходиться в центрі поля. Ми показуємо простими засобами лінійної алгебри, що або нескінченна кількість точок на поверхні завжди знаходиться в абсолютно однаковому положенні, як у вихідному стані, або рівно 2.

.­.­.

Laravel: Налагодження шаблону леза

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

.­.­.

Гармонійне відображення логотипів за допомогою JavaScript

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

.­.­.

Перевірте наявність змінних у PHP / JS

При щоденній роботі зі змінними в PHP та JavaScript часто трапляється запит, чи порожня змінна. Для перевірки варто знати власні функції та їх відмінності. Прикро, що немає простого способу інтуїтивно перевірити, чи є змінна чи ні. Наведена нижче матриця уточнює, що мається на увазі під цим. Однак те, що ви хочете, можна модернізувати за допомогою невеликих допоміжних функцій.

.­.­.

Масові телефонні дзвінки за допомогою sipgate.io

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

.­.­.

Рекурсія в 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 відома проблема досі не вирішена: якщо ви створюєте статтю із взаємозалежними варіантами із взаємовиключними параметрами конфігурації, може статися так, що деякі комбінації неможливо вибрати у фронт-енді, а тому їх не можна замовити. За допомогою плагіна на даний момент проблему можна легко вирішити.

.­.­.

Один рядок для нескінченності простих чисел

Існує безліч доказів нескінченності простих чисел - відома теорема Евкліда з Книги Елементів не відсутня в жодному базовому курсі теорії чисел. В « Американському математичному щомісячнику» (випуск 122) у 2015 році Сем Нортшилд опублікував не менш елегантний доказ протиріччя у вигляді однорядкового рядка, якого я не хочу відмовляти вам (з короткими коментарями).

.­.­.

Світліше командний рядок Windows

Похмурий командний рядок Windows можна візуально оновити за кілька простих кроків. Таким чином, ви можете не тільки адаптувати колір і розмір командного рядка, але і функціонально розширити його (збільшивши буфер, встановивши великий набір інструментів UNIX). Незважаючи на те, що командний рядок не наближається до PowerShell 6.0 або нової оболонки Bash Windows 10 , йому не потрібно ховатися для повсякденних завдань.

.­.­.

Динамічні 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

Якщо ви інтегруєте PHP через FastCGI в IIS 7.5, кожен сценарій за замовчуванням припиняється через 600 секунд (тобто 10 хвилин). Зміна добре відомої змінної "max_execution_time" у php.ini не впливає на це; ви повинні (також) налаштувати параметри FastCGI. Для цього IIS пропонує зручний інтерфейс для керування відповідними змінними.

.­.­.

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

Умовна теорія ймовірності тягне за собою красиві завдання з протиінтуїтивними рішеннями. Окрім відомої проблеми брата або сестри , я зараз коротко розгляну ще один приклад: "Зараз у мене двоє дітей. Один з них хлопчик і народився в четвер. Яка ймовірність того, що друга дитина теж хлопчик?"

.­.­.

Git, Shopware та порожні папки

Система керування версіями файлів Git є простою, швидкою та портативною. Git завжди обробляє об'єкти, а саме файли. Папки створюються, лише якщо в них є файли, інакше Git навіть не буде їх записувати. Це має неприємні побічні ефекти у деяких проектах. Наприклад, система магазину Shopware покладається на суворе дотримання структури папок, щоб функціонувати.

.­.­.

Покупки: Індивідуальні витрати на доставку

Магазин має потужний модуль витрат на доставку, в який ви можете спеціально втрутитися в розрахунок. У нашому випадку ми хочемо реалізувати наступний сценарій: Витрати на доставку за товар спочатку визначаються відповідно до ваги товару (обмеження ваги вказані). Лише за особливими винятками можна встановити фіксовані витрати на доставку для кожного товару.

.­.­.

Динамічні постійні посилання в WordPress

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

.­.­.

Пошкоджені гіперпосилання у програмах Word та Excel

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

.­.­.

Парадокс для Дня батька

Сьогодні до Дня батька дочка дарує батькові фотографію, яку вона намалювала сама, про що батько так прагнув до неї. Донька каже: "Я подарую тобі картину, яку ти побажав, і мій подарунок стане сюрпризом". Батько вражений і розмірковує над правдивістю цього твердження.

.­.­.

Інтегруйте динамічні сценарії з HTTPS та без нього

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

.­.­.

Юзабіліті в випадаючих меню

Під час роботи з багатовимірними випадаючими меню часто виникає проблема випадкового відкриття неправильного підменю або випадкового закриття потрібного підменю. Це трапляється , коли курсор миші залишає відповідне меню на верхньому рівні під час переходу до вже розгорнутого підменю.

.­.­.

Покупки: Вимкніть варіанти автоматично

У 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 проти Google Analytics

Такі інструменти валідації, як 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

Якщо OneDrive, Dropbox, Google Drive, OwnCloud, Box.net: Незалежно від того, в якому вікні ви зберігаєте свої файли - послуги майже однакові. Клієнти, доступні для всіх настільних та мобільних систем, стандартні незашифровані файли та параметри спільного доступу лише незначно відрізняються. Але OneDrive, який назавжди інтегрований в систему з Windows 8.1, має особливість: лише файли, доступні в Інтернеті.

.­.­.

PHP: доступ до файлів за допомогою висловлювань під Windows

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

.­.­.

Запит SQL для визначення рейтингового списку

Сьогодні я зіткнувся з таким завданням під час роботи над клієнтським проектом: візьміть таблицю SQL «user» зі стовпцями «id» і «score» і визначте рейтинговий список усіх користувачів, відсортований на основі «score», у якому користувачі з однаковою оцінкою отримають однаковий рейтинг. Використовуючи визначені користувачем змінні, це завдання можна вирішити інтуїтивно та легко.

.­.­.

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 не пропонує інтуїтивно зрозумілого рішення. Але за допомогою властивості vertical padding ви можете досягти своєї мети.

.­.­.

Рішення суду щодо використання стокових фотографій

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

.­.­.

До побачення, блок і вбудований - вітаємо 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 надає собі нового обличчя. Якщо раніше сині написи прикрашав яскраво-жовтий талісман у формі банана, то тепер жовтий бант на антрацитовому тлі вміло обгортається, утворюючи абстрактну структуру. Синій і жовтий кольори FDP відображаються не лише на логотипі, але й на всіх інших друкованих виробах бренду McFIT.

.­.­.

Photoshop: подорож у минуле

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

.­.­.

Цікавинки у грі королів

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

.­.­.

Документ-мило замість блокбастера: 48 кадрів в секунду

Зазвичай фільми записуються та відтворюються зі швидкістю 24 повних кадри на секунду, але майже 100-річний стандартний формат «24p», здається, починає хитатися. Щоб запобігти неприємним побічним ефектам (наприклад, сильні посмикування під час середньошвидкого панорамування камери) проекції 24 кадри в секунду, протягом тривалого часу ведеться робота над подвоєнням частоти кадрів до 48 кадрів в секунду і більше.

.­.­.

Перевірте правопис на веб-сайтах

Автоматизована перевірка орфографії та граматики зараз є стандартним обладнанням для програм обробки текстів, але перевірка правопису веб-сайту автоматично до цього часу була досить громіздкою. Google Chrome робить перший крок у цьому напрямку завдяки інтегрованій перевірці в багаторядкових полях введення (текстове поле). Зараз існує послуга, яка робить це можливим для цілих веб-сайтів.

.­.­.

Номери телефонів у посиланнях - ризик безпеки?

Кілька тижнів тому я повідомив про те, як ви можете дозволити своїм відвідувачам відкривати телефонну програму на мобільних пристроях, натискаючи номер телефону. Тепер з’явилася можливість безповоротно заблокувати SIM-карту або скинути пристрій до заводських налаштувань, не користувачеві нічого робити.

.­.­.

Цікаві цікавинки електронної пошти

Чи повинні доменні імена та адреси електронної пошти завжди бути малими, щоб бути впевненим, що ви потрапите туди, куди хочете? Або це абсолютно не має значення? Поштові сервери Google, наприклад, мають дивні налаштування з цікавими ефектами, про які я коротко розповім нижче.

.­.­.

Дизайн біржових цін у щоденних темах

Я пильно стежу за розробкою різних програм на німецькому телебаченні. Навряд чи будь-яка трансляція зберігає свій корпоративний дизайн назавжди. Вечірній ритуал зустрічі перед телевізійним екраном о 22:15 на теми дня останнім часом викликає у мене біль у животі: ось уже кілька місяців для представлення поточних біржових цін обирають абсолютно заплутану кольорову гаму.

.­.­.

Правильно зв’яжіть номери телефонів

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

.­.­.

Повторюваний вміст у блогах

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

.­.­.

Підвищення рівня безпеки WordPress

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

.­.­.