запуск завтра
27.8K subscribers
333 photos
36 videos
3 files
1.23K links
Будни технического директора @samatg (ex-CTO Meduza, Bookmate, RAWG, Pure)

https://fedorandsamat.com/

Чатик @ctodailychat

Рекламу не продаю
Download Telegram
Чуть не пропустил, Apple наконец признал проблему с клавиатурами своих ноутбуков; последние несколько лет они ломались от малейшей пылинки.

По новой программе бесплатного ремонта можно принести любой ноутбук с «клавишами-бабочками» в официальный сервисный центр и механизм клавиш заменят на самую последнюю совместимую версию. Apple утверждает, что с четвертой версией (!) «клавиш-бабочек» проблем больше не будет.

Кстати, в Москве я рекомендую ремонтировать технику Apple в Brobrolab. Качество сервиса почти такое же, как в официальном магазине в штатах. Кайф видеть, как кто-то по-настоящему хорошо делает свою работу.
Quake Ⅱ на RTX «Ремастер» культовой игры из 1997 на основе супер-технологии от NVidia обещают выпустить 6 июня. Идеальный повод встретиться со школьными товарищами и «погонять в кваку», только с водой, огнем и освещением 2019 года.
Фёдор Борщев отвечает на вчерашний пост про Agile:
Forwarded from FEDOR BORSHEV
Наброс мне весьма близок — всегда больно смотреть, когда люди вместо того, чтобы просто пойти и сделать, бездумно следуют карго-культу — считают сторипоинты на дейли-митингах, а вечерами грумят беклог и играют в планнинг-покер.

Вон же программисты сидят: дойди ногами, объясни команде, как заработать деньги, получи MVP за пару дней. Но нет — у нас беклог, оценки-приоритеты, роадмап туда-сюда.

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

В этом и разница: Agile — это способ мышления, фундамент, на котором строится быстрая и гибкая разработка. SCRUM — частный случай Agile, предельно четко описанный.

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

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

Так что если в вашей компании меньше 20 человек и вам приходится внедрять SCRUM чтобы их организовать — вероятно, вы наняли кого-то сильно не того.
​​Soulver — cупер-программка, если нужно что-то посчитать. Умеет арифметику, переводы величин и валюты. Всё кроме самых сложных моделей считаю в ней. Деньги на отпуск в чужой валюте, время на обработку миллиона картинок в 4 потока, стоимость аренды серверов с учетом скидки — это всё гораздо удобнее считать в Soulver, чем в гугл-таблицах. Есть под Mac (9$) и iOS (230₽). Windows клон — OpenCalc.
​​В ответ на предыдущий пост все пишут про очень красивый калькулятор Numi под Мак. Спасибо что пишете, это очень классно! Numi очень красивый и умеет кучу всего, но не умеет главного — переиспользовать результаты вычислений по-человечески (только через переменные).

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

Можно свободно регулировать любые параметры модели, например число символов для перевода в каждой игре или число обрабатываемых игр и видеть, как меняются результаты в реальном времени.
У приложения банка N26 можно провести рукой перед экраном и скрыть всю приватную инфу. Работает это, скорее всего, через сенсоры расстояния, которые нужны для того, чтобы выключать экран, когда прикладывают телефон к уху. Впервые вижу, чтобы их использовали для чего-либо другого.
Эти три поста — мини-ода серверу Nginx и его создателю Игорю Сысоеву. Я не написал о покупке компании NGINX американским гигантом F5 за 670 миллионов долларов в феврале (профайл в Ведомостях и в Форбсе), исправляюсь.

Nginx — это скотч веб-разработчика. Вы ведь знаете, что именно с помощью скотча астронавты починили свой автомобиль на луне? С помощью Nginx можно скрепить разные части сайта между собой (микросервисы, ау), ускорить сайт с помощью кеширования (скорость работы Медузы и RAWG), серьезно сэкономить на хостинге и даже защититься от DDoS-атак. Nginx поддерживает и простейшие одностраничные сайты и гигантские корпорации. Это сервер, который вобрал в себя лучшее от таможни, DHL и завода.

Мы с коллегами недавно сделали с помощью nginx две необычные вещи, которыми я хочу поделиться.
Во-первых, перевели один очень старый сайт с http на https (это улучшает позиции в гугле), по пути убрали www из всех адресов и добавили кеширование, так что сайт стал открываться раз в 10 быстрее.

Интересная часть в том, что на сайте было много хардкод-адресов http://www..., и поменять исходный код было решительно невозможно (старый perl), так что мы использовали модуль ngx_http_sub_module, который позволяет переписать содержимое ответа на лету.

