И снова в космос: как единорог Stellarium посещал

За все время своего существования люди приложили колоссальное количество усилий, чтобы изучить практически всю площадь звездного неба. На сегодняшний день мы рассмотрели сотни тысяч астероидов, комет, туманностей и звезд, галактик и планет. Чтобы увидеть всю эту красоту самостоятельно, не обязательно выходить из дома и покупать себе телескоп. Можно установить на компьютер Stellarium — виртуальный планетарий, и посмотреть на ночное небо, с комфортом лежа на диване… Но с комфортом ли? Чтобы выяснить ответ на этот вопрос, проверим Stellarium на наличие ошибок в компьютерном коде.

Читать дальше →
И снова в космос: как единорог Stellarium посещал
Source: habrahabr

Топ книг по фреймворку Django

Веб-фреймворк Django подробно документирован на официальном сайте: там и теория, и справочная информация, и руководства для новичков. Однако, несмотря на качество, далеко не всем новичкам эта документация приходится по душе. Что ж, у вас есть два пути. Первый — записаться на обучающие курсы. Второй — в очередной раз заглянуть на полки интернет-магазинов. Этим мы сегодня и займёмся.
Читать дальше →
Топ книг по фреймворку Django
Source: habrahabr

Exploit Wednesday декабрь 2018: на тесты новых патчей времени в обрез – погнали…

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

Для любителей подробностей – короткая справка по новым уязвимостям под катом.

image
Читать дальше →
Exploit Wednesday декабрь 2018: на тесты новых патчей времени в обрез – погнали…
Source: habrahabr

Как устроен Heisenbug

Совсем недавно прошёл Heisenbug 2018 Moscow. Под одной крышей собрались не только тестировщики, но ещё и программисты, специалисты по автоматическому и нагрузочному тестированию, менеджеры команд и все остальные, для кого тестирование является важнейшей частью жизни. Этот пост — фотоотчёт, в котором мы еще раз оглянемся на то, как это было (осторожно, трафик). Фотки в действительно хорошем качестве приедут чуть позже, а это — то, что мы наснимали сами по ходу дела. В конце будет пара слов о следующем Heisenbug 2019 Piter и том, как на него подать свой доклад.

Читать дальше →
Как устроен Heisenbug
Source: habrahabr

Человеческий фактор в компании: это опасно?

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


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

Как попасть на стажировку в Google

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

В первой статье я расскажу, как успешно пройти все этапы собеседований и попасть на стажировку в Google.

Читать дальше →
Как попасть на стажировку в Google
Source: habrahabr

[Перевод] Как мы две недели охотились на баг NFS в ядре Linux

Подробное описание поисков бага из задачи GitLab, которые привели к патчу для ядра Linux

14 сентября служба поддержки GitLab сообщила о критической проблеме, которая возникла у одного из наших клиентов: сначала GitLab работает нормально, а потом у пользователей возникает ошибка. Они пытались клонировать некоторые репозитории через Git, и вдруг появлялось непонятное сообщение об устаревшем файле: Stale file error. Ошибка сохранялась надолго и не давала работать, пока системный администратор вручную не запускал ls в самом каталоге.

Пришлось изучать внутренние механизмы Git и сетевой файловой системы NFS. В итоге мы нашли баг в клиенте Linux v4.0 NFS, Тронд Мюклебуст (Trond Myklebust) написал патч для ядра, и с 26 октября этот патч входит в основное ядро Linux.

В этом посте я расскажу, как мы изучали проблему, в каком направлении думали и какие инструменты использовали, чтобы отследить баг. Мы вдохновлялись отличной детективной работой Олега Дашевского, описанной в посте «Как я две недели охотился за утечкой памяти в Ruby».

Читать дальше →
[Перевод] Как мы две недели охотились на баг NFS в ядре Linux
Source: habrahabr

Простите, я сломал ваш recovery.conf

i break you recoveryВ PostgreSQL начиная с очень давних времён аж версии 8.0 вышедшей в далёком 2005 году для восстановления в определённую точку времени использовался специальный файл конфигурации recovery.conf. Этот же файл впоследствии стал использоваться для режима standby и потоковой репликации.

Однако начиная со следующего релиза PostgreSQL 12 больше recovery.conf работать не будет: я его сломал.
Но зачем?
Читать дальше →
Простите, я сломал ваш recovery.conf
Source: habrahabr

Тестирование и отладка MapReduce

В «Ростелекоме» мы используем Hadoop для хранения и обработки данных, загруженных из многочисленных источников с помощью java-приложений. Сейчас мы переехали на новую версию hadoop с Kerberos Authentication. При переезде столкнулись с рядом проблем, в том числе и с использованием YARN API. Работа Hadoop с Kerberos Authentication заслуживает отдельной статьи, а в этой мы поговорим об отладке Hadoop MapReduce.


Читать дальше →
Тестирование и отладка MapReduce
Source: habrahabr

[Перевод] Обзор пяти HTTP-библиотек для веб-разработки

Одна из важнейших задач, которую приходится решать программисту при разработке веб-проектов, заключается в организации обмена данными между клиентскими и серверными частями таких проектов. Это может выглядеть так: пользователь нажимает некую кнопку на странице, открытой в браузере, в ответ система выполняет запрос к серверу, после чего сервер отправляет странице запрошенные у него данные. Для того чтобы вывести такие данные, на странице, без её перезагрузки, производится их обработка, после чего страница обновляется и пользователь получает то, что ему нужно.

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

Материал, перевод которого мы сегодня публикуем, посвящён анализу пяти популярных инструментов для работы с HTTP: Axios, Request, Superagent, Fetch и Supertest.
Читать дальше →
[Перевод] Обзор пяти HTTP-библиотек для веб-разработки
Source: habrahabr