Обновить
162
0
Валерий Макаров @valemak

Программист

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

И пришел лесник

Время на прочтение8 мин
Просмотры17K

Знаете, что самое неприятное в научных спорах? Вот ты беседуешь, о какой-то космологической концепции, а оппонент берёт и приводит довод: «А вот в фантастическом романе…»

Знаете, что самое неприятное в научных спорах? Вот ты беседуешь, о какой-то космологической концепции, а оппонент берёт и приводит довод: «А вот в фантастическом романе…»

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

Это необходимый дисклеймер я написал потому, что собираюсь критически переосмыслить концепцию «Темного Леса» Лю Цысиня. Не покритиковать, нет — сама по себе эта концепция прекрасна. Если принимать её как метафору взаимодействия власти и оппозиции. Тоталитаризм так работает — если ты начинаешь мыслить и обретаешь голос, то ты исчезаешь. В лучшем случае тебя просто удаляют из информационного пространства. В худшем… не будем о худшем. Эта статья не о «Темном лесе» как метафоре.

Я предлагаю рассмотреть «Темный лес» с точки зрения теории игр. Конечно, в определенном смысле, это тоже будет не научная, а литературная интерпретация. Просто потому, что точных научных данных пока нет, а «Similia similibus curentur» (подобное лечится подобным).

Читать далее

Алгоритмы сортировки NumPy (и танцы, и мемы)

Время на прочтение5 мин
Просмотры7.2K

Вместо предисловия:

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

Читать далее

Лучшие астрофотографии 2021 года

Время на прочтение9 мин
Просмотры38K
Фотографии финалистов 13-го ежегодного конкурса фотографий королевской Гринвичской обсерватории – прекрасное напоминание о размере и возрасте Вселенной. На одной из фотографий, сделанной Джеймсом Рашфортом, видно комету NEOWISE, летящую над Стоунхенджем – а когда она пролетала над Землёй в прошлый раз 6800 лет назад, этой постройки ещё не было.

В конкурсе, в организации которого принимал участие журнал Sky at Night, соревновались 4500 фотографий, сделанные фотографами из 75 разных стран. В середине сентября будут объявлены победители в 16 категориях, а их работы будут выставляться в Национальном морском музее Лондона.
ОЧЕНЬ МНОГО фотографий

Не клавиатурой единой: лучшие эргономичные мыши

Время на прочтение4 мин
Просмотры41K

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

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

Теория графов. Термины и определения в картинках

Время на прочтение5 мин
Просмотры252K

В этой статье мы познакомимся с основными терминами и определениями Теории графов. Каждый термин схематично показан на картинках.

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

Теория графов

Регулярные выражения. Всё проще, чем кажется

Время на прочтение7 мин
Просмотры134K

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

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

Читать далее

Эргономика решает: классные эргономические клавиатуры, на которые стоит обратить внимание

Время на прочтение4 мин
Просмотры57K

Думаю, что многие читатели Хабра часто работают с клавиатурой — неважно, для кода или написания статей/документации. Приспособиться можно к любой клавиатуре, даже самой недорогой и «китайской» (хотя и в этой категории бывают отличные модели). Но лучше, конечно, работать с комфортом.

В этой подборке мы собрали несколько клавиатур, которые нравятся нам самим — какие-то есть у сотрудников Selectel, к каким-то присматриваемся. Хороших клавиатур достаточно много, мы напишем о части из них. Если у вас есть собственная любимая «клава», расскажите о ней в комментариях.
Читать дальше →

JavaScript: изучаем регулярные выражения на практике

Время на прочтение18 мин
Просмотры72K

image


Регулярное выражение (далее также — регулярка) — это последовательность специальных символов, формирующих паттерн или шаблон (pattern), который сопоставляется со строкой.


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


В данной статье мы сосредоточимся на валидации.


