Java-разработчик
Просвещение — долг каждого из нас

Мы живем в удивительное время всеобщей доступности информации: когда под рукой каждого есть смартфон с доступом во всемирную паутину, с этим утверждением сложно поспорить. Даже те, кто не пользуются интернетом, потребляют информацию по другим, более архаичным каналам ее распространения.
С другой стороны критическая оценка потребляемой информации — задача далеко не тривиальная. Как предыдущее поколение пало жертвой рекламы «МММ» и прочих сомнительных проектов авантюристов, так и нынешнее общество становится на колени под прессом недостоверной информации, которая медленно, но уверенно ввергает нас и наших близких в мир, состоящий на половину из фактов, а на половину — из выдумок, мифов и предрассудков, которые плодятся недалекими евангелистами, как они сами считают, своей «области знания».
Опасность ГМО, ВИЧ-диссидентство, пропаганда гомеопатии на государственном уровне, теории заговоров, пропаганда сыроедения, феминизм третьей волны, сообщества плоской Земли — этот список можно растянуть на несколько экранов текста. Жертвами всего этого становятся две категории людей: реакционная инертная молодежь, которая в силу своей неопытности и податливости легко принимает любые, самые радикальные идеи, а также те, кто ощущают недостаток образовательной базы в области естественных и фундаментальных наук: физике, биологии, химии и смежных с ними дисциплинах.
Онлайн курс по ардуино на базе простого стартового набора

Пузырьковая сортировка и бинарный поиск на PHP (обучение, эксперименты)
Введение
Хотел бы поделиться с сообществом своей реализацией пузырьковой сортировки и бинарного поиска. Проект сделал исключительно в учебных целях.
Когда меня раньше спрашивали на собеседовании об алгоритмах сортировки и реализации поиска по массивам данных — я терялся и считал, что для реализации подобных вещей надо быть как минимум талантливым отличником-олимпиадником, что это сложно-долго-малоизучено и т.п. :) Так же я находил курсы, где за несколько недель (месяцев) предлагают научить всех желающих всему-всему по алгоритмам, сортировкам, криптографии. Но ведь сейчас есть Интернет, а в нем уже все выложено и известно? Остается только поднять и изучить нужные знания и практически реализовать и закрепить приобретенные знания.
Итак, приступим к реализации самих алгоритмов. Забегая вперед скажу, что статья состоит из трех логических частей: реализация алгоритмов, тестирование написанного кода (PHPUnit) и проведение нагрузочных тестов (базовые функции языка VS написанный код).
Т.е. как бы имитируется разработка некой системы (выполнение практической задачи) и прохождение по всем обязательным этапам (исходя из существующих на сейчас «стандартов» разработки).

Как можно упростить себе жизнь с помощью Telegram-бота
О чём эта статья?
Эта статья — краткий рассказ о том, как с помощью подручных средств (Firefox) и Python можно осуществить успешную интеграцию Telegram-бота и внешнего сервиса.
Материал будет интересен тем, кто наслышан о Telegram'ных ботах, но не знает, как к ним подступиться и какие задачи с их помощью можно решать. Предполагается знание Python.
Картинка для привлечения внимания:

(ссылка на оригинал)
TL;DR
Из статьи вы узнаете:
1. Как с помощью браузера узнать, какой запрос отправляется на сервер при клике по кнопке?
2. Как легко отправить запрос на сервер с помощью Python?
urllib2
является библиотека requests
. Подробнее на Хабре: "Библиотека для упрощения HTTP-запросов".3. Как написать бота на Python?
python-telegram-bot
. Пока на Хабре эта библиотека не упоминалась.Как продавать: как должен работать продавец

Привет! Не думал, что когда-нибудь буду публиковать тут настолько далёкое от ИТ, но давайте попробуем, благо новые тематики позволяют. Сейчас расскажу, как именно мы учим своих продавцов. Если вы физически что-то продаёте — это гайд, как не сильно накосячить. Механика обтачивалась примерно три года.
Итак, первое и главное в рознице — продавец должен быть уверен в своём товаре. Если товар — отстой, который надо впаривать, то продавец получит такое дикое искривление психики через месяц, что к живым людям его выпускать нельзя будет вообще. Товар должен быть такой, чтобы про него можно было спокойно искренне рассказывать — и чтобы люди после этого брали. Это основа маркетинга. Уверенность в товаре — базис для всех остальных принципов.
Теперь посмотрим на сам процесс продажи. Он делится на пять шагов — приветствие, засада, разработка, презентация, продажа. Самая частая ошибка приветствия в том, что продавец, скорее всего, не доктор. Поэтому «Вам чем-нибудь помочь?» — это где угодно, но только не в стенах нашего магазина. Правильно улыбнуться и поздороваться с человеком, когда он заходит на точку. Задать настроение и обозначить, что вы его увидели. И всё. Не лезть к нему и не подходить даже. Человек зашёл — не надо набрасываться.
Хотя нет, прежде чем переходить к пунктам, обсудим подготовку.
Главный наш принцип в отношении покупателя — относиться к нему как к другу. Это не красивые слова, а одна предельно конкретная вещь — не делай ничего такого, что не сделал бы с другом.
Мобильное приложения для управления умным домом на базе Z-Wave с помощью OpenRemote

