Популярное за всё время

61

«Помоги найти хорошего программиста!» — одна из самых частых просьб. «Сколько я стою как разработчик?» — кажется, самый частый невысказанный вопрос.

За свою карьеру я прособеседовал пару сотен специалистов, но я точно не эксперт в рынке труда. То ли дело Кира Кузьменко — гость нового эпизода нашего подкаста.

Кира работала заместителем HR директора mail.ru, а теперь у неё своя компания, которая занимается поиском IT-специалистов. Кира наняла тысячи программистов и хорошо знает рынок.

Я задал все стыдные вопросы и впервые всерьез засмущался во время записи. Это — 12 эпизод подкаста и Кира — первая герой-женщина. Кто виноват в том, что в IT так мало женщин мы тоже обсудили.

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

62

Я немного завидовал нашим бабушкам и дедушкам — они жили в эпоху великих фантастов XX века, мечтали о космосе и рисовали в уме человекоподобных роботов.

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

Текст немаленький (15 тысяч слов только повесть!), и это не совсем художественная литература. Там куча технических деталей, а писатель из команды — тот самый Scott Alexander из Slate Star Codex. Перескажу коротко.

Главное, что ускорит искусственный интеллект — это разработка искусственного интеллекта. Мы создадим минимально полезную модель, которая поможет нам разработать модель помощнее и так по спирали. К апрелю 2027 она заберёт программирование нейросетей, к августу — исследования и обучение. Развитие нейросетей ускорится в десятки раз.

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

Дальше интерактивная развилка: мы выключаем сеть 4 поколения, замедляемся и строим более безопасную модель или забиваем на риски и ускоряемся. В первом случае всё заканчивается раем на земле, всеобщим достатком и покорением звезд людьми с помощью роботов в 2030, во втором случае — покорением звезд роботами без участия людей; ИИ истребляет людей к 2030 году.

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

Один из авторов исследования предсказал chain-of-thought, масштабирование дата-центров, экспортные ограничения на ИИ-чипы и многомиллионые кластеры для обучения ещё в 2021 году, за год до появления ChatGPT.

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

63

Открытие дня - программа q.

Она позволяет писать SQL-запросы к csv-файлам.

Я уже собирался поднять себе локально Postgres и импортировать табличку туда, но все оказалось в 100 раз проще. Обратите внимание, она умеет открывать несколько файлов одновременно и делать между ними join’ы, например. Очень классно.

http://harelba.github.io/q/index.html

64

Google открыл свои серверы точного времени (NTP серверы) для публичного доступа и для високосной секунды в конце 2016 они будут передавать smeared time.

Я начал читать статью и провалился в кроличью дыру. Системы отсчета времени, часовые пояса и проблемы компьютерщиков с ними — дико интересная тема.

Наконец-то разобрался, что такое UTC: секунды совпадают с TAI — атомным часам, идущим без остановки с 1958 года. Мы добавляем или вычитаем високосную секунду каждый раз, когда неоднородность вращение земли грозится сделать разницу между UTC и астрономическим временем UT1 больше 0.8 секунд.

Я открыл для себя существование «международной службы вращения Земли», выпускающей официальные указания о високосной секунде за 6 месяцев до её введения.

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

Amazon Web Services, Google и прочие крупные провайдеры нашли элегантное решение проблемы. Вместо добавления секунды в конце года, их серверы точного времени будут идти медленнее за некоторое время до и некоторое время после високосной секунды.

Очень красивое решение сложной задачи.

Вот классная статья с историей вопроса и обсуждением, что пора бы уже отвязаться от вращения Земли и пользоваться нормальным атомным временем TAI.

65

Офигенный список законов Акина построения космических кораблей, который во многом подходит и программистам тоже. Не со всем согласен и многое трудно перевести, но внутри есть настоящие жемчужины.

Вот например:

1. Инженерия — про числа. Анализ без чисел — мнение.

20. A bad design with a good presentation is doomed eventually. A good design with a bad presentation is doomed immediately. / Плохая идея с хорошей презентацией рано или поздно развалится. Хорошую идею презентованную плохо выкинут сразу же.

23. Планы, которые вы разработали будут казаться вам сказкой, пока заказчик не уволит вас за то, что вы их не соблюдаете.

24. It's called a "Work Breakdown Structure" because the Work remaining will grow until you have a Breakdown, unless you enforce some Structure on it.

33. Хороший план исполненный сегодня лучше, чем идеальный план завтра.

40. (McBryan's Law) You can't make it better until you make it work. / Ты не можешь улучшить что-то, пока не заставишь это что-то выполнять свою функцию.

66

Slack изменил свои правила и теперь даёт скачать админу все приватные чаты и даже личные сообщения между членами команды, ничего об этом не сообщая участникам переписки.

Раньше скачать личную переписку других сотрудников в слеке можно было только включив так называемый Compliance mode, необходимый в основном для финансовой сферы. При включении этого режима все члены команды получали в личку уведомление «всё, что вы напишите с этого момента может быть прочитано вашим администратором».

По новым же правилам, достаточно заплатить за Plus-аккаунт (15$ за человека против 5$ в standard-тарифе) и админ получает доступ ко всей переписке за всё время, без какого-либо уведомления сотрудников.

В Standard тарифе тоже можно запросить такой полный экскпорт, но потребуются: а) описание, зачем это нужно б) согласие всех участников переписки в) закон, разрешающий сделать это в вашей юрисдикции. Но плати на 10$ за человека в месяц больше — и всё, никаких ограничений.

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

https://get.slack.help/hc/en-us/articles/204897248-guide-to-slack-data-exports

