Обновить

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

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

Когда уходят на покой программисты? 35 — это конец карьеры?

Время на прочтение6 мин
Охват и читатели100K
image

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

Если программист в свои пятьдесят собеседуется на вакансию вместе с людьми, которым 20-30 лет, сколько компаний наймёт его? Об этой проблеме существует множество мифов, как и несколько жестоких истин.

Да, иногда шокирует, что 40-летних, иногда даже 35-летних называют «старыми». Под «старыми» здесь подразумевается то, что программисты на этом этапе планируют уходить на покой или менять место работы.
Читать дальше →

Превращаем одноплатник Cubietruck в Wi-Fi Hotspot с Captive portal, VPN-шлюзом и Ad block

Время на прочтение18 мин
Охват и читатели24K
raspap

Для построения Wi-Fi сети обычно используют готовые маршрутизаторы, функциональность которых всегда ограничен прошивкой. А если необходимо добавить блокировщик рекламы, VPN шлюз и красивый Captive portal, покупать новую железку? Стоимость устройства с такими возможностями будет уже весьма высока. Можно взять Linux с Hostapd и сделать точку доступа с Wi-Fi, но в отличие от готовых маршрутизаторов не будет наглядного Web-интерфейса. И для решения этой задачи был создан проект RaspAP, который на базе устройств с ОС Debian создает Wi-Fi Hotspot с Captive portal, VPN-шлюзом, Ad block. Для RaspAP в отличие от OpenWrt не требуется непосредственная поддержка устройства, достаточно поддержки последней версии Debian. RaspAP работает поверх уже установленных ОС: Raspberry Pi OS, Armbian, Debian, Ubuntu. Как сделать Wi-Fi Hotspot на RaspAP прошу под кат.

Apple превращается в ещё одну Microsoft

Время на прочтение11 мин
Охват и читатели43K
image

Фанаты Apple продолжают рассуждать о том, что может стать новым прорывным продуктом компании. Что-то сравнимое с первым Mac, первым iPod, первым iPhone — революционный продукт, который изменит отрасль и даст Apple мощный толчок вперёд. В конце концов, именно так Apple всегда вела эту игру. Именно таким мы привыкли видеть успех Apple.

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

Пиринговые мессенджеры — враг государства?

Время на прочтение7 мин
Охват и читатели92K


В случае полного отключения интернета одна из главных проблем — общение с товарищами и родственниками. Опыт Гонконга показывает, что для этого хорошо подходят децентрализованные P2P-мессенджеры, которые работают без интернета, используя mesh-сеть по протоколам Wi-Fi Direct, Bluetooth, Apple Multipeer Connectivity Framework, ANT+, LoRa и др.

Для эффективной коммуникации приложение нужно скачать максимальному количеству человек до начала блокады интернета. Иначе придётся искать файлы после блокады. Человек с нужными файлами станет настоящим авторитетом в офисе или в классе (как это было в Беларуси в августе 2020 года — за файлами Psiphon люди реально приезжали из других микрорайонов города).

Вообще, вся история сетей wireless mesh намекает на то, что эта технология крайне не нравится правоохранительным органам.

Почему вся реклама сегодня выглядит одинаково?

Время на прочтение5 мин
Охват и читатели15K


Стиль иллюстрации: плоский, с геометрическими формами, фигуральный, обычно составленный из однотонных цветов. Безликие фигуры разбросаны по железнодорожным станциям и автобусным остановкам, от финтех-компании MoneyFarm и Trainline до сервиса доставки «Виагры» GetEddie. Даже собственный брэндинг Transport for London, завоевавший себе особое место в истории модернистского графического дизайна, начинает перенимать этот стиль.
Читать дальше →

Не ищите лучших; нанимайте людей, исходя из слабых сторон команды

Время на прочтение6 мин
Охват и читатели20K


Поиск сотрудников надо начинать не с вопроса «как нам нанять самого лучшего?», а с вопроса «какие у нас есть слабые стороны?».

