Как стать автором
Обновить
-1
0
Андрей Ведерников @Grom1

Программист; рационалист

Отправить сообщение

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

Время на прочтение27 мин
Количество просмотров19K


Статей о том, что совсем скоро придут башковитые роботы и всех поработят бесконечное множество. Под катом еще одна заметка. Предлагаем вам ознакомиться с переводом выступления Нейтана Суареса, посвящённого определению целей систем искусственного интеллекта в соответствии с задачами оператора. На этот доклад автора вдохновила статья «Настройка искусственного интеллекта: в чем сложность и с чего начать», которая является основой для исследований в сфере настройки искусственного интеллекта.
Читать дальше →
Всего голосов 37: ↑33 и ↓4+29
Комментарии51

Руководство разработкой: beginner's survival guide

Время на прочтение14 мин
Количество просмотров23K

Привет! Меня зовут Наташа, я руковожу разработкой бэкенда страницы yandex.ru. Сейчас у нас в команде больше двадцати человек, которые входят в отдельные группы разработки. Три года назад я впервые стала «тимлидом» маленькой группы из четырёх человек, накопив к этому времени десяток лет опыта в разработке и эксплуатации. Я не стесняюсь сказать, что переход от разработчика к тимлиду дался мне тяжело — и это нормально!

Мне нравится помогать людям в их жизненном пути и ко мне часто приходят начинающие руководители для получения опыта. Работа с людьми показала, что все проходят одинаковый путь с одинаковыми проблемами. Эта статья — мой способ наглядно показать начинающим руководителям происходящее с ними и дать очень простые инструменты, облегчающие первый переход от исполнителя к руководителю.
Читать дальше →
Всего голосов 45: ↑41 и ↓4+51
Комментарии24

Восемь возможностей C++17, которые должен применять каждый разработчик

Время на прочтение9 мин
Количество просмотров133K

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


Вам также может быть интересна статья Десять возможностей C++11, которые должен использовать каждый C++ разработчик
Читать дальше →
Всего голосов 35: ↑33 и ↓2+31
Комментарии52

Как стать лучшим в мире в какой-то нише

Время на прочтение6 мин
Количество просмотров78K


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


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

Как вы можете себе представить, вероятность стать игроком НБА очень низкая: всего есть 30 команд по 15 игроков в каждой, что дает в общей сложности около 450 человек — не так уж много, особенно если учесть, что в молодежный баскетбол играет более полумиллиона ребят. Несложные подсчеты показывают, что меньше чем один из тысячи становится профессионалом.

image
Источник: Томас Пуэйо

Так что давайте будем реалистами: вы не попадете в НБА, не станете ни президентом, ни величайшим писателем в мире, ни лучшим шахматистом, ни самым искусным оратором. Вы никогда не станете лучшим в мире в каком-либо конкретном навыке: всегда найдется кто-то, кто выкладывается больше, у кого лучше генетические данные, кому больше везет (или всё сразу).

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

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

Переведено в Alconost
Читать дальше →
Всего голосов 96: ↑89 и ↓7+82
Комментарии115

«Резни не будет» — рассказ о переводе «Червя»

Время на прочтение11 мин
Количество просмотров19K
image

В конце прошлого года случилось давно ожидаемое литературное событие — группа переводчиков, которая в течении пяти лет переводила роман «Червь» известного канадского писателя Джона МакКрэя, пишущего под псевдонимом «Wildbow», наконец-то завершила работу.

Если вы не слышали об этом романе, или не брались за него по причине незавершенности перевода, то я вам даже немного завидую — вас ожидает пара месяцев (а то и полгода — роман чудовищно, невообразимо огромен) отличного чтения. «Червь» сложный, многоплановый НФ триллер со сложным рациональным сюжетом. (Немного больше здесь:)
Внимание: Опасайтесь спойлеров — роман к ним чувствителен. Поэтому, если вы не прочли роман — лучше всего отложить чтение статьи и скачать книгу. Помните: несмотря на то, что текст распространяется свободно, автору очень нужны ваши пожертвования — это основной источник его доходов.
Ну, а тех из читателей, что уже прочли роман, я приглашаю познакомиться с «Клубом любителей попереводить Червя» — с командой, подарившей нам русский перевод. Уверен, что даже далеким от литературы читателям Хабра будет интересно ознакомиться с опытом организации успешного проекта, связавшего воедино множество творческих личностей.
Читать дальше →
Всего голосов 25: ↑25 и ↓0+25
Комментарии152

