Как стать автором
Обновить
-7
@izoker8 read⁠-⁠only

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

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

11 советов, которые помогут сэкономить время при отладке программ

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



Оригинальная статья была написана Bartlomiej Filipek и опубликована в его блоге.

Вспомогательные средства


Каждый программист должен знать, как запускать отладчик, устанавливать контрольные точки, возобновлять исполнение кода, выполнять вход и выход из функций (используя клавиатуру!). Вот несколько простейших советов по облегчению процесса отладки на основе базовых приемов.
Читать дальше →
Всего голосов 35: ↑31 и ↓4 +27
Комментарии 5

Как работает компьютер: глубокое погружение (на примере Linux)

Уровень сложности Сложный
Время на прочтение 48 мин
Количество просмотров 129K



Введение


Я делала много вещей с компьютерами, но в моих знаниях всегда был пробел: что конкретно происходит при запуске программы на компьютере? Я думала об этом пробеле — у меня было много низкоуровневых знаний, но не было цельной картины. Программы действительно выполняются прямо в центральном процессоре (central processing unit, CPU)? Я использовала системные вызовы (syscalls), но как они работают? Чем они являются на самом деле? Как несколько программ выполняются одновременно?


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


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


Более удобный формат статьи.

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

«Уехал, и что дальше?» — подборка для планирования жизни за границей

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

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

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

Читать скорее!
Всего голосов 103: ↑91 и ↓12 +79
Комментарии 234

Я год шпионил за собой — что из этого вышло. Простой секрет личной эффективности

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

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

Читать далее
Всего голосов 97: ↑90 и ↓7 +83
Комментарии 145

Что такое Linux? Статья-шпаргалка для новичков

Уровень сложности Средний
Время на прочтение 14 мин
Количество просмотров 69K

Что такое Linux?


Салют! Это статья — попытка систематизировать некие базовые знания об Linux’ах, которая может быть полезна для продвинутых пользователей, разработчиков и админов Windows, которые еще не имели (или имели крайне небольшой и отрывочный) опыт работы с Linux системами и не знают, с чего начать, однако хотят попробовать — сами, или по причине производственной необходимости. Каждый пункт содержит не исчёрпывающие сведения, а лишь отправные пункты для дальнейшего изучения (гуглежа) материала.

Содержание:

  1. Linux Kernel aka Ядро
  2. GNU Core Utilities (coreutils)
  3. Bash — интерпретатор командной строки
  4. Системы управления пакетами и пакетные менеджеры
  5. Init systems — системы инициализации
  6. systemd
  7. Ваш первый вход на сервер
  8. Управляем пользователями
  9. Сети
  10. FHS — Filesystem Hierarchy Standard — навигация в файловых системах Linux
  11. Window system / display server — сервер экранов
  12. Полезные ссылки и список литературы для изучения


Если интересно — прыгайте под кат
one root to rule them all
Всего голосов 46: ↑39 и ↓7 +32
Комментарии 42

Элементы языка С, которые являются неподдерживаемыми в языке С++

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

Нижеприведенный список является моей небольшой коллекцией примеров кода на языке С, которые не являются корректными с точки зрения языка С++ или имеют какое-то специфичное именно для языка С поведение. (Именно в эту сторону: С код, являющийся некорректным с точки зрения С++.)

Этот материал я уже публиковал на другом ресурсе в менее причесанном виде, Я бы, наверное, поддался прокрастинации и никогда не собрался опубликовать эту коллекцию здесь, но из-за горизонта уже доносится стук копыт неумолимо приближающегося С23, который безжалостно принесет некоторые жемчужины моей коллекции в жертву богам С-С++ совместимости. Поэтому мне и пришлось встать с печи, пока они еще актуальны...

Разумеется, язык С имеет много существенных отличий от языка С++, т.е. не составит никакого труда привести примеры несовместимостей, основанные, скажем, на ключевых словах или других очевидных эксклюзивных свойствах С99. Таких примеров вы не найдете в списке ниже. Мой основной критерий для включения примеров в этот список заключался именно в том, что пример кода должен выглядеть на первый взгляд достаточно "невинно" для С++-наблюдателя, т.е. не содержать бросающихся в глаза С-эксклюзивов, но тем не менее являться специфичным именно для языка С.

Читать далее
Всего голосов 140: ↑139 и ↓1 +138
Комментарии 80

Как стать мидлом или сеньором-разработчиком, обучаясь на любых курсах по программированию?

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

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

Читать далее
Всего голосов 546: ↑508 и ↓38 +470
Комментарии 178

Как бы вы реализовали форму аутентификации на сайте? Вопрос для собеседования на Junior/Middle/Senior?

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

В свете исследования "Веб-разработчики пишут небезопасный код по умолчанию" мне подумалось, что именно так может звучать один из базовых вопросов на собеседовании с точки зрения проверки знания web-разработчика от уровня Junior до Senior.

