За месяц Декабрь, 2011

IDE для PHP - скачать бесплатно PHPStorm WebStorm, ключи и кряки

PHPstorm и WebStorm - 2 IDE для Web-разработки. Тем, кто ищет ключ-серийник для PHPStorm или кряк для WebStorm, возможно, будет интересна эта статья.

Выбирая PHP-редактор многие начинают с аналогов notepad-а. Простой, лёгкий PHP редактор кода, минимальная подсветка синтаксиса (если есть). Полезные плюшки,  к примеру, автоподстановка кода, автоотступа, Tab нескольких строк одним нажатием, работа с FTP и другие мелочи очень упрощают жизнь.

Скачать бесплатно PHPStorm + Webstorm EAP 

Со временем, переходя к реализации более сложных проектов возрастают и потребности - приходится работать с SVN/git или другой CVS, понимаешь удобство Debug (xDebug), не лишним будет прогнать десяток-другой тестов PHPUnit, достают постоянные “почему не работает кнопка” после добавления очередной фишки - разбираешься с Selenium.

Во многих современных IDE для PHP-разработчика (в частности) эти и некоторые другие инструменты собраны для удобного доступа из контекстных меню или с использованием горячих клавиш. Конечно, использовать IDE или нет - каждый решает сам.. Иногда особой необходимости в ней нет (пару строчек кода можно исправить в блокноте без особой сложности).

Обзор возможностей PHP IDE можно посмотреть в сводной таблице PHP IDE. (благодарим Владимира) Таблица обновляется, поэтому дублировать её здесь не вижу смысла.

Если возникнет желание бесплатно скачать PHPStorm (или  WebStorm) - не забываем, что они обе имеют триальный период (в течение которого можно использовать программу без всяких кейгенов бесплатно), а также бесплатный EAP (строго говоря, бесплатную - Early Access Program - программу раннего доступа). Смысл EAP - предоставление самой последней версии (с самыми “вкусными плюшками”) абсолютно бесплатно..

В чём подвох? Да нет подвоха - по сути Вы становитесь одним из первых пользователей новых фишек и можете сообщать разработчикам об ошибках (инструмент для этого встроен в PHPStorm). Как правило, версии EAP не содержат супер серьёзных косяков, однако рекомендации от разработчиков (в части бэкапов) лишними не будут.

Скачать бесплатно PHPStorm EAP-версию - можно попробовать прямо сейчас

UPD. Плагин SVN 1.7 для PHPStorm официально не вышел. Актуальный пре-релиз  Svnkit можно скачать с сайта svnkit. Также можно скачать плагин для PHPStorm Subversion 1.7 (экспериментальная поддержка - распаковать в plugins/svn4idea)

Опубликовано Декабрь 26, 2011 | автор: levik  |  Комментарии (2) »

HTML-каркас приложения

Как быстро и просто создать HTML (+CSS) каркас для приложения? Есть уже готовые инструменты, которые могут помочь в этом. Для начала можно посмотреть статью про CSS фреймворки.
Однако, со временем инструменты совершенствуются и развиваются.

Bootstrap от Twitter - популярный “бутстрап” - набор файлов для быстрого старта. Уже имеется набор разметок страницы, блоки, кнопки, таблицы, списки, шаблоны для информационных сообщений и многое другое. Демку можно посмотреть на сайте.

HTML KickStart - это ультра-легкий набор файлов HTML5, CSS и jQuery, макетов и элементов дизайна, позволяющий “быстрый старт” и сэкономить 10 часов в новом проекте. Демо - на сайте.

Foundation
An easy to use, powerful, and flexible framework for building prototypes and production code on any kind of device.
foundation.zurb.com/

Fbootstrapp is a -аналогичный инструмент для быстрого старта приложения под фейсбук. Включает базовые CSS и HTML для шрифтов, форм, кнопок, таблиц, навигационные элементы и многое другое. Оформление в стилей фейсбук.

Initializr - генератор шаблонов HTML5  от Jonathan Verrecchia. аналогично - быстрый старт с HTML5 Initializr will generate for you a clean customizable template with just what you need to start!
www.initializr.com/

YAML CSS
A modular CSS framework for truly flexible, accessible and responsive websites
yaml.de

.Simpliste - отечественная разработка :) набирает популярность.
cssr.ru/simpliste/ru.html

Таким образом, для быстрого старта веб-приложения не обязательно разрабатывать полноценный дизайн - можно воспользоваться готовыми наборами для быстрой разработки макета. Bootstrap всё больше набирает популярность - именно это и является одним из недостатков - многие сайты становятся похожими друг на друга, как 2 капли воды.

Опять возвращаемся к шаблонам? :)

Опубликовано Декабрь 25, 2011 | автор: levik  |  Комментарий (1) »

Скачать бесплатно антивирус касперского

Где скачать бесплатно Kaspersky antivirus? Можно и здесь!

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

Нет-нет.. действительно можно.

Скачать бесплатно Антивирус Касперского - это нормально!

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

Это не варез! Но это бесплатно!

Всё дело в том, что Антивирус касперского можно скачать с сервера Яндекса (и он там нашёлся!). Версия Касперского от Яндекса предлагается в бесплатное пользование по совместной акции. Лицензионный ключ от яндекса действует 6 месяцев с момента первой активации.

Из ограничений:

  • не предоставляется техническая поддержка;
  • лицензия только на один компьютер;
  • воспользоваться бесплатным антивирусом касперского от Яндекса можно только один раз;

В любой момент можно приобрести полную версию антивируса Касперского (на “специальных” условиях), а в случае продления и оплаты Яндекс.деньгами - скидка (на момент написания статьи - 20%).

Качайте! Устанавливайте! Защищайтесь!

Опубликовано Декабрь 21, 2011 | автор: levik  |  Нет комментариев »

BSOD ERROR 0×0000007b 0xc0000034 0×00000000 0×00000000

Очередной синий “экран смерти” на Windows XP.

0×0000007b 0xf79d9524 0xc0000034 0×00000000 0×00000000

http://support.microsoft.com/kb/324103/ru - заглядываем в официальный man от Microsoft и английским по белому читаем:

INACCESSIBLE_BOOT_DEVICE (на экране, кстати текста ошибки не было)

Однозначного ответа, почему возникает ошибка 0×0000007b и как убрать ошибку - нет. Причин может быть несколько.

Сообщение об ошибке «Stop 0×0000007B» может появляться, если загрузочный сектор компьютера поражен вирусом.

Сообщение об ошибке «Stop 0×0000007B» может появиться при следующих сценариях.

  • Драйвер устройства, необходимый контроллеру загрузки компьютера, не настроен для запуска во время загрузки.
  • Драйвер устройства, необходимый контроллеру загрузки, поврежден.
  • Данные в реестре Windows XP (относящиеся к способу загрузки драйвера устройства при запуске) повреждены.

Сообщение об ошибке «Stop 0×0000007B» может появляться, если возникает конфликт ресурсов между контроллером загрузки и другим контроллером или между устройствами SCSI.

А также  сообщение может возникнуть, если загрузочный раздел поврежден и не может быть подключен Windows XP - проверять при помощи утилиты chkdsk (можно использовать установочный диск). К сожалению, не помог

chkdsk /p /r

Помогло убрать ошибку 0×0000007b :

- загрузка с установочного CD Windows XP (синий экран установки, не “смерти”), выбираем “установить”. Следующим шагом программа ищет предыдущие установки  Windows XP - если находит, предлагает восстановить (нажать R но Без консоли восстановления)

При установке будет повторно запрошен серийный номер - будьте готовы.

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

Сталкивались с ошибкой 0×0000007b и решили по другому? Welcome в комментарии.. =)

Опубликовано Декабрь 15, 2011 | автор: levik  |  Нет комментариев »

FLASH PDF - отобразить PDF-документ на сайте в swf

Нередко на сайтах можно встретить красивые PDF-листалки на флэш. Можно ли сделать просмотр PDF файла у себя на сайте? Наверняка! Но чем?

http://lvolume.net

http://emagcreator.com/

www.ispring.ru

http://ajaxdocumentviewer.com/servicesregular.asp

http://luxedition.ru/flippingbook_pdf_publisher - довольно удобный конвертер, есть демо-версия с ограничением в 10 страниц

www.devaldi.com/?page_id=260 (http://flexpaper.devaldi.com/)

www.swftools.org - целый набор утилит для генерации флэшек из всего, чего только можно

PDF2SWF – Конвертер PDF файлов в SWF. Создаёт по одному кадру для отдельной страницы документа PDF. Распознаёт форматированный текст, таблицы, графики, формулы. Основан на xpdf - парсере PDF, который создал Derek B. Noonburg.
SWFCombine – Инструмент для создания комбинированных SWF
SWFStrings – Извлекает из SWF текст
SWFDump – Получает информацию об SWF файле, - об используемых в нем изображениях/шрифтах/аудио, проверяет на наличие перекрестных ссылок и bounding boxes.
JPEG2SWF - Конвертирует JPEG изображения в SWF слайд-шоу, с поддержкой сжатия h.263
PNG2SWF – Аналогично с PNG файлами
GIF2SWF – Аналогично с GIF, поддерживается обработка анимированных GIF.
WAV2SWF – Преобразует аудио файлы WAV в SWF, при помощи L.A.M.E. MP3 библиотеки.
AVI2SWF – Конвертер AVI файлов в SWF с поддержкой Flash MX H.263. Примеры использования можно найти на сайте
Font2SWF – Конвертер файлов шрифтов (TTF, Type1) в SWF.
SWFBBox – Инструмент для работы с SWF bounding boxes - просмотр, редактирование.
SWFC - SWF-компилятор - создаёт SWF из простых файлов скриптов. Поддержка ActionScript 2.0 и ActionScript 3.0.
SWFExtract – декомпилятор SWF - можно получить видеофрагменты, аудио, картинки из флэшки.
AS3Compile автономный ActionScript 3.0 компилятор. Совместим с Flex.

Обсуждения и поиски
http://www.drupal.ru/node/33163
http://www.maultalk.com/topic88666.html
http://silin.su/#AS3/gadgets/book/bin - листалка “своя и не крутая”(с)
http://www.phpclasses.org/package/5260-PHP-Convert-PDF-files-to-JPEG-images-using-ImageMagick.html

Опубликовано Декабрь 11, 2011 | автор: levik  |  Комментарий (1) »

Почему не работает Ajax в Internet Explorer (IE 7, IE 6)

Несколько раз “на пустом месте” странная ситуация возникала - ajax в принципе работает, но в IE7 - не работает. :) Отправка уходит.. ошибка не возникает (вроде как). Да.. использовалось всё это дело с JQuery - т.е. не работали запросы .ajax | .get | .post

Ситуация оказалась проста до безобразия - от сервера приходил “неправильный” (для IE) заголовок ответа.

Для cp1251 “charset=cp1251″  следует настроить отдачу заголовка “windows-1251?

header('Content-Type: text/html; charset=windows-1251', true);

Для utf8 ситуация аналогичная - вместо utf8 - “utf-8″

И, конечно же, не должно быть кэширования ответа

Опубликовано Декабрь 5, 2011 | автор: levik  |  Комментарий (1) »

Вычисление расстояния между двумя цветами

Задача: найти на изображении элементы, похожие на заданные.