Не так давно был представлен Z-Wave модуль для Raspberry Pi — RaZBerry, который превращает мини-компьютер в полноценный контроллер умного дома. Управление Z-Wave сетью осуществляется с помощью web-интерфейса, использующего HTTP/JavaScript API. Используя JavaScript можно создать набор функций для автоматизации (включение/выключение света, проверка температуры, опрос датчика движения и др.), которые затем можно выполнить, послав HTTP запрос.
Продукт компании OpenRemote с одноименным названием позволяет создавать мобильные приложения для умного дома без программирования, при этом в одном приложении могут использоваться разные технологии: Z-Wave, KNX, X10, ZigBee, управление компьютером по ssh и др.
OpenRemote это сервер выполняющий любые команды и конструктор интерфейсов в котором вы создаете кнопки, переключатели, надписи и др. и этим элементам уже назначаете команды, в нашем случае это HTTP запросы на выполнение JavaScript функций на сервере Z-Wave.
Далее я по пунктам расскажу как создать пульт управления умным домом для iPhone и Android! А вот так будет выглядеть наше приложения, когда мы закончим:

Под катом много картинок.
Автоматизация ресторана: 24 интересных инструмента

Обновлено: 29 июня 2021 года
На Хабре тема автоматизации ресторанного бизнеса освещается не очень активно. Между тем, это достаточно интересный рынок с большим количеством игроков, которые разрабатывают и продают самые разные продукты.
В сегодняшнем материале вашему вниманию 24 инструмента для автоматизации ресторанного бизнеса. При подготовке обзора я также пытался оценить качество работы служб поддержки компаний и скорость отклика на запросы потенциальных клиентов, информация об этом также представлена в статье.
Как я парсил всю базу данных игр Metacritic-а
Использованные библиотеки: lxml, asyncio, aiohttp (lxml — библиотека разбора HTML страниц с помощью Python, asyncio и aiohttp будем использовать для асинхронности и быстрого извлечения данных). Также будем активно использовать XPath. Кто не знает, что это такое, отличный туториал.
Книга «Основы Data Science и Big Data. Python и наука о данных»

Каждая из глав этой книги посвящена одному из самых интересных аспектов анализа и обработки данных. Вы начнете с теоретических основ, затем перейдете к алгоритмам машинного обучения, работе с огромными массивами данных, NoSQL, потоковым данным, глубокому анализу текстов и визуализации информации. В многочисленных практических примерах использованы сценарии Python.
Обработка и анализ данных — одна из самых горячих областей IT, где постоянно требуются разработчики, которым по плечу проекты любого уровня, от социальных сетей до обучаемых систем. Надеемся, книга станет отправной точкой для вашего путешествия в увлекательный мир Data Science.
SSH-туннель домой без необходимости оставлять включённым домашний ПК
DisclaimerБла-бла-бла, а топик-то о чём?
Этот пост появился здесь по нескольким причинам:
1) Меня попросил сам Boomburum
2) Есть предположение, что на хабре всё-таки есть люди, имеющие прямое отношение к IT, но при этом имеющие весьма отдалённое представление о пользе SSH и её извлечении из обычного домашнего роутера, и которым, надеюсь, будет весьма интересно и полезно об этом узнать.
Хабралюдям, познавшим Дао IOS, tun, VPN, *wrt, WOL… etc, предлагается на выбор:
А) Закрыть топик, заняться делом и не выводить себя из нирваны чтением этой любительской фигни.
Б) Потратить время на конструктивную критику и полезные дополнения в комментариях.
Специально для GrammarNazi:
Пишите пожалуйста об ошибках в личку — обещаю исправиться.
Итак, я обещал рассказать «как поднять ssh-туннель домой без необходимости оставлять включённым домашний ПК» и, как правильно догадался peter23 речь пойдёт про ssh-сервер на роутере.
Очень шустрый блог на WordPress при помощи связки nginx + PHP-FPM + MariaDB + Varnish
CPU: 1 x 2GHz
HDD: 10Gb
RAM: 512Mb
OS: Debian 8 x64
Схема работы системы выглядит следующим образом:

Опыт использования Samsung Pay

Привет Хабр, давно ничего не публиковал, поэтому начну с небольшой заметки моего бытового опыта пользования Samsung Pay. В конце концов кроме работы экспертом в ChronoPay я еще и среднестатистический покупатель. Я не являюсь поклонником техники Apple, но в их системе принцип тот же что и у Samsung — и на мой взгляд обе системы имеют один решительный недостаток который пока никак не устранить.
И так, технологии бесконтактной оплаты на основе технологии NFC появились уже давно. Был ряд приложений ещё под старые Samsung’и, позволяющие эмитировать виртуальные карты и использовать их.
Стоимость эквайринга

Всем привет! Обычно когда кто-то начинает сравнивать различных операторов интернет-платежей, разговор начинают со ставки, которую оператор берет за проведение транзакции. Сегодня мы поговорим об этом параметре и постараемся его детально разобрать. Стоимость транзакции (discount rate) для Торгово-Сервисного (ТСП) предприятия обычно задаётся в процентах от суммы платежа, а иногда к процентам добавляется ещё и фиксированная сумма. При этом комиссия взымается за успешную операцию авторизации (authorization), а так же, в некоторых случаях, может взыматься и за отклонённую (declined). Рефанды (refund) и чарджбеки (chargeback) могут облагаться дополнительной комиссией.
В России в основном принято брать % от суммы транзакции за успешную авторизацию. За рубежом к процентам часто добавляется фикса (fixed), при этом фикса может быть разбита по отдельным операциям (authorization, clearing и т.д.). С высокорисковых мерчантов очень часто берут плату как за отклонённую операцию, так и дополнительную стоимость за рефанды и чарджбеки.
Итак, ставка проведения платежа (authorization) состоит из:
- interchange fee (комиссия, возвращаемая в банк выпустивший карту)
- комиссии взымаемой Международными Платёжными Системами
- наценкой Банка-эквайера и агентов (если они есть).
Разберем эти понятия более подробно!
Yum, шпаргалка

Шпаргалка по работе с пакетным менеджером Yum (Yellowdog Updater, Modified), который используется в популярных Linux дистрибутивах: RedHat, CentOS, Scientific Linux (и других). В целях экономии места вывод команд не представлен.
Оглавление
Команды
Опции Yum
Пакет Yum-Utils
Конфигурационные файлы
Плагины
Работа через прокси
Обзор Knime Analytics Platform — open source системы для анализа данных
О KNIME
Вашему вниманию представляется обзор Knime Analytics Platform – open source фреймворка для анализа данных. Данный фреймворк позволяет реализовывать полный цикл анализа данных включающий чтение данных из различных источников, преобразование и фильтрацию, собственно анализ, визуализацию и экспорт.
Скачать KNIME (eclipse-based десктоп приложение) можно отсюда: www.knime.org
Кому может быть интересна эта платформа:
- Тем, кто хочет анализировать данные
- Тем, кто хочет анализировать данные и не владеет навыками программирования
- Тем, кто хочет покопаться в неплохой библиотеке реализованных алгоритмов и, возможно, узнать что-то новое
Методы защиты от CSRF-атаки
Что такое CSRF атака?
Ознакомиться с самой идеей атаки CSRF можно на классических ресурсах:
Выдержка из ответа на SO:
Причина CSRF кроется в том, что браузеры не понимают, как различить, было ли действие явно совершено пользователем (как, скажем, нажатие кнопки на форме или переход по ссылке) или пользователь неумышленно выполнил это действие (например, при посещении bad.com
, ресурсом был отправлен запрос на good.com/some_action
, в то время как пользователь уже был залогинен на good.com
).
Как от нее защититься?
Эффективным и общепринятым на сегодня способом защиты от CSRF-Атаки является токен. Под токеном имеется в виду случайный набор байт, который сервер передает клиенту, а клиент возвращает серверу.
Защита сводится к проверке токена, который сгенерировал сервер, и токена, который прислал пользователь.
7+ превосходных инструментов для оптимизации изображений
К сожалению на момент перевода один из сервисов перестал работать. Но хабровчане предложили еще много хороших решений!
Одним из самых простых способов уменьшить время отклика страниц на вашем сайте является оптимизация изображений.
Есть несколько бесплатных инструментов помогающих уменьшить и оптимизировать изображения. В этой статье вы найдете удобные инструменты для создания картинок для веба настолько маленьких по весу, насколько это возможно.
Обзор инструментов — под катом.
AdvoCam-FD8 RED-II GPS + ГЛОНАСС – самый продуманный регистратор среднего ценового диапазона?
В том материале среди актуальных моделей видеорегистраторов бренда был упомянут AdvoCam-FD8 Red II (GPS+ГЛОНАСС), который стал преемником популярного в своё время флагмана AdvoCam-FD8 Red 2013 года выпуска. В обновленной версии односистемный GPS заменили на ГЛОНАСС/GPS, установили топовую матрицу американской компании OmniVision с поддержкой режима HDR (высветляем тёмные участки, выравниваем яркость кадра). Получили добротный аппарат за 9 500 рублей.

5 действительно бесплатных нелинейных видеоредакторов для Windows
Видеоредакторы почти не интересовали меня до прошлого месяца, пока с друзьями мы не задумали снять что-нибудь оригинальное к Новому году. Креативность наша ограничилась тем, чтобы, говоря терминами прежде мне неизвестными, применить эффект “Разделение экрана” (Split Screen). То есть реализовать нечто такое:

Information
- Rating
- 6,156-th
- Location
- Пенза, Пензенская обл., Россия
- Registered
- Activity