Pull to refresh
7
0
Алексей Абрамов @alabram

User

Send message

Лучше быть, чем казаться. 10 шагов, чтобы стать «вкусным» кандидатом на собеседовании

Level of difficultyEasy
Reading time8 min
Views62K

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

Сегодня я хочу поговорить о том, как стать «вкусным» кандидатом для крупных компаний с развитой системой отбора. Советы подойдут не только программистам, но и ребятам с других айтишных специализаций: тестировщикам, аналитикам.

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

Читать далее
Total votes 55: ↑35 and ↓20+21
Comments87

Что покупать для глубокого обучения: личный опыт и советы использования GPU

Reading time30 min
Views39K
Перевод статьи Тима Деттмерса, кандидата наук из Вашингтонского университета, специалиста по глубокому обучению и обработке естественного языка

Глубокое обучение (ГО) – область с повышенными запросами к вычислительным мощностям, поэтому ваш выбор GPU фундаментально определит ваш опыт в этой области. Но какие свойства важно учесть, если вы покупаете новый GPU? Память, ядра, тензорные ядра? Как сделать лучший выбор по соотношению цены и качества? В данной статье я подробно разберу все эти вопросы, распространённые заблуждения, дам вам интуитивное представление о GPU а также несколько советов, которые помогут вам сделать правильный выбор.

Статья написана так, чтобы дать вам несколько разных уровней понимания GPU, в т.ч. новой серии Ampere от NVIDIA. У вас есть выбор:

  1. Если вам не интересны детали работы GPU, что именно делает GPU быстрым, чего уникального есть в новых GPU серии NVIDIA RTX 30 Ampere – можете пропустить начало статьи, вплоть до графиков по быстродействию и быстродействию на $1 стоимости, а также раздела рекомендаций. Это ядро данной статьи и наиболее ценное содержимое.
  2. Если вас интересуют конкретные вопросы, то наиболее частые из них я осветил в последней части статьи.
  3. Если вам нужно глубокое понимание того, как работают GPU и тензорные ядра, лучше всего будет прочесть статью от начала и до конца. В зависимости от ваших знаний по конкретным предметам вы можете пропустить главу-другую.

Каждая секция предваряется небольшим резюме, которое поможет вам решить, читать её целиком или нет.
Читать дальше →
Total votes 22: ↑20 and ↓2+27
Comments15

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

Reading time10 min
Views72K


Всем привет!


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


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


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


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

Читать дальше →
Total votes 37: ↑36 and ↓1+35
Comments15

Поиск уязвимостей в Samsung TrustZone, или AFL зафаззит все

Reading time18 min
Views9K


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


Посмотрим на одну из таких технологий — ARM TrustZone. Ее реализации содержат огромный объем кода, и чтобы искать в них уязвимости, нужен какой-то автоматический способ. Задействуем старый проверенный метод — фаззинг. Но умный!


Будем фаззить специальные приложения, которые появились с введением технологии TrustZone — трастлеты. Чтобы подробно описать выбранный нами способ фаззинга, сначала обратимся к теории про TrustZone, доверенные операционные системы и взаимодействие с обычной операционной системой. Это недолго. Поехали!

Читать дальше →
Total votes 51: ↑51 and ↓0+51
Comments8

Технический анализ эксплойта checkm8

Reading time27 min
Views34K

С большой вероятностью вы уже слышали про нашумевший эксплойт checkm8, использующий неисправимую уязвимость в BootROM большинства iDevice-ов, включая iPhone X. В этой статье мы приведем технический анализ эксплойта и разберемся в причинах уязвимости. Всем заинтересовавшимся — добро пожаловать под кат!

Читать дальше →
Total votes 68: ↑68 and ↓0+68
Comments12

Мобильные устройства изнутри. Исследование режимов загрузки планшета YB1-X90L

Reading time5 min
Views17K


1. Введение


Давайте продолжим рассматривать планшет YB1-X90L, который я начал исследовать в предыдущей публикации:


Рис.1. Общий вид планшета

Поиск в Google выдал, что планшет создан на процессоре Intel Atom x5-Z8550, имеющем 4 ядра [1,2]. Для пользователя, как всегда, имеются 2 внешних элемента управления стандартного назначения:

  • кнопка Power — включение/выключение планшета;
  • качелька Vol+/Vol- — управление громкостью встроенных динамиков, которых, кстати, два.

Ну, что ж, поэкспериментировав с ними, я обнаружил, что существуют 4 варианта загрузки. Так и появилась эта статья…

2. Режимы загрузки планшета


Полностью выключенный планшет YB1-X90L можно включить четырьмя способами, т.е. запустить его в одном из четырех режимов работы:
Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments4

JTAG в каждый дом: полный доступ через USB

Reading time9 min
Views35K
Исследователи Positive Technologies активировали аппаратную отладку (JTAG) для Intel Management Engine, которая позволяет получить полный доступ ко всем устройствам PCH (Platform Controller Hub), используя технологию Intel DCI (через интерфейс USB). Мы планируем поделиться подробностями на одной из ближайших конференций. А о том, как активировать этот интерфейс, но для основного процессора, расскажем ниже.

