• Обзор: от чего зависит рост или падение курса рубля



      Изображение: Waltie | CC BY 2.0

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

      Примечание: цель материала, не дать подсказку о том, как подзаработать на колебаниях, а скорее – помочь избежать ненужных потерь из-за неожиданных колебаний, которые можно было легко предвидеть.
      Читать дальше →
      • +10
      • 6.8k
      • 7
    • Пирамида спича: как с помощью уровней Дилтса вызвать доверие аудитории

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

      image
      Читать дальше →
    • Идеальный Action для Google Ассистента — 8 уроков московского хакатона



        В конце июля Google провел закрытый хакатон в своем московском офисе (тот, который напротив Кремля). Темой была разработка Actions для голосового ассистента. Мы (Just AI) и еще с десяток команд побывали на этом мероприятии и вынесли из него не только красные рюкзаки с гугловскими ништяками, но и массу полезных знаний о том, как создавать качественные голосовые интерфейсы.

        За пару дней хакатона все попробовали разработать голосовое приложение для ассистента, а кто-то даже опубликовал свои труды в каталоге Google Actions. На примере нашего приложения мы расскажем о том, как создать идеальный Action и легко пройти модерацию гугла.
        Читать дальше →
        • +11
        • 3.9k
        • 5
      • OK Google, заведи мне машину

        • Tutorial


        Будущее всё ближе. Лет 10 назад я и не мог подумать, что буду заводить машину с помощью голосовой команды!

        Последние годы я с интересом наблюдал за бурным развитием голосовых ассистентов. После выхода Google Home Mini, решил что и мне уже пора попробовать, так как цена стала более-менее адекватной для «игрушки». Первый проект — интеграция голосового помощника с GSM модулем StarLine для автозапуска, контроля координат, напряжения аккумулятора и других параметров, отдаваемых сигнализацией автомобиля. Итак, поехали?
        Читать дальше →
      • Как создать крутой экшен для Google Ассистента. Лайфхаки от Just AI

          image

          Экосистема вокруг Google Ассистента развивается невероятно быстро. В апреле 2017 года пользователям были доступны всего 165 экшенов, а сегодня только на английском их – более 4500. Насколько разнообразным и интересным станет русскоязычный уголок вселенной Google Ассистента, зависит от разработчиков. Есть ли формула «идеального экшена»? Зачем отделять код и контент от сценария? О чем нужно помнить, работая над разговорным интерфейсом? Мы попросили команду Just AI, разработчиков технологий разговорного AI, поделиться лайфхаками по созданию приложений для Google Ассистента. На платформе Aimylogic от Just AI созданы несколько сотен экшенов, среди которых есть весьма популярные – в игру «Да, милорд» сыграли уже более 140 тысяч человек. Как правильно построить работу над экшеном мечты, рассказывает Дмитрий Чечёткин, руководитель стратегических проектов Just AI.

          Взболтать, но не смешивать: роль сценария, контента и кода


          Читать дальше →
          • +13
          • 2.8k
          • 3
        • Почему только прокачка кодинга не сделает из тебя лучшего разработчика


            Techlead Skyeng Кирилл Роговой (flashhhh) выступает на конференциях с докладом, в котором рассказывает о навыках, развивать которые стоит каждому хорошему разработчику, чтобы стать лучшим. Я попросил его поделиться этой историей с читателями Хабры, передаю Кириллу слово.


            Миф про хорошего разработчика гласит, что он:


            1. Пишет чистый код
            2. Знает много технологий
            3. Быстрее кодит задачи
            4. Знает кучу алгоритмов и шаблонов проектирования
            5. Умеет отрефакторить любой код по Clean Code
            6. Не тратит время на непрограммистские задачи
            7. 100% мастер своей любимой технологии

            Так видят идеальных кандидатов HRы, и вакансии, соответственно, выглядят тоже так.


            Но мой опыт говорит, что это не сильно соответствует действительности.

            Читать дальше →
          • Осторожный переезд в Нидерланды с женой и ипотекой. Часть 1: поиск работы

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

              image

              В общем, если вам интересен рассказ о том, как C++ программист из Подмосковья искал работу в Европе, желательно в Великобритании, а нашел-таки в Нидерландах, переехал туда сам и привез жену, все это с непогашенной ипотекой в России и с небольшими приключениями — добро пожаловать под кат.
              Читать дальше →
            • Мотивация. Сделай сам

                Есть такая полезная задача — разработка систем мотивации. Я долго наблюдал за несчастными HR, которые создавали системы KPI, материальную и нематериальную мотивацию, силились поднять корпоративный дух. Мои наблюдения всегда показывали одно и то же — HR в этой работе чего-то не хватает. Вроде слова правильные говорят, и философия под их расчетами правильная лежит, но созданные ими системы мотивации не выдерживают никакой критики.

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

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

                Итогом почти всегда является «какая-нибудь» система мотивации, которая хоть что-то считает и дает хоть какое-то представление об эффективности работы людей. Но главная беда — система мотивации не приносит пользы бизнесу, потому что оценивает людей по критериям, ему не выгодным.

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

                В итоге я пришел к выводу, что разработка систем мотивации — больше инженерная задача, чем гуманитарная (да простят меня милые и добрые HR). Как ни крути, система мотивации — это система показателей. Показатели — это измерение, управление границами, согласованность целей и возможностей, четкая взаимосвязь с бизнес-процессом, правильная автоматизация. Все перечисленное — инженерные задачи.
                Читать дальше →
              • Управление командой программистов: как и чем их правильно мотивировать? Часть первая

                  Эпиграф:
                  Муж, глядя на чумазых детей, говорит жене: ну, что, этих отмоем или новых нарожаем?


                  Под катом рассуждения нашего тимлида, а также директора по развитию продукта RAS — Игоря Марната об особенностях мотивации программистов.

                  image
                  Секрет успеха в создании классных программных продуктов известен — возьмите команду крутых программистов, дайте команде классную идею и не мешайте команде работать. Крутые разработчики — ребята редкие и востребованные. Некоторые рекрутеры даже говорят, что у них создаётся такое впечатление, что родить крутого программиста проще, чем нанять его с рынка. Помимо трудностей с наймом, как таковым, опыт каждого конкретного разработчика, его знания о существующем продукте и истории его разработки зачастую незаменимы или восполняются тяжело и долго. Поэтому если вам повезло, и у вас уже есть крутая команда программистов, важно работать над их мотивацией. Нанять, обучить новых разработчиков, сделать из них команду — почти так же трудно и долго, как родить и вырастить детей.
                  Читать дальше →
                • Девушка под водопадом

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

                    Прелесть в том, что живые люди сами не пытаются тебя учить. Не проводят семинаров, тренингов, не берут с тебя денег. Они просто делают свою работу, как умеют. Что-то у них получается, бывают и провалы, и срывы, и ругань с матами. Но у каждого можно чему-то научиться, даже если в целом о человеке мнение складывается негативное.

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

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

                    В комментариях велели картинку для привлечения внимания вставить. Исполняю.



                    Сейчас она работает директором проектного департамента одного из крупнейших и известнейших предприятий Челябинска. А я сижу и пишу про нее статью.
                    Читать дальше →
                  • В = Внимание, или как создавать время


                      Людям с таким психологическим портретом, как у меня, бесполезно заниматься тайм-менеджментом. Интересно очень многое, проектов одновременно несколько, мышление стратегическое, взаимодействие со словом «скучно» очень непростое. Когда всюду любопытное, и везде хочется залезть и что-то поделать, вероятность выгорания вырастает. Что делать?


                      Пробовал разное. Первой отпала всякая «продуктивность». Будем честными: «продуктивность» — это зонтичный бренд для разных инкрементальных микро-улучшений, который каждый и так применяет в той или иной степени.


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


                      В итоге пришел к такой формулировке: важны прежде всего внимание и намерения.

                      Читать дальше →
                      • +18
                      • 8.7k
                      • 7
                    • Основы проектирования баз данных – сравнение PostgreSQL, Cassandra и MongoDB

                      • Translation
                      Здравствуйте, друзья. Перед уходом на вторую часть майских праздников делимся с вами материалом, который мы перевели в преддверии запуска нового потока по курсу «Реляционные СУБД».



                      Разработчики приложений тратят много времени на сравнение нескольких операционных баз данных, чтобы выбрать ту, которая лучше всего подойдет для предполагаемой рабочей нагрузки. Потребности могут включать в себя упрощенное моделирование данных, транзакционные гарантии, производительность чтения/записи, горизонтальное масштабирование и отказоустойчивость. По традиции выбор начинается с категории базы данных, SQL или NoSQL, поскольку каждая категория предоставляет четкий набор компромиссов. Высокая производительность с точки зрения низкой задержки и высокой пропускной способности обычно рассматривается как требование не допускающее компромиссов, и поэтому является необходимым для любой базы данных из выборки.
                      Читать дальше →
                      • +1
                      • 7.8k
                      • 5
                    • Основы Dart Streams

                      • Translation

                      Это вторая часть моей серии по поводу Flutter Architecture:



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


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


                      Пусть течет


                      Я читаю множество комментов, что дескать потоки, и особенно Rx, слишком сложны для понимания и, как следствие, для использования.


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

                      Читать дальше →
                    • Приглашаем на второй Camunda BPM Meetup Raiffeisenbank UPD Трансляция

                        Приглашаем вас на второй в России открытый митап Camunda BPM, который пройдет 30 мая 2019 года на площадке Райффайзенбанка в Нагатино.

                        Как прошел первый митап сообщества Camunda BPM можно посмотреть в этом посте.

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

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

                        Хотите в чат? Тогда вам сюда


                        Читать дальше →
                      • Поймай меня, если сможешь

                          Ты – эффективный менеджер. Я – программист. Ты умудрился стать моим начальником. Я занимаюсь автоматизацией нашего сраного завода. Ты делаешь вид, что руководишь этим процессом.

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

                          Ты утверждаешь, что знаешь об автоматизации все. Ты называешь себя властителем душ программистов. Говоришь, что они у тебя танцуют, как кобра под дудочку.
                          Что ж. Проверим.
                          Читать дальше →
                        • Русский перевод учебного курса «Введение в информатику с MakeCode для Minecraft»

                          Всем, всем, всем, преподающим информатику детям лет 10 — 14!

                          По ссылке доступен русский перевод курса «Введение в информатику с MakeCode для Minecraft».

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

                          1. зайти на страницу редактора Minecode minecraft.makecode.com
                          2. переключиться на русский язык там через настройки (шестеренка в правом верхнем углу)
                          3. снова зайти на minecraft.makecode.com/courses/csintro
                          Читать дальше →
                          • +24
                          • 5.7k
                          • 2
                        • TDD: методология разработки, которая изменила мою жизнь

                          • Translation
                          На часах 7:15 утра. Наша техподдержка завалена работой. О нас только что рассказали в передаче «Good Morning America» и множество тех, кто впервые посещает наш сайт, столкнулось с ошибками.

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

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

                          image

                          Автор материала, перевод которого мы сегодня публикуем, полагает, что всего этого можно было бы избежать благодаря TDD.
                          Читать дальше →
                        • Вы не Google

                          • Translation


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

                          Читать дальше →
                        • Как пасти (с)котов, или Советы юному программисту

                            Когда вышло первое издание на русском языке хорошо известной книги «Как пасти котов», посвященной непростой теме управления своенравными по натуре профессиональными и не очень разработчиками ПО, мой более опытный коллега руководитель проектов подметил: “Правильнее было бы её назвать «Как пасти скотов»”. Фраза запомнилась, и как показывает накопившийся с тех пор опыт взаимодействия с программистами — коллега был прав.

                            Как программистов ненавидят их коллеги



                            На Хабре имеется изрядное количество статей, посвящённых методологиям разработки ПО, общению и взаимодействию в проектной команде, отбору и найму на работу программистов. Без преувеличения каждая такая статья собирает множество гневных комментариев от программистов, в которых за недостатки той или иной методологии или за неудачи в проектах они клеймят «пиэмов», тестировщиков, сотрудников отдела персонала, аналитиков, заказчиков — кого угодно, но только не себя любимых. В статьях и в комментариях к ним превалирует мнение, что разработчик всегда прав. Преобладание этого мнения обусловлено помимо прочего тем, что программисты составляют в аудитории Хабра бо'льшую часть. В то же время, в организациях и проектных командах трудятся специалисты, которые не являются программистами. Данная статья в частном порядке как раз выражает точку зрения той, иной стороны, сформировавшуюся по ту сторону «баррикад».
                            Читать дальше →
                          • Как я перестал беспокоиться и по-другому взглянул на системы учёта рабочего времени

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

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

                              Один из заказчиков прислал мне собственный разбор-анализ приложений следящего софта CleverControl, Kickidler, StaffCop, Teramind, Time Doctor и «Стахановец». Они выбирали софт для контроля за сотрудниками для собственного офиса, поэтому, кроме прочего, в списке пунктов анализа есть «невидимость пользователям».



                              В принципе, если не давать заказчику удалённо админского доступа к своему компу, то простым подрядчикам волноваться особо не о чем.
                              Читать дальше →