5 мифов о ведущих разработчиках, от которых мне становится грустно

Ведущие разработчики, они же Senior developers. Это те самые люди, которые на своем веку перевыполняли уже все возможные задачи. Это люди, которые входят в переговорку, открывая дверь с ноги. Они — решение всех проблем компании и гарантия светлого будущего. Они не изучают технологии, а изобретают. Они знают бизнес-требования до того, как те были сформулированы. И самое главное: они четко и отчетливо представляют себя через пять, а иногда и через десять лет.

Серьезно, мне кажется, что от сеньоров сейчас слишком много ожиданий. Судя по вакансиям, это такой аналог советских космонавтов. Если внезапно в вашем офисе перестанет работать stackoverflow, вся документация, да и вообще интернет, версия компилятора/интерпретатора доунгрейднится на 5 лет назад, а вам срочно нужно будет написать аналог Редиса, не используя сторонних фреймворков и библиотек — вы обязаны это сделать. Причем за пару часов и излучая стрессоустойчивость.

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

McSema и декомпиляция в исходный код LLVM: реально ли это?

Представьте себе, что есть некая очень полезная программа, но она, например, существует только в версии Windows и только 64 бита. А вам нужно, например, под ARM64 и под другую ОС, соответственно. Причём исходников у вас нет, и достать их невозможно.

image

Что делать? Существует проект MCSema (пост на хабре про mcsema: https://habrahabr.ru/post/232871/). Его создатели (а они на финансировании DARPA, между прочим), обещают сказочные вещи: перевод бинарноков в LLVM IR, оптимизации, семантический анализ кода и т.д. И конечно же, перекомпиляцию на любые архитектуры, которые поддерживает LLVM. Проект опенсорсный (ссылка на гитхаб: https://github.com/trailofbits/mcsema)

А теперь посмотрим, что происходит на самом деле.
Читать дальше →

Выпуск#6: ITренировка — актуальные вопросы и задачи от ведущих компаний

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

Мы отобрали задачи и вопросы на логику, которые могут задать соискателям на должность разработчика в Microsoft. Задачи имеют разный уровень сложности (даже все если кажутся на первый взгляд очень простыми :).
Цель подборки — подготовить соискателя к успешному прохождению собеседования, посредством тренировки умения находить оптимальные для решения алгоритмы и строить логические цепочки, а не банальным заучиванием ответов.
Надеемся, что мы достигли этой цели.

Читать дальше →

На Чем Должны Сосредоточиться Новые Разработчики

Оригинал

Аплодирую Яндекс-переводчику
Зачеркнул одно слово
Остальное понятно без исправлений, и кое-где весело
Успейте прочитать и минусануть. Вечером удалю.
Го ))
Читать дальше →

[Из песочницы] Oracle – табличные конвейерные функции

В промышленных системах часто требуется выполнить преобразования данных с использованием pl/sql кода с возможностью обращения к этим данным в sql запросе. Для этого в oracle используются табличные функции.
Читать дальше →

[Перевод] Вредные заклинания в программировании

С тех пор, как я посмотрел легендарное видео Wat Гэри Бернхардта, меня завораживает странное поведение некоторых языков программирования. Некоторые из них таят больше сюрпризов, чем другие. Например, для Java написана целая книга с описанием пограничных ситуаций и странной специфики. Для C++ вы просто можете почитать сами спецификации всего за $200.

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

Service Workers. Инструкция по применению



Количество выходов в интернет с мобильных устройств ежегодно растёт на 2-4%. Качество связи не успевает за такими темпами. Как итог, даже самое лучшее веб-приложение обеспечит ужасный опыт, если пользователь не сможет его загрузить.

Проблема в том, что до сих пор нет хорошего механизма управления кэшем ресурсов и результатов сетевых запросов. В своей статье я хочу рассказать как Service Worker (SW) может помочь в решении этой задачи. Объясню в формате рецептов — какие элементы и в какой пропорции смешать, чтобы получить нужный результат, исходя из задачи и требований.
Поехали!

Митап BugBusters: Все о Selenium, эффективных автоматизаторах и буднях нагрузочных тестировщиков


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


Для всех, кто не смог присоединиться, предлагаю записи докладов.

Читать дальше →

[Из песочницы] Websockets. Возможный подход по использованию

Коллеги, приветствую. Хочу вынести на публичное обсуждение свои мысли и некоторые моменты реализации своего проекта. Websockets — тема пожалуй уже избитая, но меня простимулировала на этот шаг работа “WebRTC Cookbook” под авторством Andrii Sergiienko, в которой технология Websockets используется в качестве сигнального сервиса для управления потоковыми данными.
В чистом виде протокол Websockets не содержит ничего, что могло бы осуществить мультиплексирование данных. К сервису Websockets одновременно может подключиться множество клиентов из разных проектов. Так вот хотелось бы иметь полностью утилизированный подход для разных платформ, сервисов, сайтов и т.д.
Читать дальше →

[Перевод] Learnopengl. Урок 4.3 — Смешивание цветов

OGL3

Смешивание цветов

Смешивание в OpenGL (да и других графических API, прим. пер.) является той техникой, которую обычно связывают с реализацией прозрачности объектов. Полупрозрачность объекта подразумевает, что он не залит одним сплошным цветом, а сочетает в себе в различных пропорциях оттенок своего материала с цветами объектов, находящихся позади. Как пример, можно взять цветное стекло в окне: у стекла есть свой оттенок, но в итоге мы наблюдаем смешение оттенка стекла и всего того, что видно за стеклом. Собственно, из этого поведения и возникает термин смешивание, поскольку мы наблюдаем итоговый цвет, являющийся смешением цветов отдельных объектов. Благодаря этому, мы можем видеть сквозь полупрозрачные объекты.
В передыдущих сериях
Часть 1. Начало
  1. OpenGL
  2. Создание окна
  3. Hello Window
  4. Hello Triangle
  5. Shaders
  6. Текстуры
  7. Трансформации
  8. ...Далее...


Последние посты