Зачем вы нанимаете людей? Вы нанимаете, чтобы больше делать или достигать?

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

Думайте не о том, «как нанять самых умных?», а о том, «как найти людей, способных сделать команду сильнее?».

Робозвери 90-х

Время на прочтение8 мин
Охват и читатели35K

Вселенная киборгов-зверей, или иначе робозверей, положила своё начало с прибытия робота-человека на весьма удалённый уголок галактики. А точнее, на обычную советскую квартиру в хрущёвке. И столкнувшись с суровой, враждебной средою, он сразу же потерял кисти рук. Но благо, последующие месяцы пребывания на этой ужасной планете киборг смог, пусть и без рук, но более-менее освоиться, а также получить подкрепление в лице различных механических тварей. Других киборгов, к примеру, робоакула (кто же знал тогда, что это летучая рыба) или лев, которые сразу стали держаться вместе, встав плечом к плечу против местных аборигенов, не желающих делить обжитую территорию с колонизаторами. Роботы были этому только рады, они жили войною, а потому с радостью и энтузиазмом приняли бой, не на жизнь, а на смерть.

Своего лагеря у боевых робозверей не было, они использовали уже имеющиеся коммуникации: заброшенные постройки былой цивилизации в виде коробок, шкафов, сервантов и полок. Иногда они терялись на окраине галактики по закоулкам пыльных углов, прячась от превосходящих их как размером, так и числом противников. Их то тут, то там поджидали саблезубые коты и псы, но страшнее всего были дети великанов. Нет ничего опаснее и хитрее этого врага, способного за считанные минуты разобрать несчастного робота на запчасти. Но, несмотря на все невзгоды и тяготы, отряд рос, крепчал и закалялся. Вскоре сражения стали проходить с переменным, но успехом. Во многом это было связано с растущим мастерством роботов. Терпя поражения, роботы учились ведению боя, когда их враги и конкуренты в лице солдатиков, индейцев и ковбоев не думали оттачивать тактику и менять стратегию, беря вверх лишь численным превосходством. Но после первых побед роботы начали активно наступать и отвоёвывать себе территорию на полках. Казалось, они вот-вот загонят солдатиков на необитаемые и пыльные окраины галактики, и предадут забвению, однако этому помешали… роботы… другие роботы.
Читать дальше →

Как я продавал свой маленький проект

Время на прочтение4 мин
Охват и читатели23K


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

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

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

В этом посте я расскажу, как продал свой последний проект Earlyname.
Читать дальше →

M/o/Vfuscator2, безумный компилятор

Время на прочтение4 мин
Охват и читатели8.3K


Однажды один умный чувак (Кристофер Домас) читал статью другого умного чувака (Стивена Долана) про удивительную особенность архитектуры x86. Стивен ругал её за избыточность и утверждал, что набор инструкций можно сократить до одной лишь mov, потому что она Тюринг-полная. Если бы Стивен не был таким умным, в его словах можно было бы усомниться, но у Кристофера загорелись глаза: проработав двадцать лет с x86, он не слышал ни о чём подобном, и ему страшно захотелось написать компилятор, который бы переводил весь код в наборы одних лишь mov-инструкций. Так родились M/o/Vfuscator и M/o/Vfuscator2, наглядно иллюстрирующие ненормальное программирование.
Читать дальше →

У каждого приложения должна быть палитра команд

Время на прочтение4 мин
Охват и читатели7.3K
В старых и новых приложениях незаметно начинает появляться инструмент, упрощающий взаимодействие и ускоряющий выполнение действий. Это мощное поле поиска, которое я называю «power bar»; иногда оно имеет название «command palette».

Power bar, похожая на поиск Spotlight в macOS, встраивается в приложение и обычно вызывается сочетанием горячих клавиш CMD+K (или CMD+SHIFT+P). После её вызова пользователь вводит в неё то действие, которое хочет выполнить. Однако в отличие от Spotlight, power bar позволяет выполнять задачи, а не просто искать файлы или переходить в другие части приложения.