67

Едете заграницу? Обязательный шаг моей подготовки — консультация с Prepaid Data SIM Card Wiki. Это вики, на которой собрана информация, как не разориться на мобильном интернете при путешествиях. По каждой стране: названия провайдеров, реальные зоны покрытия, нужен ли паспорт для оформления симки, «сколько нужно закинуть на счет» и на какой номер потом отправить смс, чтобы включился правильный «пакет данных». И цены в нормальной таблице. Один из лучших примеров краудсорсинга.

Вспомнил, потому что лечу в Тунис на RightsConмеждународную конференцию про «свободу слова в цифровую эпоху». Расскажу про ESNI, DoH и почему они сильно изменят цензуру в интернете. Опять не встречусь там с Леонидом Волковым, он опять арестован. Потом сразу в Москву.

68

Другой чувак посмотрел на эту программу и сделал такое же, но только для нейросетей, посмотрите видео сами и согласитесь, что с доской и мелом было бы существенно хуже: https://www.youtube.com/watch?v=Ijqkc7OLenI

Восхитительный вечер.

69

Про совпадения.

Прямо сейчас Серебреников в наручниках в зале суда в Москве. Медуза ведет онлайн.

За 5 минут до начала трансляции что-то происходит со связностью между Lattelecom и Amazon (пару минут всё отлично, пару минут пакеты не ходят совсем). Редакция замечает это, в первую очередь, по недоступности Slackа.

Мы переключаем uplink на резервный LTE-роутер от LMT (латышский аналог МТС). Всё хорошо, пока редакторы не пытаются зайти на HTTP-сайты (смотрю нехорошим взглядом на tass.ru и interfax.ru). Происходит мистический 302 редирект на 192.168.8.2, который не грузится. Времени на поиск причины нет, решаем заплаткой с Chrome Data Saver (де-факто, VPN).

Оказалось, что LTE-роутер хочет обновить прошивку, делает DPI HTTP-сессий (но не HTTPS) и заменяет ответ сервера на 302 редирект. Из-за того, что таких запросов много — его веб-сервер не выдержал и ничего не отдавал. Одна из редакторов оказалась достаточно терпеливой, чтобы дождаться загрузку админки, я кликнул там «не сообщать об этом больше» и проблема решилась окончательно.

Прямо сейчас редакция работает через LTE-точку и это довольно магически. Насколько же это крутая технология, что офис из более чем 20 человек может спокойно пользоваться uplink обычного бытового LTE-модема.

Ах да, только что мой провайдер написал, что изменил роуты и всё должно стать ок, но я, пожалуй, дождусь конца трансляции.

70

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

Размер и сложность продукта растет, старые процессы уже не выдерживают. Копится недовольство с обоих сторон и вообще, нужно было поговорить.

Резюме совещания:

про макеты:
- постепенно создаем один мастер-макет, в котором отрисованы все форматы медузы и в который добавляются новые, перестаем использовать отдельные маленькие макеты как источник правды;
- с помощью этого мастер-макета постепенно уменьшаем количество разных элементов, выносим все общие элементы в стайлбук;
- если в новых форматах есть неочевидные моменты (заголовок изменился на 1 пункт, так просто не заметишь) — указываем эти комментарии прямо рядом элементом, на полях артборда;
- этот мастер-макет храним в версионированном хранилище с возможностью просмотра диффов и автоматическими уведомлениями о правках (скорее всего github + скетч-плагин, но если найдем хороший SaaS — то вполне может и на него сядем);

про совместную работу:
- задача разработчиков — в процессе разработки (чем раньше тем лучше, идеально во время приемки) найти недорисованные/недодуманные моменты и сказать о них дизайнеру. Например, если не учтена ситуация, когда одно из полей пустое — не очевидно, какие отступы делать в этом случае. Дизайнер дорисует эти кейсы и/или добавит в макет комментарий, объясняющий логику;
- если что-то очень сложно сделать на платформе (белая тень, хитрый блюр, etc.) — обсуждаем это с дизайнером. Что нужно в разговоре? 1) объясняем что именно сложно сделать и почему 2) предлагаем решение, как вы думаете можно упростить/сделать по другому 3) приходим вместе к компромиссу. Никто не требует делать безумные хаки, которые дорого поддерживать и которые ломаются с апдейтом чего-нибудь. Все мы хотим классный продукт и дизайнер мог просто не знать/забыть о платформо-специфичной вещи;
- вывод: Не стоит допридумывать то, что не описано/не нарисовано. Нужно договариваться. Молча делать отлично от макета запрещено;

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

Теперь о том, где, как и с кем это всё обсуждать.

1. О каких-то мелких непониманиях по дизайну стоит писать в личку Насте, Вите и Насте; можно созвониться-пошарить экран и тд, если текст не решает;
2. О крупным вещах, которые хочется обсудить с командой и с дизайнерами — пишите прямо в #dev или в проектный канал типа #dev-prodano
3. Если это тема в проектной работе, которая требует осмысления и обсуждения — круто завести для неё карточку в трелло-доске проекта и заменшенить в комментарии всех причастных. В трелло обсуждения не теряются и можно посмотреть толком историю переписки по конкретному вопросу.

Воспользуюсь случаем и напомню, что текущие проекты, предстоящие задачи и icebox (то, что хочется сделать, но хз когда) можно посмотреть в доске «проекты разработки» — он открыт для всех, изучайте и дополняйте, пожалуйста.

-----

А как вы строите работу дизайнеров с программистами? Делитесь в @ctodailychat, интересно послушать ваши истории.