Тема с одной стороны в общем-то простая, а с другой - многогранная. Можно сделать “на коленке”, а можно и “по-взрослому” -  зависит от знаний конкретного девелопера и технического задания. Ну и не привязывается к конкретному языку. Что nodejs, что .net, что PHP - на ответы это не влияет. Ну и отлично же! Давайте попробуем.

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

Как бы вы ответили на конкретный вопрос? Попробуйте проверить себя и потратить пару минут на обдумывание прежде чем читать ответ.

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

Итак, за вёсла!

Читать далее
Всего голосов 69: ↑59 и ↓10 +49
Комментарии 211

Данайский захват (власти в соседнем отделе)

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

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

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

Применять можно из разных позиций. Например, если вы – не начальник, а просто сотрудник другого отдела. Или вы – сотрудник того отдела, который хотите захватить. Или – начальник смежного отдела.

Цель тоже может варьироваться. Основная, или наиболее распространённая – полный захват власти (вы становитесь начальником). Альтернативная – низвергнуть текущего начальника этого отдела. Речь может идти и об увольнении, и о понижении в должности, и о потере доверия со стороны вышестоящих.

Читать далее
Всего голосов 78: ↑51 и ↓27 +24
Комментарии 35

Что писать в резюме, чтобы получить работу мечты: советы от HR для сферы IT

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

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

Читать далее
Всего голосов 20: ↑16 и ↓4 +12
Комментарии 11

Работающие способы выехать за рубеж, или Спасение утопающих — дело рук самих утопающих

Время на прочтение 10 мин
Количество просмотров 93K
Привет, хабровчане! Надеемся, в эти сложные времена вы стараетесь держаться, хотя это и непросто. Впрочем, рефлексировать можно бесконечно долго, толку от этого не будет, сейчас нужно действовать. Как именно — решать только вам самим. Мы лишь можем рассказать об одном из вариантов. А именно о релокации. В этом посте мы решили собрать вакансии из нашего бота в других странах, а также снабдить их информацией, как туда попасть. Подробную информацию по вакансиям (стек и требования) можно найти в самом боте Get Me It, для этого нужно пройти начальную анкету бота и выбрать Европу или СНГ.

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


Гребите сильнее!
Всего голосов 106: ↑83 и ↓23 +60
Комментарии 321

Собеседование в Яндекс: театр абсурда :/

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

Привет, Хабр!

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

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

Как вы думаете, что делают рекрутеры, когда видят "Alexandr, NOT OPEN FOR WORK"? Правильно, пишут "Алексей, рассматриваете вариант работать в X?" Я обычно игнорирую это, но тут мне предложили попытать счастья с Яндекс.Лавкой, и я не смог пройти мимо - интересно было, смогу ли я устроиться куда-нибудь, когда введут великий российский файерволл. К тому же за последние 3 года я проходил только два интервью, и мне показалось, что я не в теме, что нынче требуется индустрии. Блин, я оказался и вправду не в теме. И вы, скорей всего, тоже - об этом и статья.

Читать далее
Всего голосов 664: ↑637 и ↓27 +610
Комментарии 1270

15 игр, которые прокачивают логику, алгоритмы, ассемблер и силу земли

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


Есть «Super Mario», признанная классика видео игр. Есть «Doom», который запускают на чайниках и тестах на беременность. Есть супер-популярные по статистике twitch.tv игры («League of Legends», «GTA V», «Fortnite», «Apex Legends») которые стримят пятая часть всех стриммеров.

А есть игры, на которые очень мало обзоров, но они супер крутые — игры про алгоритмы. Игры, в которых можно кодить на ретро-компьютере; игры, которые надо взламывать; игры, где можно программировать контроллеры или поведение персонажей; игры, где можно создавать свою игру внутри игры.

Под катом подборка классных игр про алгоритмы за последние 10 лет. Если что-то упустила — буду рада дополнениям.

Еще я создала канал в Telegram: GameDEVils, буду делиться там клевыми материалами (про геймдизайн, разработку и историю игр).
Читать дальше →
Всего голосов 98: ↑93 и ↓5 +88
Комментарии 98

Как найти удаленную работу в США с прицелом на релокацию: описания виз, списки ~1000 компаний, полезные инструменты

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

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

В этой статье я собрал материалы для тех, кто задумывается о поиске сначала удаленной работы в США, а затем и о переезде. В тексте есть описания виз, списки компаний, нанимающих на remote, инструменты для подготовки к собеседованиям. Надеюсь, будет полезно!

Читать далее
Всего голосов 42: ↑28 и ↓14 +14
Комментарии 11

Что нужно знать, чтобы быть синьором?

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

В последнее время случилась (и продолжает случаться) тьма публикаций про кадровый голод в айти, про переоценённость синьоров, недооценённость всех остальных, про золотые горы, скандалы, интриги и конский перекос баланса фракции "программисты". Ну, короче, вы сами всё читали и вполне себе в теме. Так вот, в сим опусе хочется вспомнить, а ктож такой синьор и что ему крайне желательно знать, чтобы синдром самозванца не накрывал и чтобы окружающие уважали и на поклон за советом приходили.

