Как стать автором
Обновить
66
0
Andrey @zizop

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

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

Дедупликация текстов: поиск неполных дубликатов

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров2.7K
image

Нам надо искать неполные дубликаты.

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

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

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

Я занимаюсь задачами обработки естественного языка в Газпромбанке. Вместе с DVAMM в этом посте расскажем, какие методы дедупликации мы используем и с какими проблемами столкнулись на практике при детекции неполных дубликатов.
Читать дальше →
Всего голосов 17: ↑17 и ↓0+17
Комментарии2

Красота не только в коде — как оформлять репозиторий

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров27K

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

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

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

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

Узнать, как оформлять репозитории
Всего голосов 21: ↑14 и ↓7+13
Комментарии42

Свой Firebase за 7$ или практический опыт внедрения Appwrite как сервера для мобильного приложения

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров14K

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

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

Полное руководство по CSS Flex + опыт использования

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

Как и CSS Grid, Flex Box довольно сложен, потому что состоит из двух составляющих: контейнера и элементов внутри него.

Когда я начал изучать Flex, я хотел увидеть все, на что он способен. Но мне не удалось найти подробное руководство с примерами всех возможностей. Поэтому я решил самостоятельно создать диаграммы свойств Flex с «высоты птичьего полета».

Читать!
Всего голосов 14: ↑11 и ↓3+13
Комментарии13

Свой облачный хостинг за 5 минут. Часть 2: Service Discovery

Время на прочтение7 мин
Количество просмотров43K
Cloud hosting

Привет Хабр! В предыдущей статье я рассказал как построить свой облачный хостинг за 5 минут, используя Ansible, Docker и Docker Swarm. В этой части я расскажу о том, как сервисы, запущенные в облаке, находят друг друга, как происходит балансировка нагрузки между ними и обеспечивается их отказоустойчивость.

Это вводная статья, здесь мы сосредоточимся на обзоре инструментов, которые будут решать проблему «обнаружения сервисов» в нашем облаке. В следующей части мы приступим к практике, поэтому я решил дать вам время поближе ознакомиться с ними.
Читать дальше →
Всего голосов 26: ↑23 и ↓3+20
Комментарии1

Новый тип ветрогенератора производит электричество без лопастей

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


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

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

Обзор iconBIT Toucan W: Сможет ли это устройство на базе Android OS стать заменой домашнему компьютеру?

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


Что можно делать за домашним компьютером, если не планируется работать? Интернет, фильмы, музыка, игры и иногда электронные книги – вот список наиболее востребованных функций от домашнего компьютера. Что вы представляете себе, когда слышите выражение «домашний компьютер»? Системный блок, к которому подключен монитор, клавиатура и мышка, или быть может ноутбук с большой диагональю экрана? А я теперь представляю небольшое устройство iconBIT Toucan W, к которому подключен монитор или телевизор, и беспроводную клавиатуру со встроенным гиро-датчиком. Причины, по которым я заинтересовался данным устройством, зачем оно вообще нужно и все остальные подробности под катом.
Читать дальше →
Всего голосов 56: ↑53 и ↓3+50
Комментарии53

Операция «посредник» или доставка товаров из США — проще, надежнее, дешевле

Время на прочтение5 мин
Количество просмотров96K
Все мы знаем, что большинство гаджетов дешевле купить в США, чем у нас на родине, и особенно это относится к различным новинкам, цены на которые у нас просто взлетают к небесам! Так же всем известно, что самые «вкусные» предложения на eBay и в интернет магазинах США обычно имеют доставку US only и соответственно не доступны для нас. В этой статье я попытаюсь рассказать про еще один способ исправить это недоразумение. Конечно все более-менее опытные интернет-покупатели знают о посредниках, которые предоставляют услугу mail forwarding — тоесть пересылку посылок. Происходит это так — вы заказываете доставку товара на адрес в США, который вам выдал посредник, он получает посылку и пересылает ее вам, беря за это небольшую комиссию. Известные посредники это Shipito, Ebaytoday, Бандеролька и т.д. их достаточно много и все они предлагают набор услуг — пересылка, объединение нескольких посылок в одну, наоборот — разделение крупной посылки на несколько мелких и тд. Берут обычно фиксированную плату за каждую посылку + оплату за дополнительные услуги. Стоимость самой пересылки обычно рассчитывается по тарифам USPS и этой же службой отправляют посылку вам. Я же хочу рассказать про еще одну компанию — Meest.us, которая осуществляет пересылку посылок (среди различных других услуг) но в принципе ее работы есть некоторые интересные особенности.
Читать дальше →
Всего голосов 52: ↑44 и ↓8+36
Комментарии59

