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

Пользователь

Отправить сообщение

Делаем доступным все символы ядра Linux. Часть 1

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

Состояние дел


Это обсуждение относится к ядру операционной системы Linux, и представляет интерес для разработчиков модулей ядра, драйверов под эту операционную систему. Для всех прочих эти заметки вряд ли представляют интерес.
Читать дальше →
Всего голосов 31: ↑22 и ↓9+13
Комментарии28

Меняем PID процесса в Linux с помощью модуля ядра

Время на прочтение4 мин
Количество просмотров11K
В этой статье мы попытаемся создать модуль ядра, способный изменить PID уже запущенного процесса в ОС Linux, а так же поэкспериментировать с процессами, получившими измененный PID.


Читать дальше →
Всего голосов 28: ↑28 и ↓0+28
Комментарии20

9 учебных проектов для бэкендера

Время на прочтение3 мин
Количество просмотров120K
image
источник КДПВ

Ранее на Хабре публиковался перевод статьи с Medium'а с подборкой из 8 проектов, которые можно реализовать, изучая новый язык или фреймворк. На мой взгляд, подборка очень неплохая. Проблема в том, что рассчитана она только на фронтендеров и мобильных разработчиков. А я из другого лагеря.

Покопавшись в своих заметках, я собрал для вас подборку идей на тот случай, если чешутся руки сделать что-нибудь своё. Все эти «проекты» уже существуют в том или ином виде, но, иногда интересно написать свой бэкенд-велосипед и проехать на нем по граблям.
Читать дальше →
Всего голосов 37: ↑35 и ↓2+33
Комментарии20

Самые популярные книги по программированию на Reddit

Время на прочтение3 мин
Количество просмотров19K
Есть мнение, что программисты не читают книги. Учатся на примерах или инструкциях. Другие покупают, но не читают. А вот на блогах Reddit книги цитируют в своих комментариях, значит им немного можно доверять. Уж точно больше, чем рецензиями на Amazone или Озоне. При выборе книги для чтения важно знать наиболее популярные пособия по профессиональному росту. Кому-то важно найти самые известные книги, кто-то хочет отсеять «попсу». На сайте Reddit обсуждают всё: от домашних питомцев до новейших видов вооружения. Проект Reddit Favorites проанализировал 3,5 млрд комментариев и выделил 24 самых упоминаемые книг по программированию.

Самый упоминаемый на Reddit учебник — «Чистый код» Robert C. Martin. В отличие от многих других книг, это издание устойчиво наращивает популярность читателей, начиная с 2010 года.
Читать дальше →
Всего голосов 7: ↑5 и ↓2+3
Комментарии21

Как выйти на путь разработки ОС

Время на прочтение10 мин
Количество просмотров34K
Данная статья служит одной простой цели: помочь человеку, который вдруг решил разработать свою операционную систему (в частности, ядро) для архитектуры x86, выйти на тот этап, где он сможет просто добавлять свой функционал, не беспокоясь о сборке, запуске и прочих слабо относящихся к самой разработке деталей. В интернете и на хабре в частности уже есть материалы по данной теме, но довольно трудно написать хотя бы “Hello world”-ядро, не открывая десятков вкладок, что я и попытаюсь исправить. Примеры кода будут по большей части на языке C, но многие другие языки тоже можно адаптировать для OSDev. Давно желавшим и только что осознавшим желание разработать свою операционную систему с нуля — добро пожаловать под кат.
Читать дальше →
Всего голосов 41: ↑39 и ↓2+37
Комментарии22

Использование buildSrc для внедрения дополнительной логики в Gradle

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

Интересная заметка от Madis Pink в блоге ZeroTurnaround RebelLabs. Если кто-то вас разбудит посреди ночи и спросит: «какую фичу в Gradle должен знать каждый?» — с уверенностью отвечай, что это buildSrc. Это особый магический Gradle-проект внутри твоего репозитория, доступный всем файлам build.gradle в виде библиотеки.