Читать дальше →
Total votes 57: ↑57 and ↓0+57
Comments10

ARM-ы для самых маленьких: компоновка-2, прерывания и hello world!

Reading time9 min
Views40K


Нашел возможность «добить» цикл еще одной статьей, где я подведу небольшой итог. По сути, только сейчас мы добрались до того, с чего, обычно, начинают программировать:
  • рассматриваем «сложный» сценарий компоновки GNU ld;
  • учимся использовать прерывания;
  • наконец добираемся до hello world!


Предыдущие статьи цикла:


Примеры кода из статьи: https://github.com/farcaller/arm-demos

Читать дальше →
Total votes 63: ↑59 and ↓4+55
Comments9

Еще одна статья про изготовление домашнего медиа-сервера

Reading time15 min
Views55K
На Гиктаймс уже не раз и не два размещались статьи про сборку своего домашнего NAS/медиа-сервера/ТВ-приставки и тому подобных произведений чешущихся и относительно прямых рук. Для тех, кто любит подобное рукоблудие, или планирует сам заняться таковым, ниже представлена еще одна вариация на эту тему.


Ну давай уже, что там у тебя?
Total votes 31: ↑29 and ↓2+27
Comments119

Организация рабочего места с позиции здоровья спины (и не только)

Reading time4 min
Views61K
После моей предыдущей статьи по поводу корректоров осанки в комментариях попросили изложить свой взгляд на оборудование рабочего места за компьютером с позиции здоровья позвоночника и минимизации влияния позы на возникновение болей в различных отделах спины.
Прежде чем самому взяться за систематизацию знаний по этому вопросу я решил посмотреть, что в интернете по этому вопросу написано. И с удивлением понял, что до конца толковых советов почти нигде нет. Есть масса статей, в них очень часто сказаны верные вещи, но вот чтоб прям все и в одном месте – с ходу не нашел. Дабы сэкономить время решил сам написать.
Читать дальше →
Total votes 20: ↑20 and ↓0+20
Comments51

Machine Learning. Курс от Яндекса для тех, кто хочет провести новогодние каникулы с пользой

Reading time8 min
Views265K
Новогодние каникулы – хорошее время не только для отдыха, но и для самообразования. Можно отвлечься от повседневных задач и посвятить несколько дней тому, чтобы научиться чему-нибудь новому, что будет помогать вам весь год (а может и не один). Поэтому мы решили в эти выходные опубликовать серию постов с лекциями курсов первого семестра Школы анализа данных.

Сегодня — о самом важном. Современный анализ данных без него представить невозможно. В рамках курса рассматриваются основные задачи обучения по прецедентам: классификация, кластеризация, регрессия, понижение размерности. Изучаются методы их решения, как классические, так и новые, созданные за последние 10–15 лет. Упор делается на глубокое понимание математических основ, взаимосвязей, достоинств и ограничений рассматриваемых методов. Отдельные теоремы приводятся с доказательствами.



Читает курс лекций Константин Вячеславович Воронцов, старший научный сотрудник Вычислительного центра РАН. Заместитель директора по науке ЗАО «Форексис». Заместитель заведующего кафедрой «Интеллектуальные системы» ФУПМ МФТИ. Доцент кафедры «Математические методы прогнозирования» ВМиК МГУ. Эксперт компании «Яндекс». Доктор физико-математических наук.
Содержание и видео всех лекций курса
Total votes 172: ↑166 and ↓6+160
Comments47

Добавление нового семейства процессоров в IDA pro

Reading time8 min
Views15K
Пришлось не так давно потрошить прошивку от M16C (Mitsubishi/Renesas). С удивлением обнаружил, что оказывается IDA v6.1.xxx не «держит» данное семейство контроллеров, увы. Впрочем, SDK есть в наличии, значит, не страшно – будем исправлять ситуацию. Как показала практика, ничего сверх сложного в написании своего модуля нет (не rocket science, чай).
Читать дальше →
Total votes 20: ↑19 and ↓1+18
Comments20

Восстановление данных из внутренней памяти на Android для чайников

Reading time5 min
Views389K
Сейчас всё больше смартфонов идут без слота для sd-card, и информацию приходится хранить на встроенной памяти с доступом к ней по MTP. Такой режим подключения не позволяет стандартными средствами восстановить данные телефона после wipe’а или случайного удаления.

Сегодня на примере связки Xiaomi Mi2s и Windows 8.1 я постараюсь рассказать, как можно восстановить утерянные данные, кому интересно, добро пожаловать под кат.
Читать дальше →
Total votes 28: ↑25 and ↓3+22
Comments33

7 правил создания красивых интерфейсов

Reading time8 min
Views181K


Недавно мы в «Я люблю ИП» закончили курсы по дизайну от trydesignlab.com. И это одна из самых важных статей, которую нам посоветовал ментор в процессе обучения. Именно поэтому мы решили её перевести. Посмотреть все наши работы с курсов можно в ВКонтакте по тэгу #design101@iloveip.

Вступление


