Ви помічали, що в нашому світі все так влаштовано, що скрізь можна знайти плюси і мінуси, чорне і біле, чоловіче і жіноче? Сьогодні Міжнародний жіночий день, тому гріх не звернути свої два ока, дві руки, дві ноги і двадцять один палець у бік прекрасної половини людства. Зрозуміло, що на Хабре 76,1 відсотків чоловіки, тому, якщо ви відчуваєте жорсткий антагонізм до тематичних постів, можете сміливо далі не читати. Під катом багато картинок і пара цікавих історій про те, чому сучасні віртуальні помічники кажуть жіночими голосами.
Читати далі →


Побудова інфраструктури CDN пов'язано з великою кількістю технічних питань: від вибору обладнання і установки його в датацентрах до користувальницького інтерфейсу для взаємодії з можливостями мережі. Ми наводимо переклад статті з блогу Fastly, де команда розповідає про дуже цікавих кастомних рішень для роботи з мережею (значна частина яких незалежно була використана в інфраструктурі Айрі).

В результаті оптимізації інфраструктури вдалося добитися мінімального часу простою при відмові якого-небудь вузла і великий масштабованості системи.

Читати далі →


У нашій інженерної лабораторії з'явилася нова російська плата для експериментів — налагоджувальний модуль Салют-ЭЛ24Д1 на багатоядерний сигнальному мікропроцесорі 1892ВМ14Я. Подивимося, на що він здатний.

Читати далі →

Інкрементальний аналіз в PVS-Studio: тепер і на складальному сервері


Введення
При впровадженні статичного аналізатора в існуючий процес розробки, команда може зіткнутися з певними труднощами. Наприклад, дуже корисно перевіряти змінений код перед тим, як він потрапить в систему контролю версій. Однак, виконання статичного аналізу в цьому випадку може вимагати досить тривалого часу, особливо на проектах з великою кодовою базою. У цій статті ми розглянемо режим інкрементального аналізу в статичному аналізаторі PVS-Studio, що дозволяє перевіряти тільки змінені файли, що значно скорочує час, необхідний для аналізу коду. Отже, розробники зможуть використовувати статичний аналіз так часто, як це необхідно, і мінімізувати ризики потрапляння код, що містить помилку, систему контролю версій. Приводом для написання статті стало, по-перше, бажання ще раз розповісти про такий корисної функції нашого аналізатора, а по-друге, той факт, що ми повністю переписали механізм інкрементального аналізу і додали підтримку цього режиму у версію нашого аналізатора для командного рядка.

Читати далі →

CryptoAPI ядра Linux: розробка та застосування російської криптографії

imageCryptoAPI являє собою реалізацію криптографічних алгоритмів з наданням доступу до них як з самого ядра, так і з прикладного програмного забезпечення. Найбільш яскравими представниками цього програмного забезпечення є IPSEC (VPN ) і dm-crypt (файлова система).

Читати далі →

Користувачі Windows отримали можливість працювати з openSUSE (і Arch Linux)



Навесні минулого року з'явилися чутки про те, що нову операційну систему від Microsoft інтегрували Linux. У це повірило не так багато користувачів, і даремно — чутки виявилися правдою. В кінці березня 2016 року Microsoft підтвердила цю інформацію. Тоді було оголошено, що користувачі Windows 10 зможуть працювати з командним інтерпретатором Linux, тобто bash. Це означає, що в Windows є вбудований завантажувач ELF-файлів, а також середовище для виконання таких файлів, плюс стандартні інструменти на зразок ssh, grep, sed, awk. Еталонною системою було вирішено вибрати Ubuntu Linux.

Мова тоді йшла про повноцінної підсистемі Linux, а не якихось емуляторах або віртуальних машинах. Спочатку нову можливість випробували користувачі попередніх релізів Windows, а з виходом Anniversary update — всі інші. Зараз, крім Ubuntu Linux, Windows з'явилася можливість працювати і з OpenSUSE. Звичайно, якщо ви не працюєте з Windows, то і позитивних емоцій особливо не буде, але якщо працюєте, плюс потрібен ще і Linux, то ця новина може виявитися корисною.

Читати далі →

Nuklear — ідеальний GUI для мікро-проектів?

Nuklear — це бібліотека для створення immediate mode користувальницьких інтерфейсів. Бібліотека не має ніяких залежностей (тільки C89! тільки хардкор!), але і не вміє створювати вікна операційної системи або виконувати реальний рендеринг. Nuklear — вбудована бібліотека, яка надає зручні інтерфейси для відтворення засобами реалізованого програми. Є приклади на WinAPI, X11, SDL, Allegro, GLFW, OpenGL, DirectX. Батьком концепції була бібліотека ImGUI.
Чим прекрасна саме Nuklear? Вона має невеликий розмір (близько 15 тисяч рядків коду), повністю міститься в одному заголовочном файлі, створювалася з упором на портативність і простоту використання. Ліцензія Public Domain.
Читати далі →

Мобільний термінальний клієнт, як зароджувалася ідея

Як створювався Російський тонкий клієнт і до чого це все призвело.



В ті часи, коли червоний прапор вже перестав майоріти над нашою Батьківщиною, на дворі йшов 2012 рік. Я працював в одному Російському системному інтеграторі, де обіймав подвійну посаду «Керівника ІТ відділу» і «Керівника ІТ проектів». Час було веселе, відмінна команда професіоналів, яка завжди злагоджено працювала, хоча і не так все було просто. Можна довго перераховувати імена і прізвища людей, які працювали пліч-о-пліч зі мною, але здавати агентів КДБ, не буду, не маю такої звички.

Читати далі →

Як оновити ядро в системі без перезапуску сервісів (покрокова інструкція)

Як ви думаєте на скільки реально зайти на машину по ssh, оновити систему, завантажити нове ядро і при цьому залишатися в тій же ssh сесії. Зараз є модне руху за оновлення ядра на льоту (ksplice, KernelCare, ReadyKernel, etc), але у цього способу є багато обмежень. По-перше, він не дозволяє застосовувати зміни, які змінюють структуру даних. По-друге, об'єкти в пам'яті можуть містити неправильні дані, які можуть викликати проблеми в подальшому. Тут буде описано «чесний» спосіб оновити ядро. Насправді, сам спосіб вже давно відомий [1], а цінність цієї статті в тому, що ми розберемо все в деталях на реальному прикладі, зрозуміємо на скільки це просто або складно, і чого варто чекати від подібних експериментів.

Читати далі →

«interface» відрізняється від «междумордия»: наш підхід до документування та локалізації програмних продуктів


Одного разу в технічній документації до Parallels Desktop нам потрібно використовувати фразу «жорсткий диск віртуальної машини». Англійською мовою це звучить: virtual machine hard disk. Наш минулий технічний письменник помилився всього в одній букві в одному слові, але сенс вийшов діаметрально протилежний. Ми цього не помітили відразу і в якийсь момент наша технічна документація, локалізована на багатьох мовах світу, містила нетлінне: virtual machine hard dick. Був грандіозний скандал, після якого ми посилили перевірку текстів. Під катом — розповідь нашого технічного письменника Андрія Старовойтова про те, де мешкають технічні письменники, на що їх ловити і як Parallels документує і локалізує свої продукти.
Читати далі →