Вроде всё просто - смотрим на изображение.. видим фигуру, и говорим “вот она”. Однако, как объяснить компьютеру, что этот цвет должен быть примерно похож на заданный? По сути - задача сводится к тому, чтобы найти цветовое расстояние между 2-мя точками.. Цвет точки можно представить в виде RGB-кода.. т.е. по сути, ищем расстояние в пространстве RGB  R1G1B1 и R2G2B2. Но есть “одно НО”…

Формула Цветового Отличия (англ. Color Difference Formula), она же Формула Цветового Различия, Цветоразность, или Цветовое Расстояние (расстояние между цветами, используется в колориметрии) — это математическое представление, которое позволяет вычислить различие между двумя цветами.

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

Т.е. если RGB представить в виде куба и искать декартово расстояние между двумя точками по 3-м координатам R,G и B “в чистом виде”, то можно “нарваться” на странные совпадения, т.к. иногда при небольшом расстоянии цвета выглядят совершенно по-разному.

Для этого существует цветовое пространство XYZ, полученное в результате исследований: что именно видит глаз человека… При этом вводится точка белого цвета (d50).

После этого появилась ещё одна система LAB - в ней изменение цвета происходит линейно (если линейно изменять RGB - о плавности речи быть не может.. при этом возможны скачки).

Однако, для определения положения заранее известной фигуры, размещённой на произвольном рисунке (в jpg цвета искажаются, так что даже если прозрачность наложенного слоя отсутствует, не исключено, что полного совпадения цвета не будет) по заранее известным точкам (выбираем несколько контрастных точек на рисунке-маркере - знаем их координаты друг относительно друга и цвета) с довольно большой точностью (в конкретной задаче ни одного ошибочного расчёта) можно воспользоваться самой простой метрикой.. a1 и a2 - 2 точки в RGB-пространстве.|R1-R2| + |G1-G2| + |B1-B2|

Несмотря на сомнительную корректность такой формулы, результат получился вполне приемлемый.
С дополнительной информацией по определению цветового расстояния можно ознакомиться…

http://www.easyrgb.com/index.php?X=MATH&H=07#text7

http://proteus2001.narod.ru/my/color/color.html

Опубликовано Декабрь 3, 2011 | автор: levik  |  Комментарий (1) »

Ошибка при удалении файлов ‘/bin/rm: Argument list too long’ error

При удалении большого количества файлов в linux (больше 1024) возникает ошибка Argument list too long.

lev@localhost /var/tmp/ # rm log-* /bin/rm: Argument list too long.

Для удаления следует перейти в каталог с файлами (или выполнить поиск по каталогу) и использовать команду

find . -name 'log-*' | xargs rm

Возможен и более изысканный поиск файлов в linux.

Для удаления всех файлов в текущем каталоге аргумент -name можно опустить:

find . | xargs rm

Если компьютер задумался - можно периодически проверять количество файлов в текущем каталоге
ls -l| wc -l
Если оно будет уменьшаться - процесс идёт

Опубликовано Декабрь 2, 2011 | автор: levik  |  Комментарий (1) »

DRUPAL warning: array_keys() [function.array-keys] menu.inc on line 1224

Сайт на друпал (версия в возрасте) стал выдавать предупреждение

…includes/database.mysql.inc on line 174
array_keys() [function.array-keys]: The first argument should be an array in /…/includes/menu.inc on line 1224
Wrong parameter count for min() in file …/includes/menu.inc on line 1224

Что-то с меню :) проблема при разборе массива.

Заходим в includes/menu.inc - в указанной строчке там “пустота” (т.е. menu не присваивается). Получение значений должно происходить в этом же файле в функции menu_get_menu (около 200 строчки начало функции), а около 210 следующий код:
if ($cached = cache_get($cid, 'cache_menu')) {
$_menu = unserialize($cached->data);
}

Если закомментировать первую ветку (в if), то ошибка пропадает. Меню достаётся целиком из базы.
Не забываем вернуть кэширование на место..

Опубликовано Декабрь 1, 2011 | автор: levik  |  Нет комментариев »