• Я вам перезвоню

    • Tutorial
    Привет, я Катя, я нашла работу. И написала методичку по общению с работодателем. Расскажу, что спрашивать на собеседовании, чего не спрашивать и как это делать правильно.



    Весь месяц гоняла по собесам. Посмотрела и на стартапы и на Яндексы. Компаний много, выбирать сложно. Чтобы найти ту самую, нужно учесть много факторов. Для каждой компании я составляла индивидуальный список вопросов. Универсальные оформила в этот faq. В нем ключевые вопросы соискателя и их аналитика. Часть вопросов заточена под разработчиков, остальные подойдут всем. Го под кат!
    Читать дальше →
  • Рендеринг текста вас ненавидит

    • Translation

    Рендеринг текста: насколько сложным он может быть? Оказывается, невероятно сложным! Насколько мне известно, буквально ни одна система не выводит текст «идеально». Где-то лучше, где-то хуже.

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

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

    Мы обсудим темы, которые не объединяются в рамках какой-то единой концепции, это просто вопросы, с которыми мне пришлось столкнуться за несколько лет работы над рендерингом текста в Firefox. Например, не будем слишком подробно обсуждать проблемы сегментации текста или управления различными текстовыми библиотеками для конкретной платформы, поскольку этим я не слишком интересуюсь.
    Читать дальше →
  • Большое интервью с Клиффом Кликом — отцом JIT-компиляции в Java

      Клифф Клик — CTO компании Cratus (IoT сенсоры для улучшения процессов), основатель и сооснователь нескольких стартапов (включая Rocket Realtime School, Neurensic и H2O.ai) с несколькими успешными экзитами. Клифф написал свой первый компилятор в 15 лет (Pascal для TRS Z-80)! Наиболее известен за работу над С2 в Java (the Sea of Nodes IR). Этот компилятор показал миру, что JIT может производить качественный код, что стало одним из факторов становления Java как одной из основных современных программных платформ. Потом Клифф помог компании Azul Systems построить 864-ядерный мейнфрейм с софтом на чистой Java, который поддерживал паузы GC на 500-гигабайтной куче в пределах 10 миллисекунд. Вообще, Клифф успел поработать над всеми аспектами JVM.
       
      Этот хабрапост — большое интервью с Клиффом. Мы поговорим на следующие темы:


      • Переход к низкоуровневым оптимизациям
      • Как делать большой рефакторинг
      • Модель стоимости
      • Обучение низкоуровневым оптимизациям
      • Практические примеры улучшения производительности
      • Зачем создавать свой язык программирования
      • Карьера перформанс-инженера
      • Технические челленжи
      • Немного про аллокацию регистров и многоядерность
      • Самый большой челленж в жизни

      Интервью ведут:


      • Андрей Сатарин из Amazon Web Services. В своей карьере успел поработать в совершенно разных проектах: тестировал распределенную базу данных NewSQL в Яндексе, систему облачного детектирования в Лаборатории Касперского, многопользовательскую игру в Mail.ru и сервис расчёта валютных цен в Deutsche Bank. Интересуется тестированием крупномасштабных backend- и распределённых систем.
      • Владимир Ситников из Netcracker. Десять лет работает над производительностью и масштабируемостью NetCracker OS — ПО, используемого операторами связи для автоматизации процессов управления сетью и сетевым оборудованием. Увлекается вопросами производительности Java и Oracle Database. Автор более десятка улучшений производительности в официальном PostgreSQL JDBC-драйвере.
      Читать дальше →
      • +66
      • 14.1k
      • 9
    • Как физический адрес отображается в строках и банках DRAM

      • Translation
      В прошлой статье мы обсуждали, как процессоры Intel Sandy Bridge отображают физические адреса в кэше L3.

      Теперь я расскажу, как контроллеры памяти этих процессоров сопоставляют физические адреса с местоположением в DRAM — в частности, с номерами строк, банков и столбцов в модулях DRAM. Назовём это отображением адресов DRAM. Я использую одну тестовую машину в качестве примера.

      Мотивация: баг Rowhammer


      Меня интересует отображение адресов DRAM, поскольку оно относится к багу Rowhammer.

      Rowhammer — проблема с некоторыми модулями DRAM, когда определённые самые плохие модели доступа к памяти могут привести к повреждению памяти. В этих DRAM многократная активация строки памяти («забивание строки») вызывает электрические помехи, меняющие биты в уязвимых ячейках соседних строк.
      Читать дальше →
    • Что технарю нужно знать о гуманитариях?



        Начнем с того, что разделение на физиков и лириков придумали в 60ые для смеха, типа западников и славянофилов, или патриотов и либералов, спартак или динамо — классическая “двухпартийная система” наглядно показанная в серии Южного Парка про клизму и бутерброд. Еще древние римляне называли этот принцип “разделяй и властвуй”.

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

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

        Читать дальше →
      • Онлайн шутер на Unreal Engine 4 за 90 часов (видео создания + исходники)

          Привет, харб! Примерно год назад я выкладывал статью о том, как я в прямом эфире создал выживалку за 150 часов. На этот раз хочу представить вам сетевой шутер, который я создал за 25 заходов по 3 — 4 часа. Всего вышло около 90 часов и в итоге мы создали онлайн шутер, в который сыграли вместе со зрителями.

          image

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

          Несмотря на чистое время, данный проект занял примерно 10 месяцев. Я делал большие перерывы в стримах, но тем не менее, закончил разработку и теперь он доступен всем бесплатно и без смс.
          Если вас интересуют подробности, записи стримов, исходники или билд игры с сервером в комплекте, предлагаю прочитать дальше под катом!
          Читать дальше →
        • Где найти и как выбрать тимлида



            Предыстория


            Привет! Меня зовут Виталий Шароватов, я уже 16 лет работаю в IT. Сейчас я руковожу направлением фронтенд в Badoo. В него входят две команды, которые занимаются разработкой и поддержкой десктопной версии сайта badoo.com, мобильной версии m.badoo.com и многими другими проектами. Да, десктопную и мобильную версии у нас делают отдельные команды. :)

            Два с половиной года назад я пришел в Badoo разработчиком, со временем вырос до тимлида, а потом, когда было решено перевозить команду Desktop Web в Лондон, стал руководителем направления.

            Прошлой осенью на Codemotion Milan я делал доклад о росте из разработчика в тимлида (и писал на Хабр статью об этом) и о том, с какими неожиданными моментами мне пришлось столкнуться, а теперь расскажу, как при переходе из лида в руководителя направления я справился с подбором и «выращиванием» тимлида в одной из команд (Mobile Web).
            Читать дальше →
          • Как я был разработчиком, а теперь тимлид

              enter image description here


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

              Читать дальше →
            • Честный подход к управлению людьми, или Почему я никогда не делаю контрофферы

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



                Дисклеймер: Яндекс очень большой и разный, и я описываю здесь только принципы, принятые в разработке Яндекс.Здоровья. Уверен, что коллеги из других подразделений могут не разделять мои (довольно радикальные) убеждения и не видят ничего зазорного в том, чтобы удержать хорошего человека, сделав ему контроффер.

                Пару слов о себе. Я CTO в сервисе Яндекс.Здоровье, отвечаю за всю его техническую часть: разработку, тестирование, эксплуатацию и т. д. Сервис растёт стремительными темпами, мы активно расширяем команду, собеседуем технарей (разработчиков, тестировщиков, админов) и в большом количестве приглашаем их на работу. Время от времени случается, что хорошие кандидаты отказываются от подтверждённого ими на словах оффера. В большинстве случаев, расспросив кандидата, мы узнаём, что на текущей работе ему или ей сделали встречное «предложение, от которого нельзя отказаться», и оно звучит вкуснее и интереснее, чем наше.
                Читать дальше →
              • Как убить технаря в тимлиде

                  В IT линейных руководителей и тимлидов традиционно набирают из лучших инженеров. Их работа теперь состоит совсем в другом: управлять людьми и взаимодействовать с другими командами и организациями. Исходный же посыл «я лучше знаю, как нужно» часто приводит к совмещению в одном лидере одновременно двух крайностей: отсутствия делегирования и тотального контроля. И то, и другое вовсе не оставляет ни времени, ни сил на управление. О том, как со всем этим справиться и какие еще препятствия могут встретиться на пути новоиспеченного руководителя, на основе собственного опыта и собственноручно набитых шишек расскажет Александр Трофимов из Лаборатории Касперского.


                  В основе публикации — расшифровка доклада Александра Трофимова с HighLoad++ 2017
                  Читать дальше →
                • Нотной грамоте учат неправильно*

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


                    Предполагается, что студент должен страдать самостоятельно освоить ноты, путем многократного повторения. И вообще, если «ниасилил», значит у тебя нет Таланта — иди мести двор.


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


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


                    * Дисклеймер

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


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


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


                    Эффективность я оценивал исключительно на себе, поскольку сей субъект оказался самым доступным для исследования.

                    Читать дальше →
                  • Светодиодная лампа Philips 7 Вт из Дикси

                      В магазинах Дикси по всей стране появились в продаже светодиодные лампы Philips 7 Вт по цене 99 рублей. Я тестирую много светодиодных ламп, но для того, чтобы их купить надо куда-то ехать или заказывать их в интернете, а эту лампочку будут покупать вместе с продуктами в магазинах у дома, поэтому очень важно, чтобы она была хорошей и безопасной, тем более что все предыдущие светодиодные лампы, продававшиеся в сетевых магазинах «у дома» сложно было назвать хорошими.

                      Читать дальше →
                    • Как писать нормальные тексты на английском, не будучи носителем языка

                        Ксения Каланова, выпускница нашего курса по копирайтингу и маркетолог в MERA, написала колонку для блога Нетологии о том, как заставить текст звучать «по-английски», даже когда до уровня Advanced еще далеко.

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

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

                        Если бы не опыт работы переводчиком, меня такие просьбы поставили бы в ступор. Ведь мой текст увидят иностранцы — клиенты компании, руководители!



                        В этой статье я поделюсь секретами, как заставить текст звучать «по-английски», если вы не носитель языка. Для этого расскажу о 5 основных ошибках, которые мешают написать нормальный англоязычный текст.
                        Читать дальше →
                      • Советы для инженеров от менеджера Google

                          Всем привет!

                          Меня зовут Лариса. Я работаю в Google и веду блог на larrr.com, где я изначально и опубликовала эту статью.

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

                          На всякий случай – это не официальный Google документ, и Google не несет ответственности за его содержание. Он субъективный, и написан сотрудником для сотрудников.

                          Советы для инженеров

                          15 апреля 2013
                          Отредактировано 21 мая 2014
                          Переведено 31 августа 2015
                          Gretta Bartels, Software Engineering Manager at Google


                          Уважаемый читатель,

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

                          Один из моих более опытных коллег научил меня тому, что для менеджера очень важно быть предельно предсказуемым. У менеджера должен быть какой-то набор простых правил, о которых знают все его подчиненные, и которым они могут следовать даже когда менеджера рядом нет. Поэтому моя цель – чтобы программисты в моей команде могли задать сами себе вопрос “Что бы на это сказала мой менеджер?”, и сами себе на него правильно ответить. Тогда команда сможет работать практически самостоятельно, без моего руководства. А я буду сидеть дома и кушать пирожные :).

                          Вот список моих основных правил:
                          Читать дальше →
                        • Выделение подпроекта в отдельный репозиторий на github

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


                            Итак, что дано:


                            • Есть большой репозиторий, содержащий множество папок. Каждая папка – это отдельный проект.

                            Что необходимо сделать:


                            • Одну из папок перенести в отдельный репозиторий с сохранением ее истории коммитов.

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


                            Я использовал стандартный гитовый filter-branch. За основу я взял следующие статьи:



                            В этом посте я хочу немного адаптировать процесс для лучшего восприятия.

                            Читать дальше →
                          • Что надо знать, чтобы брать туры дешевле: как всё это устроено (и как взять отель в Сочи за 1116 рублей на 5 ночей)


                              Двухместный номер за 112 рублей в сутки на человека будет примерно вот такой, это 750 метров от центра Красной Поляны.

                              Прошлый раз было много вопросов про ценообразование, постараюсь ответить. Начну с азов. Самостоятельный путешественник обычно ищет билеты на «Скайсканнере» или AWAD’е. Потом, взяв билеты, выбирает квартиру на AirB&B или отель на «Букинге». Потом идёт и страхуется. Экскурсии набирает на месте по ситуации. Туры нормальный ИТ-специалист, например, заказывает только для родителей, которые не знают языка.

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

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

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

                              При поездке в Исландию так не выйдет. А вот по популярным направлениям есть варианты. Например, на сегодняшнее утро можно пожить 5 ночей в Сочи в хорошем двухместном номере, получить перелёт, завтраки и трансфер за 12 тысяч 35 рублей. Это на двоих, то есть 6018 рублей на человека. Именно столько стоят билеты в оба конца, если их брать за три недели, а тут ещё отель, завтраки и трансфер (такси от аэропорта до Сочи стоит 850 рублей в одну сторону, поезд — 150 рублей за взрослого). Ниже покажу ещё варианты для Турции и Греции.

                              Но начну с ответа на вопрос, где подвох.
                              Читать дальше →
                            • Как найти партнера для практики английской речи бесплатно

                                Итак, в данной статье речь пойдет о том, как найти себе native speaker для практики разговорной речи бесплатно.

                                image

                                Расскажу небольшую предысторию: год назад, передо мной встал вопрос о том, как найти кого-нибудь для практики разговорной речи. Я проанализировала много вариантов, таких как, обмен языком с жаждущими выучить Русский язык (сразу скажу, таких желающих очень мало), найм репетитора(минус в том, что он как правило не native speaker), поход на курсы(минус группового обучения), различные сервисы, предлагающие уроки с нативами(довольно дорого в пересчете фунты/доллары на рубли),… Но! У всех этих вариантов есть один САМЫЙ большой недостаток — они платные, а цель стояла подтянуть разговорную речь абсолютно бесплатно.
                                Читать дальше →
                              • Приемы разработки ASMX веб-сервисов

                                  В этой статье я расскажу о различных приемах разработки SOAP веб-сервисов по технологии ASMX, а также об этой технологии в целом. Кроме SOAP, также будет рассмотрена реализация AJAX. Статья будет полезна как тем, кто уже знаком с ней, так и тем, кто только собирается создать свой первый веб-сервис.
                                  Читать дальше →
                                • Лазер, который режет внутри роговицы: процедура ReLEх на физическом уровне


                                    Кадр из телеметрии ReLEx — внутри глаза за примерно 4 миллиона лазерных импульсов вырезана линза-лентикула, она удаляется через 2,5-миллиметровый разрез у края, касающийся поверхности. Сегодня поговорим о лазере, который это делает.

                                    Идея — взять и вырезать в прозрачной роговице глаза линзу — не нова. Сначала это делалось вручную, скальпелем прямо по поверхности (сложно и очень грубо, с морем побочных эффектов). Первый лазер использовали в 1979 году, тогда это был импульсный инфракрасный излучатель с эффективной длиной импульса в 4 наносекунды.

                                    Главный эффект, которого сегодня после всех эволюций технологии можно достичь лазером, — это то, что его конус можно сфокусировать в достаточно малой зоне на расстоянии от линзы. Если эта зона фокусировки окажется внутри роговицы глаза (пускай и прозрачной), то произойдёт фактически микровзрыв, образующиеся пузыри плазмы создадут разрыв в ткани.


                                    Шаг 1: создание пузырька плазмы, фактически — микровзрыв. Шаг 2: расширение ударной и тепловой волны. Шаг 3: кавитационный пузырь (расширение плазмы). Шаг 4: формирование параллельного среза за счёт нескольких рядом расположенных точек фокусировки лазера

                                    Сегодня один «микровзрыв» длится не 4 наносекунды, а в 10.000 раз быстрее.
                                    Читать дальше →
                                  • Музыкальная теория для гиков

                                    • Translation
                                    imageКто-то считает музыку уделом избранных талантов, кто-то — набором физических закономерностей. Автор материала делает попытку объяснить знакомые каждому музыкальные термины, такие как тон, интервал, амплитуда, нота, октава, партитура, аккорд и так далее с помощью расчетов и технических обоснований. Ниже перевод оригинального текста.

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

                                    Все остальные правила для меня выглядят совершенно, ну просто абсолютно произвольно. Почему у нас есть 12 нот, но для их обозначения применяются только 7 букв? Откуда взялись знаки при ключе? Почему ни одну статью по музыке в Википедии просто невозможно понять, не прочитав сперва все остальные?
                                    Читать дальше →