👾 твой cto
1.04K subscribers
13 photos
11 videos
141 links
Будни технического директора
Илья Чекальский (@ilya0)
chekalsky.com
Download Telegram
GitHub и фронтендеры
​​Маленькая утилита для создания https-сертификатов для локальной разработки.

https://github.com/FiloSottile/mkcert

Программа создаёт локальный CA, устанавливает его в систему как доверенный и позволяет создавать SSL-сертификаты для любого домена.
​​Так, ну неделя у нас ещё есть.
​​Яндекс научился индексировать гуглдоки, у которых открыт доступ. Это не «только те документы, на которые где-то опубликовали ссылки» — я нашёл там в том числе нашу внутреннюю документацию, которую никто нигде не шарил.

Огромное количество доков с договорами, паролями, в общем, всем тем, для чего так круто использовать Google Docs и к чему для удобства открыли доступ. Интересно, Яндекс уберёт из индекса эти документы?

P.S. Кто придумает запрос, по которому можно найти биткоин-кошелёк, тот сорвёт джекпот!
​​Яндекс закрыл возможность поиска по гугл-документам. Но если вам повезло не спать сегодня ночью, то вы могли узнать, что...

Вот тут, например, магазин Утконос подводит итоги конкурса «Угадай счет в матче Россия – Испания».

Коля и Настя планировали свадьбу (хорошо, что она была в июне, а то приехали бы всем интернетом).

Моспосуда потратила в мае 200 000 на Яндекс.Директ (а выставка RosUpack обошлась в 243 000, надеюсь, что это окупится, пожелаем им удачи).

И многое-многое другое 😄 Доброй ночи, дорогие друзья, всегда проверяйте свои robots.txt.
Потрясающая новость: Фейсбук включил возможность таргетинга рекламы на россиян, «заинтересованных в государственной измене».

То есть можно было разместить рекламное объявление, старгетированное на эту группу, ну, например, баннер ВНЖ в ЕС для фрилансеров за 700 евро, 100% легально, и записать IP всех перешедших по ссылке. Эффективность поиска «экстремистов» у ФСБ может вырасти на 1000%.

Интересно то, как именно они собрали такую группу — допустим, алгоритм выделил её как большую и важную, модератор подумал «о, круто, предатели» и активировал её? Как именно это всё работало — достаточно ли лайкать Навального, например, чтобы попасть в список предателей родины?

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

Она позволяет определить название и фирменный цвет банка по первым цифрам карты. Так как база большая её не стоит грузить в браузер, лучше делать поиск на бэкенде. Для PHP я просто сгенерировал массив для быстрого поиска по первым 6 цифрам и написал пару классов для удобной работы. Такой формат БД отлично кэшируется opcache.

chekalskiy/php-bank-db
На протяжении многих месяцев почти каждый день мне в телеграм пишут незнакомые люди по разным вопросам — дело, видимо, в том, что они вводят в поиск по контактам «Илья», а услужливый телеграм предлагает написать мне на @ilya0.

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

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

https://motherboard.vice.com/en_us/article/ywkqew/snapchat-code-leaked-online-github-removed?utm_source=mbtwitter
​​Инстаграм не стал дожидаться, пока Apple выкатит на iOS функциональность ограничения времени зависания в аппах, и запускает аналогичную сам.

Вполне вероятно, эта фича потом перейдёт в приложение Фейсбука. Ну и конечно красивый ход во всех отношениях — Инстаграм предлагает уведомление о превышении лимита, а не блокировку приложения и необходимость совершать какие-то действия.
​​Если вашего макбука про топовой конфигурации тоже не хватает, чтобы комфортно сидеть в слэке, появилась консольная альтернатива!
Очень клёвый формат — «Что нового в PHP 7.3 за 30 секунд в виде диффов».

https://www.tomasvotruba.cz/blog/2018/08/16/whats-new-in-php-73-in-30-seconds-in-diffs/
По сравнению с этим хаком считаю, что у нас нет вообще никакого хардкода в проекте.

https://twitter.com/_inside/status/1035319938641276928
Менеджмент спецпроектов

Наши коммерческие спецпроекты — это микропроекты с очень коротким жизненным циклом: они разрабатываются, запускаются, какое-то время работают и закрываются.

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

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

2. Полностью логгировать все присылаемые пользователем данные — регистрационные, ответы, клики, в общем всё, что можно потом использовать в случае, если данные в основном хранилище пропадут или будут испорчены. Однажды мы очистили хранилище на продакшене после запуска коммерческого спецпроекта, даже просто лог всех POST-запросов нас бы спас.

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

4. При запуске спецпроекта обязательно в рабочем режиме должен быть кто-то из разработчиков — следить за логами, ошибками и багрепортами. Однажды мы запустились в выходной без дежурного разработчика, считая, что всё достаточно протестировано. Это был тяжёлый опыт.

5. Прописывание универсальных чек-листов для запуска и окончания спецпроекта: очистить тестовые данные, проверить шериг в соцсети, прекратить приём заявок и так далее — ведь нельзя ничего пропустить.

6. У каждого проекта должен быть только один ответственный, но не для того, чтобы повесить всех собак на него в случае промаха, а для того, чтобы не было ситуаций типа «я думал, что ты это проконтролируешь».

7. Да, это маленькие проекты и темпы их разработки сильно отличаются («в такие дни я деплою на продакшн по 50 раз в сутки»), но это не значит, что моно ограничиться мессенджером для фиксирования задач — нужно вести список в Jira, Trello или хотя бы в гугл доке — чтобы ничего не потерялось, потому что каждый запуск нового минипроекта — это жара.
Установил бету iOS 12.

Ожидание: стал меньше проводить времени со смартфоном благодаря функции Screen Time.

Реальность: стал постоянно смотреть в Screen Time, сколько времени и на что я потратил.
В последнее время думаю о том, что очень жаль, что пока нет простого способа классифицировать и записать весь свой бытовой опыт: какое приложение лучше всего для ведения бюджета, какие подкасты слушать, какие места в городе самые интересные, какой рюкзак покупать не стоит, а какой — да.

На первый взгляд может показаться, что это очень индивидуальные вещи, но вполне может оказаться, что нет — рекомендательные алгоритмы Spotify тому пример.

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

Захотев приготовить что-то на ужин, мы получим идеальную подборку рецептов, а в интернет-магазине можно будет забыть о выборе из сотен моделей одежды, одевшись так же, как одеваются люди, похожие на тебя.
Совсем забыл про сегодняшнюю презентацию Apple, и небо не упало на землю, макбук не взорвался, господи, чудеса!
Супер-фича новых macOS и iOS — считывание одноразовых паролей из SMS и Push-уведомлений и вставка их в запрашивающее приложение или сайт. Кажется, этот тот пример, где Apple из-за закрытой архитектуры годами отставала от Android, а сейчас сделала настолько нативно и круто, что Android'у просто никогда это не повторить с тем же уровнем удобства (потому что как ты SMS с телефона в Windows отправишь, то-то же).

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