Крыша поехала: как понять, что пора к психотерапевту, и как его найти

Время на прочтение5 мин
Количество просмотров32K
Предыдущий пост про депрессию вызвал довольно бурное обсуждение. Актуальность темы психического здоровья среди высококвалифицированных специалистов очевидна, но даже в нашей среде она, к сожалению, остается табуированной.

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

image
Читать дальше →
Всего голосов 39: ↑25 и ↓14+11
Комментарии68

Как я искала эталон красоты с помощью Natural Language Processing (и не нашла)

Время на прочтение8 мин
Количество просмотров20K
Невозможно объективно измерить, какие девушки красивее: блондинки или брюнетки, смуглые или белокожие, высокие или миниатюрные. Но можно посчитать, какие черты внешности упоминают чаще, когда говорят о красоте.

У меня была неделя на эксперименты, наши движки анализа данных,16 тысяч русских романов и повестей XIX века и 15 тысяч современных длинных произведений. И, конечно, не было никаких размеченных данных.

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

Вот визуализация того, что получилось. Точнее, одного из распространённых вариантов.


Цвет глаз, волос, платье, рост, воспитание — всё это можно выделить из корпуса текстов.

Конечно, не всё так просто и однозначно как на рисунках, но примерное представление вы уже получили. Теперь давайте расскажу про детали и последовательность действий.
Читать дальше →
Всего голосов 89: ↑81 и ↓8+73
Комментарии65

Правильная работа с потоками в Qt

Время на прочтение13 мин
Количество просмотров79K
Qt — чрезвычайно мощный и удобный фреймворк для C++. Но у этого удобства есть и обратная сторона: довольно много вещей в Qt происходят скрыто от пользователя. В большинстве случаев соответствующая функциональность в Qt «магически» работает и это приучает пользователя просто принимать эту магию как данность. Однако когда магия все же ломается то распознать и решить неожиданно возникшую на ровном казалось бы месте проблему оказывается чрезвычайно сложно.

Эта статья — попытка систематизации того как в Qt «под капотом» реализована работа с потоками и о некотором количестве неочевидных подводных камней связанных с ограничениями этой модели.

Основы
Thread affinity, инициализация и их ограничения
Главный поток, QCoreApplication и GUI
Rendering thread
Заключение

А Вы правильно работаете с QThread и сигналами?
Всего голосов 44: ↑44 и ↓0+44
Комментарии38

Писать или не писать. Письма в органы власти при проведении мероприятий

Время на прочтение6 мин
Количество просмотров7K
Все, кто проводит мероприятия или только собираются их проводить, работают в правовом поле законодательства. В нашем случае законодательства России. И в нём часто есть спорные моменты. Один из них — писать или не писать письма-уведомления в органы власти при подготовке мероприятия. Многие игнорируют этот вопрос. Далее небольшой разбор, так писать или не писать?
Читать дальше →
Всего голосов 10: ↑8 и ↓2+6
Комментарии11

Мошенники и ЭЦП — всё очень плохо

Время на прочтение5 мин
Количество просмотров238K

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

Читать дальше →
Всего голосов 356: ↑356 и ↓0+356
Комментарии780

Что не нужно делать, если у вас украли телефон

Время на прочтение7 мин
Количество просмотров235K
Ранее каждый раз, когда я видел сообщения о том, что у человека украли телефон, то всегда задавался вопросом: а зачем? Ну, серьезно, зачем воруют смартфоны если:

  • его можно отследить по IMEI, а смена IMEI явно не бесплатна;
  • на телефоне могут быть установлены блокировки, снять которые так же не бесплатно;
  • есть приложения с режимом «Антивор», которые передают фото, видео и аудио;
  • даже встроенные возможности Android (и, полагаю, iOS) имеют функцию геолокации пропавшего устройства;
  • устройство может иметь особые приметы, которые довольно сложно устранить «бесплатно»;
  • наверняка где-то рядом есть камеры видеонаблюдения, свидетели и т.п.;
  • при продаже краденного за него сложно будет выручить большую сумму денег.

