Как стать автором
Обновить
28
0
Олег @Voenniy

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

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

15 топовых веб скрапинг решений 2021 года

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

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

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

Представляем вашему вниманию список топ 15 инструментов для парсинга 2021 года. 

Читать далее
Всего голосов 8: ↑6 и ↓2+5
Комментарии11

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

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


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

В 1959 году суперзвездой мировых новостей
Всего голосов 53: ↑30 и ↓23+16
Комментарии87

Карта дизайна организационных систем и бизнес-процессов

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

Приветствую, уважаемые хабровчане. Это мой первый пост на этой площадке, хотя в качестве читателя с вами уже, наверное, 10 лет. Я не являюсь специалистом в IT, хотя имел отношение к запуску небольшого количества стартапов. Можете называть меня практикующим теоретиком – запускаю продукты, занимаюсь управлением проектами, помогаю компаниям улучшать процессы, внедрять всякие гибкие управленческие штуки, немного преподаю в ВШЭ. Но всё это делаю не столько, чтобы заработать денег, а чтобы удовлетворить собственное любопытство в том, как устроены системы и держать голову в тонусе.

Этот пост был написан пару лет назад на vc.ru, в правилах сообщества не запрещено, публиковать контент с других площадок. С вашего позволения, здесь опубликую его снова, но с небольшими корректировками. Надеюсь, найдёте материал и инструмент, о котором пойдёт речь, полезными.

Читать далее
Всего голосов 8: ↑7 и ↓1+11
Комментарии2

15 базовых советов по Git для эффективной работы каждый день

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

Привет, меня зовут Сергеев Сергей aka gurugray. Сейчас я «Mentor FrontEnd Community» в компании ManyChat. Вы могли видеть мои лекции по релизному циклу и регламенту работ с системами контроля версий в Школе Разработки Интерфейсов Яндекса (ШРИ).


Меня часто спрашивают какие life-hacks или best-practices я использую при работе с Git'ом и репозиториями проекта.


Эта заметка — попытка объяснить те базовые настройки и приёмы, которыми я пользуюсь каждый день. Рецепты не претендуют быть ноу-хау, но могут помочь с освоением ежедневной гигиены работы с репозиторием.


Читать дальше →
Всего голосов 57: ↑53 и ↓4+64
Комментарии63

ДИТ Москвы при проверке пропуска получает разрешение на отправку рекламы на следующие 10 лет

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

К таким «очевидным» сервисам относится, например, сервис проверки цифрового пропуска https://i.moscow/covid. Если раньше он позволял проверить только организацию по ИНН, то с недавних пор ДИТ Москвы стал массово аннулировать пропуска горожанам за якобы предоставление неверных сведений о месте работы — и отсылать их для подтверждения места работы на указанный сервис.

При нажатии на «Если у Вас заблокировали цифровой пропуск, перейдите по ссылке» сервис выдаёт просьбу ввести сначала номер паспорта, а потом ИНН компании, сопровождаемую непримечательной галочкой:


Абсолютное большинство людей проставят её, не читая сопутствующий документ — и очень зря.

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

Читать дальше →
Всего голосов 216: ↑209 и ↓7+279
Комментарии354

Как я искал пацанский движок для блога

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


Я много пишу в интернетах и мне захотелось завести свой личный стэндалон блог, куда можно писать мелкие заметки и статьи, не подходящие для других площадок. Главная проблема личного блога — мне лень оформлять посты. Чтобы черкануть пару строк в каком-нибудь Wordpress, нужно слишком много телодвижений. Я попробовал несколько разных движков и каждый раз ловил себя на ощущении, что мне не хочется ими пользоваться, намного быстрее и проще писать в записную книжку вроде Evernote или Notion. Так я стал искать идеальный движок для блога, отвечающий всем моим потребностям.