Мы не поменяли ни одной строки кода в движке сайта, все изменения — через настройки nginx.
Во-вторых, добавили щепотку динамического контента в кешированные nginx'ом страницы. Под нагрузкой наш django + react сервер отвечает не очень быстро. Для того, чтобы сайт отвечал мгновенно — мы кешируем странички для анонимов, то есть регулярно пересчитываем их, а при запросах мгновенно отдаем последнюю сохраненную версию.

Для проверки одной SEO-гипотезы нам потребовалось добавить несколько случайных ссылок на каждую страницу. Казалось, nginx-кеширование и динамический контент не сочетаются. Но нет, выручил SSI — технология родом из 1993, когда писали статический html-код страниц, а динамику добавляли маааленькими кусочками. Мы добавили в код своих страниц <include>, так что основная страница кешируется как и раньше, а блок со ссылками быстро отдается отдельным быстрым микросервисом.

Да здравствует nginx и инженеры, умеющие с ним управляться!
​​На алгоритме Диффи-Хеллмана держатся современная криптография и интернет.

Он позволяет двум незнакомым сторонам создать общий секрет по незащищенному каналу. То есть вы разговариваете без утайки, но при этом в результате разговора оба владеете информацией, которой точно нет ни у кого подслушивающего. Обычно говорят, что алгоритм позволяет «обменяться секретом», но это не совсем правда, речь всё-таки о создании нового секрета.

Вот одна картинка, которая помогла мне понять принцип работы алгоритма. Перевод мой специально для мамы. Мама, ты поймешь 100%.
​​В русской википедии утверждается, что «наглядная работа алгоритма показана на рисунке» и дальше вот этот рисунок. Диплом о высшем математическом образовании дает мне силы сказать: это картинка не наглядная, а не мы тупые.

Не корите себя, если очень стараетесь понять что-то в разработке и не получается. Скорее всего, часть ответственности на учителе. Если речь о вашем разработчике — просите объяснить яснее, вы имеете право понимать.
Вчера в Яндексе выступал Вадик Мармеладов, космический русский дизайнер, рассказывал (ютуб) про свои недавние работы [1, 2] и текущий проект LOT2046.

Я чувствую, как из Вадика льется через край свобода и самовыражение. Вам может быть не близко то, что он делает, но то, как он это делает, надеюсь, вызывет восхищение и радость.

Побольше бы таких сумасшедших.
Вот с такой картинкой и личностью у меня ассоциируется Вадик (это я пытаюсь уговорить посмотреть видео тех, кто не купился на мой текст выше:)
Прошлой ночью по Москве у гугла прилегла сеть в Штатах. 4 с половиной часа, с 12 до 17 PT. Проблемы затронули как собственные сервисы Gmail, YouTube и прочие так и клиентов облака: Snapchat и другие.

Гугл потерял «три девятки» (99.99% доступности сервисов) в этом квартале.

С нетерпением ждём постмортем. Ожидаемо, что надёжность сети - последняя нерешенная проблема облаков. Интересно, как они её в результате решат и решат ли в принципе.

Мои сочувствия ребятам из России, у которых пользователи/клиенты в штатах (обычно я им завидую:). У вас была горячая ночь.

Ну и это хорошее напоминание нам всем, что для критических сервисов имеет смысл посчитать стоимость резервирования хостингов.
Когда отшила неприятного мужика в тиндере, а он оказался Жаровым...

Если говорить серьезно, то мне кажется, что это РКН так генерит инфоповоды про себя. Не представляю, что Тиндер будет с ними сотрудничать.
Перевёл сегодня интерфейс одного проекта с одного языка на другой с помощью Google Cloud Translation API.

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

Я попробовал несколько разных систем машинного перевода для этой задачи, самая хорошая - Google Translate. Она даже теги span и переменные в фигурных скобках не корёжит, переводит только тексты. Учитывая бесплатные полмиллиона символов перевода - даже с настройкой биллинга не придётся заморачиваться, скорее всего. Регистрируетесь в Google Cloud Platform, пишете небольшой питоновский скрипт и вперёд. Можете взять мой за основу.

Конечно, локализация (l10n) и интернационализация (i18n) проекта (разница между ними) — гораздо больше, чем просто перевод; а даже организация перевода для большого проекта с несколькими переводчиками — то ещё развлечение. Но это тема для гораздо более длинного поста.
Впечатляющая ежегодная презентация Apple WWDC. Формально для разработчиков, на самом деле смотрят, конечно, все. Презентовали новые iOS и macOS, которые выйдут публично осенью.

То, что заметят все:
- потерянные макбуки можно будет искать при помощи Bluetooth через сеть всех айфонов на планете;
- activation lock для макбуков, наконец-то. Украденный макбук перестанет работать и превратится в тыкву (читай запчасти);
- Sign in with Apple — регистрация и вход в приложения одной кнопкой (все стартапы дружно пошли программировать). Для каждого приложения генерируется уникальный почтовый ящик, так что можно легко отписаться и приложения никак не смогут вас затрекать. Google, FB и прочие маркетологи сильно недовольны сейчас;
- новое приложение для фото с использованием ML;
- переделали карты, но как и раньше, только для избранных стран, продолжаем пользоваться Google maps и maps.me :(
- клавиатура со свайпами (да, как в андроиде уже много лет);
- подкасты не забыты — тоже, как гугл, распознают тексты и позволяют по ним искать. Интересно, будет ли работать с русским?
- поработали над скоростью, обещают, что всё станет быстрее, а FaceID ускорится аж на треть;
- системник мак про за 6 тысяч баксов и гигантский (и кажется, очень хороший) ретина монитор от Apple за 5 тысяч долларов (за 6 тысяч матовый). Стойка к монитору ещё тысяча. Готовьте денежки, богачи! 💸

Для разработчиков:
- iPad-приложения можно перекомпилировать для маков чуть ли ни одной клавишей; для демо на сцену выпустили подозрительно улыбчивого разработчика Jira 🙈
- новая система верстки интерфейсов в Swift, простая прямо как в Keynote. Кажется, я смогу наконец сделать приложение, которое не осилил заверстать через сonstraints!
- новая платформа для AR, кажется хорошая (то, что обещает Magic leap, только без очков). Классная презентация майнкрафта с AR;
- голосовое управление сделали классное (нет, это не Voice Over, чуть другое, для видящих).

В целом: бодренько, ждем ускорения айфонов осенью и издеваемся над ценой за стойку монитора. Каноническая текстовая трансляция MacRumors.
​​Sign In with Apple станет обязательным для iOS приложений в этом году, будет работать в вебе! ⚡️ Это очень важная новость для всей индустрии.

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

Даже если мы регистрируемся по имейлу — создатели приложений могут найти нас по почте на том же фейсбуке и в гугле и гоняться за нами с рекламой. Такие возможности «ретаргетинга» есть в рекламных админках fb и google, хотя многие люди не подозревают о них. Некоторые приложения ещё спамят почем зря и от них трудно отписаться.

Sign In with Apple решает эти проблемы, потому что 1) Apple не продает рекламу 2) по желанию, при регистрации в очередном приложении, можно вместо своего настоящего адреса использовать Private email relay, предоставляемый Apple. Речь о почтовых адресах вида flgfhoq934fhrg@privaterelay.appleid.com — Apple будет пересылать письма с этих адресов на ваш ящик, но 1) по этому адресу вас невозможно отследить 2) вы можете деактивировать пересылку в любой момент — никаких «введите пароль для того, чтобы отписаться от нашей прекрасной еженедельной рассылки».

Это блестящий и вместе с тем опасный ход. Только представьте, на всех формах входа, где раньше были Google и Facebook теперь появится яблочко Apple. Я не знаю, как ещё лучше можно заявить о своем бренде на чужой площадке. Эта кнопка, черт побери, будет и в Android-версиях мобильных приложений! Опасно тем, что я могу себе представить аргументацию, что Apple использует один свой сервис для усиления другого — за это наказали в своё время Microsoft. Большая разница — у Apple нет монопольного положения на рынке мобильных телефонов (привет Андроид), но всё же.

Я лично не буду этим пользоваться Sign In with Apple для важных сервисов (не хочу класть все яйца в одну корзину, пусть и золотую), но я буду рекомендовать эту кнопку всем своим родственникам и близким не-гикам. Потому что это лучшее решение, которым они будут реально пользоваться. А ещё оно будет дико удобное, уж что-то, а большую жирную кнопку «войти (купить)» Apple умеет делать хорошо, так что мои советы никому не потребуются.

Для разработчиков приложений пилюля не целиком горькая, есть две большие ложки мёда: 1) Sign In with Apple (SIwA?) гарантирует, что перед вами живой человек — для таких регистраций можно отказаться от дополнительных верификаций по SMS или Google reCaptcha 2) все эти аккаунты защищены двуфакторной аутентификацией на стороне Apple.

То, что Apple умудрились одной этой функцией нанести урон ещё и Google reCaptcha — невероятный финт ушами. Снимаю шляпу. Для человека, варящегося в индустрии, весь Sign In with Apple — как хорошая музыка. Каждый шаг — красота.

Го прогать.
Поведение при факапе - отдельное искусство.

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

Твит про это капитально бомбанул, на ситуацию обратил внимание основатель компании и вот Digitalocean публикует образцовый постмортем.

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

5/5

P.S. Ещё одно напоминание об опасности держать все яйца в одной корзине. Как минимум бэкапы должны быть у второго провайдера.