Pull to refresh
-2
@zergon321read⁠-⁠only

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

Send message

С алгоритмами в духе LeetCode на собеседованиях пора кончать

Reading time6 min
Reach and readers71K
Современная разработка охватывает широкий диапазон от работы с алгоритмами до системного дизайна. По большей части разработка ПО укладывается в эти рамки. Основная масса разработчиков занимается созданием приложений, что ближе с системному дизайну, чем к низкоуровневым алгоритмам.

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

Такой подход основан на идее, что, если человек знаком с алгоритмами и системным дизайном, то и на разработку приложений ему хватит способностей. Это спорное утверждение. Создание приложений требует обширного набора навыков. Они не нарабатываются сотнями часов заучивания паттернов в решениях задач на алгоритмы. Да и рассматриванием сильно упрощенных версий системного дизайна Netflix, Uber или Twitter Threads делу не поможешь. Навыки разработки приложений оттачиваются путем… ну, разработки приложений. Но часто на технических собеседованиях они даже не принимаются в расчет.
Читать дальше →

Керниган и Пайк были правы: делай что-то одно и делай это хорошо

Level of difficultyEasy
Reading time11 min
Reach and readers31K
Роб Пайк и Брайан Керниган

В октябре 1984 года два идеолога опубликовали радикальный манифест… ну, или что-то вроде того.

Легенды computer science Брайан Керниган и Роб Пайк сформулировали в Program Design in the UNIX Environment паттерн архитектуры ПО, за сохранение которого оба боролись долгие годы.

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

Старые программы покрываются коркой сомнительных фич.

Суть статьи часто сводят к аббревиатуре DOTADIW, или «Do One Thing And Do It Well» («Делайте что-то одно и делайте это хорошо»). В Unix и его потомках есть множество программ, в которых воплощена эта мантра: ls просто создаёт список файлов, cat просто выводит содержимое файлов, grep просто фильтрует данные, wc просто подсчитывает слова и так далее. У каждой программы есть несколько опций, меняющих её поведение, но не слишком сильно. Например: wc можно сконфигурировать для подсчёта строк или слов, но не для подсчёта количества абзацев или вхождений какой-то фразы.

Мощь Unix, защищаемая Керниганом и Пайком, заключалась в возможности соединения этих простых программ в цепочку для создания сложных поведений. Зачем добавлять сопоставление регулярных выражений в wc, если с этим уже способна справиться grep?
Читать дальше →

Обойти айти: есть ли жизнь за пределами золотой клетки?

Level of difficultyEasy
Reading time13 min
Reach and readers27K
Уйти из айти невероятно сложно: престижная работа, неизменный wow-эффект у знакомых, заработная плата и условия выше рынка или как минимум лучше среднего, постоянное развитие, интересные отраслевые события, отличные отношения с удалёнкой… Да ну, где вы видели этих безумцев?! А они есть: люди, которые в 25, 35, 40, 45 лет бросают должности, проекты и компании и уходят в мир других задач, интересов, людей. Кто-то педантично готовит план, подстилает соломку и аккуратно шагает с корабля на корабль, кто-то громко хлопает дверью и знает, куда идти и что делать, а кто-то уходит в никуда, сидит дома, лечит выгорание и ломку привычки к упорной нагруженной работе… В целом, это болезненный переход: как по деньгам, там и по моральным компонентам. Решиться невероятно трудно. Так давайте разберёмся, зачем ломать прутья золотой клетки и что именно щекочет воздух свободы.

Читать дальше →

Как я потерял работу программиста в 65 лет

Reading time4 min
Reach and readers116K

Ведь я профессионал в IT. Как такое могло произойти?

65 лет, по идее, это год «выхода на пенсию». Для меня этот год стал годом «окончания» всего. В этой статье я решил рассказать о своем двухлетнем пути без работы. Ну и как теперь я работаю неполный день.

Дисклеймер. Эта статья -- перевод текста разработчика из США. Думаю, разница в том, что в странах СНГ подобные проблемы начинаются еще раньше. В дополнение к переводу предлагаю обсудить проблемы поиска работы среди возрастных соискателей в нашей стране. Об этом в конце статьи.

Читать далее

IT для неайтишников: Куда исчезают программисты после 40 лет?

Reading time11 min
Reach and readers128K

Это сложная тема, которая периодически всплывает в среде IT-специалистов, об этом сказано уже немало, а вот для «неайтишников» многое может оказаться новостью. Как для тех, кто хочет «войти в IT», так и для тех, кто по роду своей деятельности вынужден работать вместе с IT-службами. Некоторые вещи будут очевидны для IT-специалистов, но не очевидными для других. Иногда из-за их непонимания люди допускают болезненные ошибки. Не только и не столько со своей карьерой, сколько в своём бизнесе делают ставку не на тех людей. Поэтому, давайте разберём этот вопрос без эмоций и на понятном для неспециалистов языке.

Читать далее

Почему я больше не буду работать наставником на IT-курсах