Мои требования к идеальному движку:


  • Желательно self-hosted — я пережил много закрытий сервисов, от narod.ru до google+ и точно знаю, что рано или поздно все протухает, поэтому надежнее всего держать контент у себя. Также посты могут удалять по каким-то фейковым жалобам или по DMCA, как это происходит на Medium и LiveJournal.
  • Возможность подключения своего домена — мне нужен сайт-визитка со всеми проектами и ссылками в одном месте, где можно разместить портфолио, резюме, контакты.
  • Минимум телодвижений и интерфейса — в идеале интерфейса CMS вообще не должно быть видно, админская панель не нужна, посты должны редактироваться, создаваться и просматриваться в одном месте.
  • Полноценный WYSIWYG редактор — поддержка разметки Markdown и обработка её в реальном времени, подсветка кода, вставка картинок из буфера обмена.
  • Нормальные комментарии — возможность оставлять анонимные комментарии и авторизовываться через максимум соц. сетей для персонифицированных комментариев.
  • Минималистичный внешний вид — я не хочу заниматься версткой и темами, подходящее оформление должно быть из коробки.


Внутри я рассказываю какой вижу идеальную CMS, редактор постов и комментарии, почему большинство существующих движков устарели на десять лет, и сравниваю между собой разные движки.
Всего голосов 72: ↑65 и ↓7+80
Комментарии80

Управление Tion S3 и его подключение к умному дому

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

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


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


Есть еще базовая станция Magic air с выносным датчиком CO2, которая управляет бризером на основе показаний датчика, но возможность управления бризером контроллером умного дома через такую базовую станцию тоже под вопросом.


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

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

Как заговорить на английском через месяц. 9 простых и проверенных шагов

Время на прочтение8 мин
Количество просмотров432K
Хабр, привет!

Меня зовут Марина Могилко, я кофаундер онлайн-платформы LinguaTrip.com.

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

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

Итак, начинаем! Осторожно: под катом мини-словарик на все случаи жизни.

image
Всего голосов 99: ↑64 и ↓35+29
Комментарии184

Интеграция с ЕСИА на базе oauth2-client (PHP)

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


Представляем yet another PHP-пакет интеграции с ЕСИА — ekapusta/oauth2-esia. Реализован как адаптер к популярному league/oauth2-client.

Читать дальше →
Всего голосов 23: ↑22 и ↓1+21
Комментарии15

Kubernetes кластер за $20 в месяц

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

TL; DR


Поднимаем кластер для обслуживания веб-приложений без записи состояния (stateless web applications) вместе с ingress, letsencrypt, не используя средства автоматизации вроде kubespray, kubeadm и любых других.
Время на чтение: ~45-60 минут, на воспроизведение действий: от 3-х часов.


Преамбула


На написание статьи меня сподвигла потребность в своём собственном кластере kubernetes для экспериментов. Автоматические решения установки и настройки, которые есть в открытом доступе, не работали в моем случае, так как я использовал не-мейнстримовые дистрибутивы Linux. Плотная работа с kubernetes в IPONWEB стимулирует иметь такую площадку, решая свои задачи в комфортном ключе, в том числе и для домашних проектов.


Компоненты


В статье будут фигурировать следующие компоненты:


Ваш любимый Linux — я использовал Gentoo (node-1: systemd / node-2: openrc), Ubuntu 18.04.1.
Kubernetes Server — kube-apiserver, kube-controller-manager, kube-scheduler, kubelet, kube-proxy.
Containerd + CNI Plugins (0.7.4) — для организации контейнеризации возьмем containerd + CNI вместо docker (хотя изначально вся конфигурация была поднята на docker, так что ничего не помешает использовать его в случае необходимости).
CoreDNS — для организации service discovery компонентов, работающих внутри kubernetes кластера. Рекомендована версия не ниже 1.2.5, так как с этой версии появляется вменяемая поддержка работы coredns в качестве процесса, запущенного вне кластера.
Flannel — для организации сетевого стека, общения подов и контейнеров между собой.
Ваша любимая db.


Для всех

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

Регистрируем сделку с недвижимостью онлайн

Время на прочтение12 мин
Количество просмотров30K
Здравствуй, читатель!

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

3,5 года прошло с момента анонса возможности государственной регистрации прав онлайн, а до сих пор в Рунете нет ни одной хоть сколь-либо подробной инструкции к этому довольно неочевидному процессу.
Читать дальше →
Всего голосов 52: ↑51 и ↓1+50
Комментарии51

