Как стать автором
Обновить

Собственная CRM-система с сопровождением клиентов и встроенной логистикой

1С-Битрикс *CRM-системы *ERP-системы *
Ожидает приглашения
Меня зовут Павел Ковтун, я совладелец сервиса по аренде сменных ковров в Санкт-Петербурге и Лен области VIRGINIA. Этим бизнесом я занимаюсь с 2011 года, а в этом материале хочу рассказать об it-инструментах, которые помогли компании выжить во время карантина.

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

Почему stl такой большой и такой пустой

C++ *IT-стандарты *
Ожидает приглашения
Всем привет! Я хочу поднять тему неполноты stl, порог входа в С++ и его сложность. Обо всем, да по порядку.

Неполнота stl


На дворе 2020 год. Только-только вышел новый стандарт. Добавили кучу полезностей (Подробный список можно посмотреть здесь, а также в других статьях на хабре). Чего только нет в современном stl для базовых ситуаций. Многие все ещё ждут networking, мелочи, но все равно не очень понятно в чем проблема. Если взглянуть на boost, там есть и networking и ещё много всего, но проблема, к которой я веду, присутствует и там.

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

Если кормушка для аквариума перестала реагировать на нажатия клавиш управления

DIY или Сделай сам
Ожидает приглашения
Описанная распространенная поломка касается кормушек для аквариума китайского производства (в т.ч. с Aliexpress) типа Automatic Fish Feeder ff-03, ff-02, ff-01 и им подобные.

Кормушка Automatic Fish Feeder ff-03.

Отчаиваться или выбрасывать кормушку не надо — скорее всего это не отсыревшая плата (которой отсыреть практически невозможно), а описанная ниже простая проблема, которую вполне можно устранить малыми усилиями, и связана она с ИТ в том числе.
Читать дальше →

Элегантное доказательство задачи Бюффона о бросании иглы

Математика *
Ожидает приглашения

Несколько лет тому назад я готовился к научно-популярной презентации, в которой рассказывал о числе Пи. Одна из тем была задача Бюффона о бросании иглы. Это любопытный эксперимент о том, как связано бросание иглы на лист бумаги и число Пи.


Тогда в подготовке мне сильно помогла эта статья. В отпускe я начал читать Владимира Игоревича Арнольда книжку «Математическое понимание природы» и наткнулся в ней на элегантное доказательство-рассуждение.


Далее, мой пересказ с иллюстрациями.


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

Java рисует фигуры в документах PDF

API *Java *
Ожидает приглашения
Когда я недавно редактировал документ PDF, мне нужно было добавить в документ некоторые графические объекты, такие как многоугольники, прямоугольники, эллипсы и т. Д. После поиска информации и тестирования я обнаружил, что Free Spire PDF для Java может помочь мне в приложениях Java. Завершите эту операцию.

Сегодня я поделюсь с вами кодом Java, который использовал для рисования фигур в документах PDF, а также для установки цвета кромки фигуры и цвета заливки.

Конфигурация среды


Установите бесплатный пакет Spire.Pdf.jar через хранилище Maven и настройте код файла pom.xml следующим образом:

<repositories>
        <repository>
            <id>com.e-iceblue</id>
            <name>e-iceblue</name>
            <url>http://repo.e-iceblue.com/nexus/content/groups/public/</url>
        </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.pdf.free</artifactId>
        <version>2.6.3</version>
    </dependency>
</dependencies>
Читать дальше →

Синтаксический сахар для SQL

SQL *
Ожидает приглашения
image

Зачем это нужно?


  1. Увеличение скорости backend-разработки.
  2. Создание запросов, простых для чтения и написания.
  3. Создание web-сервисов на чистом SuQL, без необходимости постобработки на каком-либо языке программирования. Вам больше не понадобятся какие-либо backend языки или фреймворки. Представьте что вы уже можете получить данные из базы в том виде, в котором требует клиентское API
  4. Возможность расширить синтаксис самостоятельно, как угодно, выходя за рамки даже SQL. Границ просто нет.

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

Аудио ЦАП на AK4393 + PCM2706

Электроника для начинающих
Ожидает приглашения
Мое увлечение электроникой началось с такого забавного явления, как «аудиофилия» в худшем понимании этого слова: с верой в волшебные конденсаторы с электролитом из соплей китайских девственниц, публичным отрицанием советских лавсановых К73 и твердым убеждением, что «керамика – убийца звука». Мне хотелось чего-то этакого в смысле аудио, но что для этого нужно я тогда толком не понимал. Мой старший брат притащил откуда-то журнал “AudioVideo” в котором на одной из последних страниц была схема усилителя с входным дифференциальным каскадом на БСИТ транзисторах средней мощности и коряво сделанным источником тока на одном транзисторе, на который этот каскад был нагружен. Не самый лучший вариант, но тогда я этого не знал. Статья называлась «Усилитель с «пентодным» звучанием», а лампы – это же, типа, круто да и брат сказал, что будет круто и надо делать… Короче, один канал усилка я все-таки собрал. Усилитель, несмотря ни на что, издавал кое-какие звуки, большое спасибо автору статьи, некому Жану Цихисели, но шумел как сволочь и второй канал я собирать не стал.
Читать дальше →

