Разработка и инженерия

страница 7 из 44
пост №1651Разработка и инженерия

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

пост №1647Разработка и инженерия

Почта России у меня ассоциируется с очередями в отделениях и потерянными посылками. В новом эпизоде подкаста разбираемся, насколько это близко к реальности с техническим директором Почтатеха Николаем Кнышем.

А ещё внутри Коля рассказывает, как они обрабатывают полтора миллиона посылок в день и при этом раскатывают софт на 300 тысяч сотрудников в 12 часовых поясах. 🤯

Слушайте и подписывайтесь: Apple, Google, Яндекс, Spotify, Castbox, Overcast, веб-версия.

пост №1640Разработка и инженерия

Языки программирования — основа ИТ. Я привык относится к ним как к данности, как к погоде. Но есть люди, которые создают эту погоду. Язык Kotlin придумали в Питере всего 11 лет назад. Уже в 2019 году Google признала его ключевым языком программирования для платформы Android (самой популярной мобильной ОС на планете!). Вы наверняка пользовались программами, написанными на этом языке.

Новый эпизод нашего подкаста — с создателем языка программирования Kotlin Андреем Бреславом.

Слушайте и подписывайтесь: Apple, Google, Яндекс, Spotify, Castbox, Overcast, веб-версия.

пост №1616Разработка и инженерия

Представьте, что вам не нравится, как ненатурально звучат автомобильные движки в игрушках-гоночных симуляторах. Большинство пожмет плечами. Кто-то поноет в твиттере или в телеграме.

Этот чувак:
1. разработал свой собственный точный физический движок (ru) — то есть программу, которая рассчитывает, как будут взаимодействовать твердые тела (ru) — цилиндры, поршни, маховики; газы — воздух, топливо, скорость распространения огня, сколько энергии выделяет сгорание воздушно-топливной смеси и т. д.
2. оптимизировал движок так, чтобы он работал со скоростью 80 тысяч кадров в секунду;
3. и генерирует звук исходя из давления в выхлопной трубе этого виртуального двигателя;
4. ах да, по пути он создал свой собственный язык программирования для описания двигателей — число цилиндров, расположение элементов, передачи и т. д.

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

⚡️🤯

пост №1615Разработка и инженерия

P. S. Я конечно слышал о Дейкстре и раньше, его алгоритм поиска кратчайшего пути в графе — один из немногих, которые я помню со школы и при этом этот алгоритм реально используется в компьютерных сетях, через которые вы получили это сообщение.

Я не знал, что Дейкстра был супер крутым писателем и знаменитостью ещё при жизни. Его статьи ксерились (отдельная история) и распространялись в IT-сообществе.

Самая увлекательная статья из Википедии за долгое время. 🔥

пост №1614Разработка и инженерия

«Простота — это великая добродетель, но она требует напряженной работы, чтобы её достичь и образование, чтобы оценить. И к сожалению, сложность продается легче.» — Дейкстра.

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

Кажется, что раз решение сложное — то в него вложено больше труда и значит оно должно быть лучше.

Это, конечно, не так. Процитирую Паскаля: «если бы у меня было больше времени, я бы написал письмо покороче».

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

Да, есть задачи, которые сами по себе сложные, с огромным числом ограничений и тд., например, биллинги обычно такие. При этом, почти все биллинги, которые я видел, были переусложнены сверх необходимого. 🙈

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

пост №1610Разработка и инженерия

Через несколько недель у нас большой запуск — технический перезапуск платформы онлайн-образования курсов подготовки к ЕГЭ Вебиум. Мы работаем над ним почти год и это большой и сложный проект, которым хочется хвастаться и делиться опытом.

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

Нам с Федей часто заказывают разработку медиа: в сентябре перезапускаем одно известное российское общественно-политическое издание и на днях начинаем работу над медиа для крупнейшего ритейлера.

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

- это и обычный сайт, в нем важно понимать, что подавляющее большинство просмотров будет с телефонов, а не с компьютеров, где обычно проверяют свой сайт сами редакторы:)
- и мобильные приложения — всё ещё удобнее иметь на рабочем столе иконку, это повышает открытия и прочитывания в десятки раз, ядровая аудитория;
- и разные системы доставки контента типа Instant Articles в Фейсбуке, Instant View в телеграме, Яндекс Дзен, Google News и другие — в них обычно нужно отдавать специальные RSS потоки;
- соцсети — чтобы не заливать посты в каждую соцсеть отдельно, а иметь единый центр управления полетами.

Сегодня я хочу поделиться советом про админку. Помню, мы произвели небольшой фурор в медиа-сообществе, когда в 2015 году рассказали про Монитор — внутреннюю админку Медузы. За годы он вырос в сложный и богатый инструмент, которым пользуется только одна редакция. К счастью, в 2022 можно получить 90% удобства и функциональности крутой медиа админки за 10% усилий.

Секрет в развитии headless CMS — это движки админок сайтов разной степени готовности. Помните про разделение на админку и пользовательскую часть? Речь ниже только о движке админки.

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

Яркий представитель первого класса, когда тебе дают сразу готовый продукт — это Contentful. Стартап стоимостью 3 миллиарда долларов, через админку которого управляют своими сайтами Disney, Atlassian, SAS и многие другие. Не удивляйтесь, крупные сайты компаний сравнимы с медиа.

На другом конце спектра — Sanity. Это серверное API и набор React-компонент, из которых можно собрать очень мощную медиа-админку буквально за несколько дней без участия бэкенд-разработчиков. Мы успешно использовали его уже в нескольких проектах для клиентов, горячо рекомендую.

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

Если хотите сделать новое медиа быстро и качественно или перезапустить существующее — обращайтесь ко мне, мы с Федей берем новых клиентов.

пост №1609Разработка и инженерия

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

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

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

P.S. В андроиде такое тоже встречается.

пост №1604Разработка и инженерия

Отличный технический стендап про кодировки — то, как компьютеры хранят и обрабатывают текст и почему раньше мы регулярно сталкивались с «Р·Р°РїСѓСЃРє», «Đ·Đ°Đ¿ÑƒÑ�Đº» и «п╥п╟п©я┐я», а теперь всё норм.

Куча супер классных примеров и баек из жизни. Например, почему концерт Билли Джоэля в Ленинграде называется на всех стриминингах «kohuept» (это в конце восьмидесятых так вбили слово КОНЦЕРТ на латинице) или почему город Aarhus стоит в конце алфавитного списка (виноваты вторая мировая и гугл).

Мечтаю сделать про это эпизод подкаста и не уверен, что у нас получится увлекательнее; целый час удовольствия https://www.youtube.com/watch?v=gd5uJ7Nlvvo

пост №1602Разработка и инженерия

Криптография — одна из самых сложных и интересных областей программирования и математики. Часто в IT есть правильное решение. Запрограммировал всё четко и задача решена условно на вечно.

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

Цена таких игр бывает очень высокая — миллиарды долларов и человеческие жизни. Вспомните Алана Тьюринга, который взломал немецкую шифровальную машину Enigma и сильно изменил ход Второй мировой войны.

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

Гость — Евгений Алексеев, начальник отдела криптографических исследований КриптоПро.

Слушайте и подписывайтесь: Apple, Google, Яндекс, Spotify, Castbox, Overcast, веб-версия.