Практические советы, примеры и туннели SSH

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

Практические примеры SSH, которые выведут на новый уровень ваши навыки удалённого системного администратора. Команды и советы помогут не только использовать SSH, но и более грамотно перемещаться по сети.

Знание нескольких трюков ssh полезно любому системному администратору, сетевому инженеру или специалисту по безопасности.
Читать дальше →
Всего голосов 69: ↑66 и ↓3+63
Комментарии29

Пакеты и пакетные менеджеры для k8s

Время на прочтение24 мин
Количество просмотров5.9K
Все мы пользуемся каким-либо видом пакетных менеджеров, включая уборщицу тетю Галю, у которой в кармане прямо сейчас обновляется айфон. Но общего соглашения о функциях пакетных менеджеров нет, и стандартные для ОС rpm и dpkg, и системы сборки называют пакетными менеджерами. Предлагаем поразмышлять на тему их функций — что это такое и для чего они нужны в современном мире. А потом будем копать в сторону Kubernetes и внимательно рассмотрим Helm с точки зрения этих функций.


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

Помог нам в этом Иван Глушков (gli) своим докладом на РИТ++, видео и текстовая версия этого подробного и обстоятельного выступления ниже.

Видеозаписи этого и других выступлений по DevOps на РИТ++ опубликованы и открыты для свободного просмотра на нашем youtube-канале — заходите в поисках ответов на свои рабочие вопросы.
Всего голосов 26: ↑24 и ↓2+22
Комментарии2

Построение микросервисной архитектуры на Golang и gRPC, часть 1

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

Введение в микросервисную архитектуру


Часть 1 из 10


Адаптация статей Ewan Valentine.


Это серия из десяти частей, я постараюсь раз в месяц писать про построение микросервисов на Golang. Я буду использовать protobuf и gRPC в качестве основного транспортного протокола.


Стек, который я использовал: golang, mongodb, grpc, docker, Google Cloud, Kubernetes, NATS, CircleCI, Terraform и go-micro.


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


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


  • грузы
  • инвентарь
  • суда
  • пользователи
  • роли
  • аутентификация
Читать дальше →
Всего голосов 25: ↑17 и ↓8+9
Комментарии8

Нейронные сети с нуля. Обзор курсов и статей на русском языке, бесплатно и без регистрации

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

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

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


Читать дальше →
Всего голосов 39: ↑34 и ↓5+29
Комментарии12

Docker + Laravel = ❤

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

laravel-in-docker


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

В данной статье я расскажу о своём опыте "заворачивания" Laravel-приложения в Docker-контейнер да так, что бы и локально с ним могли работать frontend и backend разработчики, и запуск его на production был максимально прост. Так же CI будет автоматически запускать статические анализаторы кода, phpunit-тесты, производить сборку образов.


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


  • "Использую докер для локальной разработки. Ставлю laradock и беды не знаю". Круто, но как обстоят дела с автоматизацией и запуском на production?
  • "Собираю один контейнер (монолит) на базе fedora:latest (~230 Mb), ставлю в него все сервисы (nginx, бд, кэш, etc), запускаю всё супервизором внутри". Тоже отлично, прост в запуске, но как на счёт идеологии "один контейнер — один процесс"? Как обстоят дела с балансировкой и управлением процессами? Как же размер образа?
  • "Вот вам куски конфигов, приправляем выдержками из sh-скриптов, добавим магических env-значений, пользуйтесь". Спасибо, но как же на счёт хотя бы одного живого примера, который я бы мог форкнуть и полноценно поиграться?

Для нетерпеливых — ссылка на репозиторий, склонировав который ты сможешь запустить Laravel-приложение одной командой. Так же не составит труда его запустить на том же rancher, правильно "слинковав" контейнеры, или использовать продуктовый вариант docker-compose.yml как отправную точку.
Читать дальше →
Всего голосов 29: ↑28 и ↓1+27
Комментарии23

27 отличных open source-инструментов для веб-разработки

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


