Как стать автором
Обновить
2
0
Роман Скородумов @Screen

Алгоритмическая торговля

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

Обработка Excel файлов с использованием Python

Время на прочтение4 мин
Количество просмотров206K
image
По работе пришлось столкнуться с задачей обработки xls файлов средствами python. Немного по гуглив, я натолкнулся на несколько библиотек, с помощью которых можно работать с файлами excel.
Читать дальше
Всего голосов 59: ↑52 и ↓7+45
Комментарии57

Хостинг на AWS (EC2, EBS, S3) для чайников

Время на прочтение4 мин
Количество просмотров139K
На хабре уже проскакивали периодически заметки посвященные AWS (Amazon Web-Services) — так что тема не новая. Однако, если для меня лично (да и для многих моих знакомых как выяснилось) — этот термин был знаком — однако каких-либо деталей я не знал. Попробую на основании только-что полученного опыта рассказать немного подробней, а так же изложить основные шаги по организации хостинга сервера на AWS и его преимущества. Как и несколько ссылок, которые могут оказаться полезными.
image
Читать дальше →
Всего голосов 101: ↑98 и ↓3+95
Комментарии62

Впечатляющие анимационные эффекты

Время на прочтение2 мин
Количество просмотров115K
С появлением jQuery, у веб-программистов появилась возможность создавать впечатляющие визуальные эффекты, не прибегая к использованию технологии flash. В данной статье представлено несколько ярких примеров того, каких потрясающих результатов можно достичь, используя стандартные средства браузера и свое воображение.
Читать дальше →
Всего голосов 262: ↑246 и ↓16+230
Комментарии78

Свой Web-PDF принтер за 10 минут

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


Как потратить совсем немного времени и сделать что-нибудь простое и оригинальное, поражающее своей глобальностью — но абсолютно бесполезное? Очень просто. Давайте сделаем свой принтер.

Нам понадобится (кроме головы и рук) только работающий web-сервер с поддержкой cgi-bin, к которому у нас есть доступ по FTP. Есть такой? Поехали!

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

Мониторинг доступа к файлам

Время на прочтение3 мин
Количество просмотров33K
Зачастую пользователям и системным администратором необходимо отслеживать, к каким файлам обращается приложение. В Linux-е уже есть все средства для этого, и тем удивительнее постоянно слышать на форумах — есть ли аналог Sysinternal Filemon. В данной статье я опишу использование утилиты strace, и рассмотрю ряд моментов, которые ускользают от некоторых пользователей, полагающих, что приложениям надо ограничивать права даже на чтение, например, ограничить доступ mplayer-а только к показываемому фильму.
Читать дальше →
Всего голосов 63: ↑58 и ↓5+53
Комментарии26

Музыка из Vkontakte в Exaile

Время на прочтение1 мин
Количество просмотров15K
Всем привет!

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

image

Возможности плагина
Всего голосов 114: ↑94 и ↓20+74
Комментарии126

Удаляем трояна, требующего отправку SMS с компьютера

Время на прочтение2 мин
Количество просмотров5.5K
Сегодня с утра на работе сотрудница словила троян, требующий отправки SMS на короткий номер.

Тут должна быть картинка с трояном, но что самое смешное, я не смог запустить его на виртуалке. Даже в автозагрузку его прописывал, ну не хочет работать и всё. В общем, если желающие сделают скриншот, то будет очень неплохо. Сам троян для опытов можно скачать отсюда. При этом я видел окно только мельком, но выглядело оно красиво :)Мне прислали картинку:.
Отправьте SMS

По поводу механизма заражения очень хорошо расписал Olegas, я, соответственно распишу про первую часть, про лечение. Кстати, первоначально было подозрение в том, что это дыра в IE8, на практике оказалось что скорее всего вирус проник через дыру в Java или Flash. Так что, в принципе, не защищён ни один из браузеров. Анализ логов показал, что сайты посещались достаточно безобидные, на каком из них завёлся iframe с дроппером, выяснить не удалось (не все же перебирать, в самом деле).

Читать дальше →
Всего голосов 134: ↑89 и ↓45+44
Комментарии150

Создаём медиа-пульт из телефона для Linux'a

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

На хабре мелькала уже статья о такой программке, как BluePad. Прочитав ещё тогда эту статью, я загорелся желанием управлять своей системой с телефона (благо, у всех нынешних телефонов есть bluetooth;)

BluePad использовать у меня не получилось, ибо она рассчитана на более-менее не маленькие экраны. В связи с чем, в мой экранчик на Nokia 3110c она тупо не влазила… Поэтому, я начал искать дальше. И в в процессе поисков наткнулся на такую замечательную программу, как anyRemote. Именно о ней и пойдёт речь.

Всё, что нам понадобится:
1) Телефон с bluetooth
2) Компьютер с Linux’ом на борту 
3) Bluetooth адаптер для компа.

Далее под катом.
Всего голосов 61: ↑54 и ↓7+47
Комментарии42

Список Javascript библиотек для рисования графиков и диаграмм

Время на прочтение1 мин
Количество просмотров22K
О визуализация графов в вебе говорили здесь, навеяно этой статьей.