Почему на самом деле закрыли MegaUpload

Время на прочтение1 мин
Количество просмотров2.8K
В декабре 2011 года, за несколько недель до закрытия, Digital Music News сообщили о новинке, которую MegaUpload собирались запустить. Новинка, которая должна была потрясти музыкальную индустрию до основания.
Читать дальше →
Всего голосов 173: ↑143 и ↓30+113
Комментарии78

Страдания по CMF или Zend + Doctrine. Часть 1

Время на прочтение6 мин
Количество просмотров619
Попытки создания собственной системы начались довольно давно (думаю это всем знакомо). За последние пару лет была откатана схема на своей системе, но сама система благополучно почила в бозе. Если там были попытки как-то использовать Zend как компоненты, то в конце концов было принято решение не изобретать велосипед, а просто взять Zend за основу.
Zend — 1.8/Doctrine — 1.1 на момент написания.

Что было решено сохранить в системе из предыдущей версии
1) Мультисайтовость
2) Мультиязычность. Интернационализация производится за счет Zend и Doctrine.
3) Модульность. При этом создать модуль можно в самой системе, задав yaml схему и получив стандартные методы для работы с помощью контроллеров и автогенерированых форм (Zend_Form).
4) В создаваемых модулях по умолчанию присутствует поддержка i18n, versionable, timestampable.
Каждый сайт имеет режимы отображения — backend, frontend,etc. Модель — одна для всех. Основой для моделей выбрана Doctrine. Показалась очень удобной.
Читать дальше →
Всего голосов 8: ↑7 и ↓1+6
Комментарии10

Была такая профессия: «Программист»

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

Введение


Не многие задумываются о том, кто такие программисты. Кажется в современном информационном обществе без них никуда. Но кто же они? Существует несчетное количество стереотипов, много слов написано о том, что это такие же люди, как и все остальные. Предлагаю посмотреть на этот вопрос в свете быстроразвивающейся отрасли информационных технологий.
Читать дальше →
Всего голосов 45: ↑10 и ↓35-25
Комментарии20

ZendX_JQuery + jqGrid

Время на прочтение3 мин
Количество просмотров1.7K
В продолжение темы о связке Zend/Doctrine.
Учитывая что потребуется решить вопрос о постраничном листинге данных из таблицы, было принято решение использовать jqGrid в качестве данного инструмента.
Причина выбора проста — на данный момент это один из наиболее мощных гридов, с хорошей документацией и тд.
Читать дальше →
Всего голосов 3: ↑1 и ↓2-1
Комментарии1

Rounded corners HTML+CSS+jQuery

Время на прочтение1 мин
Количество просмотров1.2K
Закругленные уголки опять волнуют хабравчан, за последние 24 часа наблюдал 2 интересных топика с различными способа закругления этих самых уголков. Решил показать то, чем пользуюсь сам.
Сразу хочу оговориться, что я не претендую на уникальность данного способа, но додумался до него сам.
image
Читать дальше →
Всего голосов 42: ↑29 и ↓13+16
Комментарии10

jGrowl.1.2 — Введение

Время на прочтение4 мин
Количество просмотров7.8K
JGrowl — это плагин для всеми известного JQuery. Он позволяет выводить маленькие сообщения в пределах страницы браузера. Подобно тому как это работает в Growl Framework.

Для того что-бы начать работу с jGrowl, надо скачать этот самый jGrowl.
Скачать его можно с официального сайта разработчика stanlemon.net

На этом сайте можно посмотреть пример использования jGrowl.
LtbLinks.Ru
Там он используется для показа рекламы.

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

Вебсервер на bash+inetd

Время на прочтение1 мин
Количество просмотров1.2K
Понадобилось мне отвечать на http запросы извне и неким образом их обрабатывать (подключались к терминалам экспресс-оплаты). Первое решение было на Nginx+FastCGI(PHP), что было несколько неоправданно тяжеловесно. И тут меня посетили старые воспоминания и благодаря ru_root в ЖЖ и Гуглю было сделано следующее:

[root@mysql-02 /etc]# cat services | grep freecashpayment
freecashpayment 433/tcp
freecashpayment 433/udp

Этим мы объяснили серверу, что на порту 433 у нас теперь живет сервис по фамилии freecashpayment

[root@mysql-02 /etc]# cat inetd.conf | grep freecashpayment
freecashpayment stream tcp nowait root /usr/home/firefly/freecashpayment.sh freecashpayment.sh

Так мы заставляем слушать порт 433 и отвечать на нем скриптом freecashpayment.sh