Level of difficultyEasy
Reading time4 min
Reach and readers118K

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

Читать далее

Секрет Безоса: Amazon специально делает свой сайт хуже, чтобы получать больше прибыли

Reading time7 min
Reach and readers58K

Федеральная торговая комиссия США (ФТК) отвечает за защиту прав потребителей, в том числе за борьбу с монополиями. Недавно она предъявила Amazon официальную жалобу за «незаконное удержание монопольной власти» и «сознательное ущемление прав покупателей». Это очень серьезно и может поставить компанию на грань разделения активов. Новые разделы жалобы показывают, что руководители Amazon, включая бывшего гендиректора Джеффа Безоса, вносили в платформу изменения, которые увеличивали прибыль компании, одновременно нанося вред покупателям и продавцам, а также делая сайт менее удобным в использовании.

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

Читать далее

Доступная система видеонаблюдения с охраной на дачу за 60 минут

Reading time24 min
Reach and readers107K

Речь пойдет о сборке, настройке и запуске охранной системы с датчиками, камерой, хранением видеозаписей на удаленном домашнем NAS, встроенным UPS, web-интерфейсом и оповещением через Telegram.

Чтобы быть предельно кратким, оформил статью в стилистике hackster.io. Информация рассчитана на читателей с опытом работы с одноплатным компьютером Raspberry и пониманием принципов работы VPN.

Читать далее

OpenConnect: недетектируемый VPN, который вам понравится

Level of difficultyMedium
Reading time15 min
Reach and readers383K

Я уже написал здесь много статей на тему прокси-протоколов и прокси-клиентов, которые очень сложно детектировать и заблокировать, и которые используют пользователи в Китае, Иране, Ираке, Туркменистане, и теперь вот в России (мы здесь в отличной компании, правда?). Но довольно часто мне в комментариях писали, мол, это все отлично, но мне нужен именно VPN для целей именно VPN - доступа в частные локальные сети, либо для соединения клиентов между собой, и желательно так, чтобы его не заблокировали обезьяны с гранатой. Поэтому сегодня мы поговорим именно о VPN.

Классические OpenVPN, Wireguard и IPSec отметаем сразу - их уже давно умеют блокировать и блокировали не раз. Модифицированный Wireguard от проекта Amnezia под названием AmneziaWG — отличная задумка, но есть одно но...

Читать далее

Рынок данных в даркнете: как купить чужие данные и не потерять свои

Reading time23 min
Reach and readers49K

Уже 3 года подряд компания Privacy Affairs публикует на своем сайте исследование рынка информационных услуг в даркнете. Первое исследование носило характер обзора и вышло в 2020 году. В 2021, 2022 и 2023 году специалисты компании анализировали динамику цен на те услуги, которые постоянно присутствуют в даркнете. 

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

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

Читать далее

Как оплатить VPN криптовалютой

Reading time5 min
Reach and readers19K

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

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

Читать далее

О правиле 15/8, или как при найме программистов обманывают на простой арифметике

Level of difficultyEasy
Reading time6 min
Reach and readers19K

История человечества знает немало примеров бессовестного выжимания соков из работников. Началось всё с глубокой древности, в античные времена. Тогда рабы на плантациях трудились до полного физического изнеможения. Замена умерших рабов на новых, свеженьких рабов особых сложностей не представляла. С тех пор многое поменялось. Из-под палки смотрителя никто не работает, физический труд стало невыгодно убивать такой выраженной работой на износ, зато появился в большом объёме труд умственный, и быстро вскрылась интересная особенность: человека можно нагрузить большим объёмом такого труда, и он от такого объёма не умрёт (обычно).

Моя статья не о тяжёлой работе как таковой, а о том, как за эту тяжёлую работу не платят необходимую сумму, причём не платят по сути с разрешения работника, с его добровольного согласия, и при этом зачастую нарушается закон. Если вы никогда не задумывались об оплате переработок, и никогда не слышали про правило 15/8, то эта статья для вас. Поехали!

Читать далее

Здоровая конкуренция в GO. Главное не перехитрить самого себя

Level of difficultyMedium
Reading time15 min
Reach and readers18K

Несколько лет назад я прочитал статью о параллелизации в GO и ничего не понял – я тогда только начинал программировать на этом языке. Но размышления автора мне очень понравились – они подкреплялись бэнчмарками, что было довольно убедительно. Автор игрался c параметром GOMAXPROCS и показал, что увеличение этого параметра не всегда приводит к увеличению производительности. Под конец статьи он подобрал такое значение, которое будет максимально эффективным для его функции, на мое удивление, это значение оказалось равно единице! Т.е. его код работал максимально эффективно, если работал всего на одном ядре процессора! Однако, в одном из комментариев под той статьей я прочел, что все эти изыскания нелепы, поскольку та же самая функция из статьи запущенная всего в один поток оказывается эффективнее любой ее параллельной реализации.


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



Читать дальше →

Пакуем весь трафик в Ping message, чтобы не платить за интернет | ICMP NAT traversal