Command palette приложения Superhuman.
Читать дальше →

Когда старый компьютер лучше нового

Время на прочтение7 мин
Охват и читатели49K

© dilbert

Наметилась странная тенденция. Возникает впечатление, что с каждым годом компьютеры замедляются. Количество ядер растёт, софт лагает. Нативных программ всё меньше. Остальные работают через Electron или в браузере. Древний текстовый редактор в DOS'е реагировал на нажатия за 15-20 миллисекунд, а в современном Google Docs задержка 100-150 мс. То же самое с остальными. Вспомните, ведь IRC и аська летали практически в реальном времени. А сейчас монстры Skype и Viber на десктопе загружаются по десять секунд. Спасибо разработчикам Telegram, хоть там нормальные ребята, иначе бы вера в человечество совсем исчезла…

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

За секунду до… ShakeAlert — система раннего предупреждения о землетрясениях всего Западного побережья США

Время на прочтение9 мин
Охват и читатели5K

Геологическая служба США (United States Geological Survey, USGS) разработала систему раннего предупреждения о землетрясениях (Earthquake warning system, EEW) под названием ShakeAlert для зон повышенного риска: в штатах Калифорния, Орегон и Вашингтон. Цель системы заключается в уменьшении воздействия землетрясений и спасении людей и собственности, делая массовые оповещения.

Используя сеть датчиков движения грунта и сложные компьютерные алгоритмы, ShakeAlert может обнаружить землетрясение за секунду после его начала, вычислив его эпицентр и интенсивность тряски, что позволяет принять соответствующие защитные меры. Задача ShakeAlert — быстрый и надежный сбор и доставка данных с датчиков в центры обработки для дальнейшего оповещения населения, чтобы уменьшить ущерб и спасти жизнь людей.
Читать дальше →

Почему мы купились на «культ» переработок и выгорания?

Время на прочтение8 мин
Охват и читатели32K
image

Культура переработок процветает; мы считаем сверхурочную работу и постоянную усталость показателем успеха. Почему же мы на неё покупаемся, несмотря на всё то, что знаем о выгорании?

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

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

Практическое руководство по анонимности в онлайне

Время на прочтение9 мин
Охват и читатели244K

Направленная антенна для удалённого доступа к публичному Wi-Fi

Обеспечить собственную безопасность (анонимность) в онлайне — тяжкий труд, требующий массивного объёма знаний. Даже лучшие профессионалы не всегда справляются.

Но это возможно.

Предупреждение. Для усвоения информации в полном объёме требуется несколько недель.
Читать дальше →

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

Как отладить программу, к которой у тебя нет доступа

Время на прочтение5 мин
Охват и читатели7.6K

Фото: Intricate Explorer, Unsplash

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

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

Разбираемся с «чёрными ящиками» и c тем, какими они бывают сегодня


«Чёрный ящик» — это популярная концепция программирования, предполагающая, что мы находимся снаружи системы или компонента, не имея прямого доступа к коду. Это может быть вызвано различными факторами:

  • Вы работаете со сторонним ПО, разработчики которого просто не раскрывают код.
  • Вы взаимодействуете с API, внутренняя логика которого абстрагирована.
  • У вас нет необходимых полномочий для доступа к Git-репозиторию.
  • Даже система с полным доступом может де-факто стать «чёрным ящиком» из-за своей сложности.
  • Сотрудник, обладавший всеми ключами и знаниями, внезапно уволился/пропал/умер.
  • Легаси-система состоит из .dll, которая «всегда работала» на сервере, и не была подключена к системе контроля версий. Чтобы просто посмотреть на код, её нужно декомпилировать, если это возможно, конечно.
Читать дальше →

Почему программисты добавляют новые функции, но не убирают лишние?

Время на прочтение6 мин
Охват и читатели20K

