Как стать автором
Обновить

Компания VDSina.ru временно не ведёт блог на Хабре

Сначала показывать

Я посредственный разраб, плохой муж и ужасный отец — нет никакого баланса и выбора

Время на прочтение5 мин
Количество просмотров63K


Мне нравятся пост-ковидные правила игры. Добрая половина вакансий — удаленка. Мы больше не ищем в описании слова «гибкий график» — это теперь само собой разумеется. Никому не придет в голову заставить программиста строго сидеть за компом от 9 утра до шести вечера. Боссы теперь уважают наше время и личное пространство. И нам все еще очень хорошо платят.

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

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

Запуск Linux-приложений на Chromebook

Время на прочтение4 мин
Количество просмотров14K


Появление Chromebook стало важным моментом для американских систем образования, позволив им покупать недорогие ноутбуки для учеников, учителей и администраторов. Хотя Chromebook всегда работали под управлением операционной системы на основе Linux (Chrome OS), до недавнего времени большинство Linux-приложений на них запустить было невозможно. Однако всё изменилось, когда Google выпустила Crostini — виртуальную машину, позволяющую запускать на Chromebook ОС Linux (бета).

Большинство Chromebook, выпущенных после 2019 года, а также некоторые более старые модели, способны работать с Crostini и Linux (бета). Узнать, находится ли ваш Chromebook в списке поддерживаемых устройств, можно здесь. К счастью, мой Acer Chromebook 15 с 2 ГБ ОЗУ и процессором Intel Celeron поддерживается.


(Don Watkins, CC BY-SA 4.0)

Если вы планируете устанавливать много Linux-приложений, то рекомендую использовать Chromebook с 4 ГБ ОЗУ и бо́льшим объёмом свободного пространства на диске.
Читать дальше →

Стартап Glide для создания мобильных приложений из Google-таблиц

Время на прочтение9 мин
Количество просмотров40K


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

Например, если говорить о сайтах, то можно вспомнить то время, когда цена простейшего лендинга начиналась от нескольких тысяч долларов. Сегодня же можно бесплатно скачать готовый шаблон практически для любого сайта. Либо же воспользоваться одним из популярных конструкторов. И да, «создать сайт за 5 минут» – это именно то, что нужно большинству заказчиков.

Похожая тенденция наблюдается и на рынке мобильных приложений. Для них тоже существует огромное множество бесплатных шаблонов. А простые конструкторы вполне подходят для самостоятельной разработки.

И сегодня мы решили рассказать о проекте, который имеет все шансы открыть новый виток развития в этой сфере. Стартап Glide привлек к себе внимание возможностью создавать приложения на базе Google-таблиц для любой мобильной ОС. При этом «разработчику» не нужно иметь знаний кода и опыта в программировании.
Читать дальше →

Пионеры отрасли энергонезависимой памяти

Время на прочтение15 мин
Количество просмотров6.9K

Чип флэш-памяти NAND Intel/Micron

Устройства энергонезависимой памяти (Non-Volatile Memory, NVM) — это электронные элементы хранения данных, предназначенные для чтения и записи, продолжающие хранить информацию после прекращения подачи питания на устройство. В их число входят устройства на основе магнитных дисков и отдельные типы полупроводниковых чипов. Полупроводниковые энергонезависимые устройства играют важную роль во всех аспектах цифровой вселенной — от ячеек хранения информации огромных банков данных в облаке до портативных персональных устройств, и составляют один из крупнейших сегментов полупроводниковой промышленности, оцениваемой в 400 миллиардов долларов.
Читать дальше →

OpenPGP переписывают на Rust: проект Sequoia

Время на прочтение8 мин
Количество просмотров7.9K

Секвойя Стагг в роще Олдер-Крик, Калифорния

В 2018 году три бывших разработчика GnuPG начали работу над проектом Sequoia — реализацией OpenPGP на Rust. Как известно, OpenPGP — это открытый стандарт шифрования данных, часто используемый для защищённой электронной почты; а GnuPG — эталонная реализация этого стандарта.

Сами разработчики так изложили мотивацию за создание новой библиотеки OpenPGP:

  • GnuPG трудно модифицировать. Код и API накапливались в течение 21 года. Модульные тесты отсутствуют. Компоненты тесно связаны друг с другом. Архитектура оставляет желать лучшего, и простой рефакторинг уже не поможет.
  • Многие разработчики недовольны программными интерфейсами GnuPG. У инструмента командной строки GnuPG и соответствующих программных библиотек разная функциональность: некоторые команды доступны только из командной строки.
  • Rust — безопасный для памяти язык, что автоматически исключает целый класс багов.
  • GnuPG невозможно использовать под iOS из-за ограничений GPL.
Читать дальше →