Осознавая все это, я действительно не понимал, для чего же воруют телефоны, если, по сути, их легко найти, а денег на этом не заработать? Не понимал до 8 февраля 2019 года, пока у меня у самого не украли телефон.
Читать дальше →
Всего голосов 286: ↑259 и ↓27+232
Комментарии638

Как выбрать инструмент для прототипирования в 2018 году?

Время на прочтение6 мин
Количество просмотров20K
Здравствуй, Хабр! Меня зовут Саша Отважный, я работаю команде Digital Business Platform Сбербанка и Сбертеха, и занимаюсь дизайном мобильных приложений и веб-проектов. Большая часть моей работы состоит из сборки прототипов разной степени детализации для разных целей. Новые инструменты и сервисы для дизайна и прототипирования выходят и обновляются каждый день. Я провёл полное и глубокое исследование инструментов, представленных сегодня на рынке, и помогу в них разобраться.

Я разбил список на три большие группы по функциональности и разберу каждую по отдельности:


Всего голосов 32: ↑29 и ↓3+26
Комментарии28

Краткое введение в Клеточную биологию

Время на прочтение4 мин
Количество просмотров18K


Последние пару лет я занимаюсь исследованиями в области биологии растительной клетки, в частности, я занимаюсь вопросом сигналинга и регуляции клеточных процессов. В свободное время балуюсь биоинформатикой, классическими ML задачами, и спортивной биомеханикой. Этой весной я, по счастливой случайности выплыл в реальный мир и пообщался с реальными людьми, что позволило мне понять, как мало обычный человек знает о том, как устроен его организм и мир вокруг. Это и натолкнуло меня на мысль написать цикл статей о том как устроен наш организм, как работают клетки и как наконец хранится информация в ДНК (подробные описания встречаются, увы, крайне редко, а ведь для понимания работы ДНК не хватает знания о 4 нуклеотидах). Но начну я пожалуй с самого простого, с состава клеток (для начала в очень упрощенной форме).

Ни для кого не секрет, что почти все живое в этом мире состоит из клеток, будь то мы с вами, любимый кот, водоросли, или бактерии помогающие переваривать все то, чем современный человек загружает свой желудок. Однако большинство людей почти ничего не знает о том, как устроены клетки и как они работают. Многие из вас могут возразить, что их работа не связанна с биологией и эти знания им не нужны, и это ваше право. Однако в большинстве насущных проблем биологическое знание может нам помочь (например понять абсурдность рекламы большинства омолаживающих кремов, важности антибиотиков и их правильного приема, всю абсурдность споров на тему ГМО и т.д.).
Читать дальше →
Всего голосов 43: ↑39 и ↓4+35
Комментарии72

Git happens! 6 типичных ошибок Git и как их исправить

Время на прочтение5 мин
Количество просмотров239K


Прим. перев.: На днях в блоге для инженеров любимого нами проекта GitLab появилась небольшая, но весьма полезная заметка с инструкциями, которые помогают сохранить время и нервы в случае различных проблем, случающихся по мере работы с Git. Вряд ли они будут новы для опытных пользователей, но обязательно найдутся и те, кому они пригодятся. А в конец этого материала мы добавили небольшой бонус от себя. Хорошей всем пятницы!

Все мы делаем ошибки, особенно при работе с такими сложными системами, как Git. Но помните: Git happens!
Читать дальше →
Всего голосов 63: ↑62 и ↓1+61
Комментарии62

Как мы стали делать офигенно длинные собрания, и почему это больше не вселенское зло

Время на прочтение6 мин
Количество просмотров39K

Наш идеал почти 9 лет был такой: собрание стоя, 15 минут максимум, минимум людей. И лучше вообще в коридоре. Не можешь решить за 15 минут — значит, что-то пошло не так. Звучит круто, правда?

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

Механика, которую нам предложили — это совещание по специальному протоколу. Оно занимает невероятно дохрена времени (4 часа на вопрос, где ушло бы наши 15 минут), навевает скуку и тоску, но если проходить по этапам, появляется ощущение, что решение всё же есть. И его можно реализовать. И оно, скорее всего, получится очень качественное: будет учитывать больше нюансов, будет поддержано теми, кому его исполнять. А это существенно сокращает срок внедрения.