Описанный далее подход позволяет писать код на удобном тебе JVM-языке, и результат использовать прямо в своих сборочных скриптах. Как бонус, можно покрыть юнит-тестами особо хитрые моменты в этих скриптах. Добро пожаловать под кат!

Читать дальше →
Всего голосов 24: ↑22 и ↓2+20
Комментарии5

Полезные книги о разработке мобильных игр на Android и iOS

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

image


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


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


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

Читать дальше →
Всего голосов 24: ↑22 и ↓2+20
Комментарии3

Arduino в Linux: настраиваем Qt Creator в качестве среды разработки

Время на прочтение7 мин
Количество просмотров26K
Платформа Arduino популярна, независимо от того, ругают её или хвалят. Её создателям удалось снизить порог вхождения до уровня несколько кликов мышью + пара строк кода и вуаля — вот вам моргающий светодиодик. И вообще, для быстрого прототипирования поделок на AVR, Arduino вещь крайне удобная. Единственное что им не удалось это IDE, которую и IDE-то назвать сложно. Среди функций IDE она обеспечивает только одну — автоматизацию создания и сборки проекта.

Для пользователей Windows существует альтернатива: MS Visual Studio Community + плагин vMicro который позволяет писать скетчи, но уже со всеми вкусностями, предоставляемыми IDE. Плагин без проблем качается в самой студии через меню «Инструменты» и в триале работает сколько угодно. Платная версия в теории поддерживает пошаговую отладку, но меня, как владельца лицензионной копии vMicro они не очень-то и впечатлили.

Для пользователей Linux всё как всегда: хотим хорошую IDE — выбираем «жертву» и пытаемся прикрутить к ней нужный функционал. Существуют решения на базе Eclipse, но я не люблю эклипс, о чём уже однажды писал. Я мирюсь с ним как с неизбежным злом, когда под рукой нет вообще ничего подходящего. Из всех бесплатных IDE я больше всего уважаю мощный и замечательный Qt Creator, в котором я и моя команда работаем уже больше года. Поэтому и рассказывать буду о том, как превратить его в среду разработки для Arduino.
Читать дальше →
Всего голосов 15: ↑13 и ↓2+11
Комментарии21

Must have книги для прокачки английского. Подборка от преподавателей

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

Зона комфорта — это зло. Хоть и приятное, даже очень. Но зло. Особенно, если речь идет о саморазвитии и изучении языков. Если каждый день в работе использовать довольно простые лексику и грамматику с минимальными изменениями, есть большая вероятность, что вы начнете забывать всякие там Conditionals или Future Perfect. Конечно же, нужно поддерживать язык на должном уровне и развивать его, поэтому мы попросили наших преподавателей поделиться книгами, которые им в этом помогают. Так что готовьтесь к подборке для высоких уровней и не только!

Произношение


Ship or Sheep? An Intermediate Pronunciation Course

В этом пособии вы найдете неплохой тест, который покажет ваши слабые стороны (всякие там “сри” или “фри”). Даже если ничего подобного не обнаружится, учебник стоит пройти от начала до конца, и вот почему:
Читать дальше →
Всего голосов 20: ↑18 и ↓2+16
Комментарии21

Подборка открытых курсов на английском про английский

Время на прочтение2 мин
Количество просмотров20K
Английский лучше учить, погружаясь в языковую среду. Если возможности переехать нет, нужно создавать эту среду искусственно: переключать язык на сайтах и в приложениях, искать собеседников, вести блог на английском. Еще один хороший способ — проходить курсы на английском языке. В этой статье собрали открытые курсы на английском про английский: концентрация непосредственно на теме изучения английского поможет лучше понять язык и быстрее его освоить, прокачать нужные конкретно вам скиллы. Подходит для уровня Intermediate и выше (здесь есть тест для определения уровня, для прохождения необходима регистрация).
Читать дальше →
Всего голосов 16: ↑14 и ↓2+12
Комментарии3

Подделка письма электронной почты почти от любого человека менее чем за 5 минут и способы защиты

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