Какие возможности появились у утилиты rdiff-backup благодаря миграции на Python 3

Время на прочтение3 мин
Количество просмотров8.4K
В процессе миграции на Python 3 разработчики утилиты rdiff-backup усовершенствовали её, добавив много новых фич.



В марте 2020 года вышел второй крупный релиз утилиты rdiff-backup. Второй — за 11 лет. Во многом, это объясняется прекращением поддержки Python 2. Разработчики решили совместить приятное с полезным и доработали функционал утилиты.

Около 20 лет она верой и правдой служит Linux-сообществу — помогает делать бэкапы на локальных и удалённых машинах, скажем так… без лишней головной боли. Секрет прост: утилита позволяет делать бэкап только тех файлов, которые изменились с прошлого резервного копирования. Для более краткого обозначения этого процесса существует термин «инкрементальное резервное копирование».

Второе рождение rdiff-backup пережила благодаря команде энтузиастов, которую возглавили Эрик Зольф и Патрик Дюфресне из IKUS Software, а также Отто Кекяляйнен из Seravo.
Читать дальше →

Новый метод биометрии: биоакустическая подпись

Время на прочтение5 мин
Количество просмотров11K


Южнокорейские учёные изобрели новый метод биометрической идентификации: по звуковым волнам, проходящим через тело (палец). Оказывается, этот сигнал достаточно уникален у каждого человека. И лишён главной уязвимости оптических методов биометрии, таких как сканирование отпечатков пальца, радужной оболочки глаза или лица. Все эти методы по своей сути подвержены спуфингу с фотографированием «биометрического материала». Со звуковыми волнами так не выйдет, их нельзя сфотографировать.

Разработанная система биоакустической частотной спектроскопии модулирует микровибрации, которые распространяются через тело и генерируют уникальную спектральную характеристику. В тестах характеристика сохранялась в течение двух месяцев и обеспечила точность верификации 41 субъекта на уровне 97,16%.
Читать дальше →

Три примера багов, которые ни от кого не прячутся

Время на прочтение7 мин
Количество просмотров14K


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

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

Моментальная загрузка с instant.page

Время на прочтение3 мин
Количество просмотров5.4K


instant.page — это небольшой скрипт, позволяющий ускорять навигацию по сайту с помощью just-in-time предзагрузки. Когда пользователь наводит курсор на ссылку, страница предзагружается в фоне, и при переходе по ссылке открывается моментально. По тому же принципу работает InstantClick, но он предоставляется уже как отдельная библиотека на pushState и Ajax, с дополнительными модулями вроде прогресс-бара предзагрузки.
Читать дальше →

Организация эффективных атак по времени с помощью HTTP/2 и WPA3

Время на прочтение5 мин
Количество просмотров4.3K
Новая методика взлома преодолевает проблему «джиттера сети», которая может влиять на успешность атак по сторонним каналам



Новая методика, разработанная исследователями Левенского университета (Бельгия) и Нью-Йоркского университета в Абу-Даби, показала, что злоумышленники могут использовать особенности сетевых протоколов для организации утечек конфиденциальной информации.

Эта методика под названием Timeless Timing Attacks, продемонстрированная в этом году на конференции Usenix, использует особенности обработки сетевыми протоколами одновременно выполняемых запросов для устранения одной из проблем удалённых атак по времени по сторонним каналам.

Практическая стеганография. Скрытие информации в изображениях PNG

Время на прочтение5 мин
Количество просмотров60K


На хакерских конкурсах и играх CTF (Capture The Flag) иногда попадаются задачки на стеганографию: вам дают картинку, в которой нужно найти скрытое сообщение. Наверное, самый простой способ спрятать текст в картинке PNG — прописать его в одном из цветовых каналов или в альфа-канале (канал прозрачности). Для выявления подобных «закладок» есть специальные инструменты, такие как stegsolve, pngcheck и stegdetect, иногда конкурсантам приходится вручную повозиться с фильтрами в GIMP или Photoshop.

Однако прогресс не стоит на месте — и в последнее время всё чаще используются другие способы скрытия данных, например, PNG-наполнение. Посмотрим, как это делается.
Читать дальше →

Компилируем Microsoft Word 1989 года

Время на прочтение13 мин
Количество просмотров21K


Собираем Opus


Opus — это кодовое имя, которое разработчики компании Microsoft дали пакету Microsoft Word for Windows v1.1a. Давайте скомпилируем его из исходного кода и посмотрим, удастся ли его запустить!

1. Введение


В этой статье задокументирован процесс получения исходного кода и его превращения в работающее приложение для Windows. Компилятор и инструменты разработки запускаются в операционной системе MS-DOS, потому что в 1989 году ещё не существовало инструментов разработки, работающих в Windows.