Что конкретно мы будем делать? Мы возьмем несколько регулярок из validator.js (наиболее популярной библиотеки для валидации данных с помощью регулярных выражений) и произведем их подробный разбор. Также мы рассмотрим несколько дополнительных регулярок и один алгоритм.


Как результат, мы реализуем несколько полезных функций, которые вы впоследствии сможете использовать в своих проектах.

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

Timsort — самый быстрый алгоритм сортировки, о котором вы никогда не слышали

Время на прочтение5 мин
Просмотры58K

Timsort: Очень быстрый, O(n log n), стабильный алгоритм сортировки, созданный для реального мира, а не для академических целей.

Timsort — это алгоритм сортировки, который эффективен для реальных данных, а не создан в академической лаборатории. Tim Peters создал Timsort для Python в 2001 году. 

Timsort сначала анализирует список, который он пытается отсортировать, и на его основе выбирает наилучший подход. С момента его появления он используется в качестве алгоритма сортировки по умолчанию в Python, Java, платформе Android и GNU Octave.

Нотация Big O для Timsort — это O(n log n). Чтобы узнать о нотации Big O, прочтите это.

Читать далее

Как формируются зарплаты с точки зрения экономики и почему программисты столько получают

Время на прочтение4 мин
Просмотры56K

Всем же интересно про зарплаты? Давайте про зарплаты

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

Под катом я рассказываю о том, как формируется зарплата (особенно программиста) с точки зрения экономики.

Читать далее

Есть только один способ решить уравнение Дрейка

Время на прочтение8 мин
Просмотры26K

Согласно мрачной гипотезе из книги «Тёмный лес», внеземные цивилизации вступают в контакт исключительно с одной целью. К счастью, это всего лишь художественный вымысел, хотя он объясняет парадокс Ферми

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

Давно пора скорректировать уравнение Дрейка с позиций современной науки. Об этом пишет Джон Герц в статье «Уравнение Дрейка через 60 лет: переосмысленное и отброшенное», опубликованной 19 мая 2021 года на сайте препринтов arXiv.org (arXiv:2105.03984v2). Статья принята к публикации в журнале Британского межпланетного общества (JBIS).
Читать дальше →

Памятка/шпаргалка по SQL

Время на прочтение29 мин
Просмотры1.3M

Доброго времени суток, друзья!


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

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

Веб-скрейпинг на PHP

Время на прочтение10 мин
Просмотры21K


Термин web scraping означает извлечение информации из веб-страниц в интернете. Его ещё называют web crawling или web data extraction.

PHP широко используется в качестве серверного скриптового языка для создания динамических сайтов и веб-приложений. И на нём можно написать веб-скрейпер. Но поскольку мы не хотим изобретать колесо, можно воспользоваться готовыми open-source библиотеками для веб-скрейпинга. Кстати, мы также написали отличную статью про веб-скрейпинг с помощью Node.js и с помощью Python, почитайте. А здесь мы обсудим разные инструменты и сервисы, которые можно использовать с PHP для скрейпинга веб-страниц: Guzzle, Goutte, Simple HTML DOM, Headless-браузер Symfony Panther.
Читать дальше →

Гипотеза симуляции — ответ на все наши вопросы или очередная религия?

Время на прочтение9 мин
Просмотры50K

Реален ли окружающий мир? — такой вопрос задавали, пожалуй, с давних времен. Порой у каждого из нас возникали мысли о том, что окружающий мир — нереальный и игрушечный. С выходом трилогии «‎Матрицы»‎ и статьи «‎Аргумент о симуляции»‎ Ника Бострома в 2001 году стала популярна гипотеза о том, что наша Вселенная является продуктом компьютерного моделирования сверхчеловеческой расы — ее сторонниками являются многие деятели, в том числе Илон Маск. Но правы ли они и имеют ли их размышления какой-либо смысл? Разберем основные тезисы этой гипотезы и разберемся, какие модели Вселенной могут быть и какая в этом может быть польза.

В матрицу!

