Архив за 03 октября 2014 - 3

Я программирую на Rust уже достаточно давно, но на самом деле это не имеет большого значения. Rust настолько динамичен, что стоит отвлечься на пару месяцев, и придётся писать уже на фактически другом языке. Однако одна вещь остаётся неизменной: вектор развития. С каждым обновлением, каждой модификацией язык становится всё лучше и лучше.

Изменениям всё еще не видно конца, но даже сейчас язык уже кажется более стабильным, чем несколько месяцев назад, и начинают появляться некоторые устойчивые шаблоны проектирования API. Я подумал, что настало время исследовать всё это поглубже и решил переписать мою библиотеку для redis.
Читать полностью »

Привет!

На днях Techcrunch опубликовать новость о том, что для iOS появится специальная клавиатура Phraseboard. Вам это ничего не напоминает?

image

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

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

Две из трех представленных моделей не имеют функции обмена данными

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

Предупреждаю сразу, это трюк. Он подойдёт далеко не всем и не всегда, но если вам нужно вывести окно с какой-то информацией слева от основного — то мой способ будет в самый раз.

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

Для начала, немного вводных данных. Segue — это способ смены экранов в iOS. Одна из самых популярных разновидностей, это push (с версии iOS 8 — show). Push segue всегда замещает текущий вид справа налево. То есть, у вас как-бы справа есть второе окно, и при нажатии кнопки оно переезжает налево, замещая первое.

Такое поведение вы видите в телефонной книге при выборе абонента. При этом, вверху появляется кнопка возврата на предыдущее окно, и, при нажатии на него, происходит искомая анимация слева направо.

Проблема в том, что мне нужно было сделать всё тоже самое, но в зеркальном отражении и стандартных способов для этого не существует (если верить Google). Есть масса инструкций, как сделать custom segue с похожей анимацией, но все они режут глаз своей неестественностью по сравнению с родным push.

Вот, что у меня получилось в итоге:

Используются исключительно стандартные методы и 0% кастомной анимации. Готовый пример на GitHub.Читать полностью »

Нам на Roem.ru закинули пару случаев неожиданных задержек выплат из Робокассы, один неконкретный (без контактных данных, номера договора или тикета), а второй конкретный, что выводы по Webmoney из Робокассы отнимают существенное время и не удовлетворяются полностью (что приводит к накоплению долга). 

Олег Покровский признал, что со скоростью вывода по WMR есть проблемы, однако сказал, что заявки на вывод Qiwi или в "Яндекс.Деньгах" выполняются быстро.

panels

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

Как отдельный продукт панели управления хостингом стали широко использоваться в конце 1990-х годов. За прошедшее с тех пор время они очень изменились и усовершенствовались. Сегодня на рынке представлено огромное количество решений для управления хостингом — как свободных, так и проприетарных. Как из всего этого многообразия выбрать действительно стоящий продукт?

В Интернете можно найти публикации, в которых сравниваются имеющиеся панели (вот, например, неплохой переводной материал; см. также здесь). Мы решили составить собственный обзор, в котором акценты расставлены несколько по-иному, чем в опубликованных ранее. Одним из основных критериев, положенных в основу нашего обзора, является поддержка панелями веб-серверов и их комбинаций. Кроме того, в нашей статье мы рассматриваем продукты, в публикации по ссылкам выше не вошедшие.
Читать полностью »

Максим Спиридонов в Фейсбуке пишет о прекращении выхода своей передачи "Рунет сегодня" на радио Столица.fm: 

«Моя программа "Рунет сегодня" перестает выходить в эфире радио Stolica.fm (бывший Финам FM). Добрые люди в руководстве радиостанции не посчитали нужным сообщить мне об этом лично и заранее. Или побоялись сделать это.

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

image