Примечание: в этой статье я буду часто упоминать DOS. Под этим обозначением подразумевается Microsoft MS-DOS, хотя большая часть информации также применима к IBM PC-DOS и большинству других разновидностей DOS.

Если вы новичок в пользовании операционной системой DOS, то рекомендую повторять мои действия в копии Microsoft MS-DOS v6.22, версии DOS от июня 1994 года (последней выпущенной версии), содержащей все необходимые нам инструменты (об единственном исключении я расскажу ниже).
Читать дальше →

Microsoft отчиталась об успешном проведении эксперимента по созданию подводного дата-центра

Время на прочтение5 мин
Количество просмотров22K
Летом 2018 года в рамках второй фазы испытаний проекта Natick по производству и эксплуатации экологичных и автономных сетевых систем, команда инженеров затопила в прибрежных водах Шотландии контейнер с небольшим дата-центром внутри.



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

Microsoft Project Natick — это многолетние исследование по изучению методов производства и эксплуатации экологически устойчивых предварительно укомплектованных ЦОД стандартизированного формата и размера, которые можно быстро развернуть и оставить на годы с «выключенным светом» на морском дне.

— Официальный блог проекта

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

Становится ли веб медленнее со временем?

Время на прочтение7 мин
Количество просмотров11K


В недавней истории на Hacker News утверждалось, что скорости веб-страниц не повышаются даже с увеличением скоростей Интернета.

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

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

Ближайшие события

Как некорректное делегирование отравляет IT-индустрию

Время на прочтение6 мин
Количество просмотров18K


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

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

Наблюдая за работой десятков разных IT-компаний из разных сегментов я с уверенностью заявляю: так называемое «делегирование полномочий» в 90% случаев — фикция и способ самоутверждения менеджера. Потому что делегирование, это двунаправленный процесс, в котором должен быть не только сильный исполнитель (что очевидно), но и умный, со стальными нервами руководитель. И сейчас объясню, почему.
Читать дальше →

Выбор техники и бездарные продавцы-консультанты

Время на прочтение6 мин
Количество просмотров18K
image

Приветствую вас, хабровчане! После трудовых будней и перед выходными, предлагаю вам развлекательный, но в то же время лайфхаковский, материал. Речь пойдёт про выбор и покупку техники (ТВ, смартфоны) в различных магазинах. Толковать я буду от своего имени и всё ниженаписанное – чистейшая правда.

Будем говорить о низкоквалифицированных продавцах — консультантах в рамках Украины. За границей ничего и никогда не покупал из гаджетов.
Читать дальше →

Вышел минималистичный Linux-дистрибутив Bottlerocket для запуска контейнеров. Самое главное о нём

Время на прочтение5 мин
Количество просмотров20K


Компания Amazon объявила о финальном релизе Bottlerocket — специализированного дистрибутива для запуска контейнеров и эффективного управления ими.

Bottlerocket (кстати, так называют мелкие самодельные ракеты на дымном порохе) — не первая ОС для контейнеров, но вполне вероятно, что она получит широкое распространение благодаря дефолтной интеграции с сервисами AWS. Хотя система ориентирована на облако Amazon, открытый исходный код позволяет собрать её где угодно: локально на сервере, на Raspberry Pi, в любом конкурирующем облаке и даже в среде без контейнеров.

Это вполне достойная замена дистрибутиву CoreOS, который похоронила Red Hat.
Читать дальше →

Неоморфизм и его проблемы

Время на прочтение4 мин
Количество просмотров28K

Неоморфизм — это свежий (относительно skeuo/flat/material) тренд в дизайне, который по сути представляет из себя реинкарнацию похороненного скевоморфизма. Так как у этого стиля нет чётко задокументированных гайдлайнов, как например у material, его различные применения вызывают немало споров среди дизайнеров. В этой статье мы разберём его суть и обсудим резко набравшие актуальность из-за Big Sur проблемы.

Читать далее

Объясните, почему мой рокет-саенс бэкенд билдится пару секунд, а четыре формы на фронте — полгода

Время на прочтение6 мин
Количество просмотров64K

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

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

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

Читать далее

Движок, который смог: как Chromium удалось захватить 90% рынка браузеров

Время на прочтение14 мин
Количество просмотров62K

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

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

У веб-сообщества есть достаточно причин опасаться отсутствия браузерного разнообразия. После того, как Internet Explorer захватил в начале 2000-х долю 90% от рынка браузеров, для выпуска нового браузера его разработчикам потребовалась добрая половина десятилетия. В тот период развитие веба остановилось, и начали возникать проблемы с безопасностью. Из-за этого веб стал хуже, поэтому мы часто стремимся к тому, чтобы браузеры конкурировали, а не монополизировали веб.
Читать дальше →