Критическая ошибка загрузчика GRUB2

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

Обозначенная уязвимость, названная как «BootHole» и отслеженная как CVE-2020-10713, находится в загрузчике GRUB2, который, если его использовать, потенциально может позволить злоумышленникам обойти функцию безопасной загрузки и получить высокопривилегированный постоянный и скрытый доступ к целевым системам.

Безопасная загрузка — это функция безопасности Unified Extensible Firmware Interface (UEFI), которая использует загрузчик для загрузки критически важных компонентов, периферийных устройств и операционной системы, обеспечивая при этом выполнение только криптографически подписанного кода во время процесса загрузки.

«Одна из явных целей разработки Secure Boot — не дать неавторизованному коду, даже работающему с правами администратора, получить дополнительные привилегии и постоянство перед ОС, отключив Secure Boot или иным образом изменив цепочку загрузки», — говорится в отчете.
Читать дальше →

Используем PyInstaller для создания exe-файла игры на Pygame

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

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

Из множества библиотек, собирающих проекты в exe, выбрал PyInstaller. Его оказалось достаточно, чтобы справиться с задачей. Опишу все пошагово (для Windows).
Читать дальше →

От поисковика на сайте до собственной поисковой системы

Data Mining *Поисковые технологии *Софт
Ожидает приглашения

В этой статье хочу обсудить с Вами такую проблему как поиск на сайте и предложить свой вариант ее решения. В сети огромное множество сайтов, которые оснащены отвратительным поиском, еще больше сайтов вообще без этой функции. Даже вошло в привычку не искать на сайте, а вбивать в поисковик «запрос site:domain.com» или просто «запрос domain». Почему такой важной вещи, как поиск, уделяется так мало внимания? Давайте разбираться вместе.


Давным давно, когда можно было увидеть Pege Rank, а вебмастера играли на ТИЦ в карты, я создал свой первый сайт на тему автомобилей. Работая на простой CMS, он висел на дешевом хостинге без возможности установить базу данных. Тогда впервые мне пришла идея претворить свой первый проект в крупный портал с удобным поиском. Как только я поделился этой идеей со своим другом, который в то время успешно занимался разработкой и продвижением сайтов в поисковых системах (ПС), сразу же получил неутешительный фидбэк. Мол, это возможно, и даже одному клиенту он попытался это сделать, однако это настолько сложно, что проще сделать еще несколько сайтов и добавить их в сапу, чем заморачиваться над одним проектом с туманными перспективами монетизации. Что-то подобное я уже слышал от сварщика дяди Васи, когда пришел к нему с просьбой сварить две алюминиевых детали. Он долго рассказывал о специальных электродах, которых у него нет в наличии, аргоне, и что в молодости он с напарником из алюминия смастерил небольшой летательный аппарат, но в моем случае проще отказаться от алюминия и сделать все из обычного железа.


С тех пор прошло много апдейтов ПС, и что же мы видим сейчас? Есть ли простое и быстрое решение, дабы сделать поиск на сайте? Так сказать, появилась ли у дяди Васи аргоновая сварка? Расцвели ли яблони на Марсе? Провел ли Илон Маск тест-драйв новой Tesla Mars? Запустили ли Джеймса Уэбба в космос или до сих пор его тёзка переворачивается в гробу?

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

Идеальное резюме IT-рекрутера

Карьера в IT-индустрии
Ожидает приглашения
Рекрутер — тот человек, через которого проходят сотни, а то и тысячи резюме. Соответственно, когда открывается вакансия рекрутера, Hiring managers ожидают увидеть в откликах структурированные, понятные и практически идеальные резюме. Ведь кто-кто, а специалист по найму должен уметь «продать себя»‎.

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

Резюме рекрутера должно быть максимально профессиональным. Так какое же оно — резюме IT-рекрутера? Каждое слово в нем имеет вес и находится на своем месте. Вот ключевые пункты, о которых я расскажу подробнее:

  • Опыт
  • Бизнес-ориентация и Cost Per Hire
  • История успеха
  • Социальные сети
  • Сопроводительное письмо
Читать дальше →

Имитация динамических обоев из macOS штатными средствами Linux-систем

Графические оболочки *Лайфхаки для гиков Настройка Linux *Оболочки *
Ожидает приглашения

Принцип их работы весьма прост. Основан он на способности оконных менеджеров (WM) многих популярных окружений рабочего стола (DE) отслеживать изменения выбранного файла обоев.


В качестве обоев устанавливается только один файл картинки. Используемый файл обоев является символической ссылкой на другую картинку. Ступенчатая "динамичность" обоев обеспечивается заменой картинки-ссылки на новую в нужные моменты времени. В эти же моменты WM замечает изменение файла обоев и обновляет картинку.


Таким образом, WM постоянно работает с одним и тем же файлом-картинкой, а вся логика работы обеспечивается обычным сценарием командной строки и простыми файловыми операциями.

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

Как сделать видео на Youtube вирусным

Интернет-маркетинг *Работа с видео *Социальные сети и сообщества
Ожидает приглашения
Привет! Меня зовут Максим Сулимов. Я являюсь создателем Ютуб-каналов бренда Youfact. За более чем 5 лет я собрал более 2,5 млн человек со всего мира на всех своих каналах. Один из них насчитывает более миллиона подписчиков, за что Youtube прислал мне награду в виде Золотой кнопки. Еще пять каналов набрали более 100 тысяч подписчиков, за что Youtube прислал награды в виде 5 Серебряных кнопок. В этой статье я расскажу вам про секреты оптимизации видео, о которых говорят только на платных курсах по Youtube. Поверьте, мне есть чем поделиться!

1. Превью и заголовок


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

— детям не важно, какое у вас название и что будет в ролике. Они кликнут на яркую и заманчивую превью. Чем ярче, тем лучше! Очень хорошо работают обложки, на которых изображены сами дети-авторы. Избегайте темный фон, черные предметы и силуэты. Ребенок хочет попасть в сказку или увидеть что-то мультяшное. Поэтому ярко-розовый, фуксия, голубой, желтый, белый — самые удачные цвета предметов и фонов на обложке. В Фотошопе или Lightroom можно изменить цвет предмета, если он у вас изначально был другого оттенка. Т.е. если у вас на превью есть гигантский чупа-чупс, но он непривлекательного цвета, измените его на фиолетовый, ярко-голубой или салатовый в Фотошопе. Это зацепит внимание! Потому что где в реальной жизни можно такое увидеть? Нигде! Поэтому это и заинтересует маленького зрителя. Поехали дальше.
Читать дальше →

Маркетинг с помощью мобильного кошелька: новый способ получения выгоды

Интернет-маркетинг *Контент-маркетинг *
Ожидает приглашения

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


image


Мобильные кошельки с каждым днем набирают все большую популярность среди людей. На самом деле, опрос, проведенный компанией Airship, показал, что более половины респондентов (54%) использовали мобильные кошельки в том или ином качестве. Более того, 55% респондентов с большей вероятностью использовали мобильные кошельки для осуществления платежей в регистрах, чем стандартные методы, причем их число возросло до 73% при автоматическом применении купона или скидки.

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

Ужасный Блокчейн. Взгляд UX дизайнера

Usability *Веб-дизайн *Криптовалюты
Ожидает приглашения
image

Вы тоже заметили, что блокчейн продукты, не связанные с торгами криптой, не нашли широкого применения? Обидно, правда? Но, я думаю, эта проблема решаема!

Финансовые спекуляции — основной рынок для блокчейна. А сообщество крипто-энтузиастов мало. Однако, потенциал технологии гораздо больше, чем используется сейчас!

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

Нам пророчили революцию в игровой индустрии. Форбс оценивал рынок игр для блокчейна в 200 миллиардов. Но, революция, о которой говорили “крипто-большевики” не свершилась. Крипто Котики — это хорошо, но очень мало.

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

В чем загвоздка? Я думаю, профессор Преображенский (из Булгаковского “Собачьего Сердца”) дает ответ: “разруха в головах”.
Читать дальше →

Проблема Eloquent фреймворка Laravel

Laravel *PHP *SQL *
Ожидает приглашения

Работая над очередным проектом на фреймворке Laravel мы обнаружили его уязвимое место. Это модель Eloquent, о которой написано немало, и примеров её использования тоже достаточно. Вот что мы разглядели. Возьмём простую модель (не Eloquent) на рисунке 1.


image


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

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

Пишем простую систему регистрации и входа в аккаунт

C++ *Программирование *Хранение данных *
Ожидает приглашения

Всем привет! Сегодня мы напишем простейшую систему входа и регистрации аккаунта. Данные мы будем хранить в файле. Здесь не будет базы данных, и подобных систем. Заранее говорю, не советую использовать этот код для больших проектов, т.к любой пользователь может открыть файл, и вписывать случайные данные, тем самым попасть в чужой аккаунт. И так, приступим.
PS: Целый код будет в конце.


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

Адаптивный canvas для видео игр на JavaScript

JavaScript *
Ожидает приглашения

Тег canvas


Я думаю, что все из вас давно осознали, что писать видео игры на DOM это не очень хороший вариант, поскольку взаимодействие с DOM очень сильно нагружает компьютер. Тем более, что html 5 предлагает нам замечательную альтернативу — тег canvas.

Но, наверное, когда вы начинали на нём что-то писать, вы задавались вопросом: как сделать его адаптивным? Ведь canvas при изменении ширины и высоты не растягивает свою матрицу, а значит, ваш рисунок будет занимать только его часть. Я тоже задался этим вопросом и нашёл два варианта как это сделать.
Читать дальше →

Реализация подрузки информации о клиенте через API

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

Вариант нашелся сам…

Так как у нас звёздочка в мир не смотрит, то очевидно что все выполняется на сервере с астериском.

Итак, нашел библиотеку PHP Tail, спасибо автору Тошио Такигучи.

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

Java создает круговую диаграмму / кольцевую диаграмму в Excel

API *Java *
Ожидает приглашения
1. Фон спроса

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