Рубрика «Программирование» - 1011

Библиотека Jevix для Python
Всем доброго времени суток!
Недавно я задал вопрос на habre, про аналог библиотеки jevix для pyton.
Мне подсказали решение, но этих решений мне было недостаточно, да и всем известно что Jevix самая популярная библиотека для работы с html.

Для тех кто впервые слышит по Jevix

Jevix — средство автоматического применения правил набора текстов, наделённое способностью унифицировать разметку HTML/XML документов, контролировать перечень допустимых тегов и аттрибутов, предотвращать возможные XSS-атаки в коде документов.

Автором этой библиотеки для php является, хабра житель ur001, ссылка на проект jevix.ru/project/
Читать полностью »

Посмотрим на код:

use strict;
use warnings;

sub mysub($$)
{
    my ($a, $b) = @_;
    print "$an";
    print "$bn";
}
my $x = undef;
mysub($x && $x->[0] =~ /abc/, $x = []);

Может ли mysub в качестве первого аргумента получить нечто, что в boolean контексте является истинной?
Читать полностью »

Данная статья является продолжением первой части.
Продолжаем мучить Boost.Python. В этот раз настала очередь класса, который нельзя ни создать, ни скопировать.
Обернём обычные обычную сишную структуру с необычным конструктором.
И поработаем с возвращением ссылки на поле объекта C++, так чтобы сборщик мусора Python его не удалил ненароком. Ну и наоборот, сделаем альтернативный вариант, чтобы Python прибрал мусор после удаления того, что ему отдали на хранение.
Поехали…
Читать полностью »

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

В данной статье хотелось бы рассказать об одной интересной проблеме, с которой мне пришлось столкнуться. Необходимо было автоматизировать процесс подстановки большого количества именных параметров в SQL запросы типа INSERT и UPDATE, то есть избавится от наводнивших проект конструкций типа:

$paramsArray[‘fname’] = $_POST[‘fname’];
$paramsArray[‘sname’] = $_POST[‘sname’];

Всех, кому интересно, как я решил такую задачу, приглашаю под кат.
Читать полностью »

Грядут серьезные изменения в API Facebook — февраль, март, апрель 2013

Вам тоже недавно приходили оповещения от Facebook-приложений? Со смыслом «мы тут кое-что поменяли в API, поэтому, возможно, приложение такое-то скоро начнет работать некорректно».

Дело в том, что не так давно Facebook внедрил новую практику Breaking Change Policy (если по-русски, то что-то вроде «Политика критических изменений»). Социальная сеть уведомляет разработчиков о грядущих «перестройках» в API, что, соответственно, требует изменений в коде уже существующих приложений. И которые надо будет учесть при разработке новых, естественно. Facebook призывает разработчиков подписаться на блог, дабы не пропустить ничего важного.

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

Получить видео с ВК при помощи PHP

У меня возникла проблема — как получить видео с всеми известной соц.сети vkontakte.ru. и установить его на сайте. Ключевой момент, я не хотел использовать IFRAME или же ещё какие-то сервисы ВК, я хотел чтобы видео выглядело так, как будто оно лежит у меня на сайте. Облазив пару десятков сайтов, максимально что я нашёл, это сайты для загрузки видео, такие как ВИДЕОСЕЙВЕР и тп. Это всё не подходило, поскольку мне нужен был код которой я мог интегрировать в свой PHP движок.
Нашлось пару самописных PHP скриптов – которые стоили от 30 до 500 у.е. Но половину из них были закодированы Zend Encoder – ом или же просто использовали свои сервера для поиска видео-файлов и не имели особой ценности для меня.
Так началось вдохновение. Я решил использовать мобильную версию поскольку она намного проще. Первым дело я составил алгоритм получение видео с ВК.

image

Вход В ВК

Первым куском кода был вход в ВК. Я порылся в интернете и нашел нечто подобное:

Читать полностью »

После моей первой публикации на Хабре о стеганографии, у меня было много мыслей и в результате много интересных идей. На некоторые идеи меня натолкнули комментаторы предыдущей статьи, к некоторым я пришел сам.Читать полностью »

Давайте рассмотрим среду: в ней могут существовать частицы «еды» и агенты. С помощью сенсоров агенты могут получать информацию о среде. Если агент находится достаточно близко к частице пищи, то она считается «съеденной» и исчезает, а в тот же самый момент в случайном месте среды появляется новая частица еды. Задача группы агентов — собирать пищу. Эффективность рассматривается исходя из суммарного количества собранной пищи.

Давайте смоделируем конкурентную среду для автоматического поиска оптимального поведения группы агентов. Алгоритм поведения агентов будем конструировать в виде нейронной сети.
Читать полностью »

Понадобилось нам однажды измерять температуру и влажность в одном помещении, несложная задача, стоит обратиться в гугл и там до кучи примеров на ардуино как это сделать, скетчи, схемы и пояснения. Простые задачи подобного рода возникают достаточно часто и каждый раз модифицировать код для контроллера не хотелось. Мы подумали, а что если написать что-то типа интерпретатора для микроконтроллера(МК), который бы принимал команды и выполнял их. Таким образом отпадает необходимость писать софт каждый раз для МК, это занятие требует времени зачастую больше, чем под ПК из-за того, что объем памяти МК ограничен и не попользуешься развитыми средствами типа regex и прочего. Интерпретатор должен быть расширяемый, то есть добавление новой команды, не должно быть зубодробительной операцией. Также в будущем он должен быть легко переносим на ARM Cortex-M3 архитектуру и способен работать через различные интерфейсы связи будь то RS485, Ethernet, ZigBee.

На основании этих требований было решено разработать такое устройство и + библиотеки для работы с ним под несколько языков (сейчас Python и GCC C/C++) и ОС ( Win и Linux) чтобы не париться больше с написанием каждый раз софта для контроллера, который делает рутину — собирает данные или что-то включает или выключает.

Контроллер MeteoBoard
Рис. 1. Контроллер MeteoBoard
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js