На протяжении всего 2013 и 2014 года законодатель демонстрировал нам свое неутолимое отеческое желание позаботиться обо всех нас, принимая меры нормативно-правового характера для обеспечения информационной безопасности наших детей, а заодно и взрослых. На протяжении всего года немыслимое количество раз редактировались федеральный закон “Об информации”, “О связи” и “О СМИ”. Преследуя виртуальных педофилов, террористов и наркоторговцев, депутаты Государственной думы сделали все, чтобы расширить перечни запрещенной информации, а также установить новые правила гражданского оборота информации в российском сегменте интернета.

Медиалоббисты, представляющие крупнейшие американские транснациональные корпорации в области кино, музыки и ПО, а также ряд обслуживающих рынок коллективного управления авторскими правами организаций, оценившие по достоинству новые правовые механизмы для блокировки сайтов в интернете, использовали заданный властью тренд, для принятия “антипиратского закона” ver.1.0, по которому был установлен алгоритм для закрытия доступа к файлообменникам и цифровым библиотекам, предоставляющих возможность неавторизованного копирования материалов, защищенных авторским правом. С самого начала было понятно, что этим дело не кончится. Да и действительно, довольно странно выглядит закон, предусматривающий особый порядок охраны правовых интересов правообладателей в отношении фильмов, кинофильмов, телефильмов, и не охраняющий интересы владельцев иных объектов авторских прав, ведь гражданское законодательство не знает более или менее приоритетных объектов охраны, предусматривая одинаковый порядок защиты исключительных прав правообладателей различных авторских объектов.

Поэтому вполне закономерно, что после принятия первой версии антипиратского закона, из разных отраслей стали поступать интенсивные сигналы, о необходимости расширения закона. Такие просьбы поступали от правообладателей произведений, оказавшихся за бортом “антипиратского закона”, а также от организаций, специализирующихся на борьбе с цифровым пиратством. Таким образом, 04 июля 2014 г. Государственная дума приняла во втором чтении “антипиратский закон” ver.2.0., расширяющий действий на все объекты авторских прав, кроме фотографий (объясняется это тем, что никаких обществ по защите прав фотографов, лоббирующих свои интересы, в настоящее время в России не существует).
Читать полностью »

Парсинг (синтаксический анализ) представляет собой процесс сопоставления последовательности слов или символов — так называемой формальной грамматике. Например, для строчки кода:

import matplotlib.pyplot  as plt

имеет место следующая грамматика: сначала идёт ключевое слово import, потом название модуля или цепочка имён модулей, разделённых точкой, потом ключевое слово as, а за ним — наше название импортируемому модулю.

В результате парсинга, например, может быть необходимо прийти к следующему выражению:

{ 'import': [ 'matplotlib', 'pyplot' ], 'as': 'plt' }

Данное выражение представляет собой словарь Python, который имеет два ключа: 'import' и 'as'. Значением для ключа 'import' является список, в котором по порядку перечислены названия импортируемых модулей.

Для парсинга как правило используют регулярные выражения. Для этого имеется модуль Python под названием re (regular expression — регулярное выражение). Если вам не доводилось работать с регулярными выражениями, их вид может вас испугать. Например, для строки кода 'import matplotlib.pyplot as plt' оно будет иметь вид:

r'^[ t]*import +D+.D+ +as D+'

К счастью, есть удобный и гибкий инструмент для парсинга, который называется Pyparsing. Главное его достоинство — он делает код более читаемым, а также позволяет проводить дополнительную обработку анализируемого текста.

В данной статье мы установим Pyparsing и создадим на нём наш первый парсер.

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

Всем привет.
На днях, по некоторым причинам, мне пришлось устанавливать php framework Laravel 5 (dev версия) на старую добрую Windows XP x86 (x32).
Опыт для меня не привычный, так как пришлось использовать не самую свежую версию php, но для новичка статья может оказаться полезной.
Итак, если перед вами встала задача (да хоть ради экспериментов в рабочее время на старой платформе) установить dev-версию фреймворка Laravel, то эта статья может оказаться весьма полезной. Добро пожаловать!
Читать полностью »


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