Под катом обзор JavaScript библиотек для рисования графов, диаграмм и прочей красоты.
Читать дальше →
Всего голосов 93: ↑89 и ↓4+85
Комментарии36

nginx + apache. Кеширование

Время на прочтение4 мин
Количество просмотров20K
Привет, %username%
Тут я хочу рассказать о том, как я настраивал кеширование на одном сервере, точнее VDS. Характеристики сервера: 2000MHz, 2GB RAM, 80Gb HDD, технология виртуализации — OpenVZ.
Было решено использовать Nginx версии 0.7.64. На сервере находилось около 200 сайтов. И несколько высоко нагруженных проектов. Вот эти самые проекты и давали ощутимые тормоза и нагрузку на сервер. Мы будем рассматривать DLE в этом примере.
Читать дальше →
Всего голосов 79: ↑66 и ↓13+53
Комментарии38

WEBO Site SpeedUp альфа-версия

Время на прочтение3 мин
Количество просмотров1K
Всех с наступающими. Мы не очень долго думали, что подарить фанатам быстрой загрузки и большой скорости — и собрали альфа-версию приложения WEBO Site SpeedUp (преемник Web Optimizer).
Если кому лень читать дальше, то ссылка на загрузку
code.google.com/p/web-optimizator/downloads/detail?name=webo.site.speedup.v0.9.0b.zip

WEBO Site SpeedUp — продукт для комплексного ускорения сайта. Применяет все технологии клиентской (и частично серверной) оптимизации. Среднее ускорение — 2,5 раза.
Читать дальше →
Всего голосов 61: ↑53 и ↓8+45
Комментарии33

Как собрать бинарный deb пакет: подробное HowTo

Время на прочтение15 мин
Количество просмотров224K
Сегодня я расскажу на абстрактном примере как правильно создать *.deb пакет для Ubuntu/Debian. Пакет мы будем делать бинарный. Пакеты, компилирующие бинарники из исходников здесь не рассматриваются: осилив изложенные ниже знания, в дальнейшем по готовым примерам можно понять суть и действовать по аналогии :)

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

В качестве бонуса в конце статьи будет пример быстрого создания собственного локального репозитория: установка пакетов из репозитория позволяет автоматически отслеживать зависимости, и конечно же! — устанавливать всё одной консольной командой на нескольких машинах :)

Для тех, кто не хочет вдаваться в мощную систему установки софта в Linux, рекомендую посетить сайт проги CheckInstall: она автоматически создаёт deb-пакет из команды «make install» ;) А мы вместе с любопытными —
поехали дальше!
Всего голосов 73: ↑63 и ↓10+53
Комментарии40

jQuery.Tree

Время на прочтение2 мин
Количество просмотров25K
Товарищ caffeine искал плагин к jQuery, который делает дерево с чекбоксами, которые имеют три состояния — установленный, снятый и «чуть-чуть установленный». Не нашел, попросил меня написать. Я написал и делюсь со всеми желающими.
Ой, как интересно
Всего голосов 72: ↑67 и ↓5+62
Комментарии59

Работа с массивами в bat

Время на прочтение6 мин
Количество просмотров55K
Прочитав пост Свой сапер на своих батниках и пробежавшись по коду, наткнулся на комментарий, что в батниках нет массивов (кстати, в последней версии Сапера, о котором идёт речь в том посте, нет этого комментария). Так вот, если в батнике необходимо использовать некоторый набор значений, то логично объявить такое кол-во переменных, которое требуется и работать с ними. Собственно данный сценарий эту задачу помогает решить проще. Вот несколько примеров:

echo Создание массива А:
call :array new A "'one','two','three','foo','bar'"
echo Получение третьего элемента в result:
call :array get A 3 result
echo %result%
echo Изменение нулевого элемента
call :array set A 0 "первый элемент"

подробнее
Всего голосов 47: ↑39 и ↓8+31
Комментарии32

Работа с веб камерой и микрофоном в Silverlight 4

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

Введение

То, что многие Сильверлайт разработчики давно ждали, произошло. Четвёртый Сильверлайт позволяет получить доступ к веб камере и микрофону. И пусть это не является революцией, в отличие от многих других новых возможностей (конкурирующие технологии поддерживали камеру и микрофон уже давно), но мощь, простота и удобство нового API заслуживают того, чтобы на эту часть функциональности четвёртого Сильверлайта Вы обратили самое пристальное внимание.

Работа с веб камерой и микрофоном

Итак, веб камера и микрофон на компьютере пользователя могут быть, а могут и отсутствовать. Также бывают ситуации, когда есть несколько источников видео и звука. Для того, чтобы определить с какми устройствами мы будем работать, а также в случае необходимости запросить у пользователя доступ к этим устройствам (Сильверлайт не позволяет без явного на то разрешения пользователя получить доступ к веб камере или микрофону), сществует статический класс CaptureDeviceConfiguration. Давайте посмотрим как с этим классом работать. Но предварительно создадим новый проект Сильверлайт приложения в Visual Studio 2010 и добавим на страницу MainPage.xaml некоторую XAML разметку:
<StackPanel Orientation="Vertical" VerticalAlignment="Center"
      HorizontalAlignment="Center">
  <Rectangle Width="320" Height="240" x:Name="videoRect"/>
  <StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
    <ListBox x:Name="VideoSources">
      <ListBox.ItemTemplate>
        <DataTemplate>
          <TextBlock Text="{Binding FriendlyName}"/>
        </DataTemplate>
      </ListBox.ItemTemplate>
    </ListBox>
    <ListBox x:Name="AudioSources">
      <ListBox.ItemTemplate>
        <DataTemplate>
          <TextBlock Text="{Binding FriendlyName}"/>
        </DataTemplate>
      </ListBox.ItemTemplate>
    </ListBox>
  </StackPanel>
  <StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
    <Button Margin="5" Content="Начать захват" x:Name="startCapture"/>
    <Button Margin="5" Content="Остановить захват" x:Name="endCapture"/>
  </StackPanel>
</StackPanel>

* This source code was highlighted with Source Code Highlighter.
Читать дальше →
Всего голосов 57: ↑38 и ↓19+19
Комментарии32

Дао Вебсервиса. (Или да хватит же изобретать велосипеды!)

Время на прочтение12 мин
Количество просмотров58K
image Недавно на Хабре была опубликована статья под провокационным заголовком и призывом к прекращению изобретений велосипедов в API-строении. Поскольку тема мне интересна, то я просто не мог пройти мимо.
Увы, реальность за хабракатом меня сильно разочаровала — я увидел очередной велосипед, да еще и с квадратными колесами. (Коллеги, ничего личного, только техническое обсуждение.) Правда, авторы честно сказали, что увидели на нескольких сайтах модное слово REST и решили сделать по нему. Только вот поняли они этот «РЭСТ» по-своему, примерно как Дед Щукарь читал и понимал толковый словарь.
В этом топике я призываю по-настоящему покончить с велосипедами в API сайтов. Ведь получается какой анекдот: АПИ разрабатывается для упрощения доступа к сайту и легкости подключения внешних систем, а получается такой, что с ним еще сложнее, чем без него :)

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

В повествовании будут рассмотрены следующие вопросы:
  1. Базовые технологии: XML-RPC, REST, SOAP и краткое сравнение
  2. Дао вебсервиса
  3. Просветленные API
  4. Как отличить сайтовое API от говна
  5. Выводы

Кто не испугался суровых реалий - вперед
Всего голосов 315: ↑289 и ↓26+263
Комментарии206

Как увеличить скорость работы jQuery скрипта

Время на прочтение4 мин
Количество просмотров9K
11 правил, следуя которым можно увеличить производительность скрипта, написанного с использованием jQuery.
Читать дальше →
Всего голосов 108: ↑88 и ↓20+68
Комментарии43

20 полезных и красивых веб приложений

Время на прочтение1 мин
Количество просмотров6.2K
Мы постоянно должны быть вдохновлены, чтобы не отставать от моды.

В этой статье я покажу вам 20 приложений, которые вдохновили нас, веб-приложения, которые изменили мир.

Давайте начнём.

Reinvigorate




Инструмент для отслеживания трафика в реальном времени с множеством полезных функций, включая «heat sensing».
Читаем Дальще
Всего голосов 181: ↑112 и ↓69+43
Комментарии68

Как защитить сервер от посетителей из нежелаемых стран

Время на прочтение3 мин
Количество просмотров10K
Ко мне очень часто поступают довольно интересные и нестандартные задачи по настройке серверов.

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

В моем случае — надо было заблокировать CN полностью, на RU отдавать полный канал, а на остальные страны — в два раза меньше.

Разумеется, вбивать полностью все подсети руками неудобно, да и они часто меняются. Логичнее всего было сделать это с помощью geoip.
Решение на уровне ядра и на уровне приложения
Всего голосов 46: ↑41 и ↓5+36
Комментарии30

VPN-мост в локальную сеть

Время на прочтение10 мин
Количество просмотров227K
Прочитал топик habrahabr.ru/blogs/linux/67209 и решил выложить сюда свою статью, которая была до этого видна только в закрытой корпоративной Wiki.

Обычно, при создании VPN, используется подключение типа точка-точка к некоторому серверу, либо установка ethernet-туннеля с некоторым сервером, при котором туннелю назначается определённая подсеть. Сервер VPN при этом выполняет функции маршрутизации и фильтрования трафика для доступа к локальной сети через VPN.

Данная статья рассматривает другой подход к созданию виртуальной сети, при котором удалённые системы включаются в уже существующую локальную подсеть, а сервер VPN выполняет роль Ethernet-шлюза. При использовании такого подхода мы всё ещё имеем возможность фильтровать трафик на основании способа подключения (например, использовать для локальной сети и для удалённых пользователей разные фильтры), но исключается необходимость настройки маршрутизации, а удалённые машины включаются прямо в локальную сеть, видят ресурсы, даже способны использовать широковещательные посылки вообще без дополнительной настройки. Через такой VPN у них отображаются все компьютеры локальной сети Windows, все доступные XDMCP-серверы при XDMCP broadcast и т. д.

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

Информация

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