Что такое аутентификация электронной почты?


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

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

Результатом является то, что заголовки писем, включая поля «From: » и «Reply-to: », очень легко подделать. В некоторых случаях это так же просто, как набрать «john@company.com» в поле «From: ». Объединив это с неподозрительным содержанием, убедительной графикой и форматированием, вполне возможно обмануть людей, подумавших, что сообщение в их почтовом ящике действительно пришло от банка, ФНС, руководителя или президента США.



Приняв во внимание повсеместное распространение электронной почты, вы осознаете основу нашего нынешнего кризиса информационной безопасности. Слабость в электронной почте привела к массе фишинговых атак, направленных на то, чтобы заставить людей нажимать на вредоносные ссылки, загружать и открывать вредоносные файлы, отправлять форму W-2 (аналог 2-НДФЛ в США) или переводить средства на счета преступников.
Читать дальше →
Всего голосов 35: ↑23 и ↓12+11
Комментарии24

Управление фермой Android-устройств. Лекция в Яндексе

Время на прочтение13 мин
Количество просмотров16K
Чем популярнее ваше приложение, тем длиннее список устройств, на которых его запускают. В какой-то момент это становится проблемой: некоторые баги загадочным образом воспроизводятся только на конкретной модели, и приходится тестировать продукт на всё большем числе девайсов.

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


Всего голосов 31: ↑30 и ↓1+29
Комментарии5

Избранное: ссылки по reverse engineering

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


Всем привет!


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


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


Забавный факт: нам показывали, как некоторые компании рассылают наш список материалов от себя, но только в очень старой редакции. И вот после этой публикации они, наконец, смогут использовать его обновленную версию с чистой совестью ;)


Итак, перейдем к списку материалов!

Читать дальше →
Всего голосов 37: ↑36 и ↓1+35
Комментарии15

Наглядное объяснение чисел с плавающей запятой

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

В начале 90-х создание трёхмерного игрового движка означало, что вы заставите машину выполнять почти не свойственные ей задачи. Персональные компьютеры того времени предназначались для запуска текстовых процессоров и электронных таблиц, а не для 3D-вычислений с частотой 70 кадров в секунду. Серьёзным препятствием стало то, что, несмотря на свою мощь, ЦП не имел аппаратного устройства для вычислений с плавающей запятой. У программистов было только АЛУ, перемалывающее целые числа.

При написании книги Game Engine Black Book: Wolfenstein 3D я хотел наглядно показать, насколько велики были проблемы при работе без плавающей запятой. Мои попытки разобраться в числах с плавающей запятой при помощи каноничных статей мозг воспринимал в штыки. Я начал искать другой способ. Что-нибудь, далёкое от $(-1)^S * 1.M * 2^{(E-127)}$ и их загадочных экспонент с мантиссами. Может быть, в виде рисунка, потому что их мой мозг воспринимает проще.

В результате я написал эту статью и решил добавить её в книгу. Не буду утверждать, что это моё изобретение, но пока мне не приходилось видеть такого объяснения чисел с плавающей запятой. Надеюсь, статья поможет тем, у кого, как и у меня, аллергия на математические обозначения.
Читать дальше →
Всего голосов 76: ↑73 и ↓3+70
Комментарии46

Разбираем WeChat — второй по популярности мессенджер в мире

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


  • Небольшой экскурс в WeChat;
  • О платформе, версии приложения, используемых утилитах и расшифровке исполняемого файла;
  • О двух протоколах (старом и новом);
  • О сериализации объектов;
  • Используемая криптография и обмен ключами;
  • О заголовках и хэш-функциях;
  • О найденных уязвимостях.

Читать дальше →
Всего голосов 34: ↑34 и ↓0+34
Комментарии18

Удивительно полезный инструмент: lsof

Время на прочтение9 мин
Количество просмотров136K
Я привык искать проблемы в коде или в системе, пользуясь логами или показателями мониторинга, которые выводятся на симпатичных панелях управления с простым и понятным интерфейсом. Однако, если по какой-то причине данные на панель управления не поступают, или логи какой-нибудь службы недоступны, отладка усложняется. Теперь подобных проблем немного, встречаются они редко, но они, всё же, случаются. Поэтому и в наше время весьма ценно знание инструментов, которые помогают понять, что не так с неким процессом на каком-нибудь компьютере.

image
Читать дальше →
Всего голосов 73: ↑69 и ↓4+65
Комментарии30

MIPSfpga – практический опыт

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

KDPV
Перевод коллективной статьи Practical experiences based on MIPSfpga, не так давно представленной Сарой Харрис на симпозиуме в Торонто. Приводится подробное описание MIPSfpga 2.0, релиз которой состоялся 3 июля 2017 года. Основное, на мой взгляд, отличие по сравнению с версией 1.3: пакет лабораторных работ расширен набором, ориентированным на внутреннюю работу процессора. Так что, если вы хотите узнать, как работает современное ядро, то MIPSfpga 2.0 — это ваш выбор для качественного самообразования. Крайне полезной данная статья будет для преподавателей ВУЗов — подробно и с примерами рассматривается вопрос интеграции MIPSfpga 2.0 в учебный процесс, включая ее соответствие Методическим рекомендациям IEEE/ACM для программ бакалавриата в области вычислительной техники.

Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии4

Следущие шаги в черной магии процессоростроения после того, как вы освоили Харрис & Харрис

Время на прочтение9 мин
Количество просмотров38K
Недавно вышло еще одно печатное издание книжки Харрис & Харрис на русском языке. Это широкоохватывающий ликбез про то, как проектируют микросхемы в компаниях типа Apple и Intel (методология проектирования на уровне регистровых передач с использованием языков описания аппаратуры). До этого печатного издания вышло бесплатное электронное издание этой же книжки, которое стало вирусным — его скачивания дважды завалили британский сайт Imagination Technologies, а посты о книжке на Хабре и Гиктаймс собрали более 300,000 просмотров (1, 2, 3, 4, 5 ). История перевода книжки на русский тоже довольно поучительна — он начался как общественный проект группы энтузиастов: преподавателей российских и украинских университетов, а также русских сотрудников компаний как в Silicon Valley (MIPS, AMD, Synopsys, Apple, NVidia ...) так и в России (НИИСИ, МЦСТ, Модуль ...). Когда вышло первое печатное издание на русском языке, его тоже довольно быстро раскупили и пожаловались, что оно черно-белое. Поэтому следующий принт был цветной, улучшенного качества.

Теперь возникает вопрос: ну хорошо, вы приобрели или скачали бесплатно книжку, поняли основы цифровой схемотехники, языков описания аппаратуры Verilog и VHDL, приобрели вкус писания на ассемблере и разобрались с организацией простейшего конвейерного микропроцессора, а также как все это стыкуется с периферийными устройствами и встроенным программированием. Что делать дальше?



На снимке — Татьяна Волкова, сотрудница образовательных программ компании Samsung в Московском Физико-Техническом Институте
Всего голосов 50: ↑49 и ↓1+48
Комментарии68

Очередной умный дом в нескольких частях. Заключение

Время на прочтение3 мин
Количество просмотров15K
Интересная все-таки штука – жизнь. Вроде бы остановился, пересмотрел взгляды и принципы, принял волевое решение идти строго определенным курсом, а потом смотришь через некоторое время – а ты сделал круг. И вернулся к тому, от чего решил отказаться. Вернее, не круг конечно, уровень поднялся. Так и движемся по спирали.

image

Но это я забежал немного вперед, давайте обо всем по порядку.
Читать дальше →
Всего голосов 14: ↑12 и ↓2+10
Комментарии28

Английский для собеседований в IT-компании: что нужно для старта карьеры?

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

Собеседование на английском — дело непростое. Но хорошее планирование и подготовка ключевых моментов сделают этот процесс более приятным и безобидным.


Читать дальше →
Всего голосов 45: ↑40 и ↓5+35
Комментарии33

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность