Pull to refresh

Qtiplot + Python дают огромные возможности для построения графиков и обработки данных

Open source *

Сегодня я немного расскажу про программу QtiPlot и возможность скриптования её возможностей с помощью языка Python.

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

В настоящее время «стандартом де факто» для построения графиков в мире *nix систем является gnuplot, в мире Windows это Origin, видимо ломанный, если посмотреть на его стоимость (чуть менее $1000 за самую крутую версию). Так вот QtiPlot в месте с Питоном вполне могут потеснить эти продукты.

Читать дальше →
Total votes 45: ↑40 and ↓5 +35
Views 7K
Comments 32

«Танцы с бубном» вокруг Thread

Java *

При разработке cloud платформы веб-приложений был реализован сервис серверной логики на базе java scripting технологии для более гибкого управления другими сервисами платформы.

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

Изначально предполагалось что задача тривиальна и что в Java есть стандартные для этого средства. Но ожидания не оправдались.
Читать дальше →
Total votes 26: ↑23 and ↓3 +20
Views 7.3K
Comments 40

Bash's dead, baby*. Viva zsh

Configuring Linux *
Позволю себе поднять упавшее знамя, оставшееся после предыдущих ораторов и продолжить благое дело продвижения zsh в массы. Надеюсь, после прочтения топика вы тоже смените старый добрый, но, как по мне, так застрявший в прошлом, bash на более удобный и продвинутый zsh.
Чтобы не быть голословным, попробуем рассмотреть это дело в контексте абсолютно субъективного и предвзятого сравнения bash vs. zsh.
Покажите
Total votes 106: ↑93 and ↓13 +80
Views 15K
Comments 77

Замена для FIND и GREP

PowerShell *
Мне кажется, давно зреет тема сравнения возможностей PowerShell и оболочек мира UNIX. Сравнения не в холиварном смысле этого слова, а в позитивно-конструктивном. Линуксовым скриптописателям (не фанатикам), думаю, будет интересно узнать, как делаются те или иные штуки, которые они привыкли делать на bash или zsh, на PowerShell. Пожалуй, я и начну такую тему — и очень надеюсь, что кто-то из моих коллег-повершелловцев (Guderian, ApeCoder) также поддержит эту тему.

В UNIX для поиска текста в дереве файлов существует довольно популярная связка утилит find и grep. Например, с помощью этих утилит мы можем найти все упоминания ключевого слова class в нашем дереве исходников:

$ find -name \*.cpp -o -name \*.hpp -exec grep -Hb class {} \;

Давайте посмотрим, что предлагает нам PowerShell для этих целей.
Читать дальше →
Total votes 75: ↑44 and ↓31 +13
Views 36K
Comments 259

Nagios + SMS используя мобильный телефон

System administration *
Несколькими постами раньше уже были темы об использовании SMS уведомлений в Nagios. Сегодня я расскажу ещё об одном способе уведомлений. Нижеописанный способ несколько надёжнее описанных ранее, но и требует некоторых денежных вложений. Он полезен в том случае, когда какие-то из уведомлений являются критически важными (как, например, выход кондиционера из строя или увеличение влажности).

Способ заключается использовании мобильного телефона с корпоративным тарифом (дабы деньги на телефоне не кончились неожиданно).

Физически подключается к серверу по bluetooth, com или usb. На уровне ПО мы будем использовать два скрипта: один из них умеет отправлять sms, второй проверяет статус мобильной сети. Если мобильная сеть недоступна, то nagios отправляет сообщение на email.

Оба скрипта написаны на python и используют библиотеку gammu для подключения к телефону.
Читать дальше →
Total votes 20: ↑18 and ↓2 +16
Views 5.7K
Comments 17

u-Nebula: первое свидание

Game development *
Сразу хочется извиниться за задержку с обзорной статьей по движку и поблагодарить за поддержку и комментарии к предыдущему посту. Отклонение от ранее взятых обязательств было вызвано возней с нашим художеством и желанием сделать вводную статью с использованием Lisp’a. К сожалению поддержка Lisp’a у нас пока весьма сырая так, что мы воспользуемся надежным Tcl. В конце пути, у нас должна получится визуализация медитативно-расслабляющего плана (применять в случае зимней депрессии).

Под катом текст, код и картинки.
Читать дальше →
Total votes 22: ↑21 and ↓1 +20
Views 1.6K
Comments 15

Windows: возможность завершить сеанс если экран заблокирован

System administration *

Задача


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

А так же желательно:
— избежать появления чёрного консольного окошка в реализации


Читать дальше →
Total votes 15: ↑9 and ↓6 +3
Views 4.3K
Comments 16

Заметки гика. zsh shell

System administration *
Дубль первый.


В какой то момент возникла острая необходимость заиметь англо-русский словарь в консоли,
в ходе 2 минутного поиска по пакетам счастья не было обнаружено.
Ну что же, придется делать свой словарь, вспомнив что в chromium стоит плагин для словаря было принято решение распотрошить его содержимое, и прикрутить словарь от google к консоли.
Ну а далее код для zsh.
В комментах ресурсы которые были просмотрены в ходе поиска решения.
Читать дальше →
Total votes 44: ↑37 and ↓7 +30
Views 4.8K
Comments 21

Стек директорий. Снова простая вещь + дополнения

Lumber room
Мало кто знает о таких командах bash как pushd и popd.
Они позволяют работать со стеком директорий.
pushd $DIR позволяет перейти в $DIR и добавить текущую в стек. При каждом выполнении команды стек пополняется текущей директорией.
popd позволяет перейти к последней директории в стеке и извлечь её оттуда. Таким образом после каждого выполнения команды стек уменьшается на одну директорию, а текущая директория становится директорией на вершине стека.
Читать дальше →
Total votes 59: ↑53 and ↓6 +47
Views 2.8K
Comments 39

Сохранение flash-video из кэша браузера

Configuring Linux *
Представьте себе, вот открыли вы в браузере с десяток порно видео-роликов, они тем временем успели скачаться и вдруг оказалось, что браузер нужно закрывать. Что делать?

Сохранить все открытые в данный момент в браузере flv-видеоролики в отдельную директорию можно вот таким простым однострочным скриптом.

copy-cached-flv.sh


#!/bin/bash
 
lsof -n +L1 | grep /tmp/Flash | \
    awk '{line = "/proc/" $2 "/fd/" $4; sub("[^0-9]*$","",line); print line}' | \
    xargs -I '{}' cp -v '{}' -t "$@" --backup=t


Читать дальше →
Total votes 90: ↑74 and ↓16 +58
Views 26K
Comments 60

Как подписать свой первый скрипт за 48 часов

PowerShell *
Sandbox

Проблема


Когда задача, требующая решения, небольшая, совсем не хочется писать для её решения отдельную утилиту, особенно, если ты — .NET-программист.
Скрипт? Однозначно, да, но ставить на боевую машину под управлением Windows сторонний интерпретатор совсем уж не по-христиански. Так почему бы не воспользоваться Windows Powershell? Готов сразу честно признаться: практически никакого опыта с ним не было, но уж больно заманчиво выглядел.
Скрипт, решающий задачу, был готов через 15 минут, если не учесть одно «но». Скриптом пока назвать это было сложно, потому что это был набор инструкций, непригодный для выполнения в виде скрипта. Непригодный, с точки зрения PowerShell.
Читать дальше →
Total votes 30: ↑22 and ↓8 +14
Views 36K
Comments 29

Роутер на базе PC или ноутбука за пару минут

Configuring Linux *
Помните пост о временном переключении WIFI в режим точки доступа? Конечно же нет, давно было. Вот он: habrahabr.ru/blogs/linux/122876.

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

Имеем


— Ноутбук с Ubuntu 11.10 и беспроводным сетевым адаптером
— Беспроводной интернет
— Комьютер с Ethernet-интерфейсом

Задача


— Получить с компьютера доступ в интернет
Читать дальше →
Total votes 29: ↑11 and ↓18 -7
Views 30K
Comments 10

Подготовка rails-окружения для установки Redmine используя RVM

Ruby on Rails *
Для корректной работы многих rails-приложении требуются конкретные версии состовляющих компонент, таких как версия ruby, версия самого rails, а так же rake, rubygems и т.д. И скорее всего в вашем дистрибутиве Linux (в моём случае это Ubuntu 10.04 LTS Server) версии этих компонент будут отличаться. Можно пойти простым путём — поставить ruby нужной версии из исходных кодов, а всё остальное с помощьью rubygems. Но мы же хотим получить надёжный и воспроизводимый результат, а систему, при этом не превратить в свалку.
Читать дальше →
Total votes 15: ↑10 and ↓5 +5
Views 5.6K
Comments 15

Автоматическая смена WPA2-пароля (preshared key) на Wi-Fi роутере

Configuring Linux *System administration **nix *

Задача


— генерация 8ми-значного числа и автоматическая установка в качестве WPA2-пароля на Wi-Fi роутере один раз в неделю
— отправка нового пароля на email
— создание html-страницы с паролем

Имеется


— Linux с установленным web-сервером (web-сервер будет отдавать вот эту страницу /opt/company/wifi-guest/index.html) и доступом к Wi-Fi точке через прокси (адрес прокси proxy.company.lan:3128)
— Wi-Fi роутер TP-LINK WR1043ND (адрес точки доступа ggw.company.lan)
— smtp-сервер (адрес сервера 10.10.10.10, исходящий адрес — notificaions@company.com, адрес получателя admins@company.com)
Читать дальше →
Total votes 10: ↑7 and ↓3 +4
Views 20K
Comments 40

Законы драматургии в ММО: когда же они заработают?

Game development *
Драматургия – мощнейший инструмент, который позволяет сценаристам держать зрителя в напряжении на протяжении всей истории, заставлять его испытывать самые разные эмоции, а в кульминационные моменты – широко распахивать глаза от изумления и с головой уходить в действие. К этому же стремятся и сценаристы онлайн-игр, поэтому нам совершенно необходимо применять общие законы драматургии к ММО. Однако делать это «в лоб» не стоит: ведь в ММО есть своя проблематика, которая заставляет нас подходить к этим законам выборочно, отсеивая неподходящие, выбирая лучшие и трансформируя их.

Читать дальше →
Total votes 59: ↑50 and ↓9 +41
Views 8.1K
Comments 139

Скриптинг для бюджетной активации (часть 1)

Abnormal programming *Oracle *Development of communication systems *
Некоторое время назад, мне довелось поучаствовать в крупном международном проекте в составе команды активации. Суть проекта сводилась к автоматизации выполнения ряда команд на оборудовании Cisco. Разработка активационных скриптов велась на JavaScript. Главная мысль, которую я вынес из этого проекта, заключалась в том, что разработка и отладка активационных скриптов на JavaScript крайне трудоемкое занятие. Интенсивная разработка велась в течение 1 года, а только наша группа активации включала в себя около 10 разработчиков (тестеров требовалось не меньше).

В июне этого года, уже местное руководство, осчастливило меня новым активационным проектом, в котором маршрутизаторы Cisco сменились на АТС Alcatel S12 и M200. Вторым отличием этого проекта было то, что всю активационную часть предстояло разработать мне одному, с нуля, в течение полугода.
Читать дальше →
Total votes 7: ↑6 and ↓1 +5
Views 3.4K
Comments 8

Загрузка фото пользователя в Active Directory с помощью PowerShell

PowerShell *
Sandbox
Если вы используете Active Directory у вас используется Exchange, OwnCloud, SharePoint или другая система с возможностью отображения аватара или фото, то после прочтения данный статьи у вас появится возможность загрузить фото пользователя в AD для отображения в Outlook, Lync, на порталах SharePoint и других системах.
Читать дальше →
Total votes 18: ↑18 and ↓0 +18
Views 77K
Comments 5

Mikrotik RouterOS + PHP скрипт на сайте. Расширение возможностей

PHP *
Sandbox
Во времена ROS 5.x была потребность поднимать туннель к роутеру с белым динамическим адресом. В ROS 5 мы задавали не имя, а IP-адрес. Варианта 2: сервис DDNS, реализацию которого рассмотрим вкратце и второй о котором и будет рассказ.
Читать дальше →
Total votes 16: ↑14 and ↓2 +12
Views 23K
Comments 12

Java вместо Groovy

Website development *Programming *Java *Groovy & Grails *
Вдруг оказывается, что в проекте нужны скрипты и возникает вопрос что лучше эволюция или революция?
Но даже попытка внедрить груви может провалиться в легаси проекте с консервативным коллективом. И руководство может найти еще десяток причин не пропустить груви в проект. Хоть groovy гораздо проще и ближе программисту знающему java, чем та же scala.



Но даже в этом случае можно использовать динамически компилируемые скрипты в проекте. Научимся компилировать java код динамически в памяти и запускать его в jvm, использовать в нем динамически загружаемыме библиотеки из maven. Хотелось бы написать как можно меньше кода для этого и чтобы процесс использования был максимально прост. Да и еще бы не хотелось надеяться на доступность tools.jar нашей пограмме.
Для заинтересовавшихся как можно это сделать...
Total votes 16: ↑14 and ↓2 +12
Views 16K
Comments 28

Как установить доверительные отношения между компьютером и основным доменом

Domain names administrating *System administration *IT Infrastructure *Server Administration *DevOps *
Здравствуйте Уважаемые читатели Хабрахабра! В просторах интернета каждый из нас может найти много отдельных статей о не прохождении аутентификации компьютера через домен-контроллер, если точнее сказать, компьютер подключенный к домену теряет связь с ним.

Итак, приступим к изучению этой проблемы.
Читать дальше →
Total votes 18: ↑11 and ↓7 +4
Views 23K
Comments 36
1