JavaScript

JS и точки с запятой

В последнее время много стайл гайдов где точка с запятой не используется в коде. Раньше я был жестким противником такого, сейчас, после того как стал писать на Python, точки с запятой стали напрягать. Они и правда мешают глазу и код кажется будто бы в

JavaScript

JS: Download data as file

Загрузка данных со страницы в виде файлаЕсли есть задача сформировать на лету данные в файл и загрузить их, например, трансформировать таблицу в CSV файл, то есть простой способ как загрузить такие данные: const downloadAsCSVFile = function(csv, fname) { let csvfile = new Blob([csv], {type: 'text/

JavaScript

Получить номер дня недели в ISO формате

Tips & tricks. Полезняхи в JS/ES #8Получить номер дня недели в ISO форматеМетод getDay() объекта Date возвращает Вс с индексом 0. Мы в СНГ привыкли, что неделя начинается с Пн. Поэтому, чтобы получить день недели, где 0 — это Пн мы можем использовать такой

Js

JS: Rename function name

Мутируем иммутабельное, переписываем именаМногие, кто работает с JS, знают, что все есть объект в JS, а что не объект, то с этим можно работать как с объектом. Поэтому мы можем в JS вытворять такие штуки: 30..toString(16) // = 1e "abc".length // = 3и так далее.

Python

Python Switch operator

Полный гайд по реализации switch-case в питонеВ Python нет привычного оператора Switch как в других языках и после Java, JavaScript или PHP переходя на Python бывает непривычно писать логику без switch-case инструкций. Даже в Bash есть case оператор. Но выход есть и не один!

Bash

Простой интерактивный текстовый редактор на Bash

На случай если даже нет Vim'аБывало ли у вас такое, что заходите на сервер, а там вообще нет ничего для редактирования текстов? От слова совсем, кроме дефолтных команд. На такой случай накатал небольшой текстовый редактор, который поддерживает интерактивный режим. #!/usr/bin/env bash ${1:

iOS

Как запустить Youtube на iPadOS в режиме картинка в картинке. Часть 2

Добавляем функцию "Открыть в Safari"В предыдущей статье я показал как создать команду для запуска ютуба в режиме картинка в картинке. Как запустить Youtube на iPadOS в режиме картинка в картинкеСоздаем свою быструю команду на JavaScript С помощью программы «Быстрые команды», которая не идет

Typescript

Кортежи в JS/ES и TypeScript в 2020

Record & Tuple proposal and TypeScript 4.0 Относительно недавно (в мае) Робин Рикард и Рик Баттон сделали предложение «Record & Tuple», которое добавляет два новых примитивных объектов в JavaScript: кортежи (tuples) — неизменяемая и сравниваемая по значению версия массивовзаписи (records) — неизменяемая и сравниваемая по

PHP

Optional Chaining in PHP

Есть ли возможность?В JS есть такая штука как Optional Chaining. Про эту фичу есть в заметке JS/ES2020: Optional Chaining and Nullish CoalescingНа дворе 2020 год, а в ES2020 уже есть 2 долгожданные фичи, которые облегчат работу. Но самое интересное, что эти фичи

Html5

Эмуляция различных медиа выражений в Chrome и отладка темного режима

Emulate media queries in Chrome, for example: prefers-color-schemeНебольшая заметка-памятка, как отлаживать разные медиа выражения и режимы. Например, вы хотите отладить режим для печати или смену светлой и темной темы. В Chrome есть для этого инструменты, к которым можно подступиться несколькими способами. Например нам надо

JavaScript

Как запустить Youtube на iPadOS в режиме картинка в картинке

Создаем свою быструю команду на JavaScriptС помощью программы «Быстрые команды», которая не идет по дефолту на iOS, можно создавать собственные быстрые команды из нескольких действий для различных программ. С помощью быстрых команд в iOS 13 можно выполнять в программах различные действия одним касанием или

JavaScript

JS/ES2020: Optional Chaining and Nullish Coalescing

На дворе 2020 год, а в ES2020 уже есть 2 долгожданные фичи, которые облегчат работу. Но самое интересное, что эти фичи уже точно можно использовать в продакшене. Давайте рассмотрим их с примерами и поймем профит. Во первых - эти фичи уже доступны в браузерах:

Python

Используем фичи Python 3.9 в Python 3.8 - пишем полифил

Разбираемся как расширить built-in классыВ Python 3.9 заявлена новая фича: новый синтаксис мерджа двух и более словарей. Если раньше мы писали: # 1. Basic merge: merged = d1.copy() merged.update(d2) # 2. Unpacking merge: merged = {**d1, **d2}То в Python 3.9 можно будет

JavaScript

Serverless статистика для Ghost блога на примере Cloudflare workers + KV за 5 минут

Делаем простую статистику и лайки за 5 минут, используя воркеры Cloudflare с применеием Key Value хранилища от них же. Задача: После перезда с medium.com на свой собственный блог (в качестве движка которого я использую Ghos 3й версии, так как он мне очень нравится)

Python

Что нового в Python 3.9

Релиз нового пайтона уже не за горами и случится в октябре 2020. В этом посте я расскажу свои мысли про новые фичи. Обсуждаем фишки нового пайтонаPEP 616 - String methods to remove prefixes and suffixesВ Python 3.9, PEP-616 добавили два новых метода для

PHP

Управление потоком выполнения в PHP

В этой заметке мы не будем рассуждать на тему правильного и чистого кода, что он должен быть коротким, и тд и тп... Суть вопроса вот в чем. Есть линейное выполнение нескольких IF блоков, SWITCH блоков и все это в рамках одной функции или скрипта.

PHP

Транзакции в MongoDB

Особенности работы на примере PHPВ MongoDB еще в версии 4.2 добавили честные ACID транзакции. MongoDB - это уже не просто key-value хранилище наподобие Redis (как некоторые используют), а все же более серьезная база данных. Многие разработчики до сих пор скептически относятся к NoSQL

JavaScript

JS/ES: Top-Level await

Experimental support for 'Top-Level Await' just landed in Node.js core and Chrome Dev Tools, and Safari Web Inspector!Да да, в Node.js 14.3 уже есть возможность писать верхнеуровневые await , пока, правда, в экспериментальном режиме. А так же еще одна особенность: они

Js

Logical assignment in JS

Логические присваивания в движке V8.4Уже доступен в браузерах и Node.js под флагами новый синтаксис логических выражений с присваиванием. Язык все пухнет и разрастается. Для опытных разработчиков это будет удобно, для новичков - это будет отвал башки. Про что собственно речь? Есть такое

PHP

Последний элемент массива в PHP

Спортивное и полезное В статье будут не только полезные варианты, но и just for fun — показать что так тоже можно. Я как-то писал подробный разбор как получить последний элемент массива в JavaScript: Найти крайнего в спискеLast in list. Hacks and tricks with Array in

Programming

Fun Python#8: Невероятный пайтон

WTF Python? Задачки с собеседованийЧасто ругают JavaScript за непонятную магию, не менее чаще ругают PHP, но вот Python сейчас переживает пик популярности и его все любят несмотря ни на что. Расскажу свой небольшой опыт, что у меня вызвало удивление в виде вопросов с собеседования.

Python

Fun Python #7: про args и kwargs

Вот что я узнал… Функции только с именованными аргументами kwargs Если нужно сделать функцию, которая поддерживает только именованные аргументы и запретить позиционные, мы можем писать так: def foo(*, a, b, c): return a + b + c Вызываем с позиционными аргументами: foo(1, 2, 3) TypeError:

Bash

IDN — Punycode

Работаем с кириллическими доменами Собственно речь пойдет о том, как работать с кирилическими (и не только) доменами в PHP, Node.js, Bash/Zsh и Python. Почему такой выбор языков? Это стек проекта GeekJob.ru, над которым я работаю. IDN (Internationalized Domain Names — интернационализованные доменные

Python

FunPython #6: Простой JSON парсер без библиотек

Eval JSON string in Python Допустим есть некий JSON: json_str = '{"someInt":42,"someTrue":true,"someNull": null,"someFalse":false,"someString":"Hello!","someFloat":3.14}' Для работы с JSON в Python есть пакет json. Чтобы получить словарь из JSON строки мы можем поступить

👍 ?
👓 ?