[root@mysql-02 /usr/home/firefly]# cat freecashpayment.sh
#!/usr/local/bin/bash
read request
while /usr/bin/true; do
read header
[ "$header" == $'\r' ] && break;
done
url="${request#GET }"
url="${url% HTTP/*}"
echo $url


В результате в скрипте в переменной $url у нас имееются все параметры, которые нам прислали в GET-запросе. echo же нам выведет все что надо в ответ.

Мы счааааасливы :)
Всего голосов 23: ↑21 и ↓2+19
Комментарии13

PHPInstaller. Архивация файлов в 1 php файл.

Время на прочтение1 мин
Количество просмотров484
Здравствуйте.

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

Как работает?


Скрипт использует класс PclZip для паковки и распаковки архива.
В процессе работы скрипт создает подобие XML. Пакованный архив кодируется base64_encode, это увеличивает архив на 33%, но лишает пользователя обязательно заливать в бинарном виде, да и есть проблемы в содержании архива в XML.
По этому Base64… :)

После работы скрипта появляется 1 скрипт, который содержит в себе архив и оболочку для распаковки.

От слов к примеру


Покажу пример детальнее на сборке пакета phpMyAdmin.

Шаг1


Запустим скрипт и сразу же впишем название пакета, автора, а также укажем местоположение файлов.
(картинки кликабельны)



Читать дальше →
Всего голосов 31: ↑25 и ↓6+19
Комментарии18

ExtJs все чаще используется в создании CMS

Время на прочтение1 мин
Количество просмотров672
В принципе уже сейчас можно сказать, что это новое
веяние в web-девелопменте. И не только потому, что красиво. Вкус у каждого разный
и может некоторым нравится
СMS типа Windows 3.1. С помощью ExtJs можно делать многооконные и интуитивные
системы управления сайтом, с которыми может работать и новичок. А на вид они
ничем не будут отличатся от привычного интерфейса Microsoft® Windows. Вот как
эта IB Pro CMS.

Поигратся панелью управления можно здесь.
Подробное описание CMS здесь

 
 
Всего голосов 41: ↑24 и ↓17+7
Комментарии43

Древовидная навигация с помощью Zend Framework

Время на прочтение3 мин
Количество просмотров735
У больших проектов есть большая проблема — рано или поздно его содержимое превращается в хаос (в большей части это относится к бэкэнду, ибо на фронте обычно все в порядке). С ростом проекта усложняется его иерархическая структура, что затрудняет контроль или работу, поэтому стоит воспользоваться вполне очевидной вещью — вывод навигации в виде дерева. Довольно удобно, когда все содержимое вашего проекта отображается в иерархическом виде, вы так не думаете?
Читать дальше →
Всего голосов 7: ↑7 и ↓0+7
Комментарии8

Как из дешевого и простенького роутера сделать полнофункциональный сервер.

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

Введение


Первым роутером, который попал ко мне, был D-Link DI-524, у меня не было времени что либо выбирать, просто купил первый попавшийся недорогой роутер с wi-fi. Так как по натуре я люблю всё ломать, я почти сразу полез в интернет искать, как его можно усовершенствовать.
Но в то время почти ничего не нашел кроме советов просверлить в нем дырок. Да действительно он частенько перегревался и поэтому нестабильно работал, но на такой рискованный шаг я не пошел.
Благо я его почти сразу продал своему другу.
Когда мне снова понадобилось такое устройство, я уже знал какие функции мне действительно необходимы, для меня это было QoS. Я как обыденный покупатель начал смотреть на маркетинговые описания возможностей и фишек устройств. Для меня это тогда казалось единственно верным. Оказалось это не совсем так.
Я купил asus w520gu, я им в целом доволен (об этом позже), но считаю правильным поделиться опытом и информацией как я его усовершенствовал.
Кому интересно читаем дальше
Всего голосов 113: ↑105 и ↓8+97
Комментарии141

Как сделать подключенный к Стриму домашний комп веб-сервером

Время на прочтение4 мин
Количество просмотров2.9K
Pre-Scriptum: насколько я знаю, некоторые из моих статей постились кем-то в Хабр, я же здесь всего второй день. Поэтому извиняюсь, если этот пост покажется вам «бояном». Чтобы меня не обвиняли в плагиате, приведу ссылку на оригинал моей статьи. Вообще же я собираюсь писать в своем хабра-блоге в основном на тему носимых компьютеров. Над одним из подобных устройств я работаю второй год. Собственно, приведенные ниже действия были направлены на создание «внешних мозгов» моему НК (носимому компу), чтобы тот мог передавать какие-то задачи на домашний комп или брать с него данные.

Итак, начнем…
Читать дальше →
Всего голосов 19: ↑15 и ↓4+11
Комментарии9
1
23 ...

Информация

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