Лучше пару часов потерпеть, но потом внедрить на месяц быстрее.
Читать дальше →
Всего голосов 105: ↑100 и ↓5+95
Комментарии131

Заблуждения большинства программистов относительно «времени»

Время на прочтение6 мин
Количество просмотров59K
Много дней назад я решил записать некоторые наблюдения, сформировавшиеся пока в последние годы я занимался тестированием. Рассматривая области, которые получают наибольшую отдачу от тестирования, я понял, что у меня накопилось много конкретных мыслей о том, как мы — программисты — склонны небрежно обращаться с понятием «время» в программировании.

Тогда я написал пост «Заблуждения программистов относительно „времени“», в котором указал 34 ошибочных представления и заблуждения, относящихся как к календарному, так и к системному времени. С большинством из них я столкнулся сам, занимаясь дебаггингом программ (как рабочих, так и тестовых).

Читать дальше →
Всего голосов 62: ↑55 и ↓7+48
Комментарии100

Как перевести речевой аудио-файл в текст с помощью Google translate

Время на прочтение2 мин
Количество просмотров300K


Обычно Google translate используют для перевода речи транслируемой микрофоном.


Но в один момент, автору потребовалось перевести подкаст Медузы в текст.


Идея лежала на поверхности и наверняка программы для этого должны были присутствовать. Так -же как сделано в Gogle translate.


Но, гуглением, программы не нашлось, кроме двух сайтов. Которые использовали по уверениям их авторов всю мощь искусственного интеллекта Google.


Первый нашелся русскоязычный сайт https://speechpad.ru/blog/windows-integration/



Но, как бы не было обидно, магия не сработала…

Читать дальше →
Всего голосов 25: ↑21 и ↓4+17
Комментарии29

Вероятностные модели: байесовские сети

Время на прочтение8 мин
Количество просмотров87K
В этом блоге мы уже много о чём поговорили: были краткие описания основных рекомендательных алгоритмов (постановка задачи, user-based и item-based, SVD: 1, 2, 3, 4), о нескольких моделях для работы с контентом (наивный Байес, LDA, обзор методов анализа текстов), был цикл статей о холодном старте (постановка задачи, текстмайнинг, теги), была мини-серия о многоруких бандитах (часть 1, часть 2).

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


Читать дальше →
Всего голосов 49: ↑47 и ↓2+45
Комментарии35

Создание шейдеров

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

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


Сцена из Minecraft, до и после добавления нескольких шейдеров.

Задача этого туториала


Иногда программирование шейдеров представляется загадочной чёрной магией и его часто понимают неправильно. Существует множество примеров кода, демонстрирующих создание невероятных эффектов, но в которых практически нет объяснений. В своём руководстве я хочу восполнить этот пробел. Я сосредоточусь в основном на базовых принципах создания и понимания кода шейдеров, чтобы вы смогли с лёгкостью настраивать, сочетать или писать свои собственные шейдеры с нуля!
Всего голосов 105: ↑105 и ↓0+105
Комментарии27

Вы неправильно пишете животных

Время на прочтение5 мин
Количество просмотров380K
Животные – это платформы с очень ограниченной памятью, вычислительными способностями и возможностями модификаций. Разработчикам энимал-сцены приходится выдавать практически гениальные низкоуровневые алгоритмы. Правда, большое количество хардкода вызывает характерные проблемы с отсутствием проверки в экзотических условиях. Та же фильтрация входных данных делается очень и очень криво.


Уязвимость рекурсивных алгоритмов навигации муравья: спираль смерти

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

Но пойдём далее. Я не знаю, кто разрабатывал архитектуру ящериц, но они бегают в одном процессе, а дышат в другом. При этом платформа не поддерживает многозадачность, поэтому костыль с максимальной длиной бега в 4-6 секунд просто эпичен.
Читать дальше →
Всего голосов 442: ↑438 и ↓4+434
Комментарии352

Информация

В рейтинге
Не участвует
Откуда
Екатеринбург, Свердловская обл., Россия
Зарегистрирован
Активность