Level of difficultyHard
Reading time29 min
Reach and readers114K

Бывало ли у вас такое, что вы подключились к общественной сети или мобильному интернету, но он себя странно ведёт. Надпись «Подключено, без доступа к интернету» отсутствует, устройство думает, что всё нормально. Вы открываете браузер и видите «Пройдите проверку личности в сети нашего кафе» или в случае с мобильным интернетом «Пополнить баланс можно тут, тут и тут».

Так вот, переходя ближе к теме. Вы можете воспроизвести подобное поведение очень просто прямо сейчас при помощи вашего мобильного телефона и ноутбука. Я в своём конкретном кейсе буду пользоваться услугами оператора красного цвета, однако проблема актуальна для всех текущих 4 монополистов рынка сотовой связи. Как вам, скорее всего, уже известно, они около года меняют свою политику, внедряя одно интересное нововведение — с вас требуют дополнительной платы за раздачу интернета поверх основного пакета. То есть вы не можете взять и использовать свои 7 гигов на месяц как ресурс для раздачи при помощи точки доступа. Для точки доступа вам предлагают отдельный, зачастую совсем невыгодный тариф. Конечно, можно сменить основной тариф на специальный «тариф для раздачи» и платить втридорога, но, как вы понимаете, сегодня мы в потребителя будем играть совсем недолго. Сейчас по пунктам нужно доказать нечестность подобной политики и с чувством завершённого введения перейдём к непосредственно технотексту.

Подобные условия пользования, само собой, порождают внутреннее недовольство пользователей:

За интернет они платят? — Да.

Раздача как-либо использует ресурсы провайдера сверх нормы? — Нет.
Читать дальше →

Программист с фигой в кармане: в чем причины?

Level of difficultyEasy
Reading time11 min
Reach and readers75K

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

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

Я далек от того, чтобы делать какие-либо моральные оценки этому явлению (если
прочтете до конца, поймете, почему).  Я – тимлид с 15-летним опытом работы в IT. Я лично нанимал многих людей и со многими прощался. У меня есть своя приличная статистика откровенных мыслей и настроений людей, которые со мной работали, работают, или работают, но не со мной. На основании этого своего опыта (и не только своего) я попытаюсь дать ответ на вопрос, как и почему вырастает фига в кармане программиста. Я потяну за ниточку клубка причин и постепенно попытаюсь его распутать целиком. Результатом будет сводный граф причин феномена саботажа в IT. Поехали!

Читать далее

Алгоритмические собеседования нужны

Level of difficultyEasy
Reading time8 min
Reach and readers23K

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

Сразу скажу, что моя статья относится лишь к условному ФААНГу. Многие аргументы из этой статьи теряют значимость в других случаях: если у вас маленькая фирма, мало кандидатов или у вас всего 10 пользователей.

Я утверждаю, что алгоритмические интервью - лучший вариант для ФААНГа из всех пока придуманных.

Читать далее

Безопасно стираем файлы с цифровых носителей

Level of difficultyMedium
Reading time5 min
Reach and readers21K

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

Читать далее

Yandex Backend Tour: по городам России в поисках backend-разработчиков

Reading time8 min
Reach and readers21K

Программисты уровня middle+ не готовы тратить месяц жизни на длительные интервью. Поэтому Яндекс приглашает backend-специалистов пройти собеседование всего за неделю, без стресса и ожидания. В ходе Yandex Backend Tour с 13 по 17 ноября кандидаты смогут встретиться офлайн с разработчиками сервисов Яндекса в пяти городах России — Москве, Санкт-Петербурге, Нижнем Новгороде, Екатеринбурге, Новосибирске, а затем за неделю пройти отбор и до 26 ноября узнать результаты.

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

Читать далее

Береги файлы смолоду. Что может произойти, если выкинуть в помойку неисправный жесткий диск

Level of difficultyEasy
Reading time8 min
Reach and readers67K


Время от времени мне приходится чинить старую компьютерную технику. Винчестеры формата IDE сейчас уже не выпускают, а оптические диски выступают в роли расходного материала — далеко не все возрастные ноутбуки и персоналки умеют грузиться с USB, а покупать чистые болванки пачками или поштучно — довольно разорительное занятие. Поэтому месторождением запчастей и расходников для меня служит самая популярная в Рунете доска объявлений и блошиный рынок: там можно приобрести за копейки побывавшие в употреблении перезаписываемые CD/DVD-RW, а заодно старые жесткие диски, которые еще способны послужить новым владельцам. Но речь сейчас не о том, как сэкономить на комплектующих, а о том, что порой можно обнаружить на «бэушных» носителях информации…
Читать дальше →

10 тяжёлых истин о работе программиста, про которые никто не предупреждает

Level of difficultyEasy
Reading time10 min
Reach and readers71K

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

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

Всё это приятные бонусы, но никто не говорит им, что на самом деле им придётся делать на этой работе.

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

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

Читать далее

Information

Rating
Does not participate
Registered
Activity