Перевод 27 Amazing Web Development Tools for the Past Year (v.2018)

В 2017-м мы сравнили около 7 500 open source-инструментов для веб-разработки, из которых выбрали 27 лучших (0,4%). Это крайне конкурентный список, в который вошли инструменты, библиотеки и проекты, опубликованные в течение 2017-го. Mybridge AI оценивает их качество на основании популярности, заинтересованности и новизне. Чтобы было понятно, у выбранных продуктов среднее количество звёзд на Github — 5260.

Open source-инструменты могут почти даром повысить вашу продуктивность. Также вы можете чему-то научиться, читая исходный код и создавая что-нибудь на основе этих проектов. Так что рекомендуем уделить время и поэкспериментировать с инструментами из нашей подборки, возможно, какие-то из них прошли мимо вас.
Читать дальше →
Всего голосов 70: ↑55 и ↓15+40
Комментарии10

9 лучших книг про IT и программирование, которые вы могли пропустить

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

Помните, Льюис Кэрролл писал: «Здесь приходится бежать со всех ног, чтобы только остаться на том же месте, а чтобы попасть в другое место, нужно бежать вдвое быстрее»? Это фраза прекрасно подходит для IT-мира: технологии быстро развиваются, и каждый день нужно осваивать что-то новое, чтобы оставаться востребованным специалистом. У каждого программиста наверняка есть 5-6 бумажных книг, ставших классикой. О некоторых таких книгах мы уже писали. Но чтобы оставаться востребованным кодером, надо постоянно обновлять библиотеку. В прошлом году портал DevMountain сделал подборку из семи не слишком популярных книг для начинающих программистов. Учитывалась не только оценка портала, но и отзывы на Amazon, а также рекомендации популярных блогов. Автор GeekBrains Илья Бубнов внимательно изучил этот список, а также дополнил подборку парой свежайших экземпляров.
Читать дальше →
Всего голосов 30: ↑26 и ↓4+22
Комментарии3

Уязвимости вашего приложения

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

Актуальны ли ещё угрозы XSS? Прошло около 20 лет с тех пор, как Cross Site Scripting (XSS) появился как вид атаки. С тех пор мы получили богатый опыт и знания, защита наших сайтов стала намного сложнее, а многочисленные фреймворки были призваны оберегать нас от ошибок. Но последние данные показывают совсем другую картину: в первых кварталах 2017 года количество сообщений об XSS-атаках и количество найденных уязвимостей выросло в несколько раз.


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


Прототипом статьи является доклад на конференции HolyJS 2017 Moscow. Алексей — фронтенд-тимлид/архитектор в компании EPAM Systems и один из лидеров сообщества FrontSpot в Минске. Основные области профессиональных интересов: архитектура и инфраструктура приложений, управление разработкой.


В этом тексте огромное количество картинок со слайдов. Осторожно, трафик!

Читать дальше →
Всего голосов 48: ↑47 и ↓1+46
Комментарии29

Как мы выбирали между Elastic и Tarantool, а сделали свою (самую быструю) in-memory БД. С Join и полнотекстовым поиском

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

Всем привет.


С середины 2016 года мы проектируем и разрабатываем новое поколение платформы. Принципиальное отличие от первого поколения — поддержка API "тонкого" клиента. Если старая платформа предполагает, что на клиента при запуске загружается метаинформация о всем контенте, который доступен для абонента, то новая платформа должна отдавать срезы данных отфильтрованные и отсортированы для отображения на каждом экране/странице.


Высокоуровневая архитектура на уровне хранения данных внутри системы — постоянное хранение всех данных в централизованном реляционном SQL хранилище. Выбор пал на Postgres, тут никаких откровений. В качестве основного языка для разработки — выбрал golang.


У системы порядка 10м пользователей. Мы посчитали, что с учетом профиля теле-смотрения, 10М пользователей может дать сотни тысяч RPS на всю систему.



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


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

Читать дальше →
Всего голосов 79: ↑74 и ↓5+69
Комментарии117

Информация

В рейтинге
6 301-й
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность