Search
Write a publication
Pull to refresh
0
Roman Akopov @adontzread⁠-⁠only

User

Send message

Анализ корзины покупателя средствами MS Excel и MS SQL Server

Reading time3 min
Views18K
image

Если вы работаете в сфере торговли, то наверняка задача анализа корзины покупателя (Shopping Basket Analysis) будет вам интересна. Говоря простыми словами, данная задача сводится к тому, чтобы определить какие товары чаще всего покупаются вместе с другими товарами. Обладая этой информацией можно без труда увеличить объемы продаж, сделав выкладку товара в соответствии с результатами анализа, или реализовать систему рекомендаций покупателю при продаже товара.
Читать дальше →

Файловая система Linux полностью на tmpfs — скорость без компромиссов

Reading time4 min
Views124K

Предыстория


Так сложилось, что уже пять лет мой раздел ntfs с операционной системой Windows располагается на рамдиске. Решено это не аппаратным, а чисто программным способом, доступным на любом ПК с достаточным количеством оперативной памяти: рамдиск создается средствами загрузчика grub4dos, а Windows распознаёт его при помощи драйвера firadisk.

Однако до недавнего времени мне не был известен способ, как реализовать подобное для Linux. Нет, безусловно, существует огромное количество линуксовых LiveCD, загружающихся в память при помощи опций ядра toram, copy2ram и т. д., однако это не совсем то. Во-первых, это сжатые файловые системы, обычно squashfs, поэтому любое чтение с них сопровождается накладными расходами на распаковку, что вредит производительности. Во-вторых, это достаточно сложная каскадная система монтирования (так как squashfs — рид-онли система, а для функционирования ОС нужна запись), а мне хотелось по возможности простого способа, которым можно «вот так взять и превратить» любой установленный на жесткий диск Linux в загружаемый целиком в RAM.

Ниже я опишу такой способ, который был с успехом опробован. Для опытов был взят самый заслуженный дистрибутив Linux — Debian.
Читать дальше →

Разбираемся с загрузкой ArchLinux по сети

Reading time11 min
Views41K
В предыдущей статье мы подготовили базовую систему. Закончим настройку в следующей статье.

Здесь мы создадим новую систему Arch Linux, способную загружаться по сети и автоматически запускать браузер Firefox, а между делом разберёмся с необходимой функциональностью загрузочного сервера. Потом настроим сам сервер и попробуем с него загрузиться. Всё произойдёт в точности, как на картинке, которую нашёл гугл по запросу «PXE»:


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

Собираем Wi-Fi робота

Reading time4 min
Views101K


Давно мечтал сделать Wi-Fi робота, которым можно было бы управлять удаленно. И вот наконец настал тот день когда я смог управлять роботом через интернет, видеть и слышать все что происходит вокруг него.
Заинтересовавшихся приглашаю под кат
Читать дальше →

Форматирование Python-кода

Reading time4 min
Views71K

Введение


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

О читаемости и пойдет речь, а точнее как ее увеличить.
Читать дальше →

Из Oracle да в Postgres

Reading time10 min
Views72K
Так уж случилось, что с Oracle организация наша работает давно и плотно. Сам я познакомился с Oracle Database ещё во времена 6-ой версии и, с тех пор, какого либо дискомфорта не испытывал. Всё испортили рыночные отношения. С недавних пор, мы начали замечать, что Заказчик гораздо благосклоннее смотрит на наши проекты если в них используются бесплатные СУБД. О портации одного из таких проектов и будет мой рассказ... 
Читать дальше →

300 потрясающих бесплатных сервисов

Reading time11 min
Views1.6M


Автор оригинальной статьи Ali Mese добавил ещё 100 новых бесплатных сервисов. Все 400 потрясающих сервисов доступны здесь. И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные Веб-Сайты + Логотипы + Хостинг + Выставление Счета

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly.com Domain: Конструктор веб-сайтов.
  • Logaster: Онлайн генератор логотипов и элементов фирменного стиля (new).
  • Withoomph: Мгновенное создание логотипов (англ.).
  • Hipster Logo Generator: Генератор хипстерских логотипов.
  • Squarespace Free Logo: Можно скачать бесплатную версию в маленьком разрешении.
  • Invoice to me: Бесплатный генератор счета.
  • Free Invoice Generator: Альтернативный бесплатный генератор счета.
  • Slimvoice: Невероятно простой счет.

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

Робот на RaspberryPi, Arduino и RaspiCam + OpenCV. Часть 1 Обзорная

Reading time5 min
Views127K
Очень часто на хабре появляются статьи о том как использовать Raspberry Pi как медиацентр, передвижную видеокамеру, удаленную web камеру и… собственно все. Очень странно, что в такой большой IT тусовке — довольно мало информации о том — как его программировать и использовать одноплатный компьютер там, где он действительно довольно полезен — во всяких встраиваемых системах, где есть ограничения по размеру и стоимости, но также есть потребность в производительности. В нескольких статьях постараюсь описать на примере создания мобильного колесного робота с компьютерным зрением — как можно использовать малинку для создания роботов(штук с интеллектом на борту, а не управляемых с андроида машинок с веб камерой).
image
Читать дальше →

Вопросы про индексы, которые вам не надо будет задавать

Reading time11 min
Views47K


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

Для этого, я предлагаю «поднять капот» у SQL Server и окунуться в сладостный мир шестнадцатеричных дампов. Может статься, что внутри все гораздо проще, чем вам казалось.
Читать дальше →

Быстрое знакомство с Docker-контейнерами для Django-разработчика

Reading time5 min
Views65K


Разработка такого проекта как кешбек-сервис подразумевает использование различных сервисов, нетипичных для обычного ноутбука, даже если это ноутбук разработчика. Postgresql, Redis, Celery и так далее. Желание создать комфортную среду разработки и тестирования привело нас к необходимости использование какой-то системы виртуализации/изоляции. Как вариант — некоторое время использовался Vagrant, но это всё-таки ovrerhead и наши поиски оптимального способа привели, на данный момент, к Docker.

Docker — платформа для запуска приложений в изолированных контейнерах. Использование контейнеров в Linux позволяет программному обеспечение быть изолированным от базовой системы. В отличии от Virtualbox, исключаются системные издержки (overhead), необходимые для виртуализации оборудования. Docker может помочь в разработке и развертывании веб-приложений и сервисов. Давайте посмотрим, как это происходит.
Читать дальше →

14 вопросов об индексах в SQL Server, которые вы стеснялись задать

Reading time26 min
Views1.2M
Индексы — это первое, что необходимо хорошо понимать в работе SQL Server, но странным образом базовые вопросы не слишком часто задаются на форумах и получают не так уж много ответов.
Роб Шелдон отвечает на эти, вызывающие смущение в профессиональных кругах, вопросы об индексах в SQL Server: одни из них мы просто стесняемся задать, а прежде чем задать другие сначала подумаем дважды.


От переводчика
Данный пост является компиляцией двух статей Роба Шелдона:

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

Перейти к чтению

Как получить много уличного WiFi? Опыт построения Оutdoor-сетей с высокой плотностью абонентов

Reading time3 min
Views36K
Улица, парк, деревья, большое количество абонентов – самые худшие условия WiFi покрытия. Если добавить лето, т.е. листву на деревьях, ослабляющую сигнал и подорванную на гаджетах молодежь, то получим краш-тест для беспроводного оборудования. Именно такие условия были на Селигере, где в свое время была развернута WiFi-сеть для участников ежегодного слета.



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

Black Swift: зачем мы его сделали

Reading time7 min
Views126K
Как уважаемые хабровчане знают, вот уже почти год мы разрабатываем маленький компьютер (примерно с SD-карточку), работающий под OpenWRT, со встроенным Wi-Fi, USB, Ethernet, азартными играми и доступными женщинами. Дмитрий dzhe уже несколько раз писал про него — и, в общем, с каждым разом собирал в комментариях один и тот же вопрос: а зачем вы вообще его делаете? Ну ведь есть же Raspberry Pi, стоит он столько же, есть VoCore, Carambola, Edison, в конце концов, — зачем нужен ещё один «нанокомпьютер»?

Пожалуй, надо наконец на этот вопрос ответить — заодно отметив этим ответом появление у нас своего корпоративного блога (спасибо, Хабр!), а также запуск отдельного веб-сайта, посвященного только этому проекту.



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

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

Поддельное BLE-устройство на nRF24l01

Reading time4 min
Views63K
Данная статья на 90% основывается на заметке «Bit-Banging» Bluetooth Low Energy. Все началось с того, что потребовалось запустить распространенные сейчас трансиверы на чипе Nordic nRF24l01. В процессе поиска примеров работы с ними я и наткнулся на вышеупомянутую статью. Являясь обладателем телефона с поддержкой Bluetooth 4.0 (который и включает в себя Bluetooth Low Energy), подумал: а почему бы не попытаться повторить эксперимент?
Читать дальше →

Алгоритм TILT или нестандартное использование ранга матрицы

Reading time3 min
Views28K
Сегодня мы рассмотрим алгоритм TILT (Transform Invariant Low-rank Texture) и множество его методов применения в области Computer Vision. Статья будет нести несколько обзорный характер, без плотного углубления в математические дебри.

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

FISCHERTECHNIK: хемотроника, ионисторы, электрохимические суперконденсаторы внутри детского конструктора для программистов

Reading time6 min
Views89K
В детстве я не расставался с конструкторами. У меня их было 2 типа: аналог LEGO (пластмассовый и с пупырышками) и металлический с болтиками. После поста на Хабре, я понял, насколько скудный был в те времена выбор. Пару недель назад мембер хакспейса Костя Костюк подсказал мне, что в Москве есть люди, которые занимаются продвижением и обучением FISCHERTECHNIK.


(на фото: Электромобиль с заправочной станцией и водородный топливный элемент, солнечная батарея)

В Германии вокруг этого конструктора сложилось свое сообщество, они гордятся своим изобретателем и ставят свои рекорды.
Видео

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

Под катом немного про автомобиль на водородном топливном элементе (из конструктора «Экологическая
энергетика»
+ «Топливный элемент»), про изобретателя конструктора и короткий обзор существующих в Москве наборов для конструирования (можно только позавидовать тем гикам, кому сейчас 8+ лет, ибо на новый год их ждут такие подарки).


(Осторожно! Под катом боль за бесцельно прожитые годы)
Читать дальше →

RTKLib – Сантиметровая точность GPS/ГЛОНАСС в пост-обработке

Reading time3 min
Views88K


Здравствуйте!

К сожалению, я не нашел на Хабре упоминаний о замечательной библиотеке для обработки сырых измерений – RTKLib. В связи с этим рискнул написать немного о том, как с её помощью можно получить сантиметры в относительной навигации.
Цель простая – обратить внимание общественности.

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

Byrobot: квадрокоптер для Чака Норриса и 6d-мышление

Reading time4 min
Views44K
Когда несколько лет назад в руки попался первый вертолетик, сразу возникла мысль: «Дайте второй, посмотрим кто кого!»


(Вес квадрокоптера Drone Fighter 25г, батарейки 8г)

Недавно корейцы порадовали — в Москве появились специально заточенные под файтинги квадрокоптеры (Drone Fighter), причем неубиваемые (несколько раз на полной скорости втыкал его в стену — ему все равно, совал палец в лопасти — винт слетает и легко ставится на место. Очень важный момент — снимает страх ошибки/поломки дрона, что существенно повышает фан и мотивацию учиться, эдакий вариант save/load в реальном мире. А так же допускает режим файтинга в стиле «таран»)

Что порадовало:
  • Драки. Наконец-то драки.
  • Нагрузка на мозг. Прям таки чувствуются, как образуются новые нейронные связи.
  • Девушкам нравится. Можно подлетать (отвлекать от проекта) и вызывать их улыбки
  • Стабилизация. В идеале, если не предпринимать действий, вертолет висит в той точке в которой оставил.
  • Два режима управления: с абсолютной системой координат (право-лево относительно пилота) и относительной (право-лево относительно курса квадрокоптера)
  • Сальто. (Плюс мегакрутое автоматическое управление тягой двигателей и автовыравнивание после маневров)
  • Видеокамера. HD-видеокамера (5г)
  • Много запасных батареек позволяет летать непрерывно
  • Неубиваемость. Не паришься совершенно про то, что кто-то куда-то врезался (у меня за час полетов около 100 "(по)падений" в стену/столб/цветок/кошку)
  • Удобная инструкция с подготовительными и мастерскими полетными заданиями


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

Под катом описание системы боя Drone Fighter, несколько фоток и много видео
Читать дальше →

Jump Start в PowerShell (часть II)

Reading time10 min
Views176K
Кто, если не ты? Когда, если не сейчас?



В предыдущей части мы научились запускать PowerShell, разобрались с политикой выполнения сценариев. Поняли, что такое командлеты, знаем, как передавать их по конвейеру и как получить их свойства. Узнали, что PowerShell имеет огромный Help.

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

Jump Start в PowerShell (часть I)

Reading time5 min
Views253K
Только автоматизация. Только PowerShell.



Предисловие


В качестве хобби и при наличии времени преподаю студентам в УКИТ (бывший Московский государственный колледж информационных технологий). На данный момент у меня мало времени, чтобы уделить его группе студентов, зато вполне достаточно, чтобы подготовить пост здесь, на Хабре.

Я работаю системным администратором в крупной не ИТ-компании с большой завязкой на ИТ ресурсы. По роду деятельности представляется решать большое количество однотипных задач по обслуживанию пользователей.

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

Внимание: PowerShell вызывает привыкание.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity