LINUX.ORG.RU

Избранные сообщения Ant-Hill

Переложить CURL скрипт на Python. Facebook graph api.

Форум — Development

Есть простенький curl скрипт, который апдейтит аватарку у facebook page.

curl \
-X POST \
-F "access_token=`groupACCESStoken" \
-F "source=@/Users/admin/Downloads/small.jpg" \ 
"https://graph.facebook.com/group_id/picture"
все работает как часы, только время не показывает.

Когда попробовал переложить это на Python, все рухнуло. Летят ексепшены, то access_token не тот, то url в source неправославный. В общем, любой request вылетает с 400 http code.
пробовал делать так:
import requests, json

avatar_url = "https://graph.facebook.com/{page_id}/picture".format(page_id=page_id)
payload = {'access_token': access_token,
           'source': image_file}
resp = requests.post(avatar_url, data=json.dumps(payload))

пробовал так:
import urllib2
req = urllib2.Request(avatar_url, payload)
resp = urllib2.urlopen(req)

В общем не догоняю, как сделать нормально.

 , ,

foreigner_web
()

Помогите найти алгоритм построения поверхности из точек

Форум — Development

Есть облако точек. Известно, что это поверхность сплошной фигуры. Существует ли алгоритм построения полигональной поверхности этой фигуры?

 ,

monk
()

Задачка с телом и его проникновением в среду.

Форум — Development

Дана зависимость глубины проникновения в среду, где на него начинает действовать неизвестная сила сопротивления F(x), x_s, т.е. расстояние когда тело остановится от границы среды, от импульса тела p_0 с которым оно проникает в среду. Пусть будет самый простой вариант x_s(p_0)=a*p_0 : a = const.

Вопрос: возможно ли вообще получить эту F(x) или хотя бы p(x) - импульс тела момент когда оно уже углубилось в среду на расстояние x в зависимости от этого расстояния расстояния или p(t) - в момет времени t от начала проникновения в среду?

Если да, то как?

 

ados
()

Помогите придумать защиту для демо-режима «программы»

Форум — Development

Введение

Есть JS-файл. В нем реализована некая фунциональность. Он используется как плагин в офтоп-программе, но распостраняется отдельно. Он закодирован (неважно как). Программа после загрузки плагина декодирует его. Скрипт выполняется в VM Internet Explorer`а. Соответственно через ActiveX у мене есть доступ к диску, реестру, и shell`у. Также у меня в скрипт включена CryptoJS (openssl на JavaScript`e).

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

Как я это вижу. Поскольку у меня есть доступ к диску и опессл, можна писать на диск шифрованные файлы. Если у этой задачи и есть решение то imho нужно двигатся в этом направлении.

Буду благодарен за любые советы

 , ,

ZuBB
()

PyGTK Entry обработка события по нажатию клавиши Enter

Форум — Development

Доброго времени суток! Подскажите как можно обработать нажатие Enter на виджете Gtk.Entry? Есть там события button-press-event и button-release-event, но они срабатывают только на мышку.

 ,

nuxster
()

язык для математики.

Форум — Development

Привет.

Сразу к теме.

Зимой делать особо нечего, решил сделать онлайн калькулятор по разным нормативным документам, вроде ГОСТ-ов, ОСТ, и прочих документов. Ну что то вроде расчета применимости оборудования, материалов и так далее.

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

У питона например есть SciPy , у плюсов есть несколько либ.

Какой лучше использовать?(не только питон или плюсы, выслушаю и другие варианты)

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

 , ,

guyvernk
()

Какие алгоритмы вы чаще всего используете?

Форум — Development

Привет ЛОР!

Углубляюсь в тему алгоритмов.

Расскажите, какие алгоритмы вы чаще всего используете в вашей реальной работе (если используете)? Любые, с которыми вы сталкивались на практике, и из любого разряда: алгоритмы обработки данных, сетевые алгоритмы, поиска, алгоритмы для распределенных систем, etc.

На чем их реализуете?

Спасибо.

 

amidala
()

Помогите написать правильный скрипт

Форум — Development

В общем понадобился мне скрипт, что бы менять режим энергосбережения ноутбука переключая специальный тумблер на нем. Проблема в том, что этот переключатель, независимо от того переключил я его влево или вправо выводит один и тот же сигнал. Соответственно надо что бы по переключению скрип смотрел в файлик с параметром 1 или 0, и если там одно значение, то вызывал скрипт энергосбережения и менял затем параметр на другое значение. А если же там обратное значение, запускал скрипт производительности и опять менял значение. Скрипты я писать не умею. Но в связи с этой необходимостью начал изучать. И написал вот это

#!/bin/sh

STAT= 'cat /etc/smps/performance.pid'
 
   if [ "$STAT" = "0" ]
then
sh /usr/bin/acc_on.sh
echo "1" > /usr/bin/smps/performance.pid
  else
sh /usr/bin/smps/ac_off.sh
echo "0" > /usr/bin/smps/performance.pid
fi

Но не фига не работает. Разве что менят значение с 1 на ноль, но не обратно. Объяснить пожалуста как правильно сделать.

xing
()

Управления фалами конфигурации и дистрибуция приложения

Форум — Development

Доброго времени суток, по некоторым обстоятельствам решил написать небольшую утилиту для генерирования pipe меню для OpenBox, теперь допиливаю и решил поделится ей, мб кто-то ещё найдёт ещё интересной, за одно и с Python познакомлюсь ближе. Отсюда появилось пару вопросов:

1) Посоветуйте какую нибудь документацию по тому как управлять файлами конфигурации, или это понятностью на совести разработчика?

2) Документацию по тому как упаковывать своё творение в tarball какова должна быть его структура.

3) Как выглядит установка приложений на линукс вообщем, то есть копирование конфигов в нужные места настройка прав и подчистка всего этого безобразия при удалении программы?

Естественно всё это с учётом того что приложение на python. Если кому интересно: https://github.com/xpr0ger/obmenupy.git

 , ,

XprogeR
()

Права доступа из скрипта на python

Форум — Development

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

int(os.environ['SUDO_UID'])
и
os.seteuid()

Но у меня, чего то не заработало это дело. Изначально запускать скрипт от рута не хотелось бы.

nuxster
()

Подскажите годную книгу по Opengl ES 2.0

Форум — Development

Сабж.
Плюсом будет наличие примеров для Android, но это не критично. Главное чтоб книга годная была.
Гугл выдает что-то невнятное.

 ,

uRandom
()

for ArrayList и thread safety в Java

Форум — Development

Скажем есть такой класс

class Test {
	private ArrayList<String> mList;
	
	Test() {
		mList = new ArrayList<String>();
		mList.add("Foo");
		mList.add("Bar");
		mList.add("Baz");
	}
	
	public ArrayList<String> search(String what) {
		ArrayList<String> res = new ArrayList<String>();
		
		for (String str : mList) {
			if (str.indexOf(what) != -1) {
				res.add(str);
			}
		}
		
		return res;
	}
}

Является ли метод search() потокобезопасным? А именно беспокоит одновременное итерирование по mList из разных потоков. Является ли эта операция безовасной при учёте того, что модификации mList не производится во время итерирования?

 

Olegymous
()

Ruby не в веб-разработке

Форум — Development

Всем известны сильные позиции Ruby в веб-разработке. Как минимум все работает, компании запускают веб-приложения, деньги зарабатываются.

Как насчет вне веба?

P.S. Например близжайший конкурент - Python захватил наверно пол линукс десктопа, широко используется как встраиваемый язык, а так же очень известен в научных кругах, data mining, data analisys. И это не смотря на тоже очень сильные позиции в веб сфере.

 , ,

vertexua
()

Y-комбинатор

Форум — Development

Заглянул сегодня в вики по поводу сабжа и увидел следующее определение:

Y=/f.(/x.(f(x x)) (/x.(f(x x))))
Не закралась ли тут ошибка, ведь после получения f мы должны вычислить аппликацию в которой присутствует некий x, а откуда ему взяться?

new_1
()

Безопасное использование функции alloca и определение размера стека

Форум — Development

В C есть функция alloca, выделяющая память на стеке. Эта память автоматически освобождается при выходе из функции. При выделении чрезмерного количества памяти, происходит переполнение стека. Есть ли способ узнать, сколько памяти можно выделить в стеке? Хочется сделать что-то вроде такого:

if(в_стеке_хватит_места_чтобы_сделать_alloca(столько-то_байт) )
  tmp = alloca(столько-то_байт);
else
{
  tmp = malloc(столько-то_байт);
  if (tmp == NULL) 
    error();
  needfreetmp = 1;
}
...
какой-то_код;
...
if (needfreetmp)
  free(tmp)
И есть ли стандартный способ увеличить стек, например выделив достаточно большой кусок памяти через malloc, перекопировать туда весь используемый стек, переставить регистры EBP и ESP и дальше работать с этой памятью как со стеком?

 , , ,

SZT
()

Не собирается Cyanogenmod

Форум — Development
make: *** No rule to make target `/root/android/system/out/target/product/a13/obj/SHARED_LIBRARIES/libMali_intermediates/export_includes', needed by `/root/android/system/out/target/product/a13/obj/SHARED_LIBRARIES/gralloc.sun4i_intermediates/import_includes'.  Stop.

как пофиксить?)

 ,

Azq2
()

Разработка на js

Форум — Development

Лор, посоветуй годные статьи, или книжки, или поделись своим опытом по организации разработки на js (интересует в основном клиентская часть).

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

Потому что для многих других языков все более-менее понятно. Например, в питонах или плюсах есть команды импорта модулей. А в js такого нет. Я хочу разработать какую-то программу (в свою очередь состоящую из модулей), использующую стороннюю библиотеку. Можно, например, в браузере все модули и библиотеки подключить в тегах script. Но тогда при разработке моего модуля в отдельном файле IDE не будут видеть функции из библиотеки и других модулей. В nodejs есть require, но в браузерном js такого нет. Скопипастить весь код библиотеки в один файл при разработке, а потом разбить по модулям?

В общем, как все это организовать. При этом не хочется тащить кучу разных библиотек, вроде require.js. Меня сейчас интересует разработка на jQuery и Angular.

 

memnek
()

переписать LOR в виде толстого приложения

Форум — Development

Почему web-разработчики выше ценятся или лучше оплачиваются, чем разработчики толстых (десктопных/планшетных/смартфонных) приложений?

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

Поэтому люди поддерживающие открытость должны перестать пользоваться веб-сайтами и начать пользоваться приложениями типа Osiris.
Не кидайтесь смотреть на Osiris, главная мысль поста не в рекламе конкретного продукта, а в том, что надо перестать пользоваться web-сайтами. И начать с того, что переписать LOR в виде толстого приложения.

terradot
()

Отрисовка строки в пиксельной матрице

Форум — Development

Есть массив, что-то типа

    image = XCreateImage(warehouse.display,
                         DefaultVisual(warehouse.display,
                                       warehouse.activescreen),
                         DefaultDepth(warehouse.display,
                                      warehouse.activescreen),
                         ZPixmap, 0, 0, width, height, 32, 0);
    image->data = calloc(image->bytes_per_line * height, 1);
Грубо:
void setpixel(XImage * image, uint32_t color, int x, int y)
{
    memcpy(image->data + y * image->bytes_per_line + x * sizeof(uint32_t),
           &color, sizeof(uint32_t));
}

Как мне нарисовать текст заданным шрифтом\размером\etc. в этой матрице? В голову идет только создание pixmap, установка там параметров шрифта, отрисовка на инверсном к цвету pixmap'е, потом в цикле пройтись по всем пикселям pixmap'а и скопировать их на матрицу с найденной прозрачностью.

Но попахивает костылями...

 ,

inn
()

Тупой вопрос про кеш цпу

Форум — Development

Здорово, мужики. Ща я расскажу вам небольшую предысторию.

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

Далее, сам рендерер может быть такой:

1) Для каждого пикселя на экране пускаем луч, который обходит это дерево с корня до листов, и, если есть пересечение, ставим точку на экран (я использую SDL и пишу в surface->pixels)

2) Подмечаем, что для близких лучей (мало отклоняющихся) путь от корня дерева до листа с данными почти одинаков (например root->a->b->c->d и root->a->b->c->e) и начинаем поиск с листа, возвращаесь, если надо, к корню.

И вот вопрос: для второго случая надо записывать в surface->pixels элементы не один за другим, как в таком коде:

int i,j;
int p = 0;
for (i=0; i<surface->w; i++)
{
    for (j=0; j<surface->h; j++)
    {
        *((Uint32*)surface->pixels+p) = calc_color();
        p++;
    }
}

а, скажем, разбивая экран на квадратики, где такая путь обхода меняется лишь незначительно. Но с другой стороны, к элементам pixels придется обращаться не один за другим, а как-то так:

int i,j,k,l;
for (i=0; i<surface->w/SQUARE_LEN; i+=SQUARE_LEN)
{
    for (j=0; j<surface->h/SQUARE_LEN; j+=SQUARE_LEN)
    {
        for (k=0; k<SQUARE_LEN; k++)
       {
            for (l=0; l<SQUARE_LEN; l++)
           {
                *((Uint32*)surface->pixels+(i+k)*width+j+l) = calc_color();
            }
        }
    }
}

Сильно ли это скажется на производительности из-за промахов в кеше? Или какие варианты могут быть, чтобы локальность и в смысле обхода дерева (в двухмерном пространстве) сохранить, и в смысле записи в pixels.

Мальчики, выручайте, ога?

Vikusya
()