В этой конструкции Lego крыша поддерживается блоком в одном углу здания. Когда сверху кладут кирпич, крыша падает на фигурку человечка. Как решить эту проблему? Источник: научная работа Адамс и др., Nature vol. 592 (2021)

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

Конечно, ожирение сайтов и софта сопровождается повышением производительности компьютеров. И в каком-то смысле стимулирует этот рост производительности. То есть налицо цикл положительной обратной связи, грех жаловаться. Но всё-таки возникает вопрос: что же мешает разработчикам удалять лишние функции? Частичный ответ мы находим в научной работе «Люди систематически упускают субтрактивные изменения», опубликованной 7 апреля 2021 года в журнале Nature. Этот феномен проявляется не только в программировании, но и в решении других задач: при улучшении различных объектов, идей или ситуаций, и в целом в жизни людей.
Читать дальше →

Вы не просите дать вам работу, вы продаёте услугу

Время на прочтение4 мин
Охват и читатели41K

Изображение: businessinsider.com

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

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

Публикуешь вакансию, появляется 5000 соискателей, выбираешь 100, тратишь 2 недели на телефонный скрининг, 5 человек имеют знания, необходимые для работы.

Собеседования — это кошмар для обеих сторон.

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

Её начальник нанял обоих кандидатов, которые выделились на общем фоне. Из пяти тысяч людей обратили на себя внимание двое.

Штрих-код

Время на прочтение5 мин
Охват и читатели14K
image

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

Сама идея создания универсального кода, в котором была бы зашифрована информация о товаре, была подслушана товарищем Вудленда, Бернаром Сильвером, причем подслушана буквально: он стал свидетелем разговора своего декана (Вудленд и Сильвер учились тогда в аспирантуре) с директором супермаркета, который спрашивал, способны ли ученые создать систему, позволяющую мгновенно регистрировать покупку и вести учет товара.
Декан от такой задачи отказался, а Вудленд и Сильвер буквально загорелись этой идеей: она показалась им вполне решаемой, а её будущее — великолепным.
Читать дальше →

Не начинайте учиться кодингу с Python, начните с языка C

Время на прочтение4 мин
Охват и читатели62K


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

Python — язык программирования по умолчанию для «самой сексуальной профессии 21-го века». Да, громкие слова о данных по-прежнему сохраняют за data science репутацию «сексуальной работы», хотя современные обстоятельства уже не полностью поддерживают это утверждение. Языку Python удалось добиться того, что он позволяет решать большинство проблем data science.

Кроме того, Python также популярен в блокчейне, DevOps и кибербезопасности.

Ажиотаж вокруг Python постоянно растёт. Этот язык используется как средство кодинга в бесчисленном количестве онлайн-курсов и учебных программ.

Несмотря на всё это и вопреки всей привлекательности Python, он не подходит для начинающих в программировании. Лучшим вариантом является C.

В этой статье я расскажу о том, почему в качестве опорной точки вместо Python следует использовать C.
Читать дальше →

Игровое пиратство

Время на прочтение13 мин
Охват и читатели55K

Пиратство — это целая эпоха для игровой и не только индустрии, являющейся частью нашей с вами жизни, к счастью или сожалению избавиться от которой не получается по сей день. Для многих эпоха становления и последующего развития пиратства, которое пришлось в 90-е и 2000-е года, было временем увлекательным и «ламповым». Переполненные красочными контрафактными коробочками палатки и киоски на рынках. А продавец — главный гид для игроманов тех лет, чей авторитетный совет по выбору игры становился решающим и редко когда оспаривался или вызывал сомнение. Оно и понятно, отношение портить с ним желания не было, так как именно этот «барыга» решал, поменяет он вам диск или нет, если вдруг игра не запустится, а вероятность такого сценария была, скажем так, не маленькая. Такие были времена. Но как так вышло? Виновато ли беззастенчивое копирование игровых платформ или отсутствие альтернатив у большинства в те времена? А может, дело в расторопности пиратов той эпохи, которая делала контрафакт не только доступным, но и удобным? Давайте разбираться.
Читать дальше →