Ну-ка, ну-ка...
Всего голосов 190: ↑172 и ↓18 +154
Комментарии 258

Невидимые убийцы в воздухе: как продлить себе жизнь, контролируя уровень чистого воздуха и PM₂,₅

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


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

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

Давайте посмотрим на это с разумной стороны: возьмем четыре самые большие страны мира и сравним, сколько людей умерло по тем или иным причинам в 2019 году.

image

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

Чтобы ответить на этот вопрос, нам нужны числа. Ниже я оценил, насколько различные факторы влияют на жизнь через качество воздуха.

Образ жизни
Быть викингом стоит 4 года жизни.
Жить в Дели стоит 3 года жизни.
Постоянно ездить на поезде из Ньюарка в Нью-Йорк стоит 6 месяцев жизни
Проживание в средней части США стоит 3 месяца жизни
(Вдыхать дым от чьего-то вейпа — около 0?)

Отдельно взятое событие
Если вы жили рядом с лесными пожарами на западном побережье США 2020 года, то это стоило вам 2,4 дня жизни.
Разжечь дома по-настоящему дымный огонь стоит 1 день жизни
Жечь конусное благовоние — 2,3 часа жизни
Одну ночь использовать ультразвуковой увлажнитель воздуха — 50 минут жизни
Жарить рыбу при закрытых окнах — 45 минут жизни
Жечь благовония-палочки — 27 минут жизни
Использование лака для волос — 14 минут жизни
Выкурить одну сигарету — 11 минут жизни
Задуть свечу перед сном — 10 минут жизни
Читать дальше →
Всего голосов 55: ↑46 и ↓9 +37
Комментарии 76

Дорожная карта по изучению C++

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

Привет!

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

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

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

Какие алгоритмы разработчики Яндекса реализовывают каждый день

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

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




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


В статье четыре примера. Два на C++, один на TypeScript и один на Python. Способность быстро писать относительно простые алгоритмы без багов — общая необходимость, она не зависит от специализации разработчика.

Читать дальше →
Всего голосов 58: ↑48 и ↓10 +38
Комментарии 175

Яндекс.Практикум: самый подробный отзыв

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

Хочу поделиться личным опытом (об/м)учения в Яндекс.Практикуме на курсе "Веб-разработчик", и почему, вернувшись на год назад в прошлое, я бы никогда не стал там учиться даже за бесплатно.

Для начала расскажу о причинах, по которым я решил войти в IT (спойлер: и в итоге всё-таки вполз), и почему я выбрал именно Яндекс.Практикум.

Получив 2 красных диплома, которые теперь лежат на полке, я понял, что дипломированный инженер-строитель никому не нужен, т. к. с поиском работы по специальности в моём городе (областном центре) было тяжко. В итоге, отработав полгода рабочим на строительном комбинате и разочаровавшись в высшем образовании вообще и в своей специальности в частности, я задумался о смене профессии на более:

1) прибыльную (на комбинате я получал 24 тысячи в месяц);

2) перспективную (в IT действует меритократия, а в строительной сфере без связей, которых у меня нет, далеко на уедешь и высоко не взлетишь);

3) интересную и интеллектуальную. 

У меня есть старший брат – веб-разработчик с 10-летним стажем, за плечами которого опыт разработки в Яндексе, TopTal и нынешняя работа senior-программистом в Amazon. Я специально так подробно рассказываю о своём брате, т. к. далее эта информация понадобится для понимания контекста.

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

Почему я выбрал именно веб? Потому что по личному опыту брата и его друзей-айтишников порог входа в веб ниже, чем в других IT-профессиях. И мне, как визуалу, важно видеть результаты своего труда (чертежи, запроектированные и построенные здания). И как раз фронтенд-разработка предоставляет эту возможность.

Читать далее
Всего голосов 225: ↑209 и ↓16 +193
Комментарии 473

Ontol: Лучшие бесплатные онлайн-курсы от MIT

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

78% профессорско-преподавательского состава MIT ставит знания выше финансовой выгоды и согласились 20 лет назад стартовать инициативу MIT OpenCourseWare — полную оцифровку обучения и выкладывания его в окрытый доступ для всех желающих.

Около 35% поступивших в MIT студентов, говорят, что на их выбор повлияли бесплатные окрытые лекции MIT OpenCourseWare.

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

Компьютернеы науки, математика, физика, этические вопросы ML, система управления истребителя F-22, физика ковида, устройство мозга, кибербезопасность, разработка игр, квантовая и ядерная физика, химия, теория алгоритмов, теория вычислений, линейная алгебра. Добро пожаловать под кат. (осторожно, 100+ мб трафика на превьюшки)

Читать дальше →
Всего голосов 17: ↑10 и ↓7 +3
Комментарии 9

Информация

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