Сначала о главном. Это руководство не для всех. Это руководство прежде всего для:
  • разработчиков, которые хотят уметь делать хорошие интерфейсы для себя, если вдруг прижмёт;
  • UX-дизайнеров, которые знают, что хороший UX-дизайн продаётся лучше в красивой UI-упаковке.

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

А пока давайте я расскажу, что вы найдёте в этой статье.

Читать дальше →
Total votes 86: ↑81 and ↓5+76
Comments34

Мой топ-100 книг по Программированию, Компьютерам и Науке: часть 1

Reading time3 min
Views133K
Недавно сайт Fog Creek взял у меня интервью, и один из вопросов был связан с моими любимыми книгами по программированию, кодированию и разработке программ. Мне этот вопрос запомнился потому, что я давно себя считаю заядлым книжным ботаником. Книжный ботаник я потому, что безумно люблю книги о науке, компьютерах и программировании. Каждые несколько месяцев я уделяю день или два исследованию недавно изданной литературы и покупке наиболее понравившихся экземпляров. Я мог бы вечно разговаривать о своих любимых книгах. Ведь у меня их так много.

Меня настолько заинтересовал вопрос о книгах, что я решил начать новую серию статей на своём сайте catonmat о моих топ-100 книгах о программировании, программном обеспечении, науке, физике, математике и компьютерах. В каждой статье я буду размещать по пять книг, ведь разбивать огромное задачи на маленькие подзадачи — это самый простой способ их решать (GTD — get things done).

Взгляните на мою книжную полку, чтобы убедиться, что я настоящий ботаник:

image
Читать дальше →
Total votes 32: ↑27 and ↓5+22
Comments26

Потоки, блокировки и условные переменные в C++11 [Часть 1]

Reading time8 min
Views443K
В первой части этой статьи основное внимание будет уделено потокам и блокировкам в С++11, условные переменные во всей своей красе будут подробно рассмотрены во второй части
Читать дальше →
Total votes 67: ↑67 and ↓0+67
Comments14

Кросс-компиляция Qt5 под Linux для Win x32/x64/static/shared

Reading time14 min
Views37K

Цель статьи


Документирование получения системы кросс-компиляции под Linux для Windows x32/x64/static/shared и сборка последней на момент описания Qt 5.4.1 в лайт-версии (для указанных четырех целей). Для себя, глубоко-обожаемого, ну и для пользы обществу.

Назначение


Многие разработчики приходят к выводу, что использование *nix (в частности Linux) более предпочтительно для разработки приложений, используя фрэймворк Qt. И тому есть причины. Qt изначально ориентирована на *nix инструментарий, типа autotool, make, perl… И второй момент, под никсами есть прекрасный инструмент — valgrind, под виндой порта пока его не видел. Ну и последняя причина: просто удобно иметь набор инструментария для создания приложений под различные целевые платформы — в одном месте.

Почему лайт-версия Qt5


Фрэймворк-Qt имеет модульную структуру, но, увы, не совсем совершенную. Некоторые зависимости от внешних библиотек «вешаются» не на модуль, требующий эти библиотеки, а на Qt5Core. Иными словами, нужна вам эта библиотека, или нет — вынь да положЪ в дистрибутив. Пример тому «монстрик» — библиотека ICU. Весит она почти 25 метров! Зависимость вешается, как я упоминал выше, на Qt5Core… а требует ее модуль Qt5WebKit (который по сути в 99% случаев не используется, по крайней мере мной). Что делаем? Вырезаем и отрезаем. Хотите получить фулл-версию Qt5? Об этом упомяну в заключении. Поехали.
Читать дальше →
Total votes 36: ↑33 and ↓3+30
Comments34

Грустная история забытых символов. Как не сойти с ума при работе с кодировками в C++

Reading time15 min
Views81K


Говоря о тексте, большинство программистов C++ думают о массивах кодов символов и кодировке, которой эти коды соответствуют. Наиболее опытные разработчики вообще не мыслят понятие текста без указания кодировки, наименее опытные просто считают массив байтов с кодами символов данностью и интерпретируют в понятиях кодировки операционной системы. Фундаментальная разница между этими двумя подходами не только в опыте разработчика, но и в том, что не думать о кодировке намного проще. Пора рассмотреть способ, как не заботиться о хранении кодировки, перекодировке текста, получать свободный доступ к символам и при этом видеть безошибочное представление текста вне зависимости от того, кто и где смотрит на строку текста: в Китае ли, в США или на острове Мадагаскар.
Читать дальше →
Total votes 32: ↑28 and ↓4+24
Comments71

Набор инструментов для построения графиков, блок-схем и диаграмм

Reading time3 min
Views175K


Есть много разных сервисов, облегчающих жизнь веб-разработчику или дизайнеру, в том числе создающих разные графики, диаграммы, блок-схемы и т.д. Ниже представлена небольшая подборка.
(Осторожно, много изображений)
Читать дальше →
Total votes 151: ↑144 and ↓7+137
Comments40

Information

Rating
Does not participate
Location
Ростов-на-Дону, Ростовская обл., Россия
Registered
Activity