Как я искал работу в США во время пандемии, подался на 200 вакансий и получил оффер на $380K

Время на прочтение41 мин
Просмотры42K

Украинский профильный ресурс DOU.UA опубликовал статью о нелегком пути релокации специалиста в США во время пандемии, где он также отвечает на дополнительные вопросы и комментарии.

Адам Леос — Senior Software Engineer в Roku. Пару лет назад он принял решение о релокации и в итоге выбрал своей целью США. Всего за три месяца Адам с нуля собрал все необходимое для подачи на визу О1, но потом в историю вмешалась пандемия. О том, с какими трудностями он столкнулся из-за карантина, как искать работу на американском IT-рынке, как получить большое количество офферов и выторговать самую выгодную компенсацию, разработчик рассказал в интервью DOU.UA

Читать далее

Как улучшить блок-схемы алгоритмов по ГОСТ 19.701-90? Эргономичный визуальный алгоритмический язык ДРАКОН. Критерии

Время на прочтение27 мин
Просмотры53K

Статья содержит анализ и критику стандарта ГОСТ 19.701-90 в части схем алгоритмов. Предлагается для записи алгоритмов создать новый стандарт, основанный на эргономичном визуальном алгоритмическом языке ДРАКОН. Дается сравнительный анализ блок-схем алгоритмов по ГОСТ 19.701-90 и дракон-схем.

Читать далее

Вторая причина остаться без зубов в 45 лет

Время на прочтение12 мин
Просмотры28K

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

Группы риска:

1.      Люди с плохой гигиеной. Впрочем, кариес лишит зубов раньше, чем пародонтит.

2.      Диабетики. У них проблемы с сосудами и местным иммунитетом.

3.      Курящие. У них тоже проблемы с сосудами. И да, вейпы несильно спасают: никотин токсичен сам по себе. Кроме этого, у курящих налёт прочнее фиксируется на эмали.

4.      Люди, чьи родители или ближайшие родственники имеют поставленный пародонтальный диагноз.

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

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

Читать далее

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

Время на прочтение4 мин
Просмотры28K

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

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

Читать далее

Как айтишнику издать свою книгу. Часть первая: куда податься

Время на прочтение9 мин
Просмотры16K

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

Книга, опыт выпуска которой и послужил источником данного материала, в статье ранее https://habr.com/ru/post/512460/ набрала тысячи скачиваний и десятки благодарных отзывов. 

Для тех, кто хочет узнать, как работает книжное дело сейчас, выкладывать ли онлайн самому или сотрудничать с издательством, сколько получают авторы, как попасть на полки Буквоеда, Читай-города, в главные интернет-магазины, и все ли решают лайки — прошу:

Сравнить опенсорсный и проприетарный пути

Как защититься от синдрома запястного канала? 

Время на прочтение9 мин
Просмотры62K


Наряду с компьютерным зрительным синдромом, о котором мы уже рассказывали ранее, среди IT-специалистов распространен и другой весьма серьезный недуг — синдром запястного канала. В чем проявляется данное заболевание и можно ли предотвратить его развитие? Давайте разбираться. 

Причины и симптоматика синдрома запястного канала


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

Человеческий организм имеет огромное количество подобных мест: на одной лишь руке могут развиться 8 разных туннельных синдромов. Поэтому с медицинской точки зрения называть синдром запястного канала, о котором пойдет речь в сегодняшней статье, просто туннельным синдромом, без уточнения локализации патологического процесса, некорректно. Хотя справедливости ради стоит сказать, что именно карпальный туннельный синдром (так называют синдром запястного канала неврологи) является самой распространенной формой компрессионно-ишемической невропатии из всех существующих: его общая доля в популяции составляет около 5%, а ежегодный прирост заболеваемости достигает 3 случаев на каждую тысячу населения.
Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Кировоград, Кировоградская обл., Украина
Дата рождения
Зарегистрирован
Активность