µ-blog

02.04.12: Соскучился по Android, купил LG Optimus Link всего за 4 тыр.
16.02.12: http://t.co/qrXrLkMp - тестирование сайтов на разных разрешениях экрана.
30.01.12: http://t.co/CKlZhC67 - жаль на Dendy такого не было)
26.01.12: Как создать аналог Dropbox на своем сервере - http://t.co/T60oWP4U .
20.12.11: Кросс-броузерный CSS3 градиент-генератор: http://t.co/jmijA9vF
17.10.11: В закладочки - http://t.co/8OgLvkgm
09.10.11: Купил Deepcool N600 - неплохая подставка для охлаждения горяченьких ноутбуков с диагональю до 15.6". http://t.co/ndqaRFpa
14.09.11: mcedit ~/.bashrc, umask -S ug+rw
30.08.11: Flash MTB game - http://t.co/CxIY7Pk
05.08.11: Одноклассники.ру открыли авторизацию на сторонних сайтах. В Логинзе уже есть кнопка.
28.07.11: Делаем заглушку sendmail под xampp на php (применимо для любых сборок и платформ) - http://t.co/D98bCNV
27.07.11: Похоже скоро придется хостить свой блог на своем домашнем сервере... :(
20.07.11: svnadmin create /var/svn/repname; mkdir ~/skel/trunk (branches, tags); svn import ~/skel/ file:///var/svn/repname -m "Initial Import"
04.07.11: Если SVN отвечает "Can't find a temporary directory: Internal error", значит кончилось место на сервере.
04.07.11: $mondayThisWeek = date('Y-m-d', strtotime(date('Y') . 'W' . date ('W') . '1' ));
 


GIMP 2.8 - свершилось!

С выходом GIMP версии 2.8 наконец-то появилась возможность работать в режиме Single-Window, когда все окна объединены в одно (по аналогии с Photoshop).

Другие подробности о новшествах GIMP 2.8 можно узнать, например, здесь.

Хостинг "ТаймВэб" — профессиональный платный хостинг!
Регистрируйтесь и покупайте домены в зоне .RU всего за 99 рублей, а в .РФ - за 95 рублей!
Качественный хостинг VPS на базе XEN без оверселлинга - от 350 рублей в месяц! 7-дневный тестовый период.

Удобные selectы на JQuery Chosen

Часто бывает, что в админ-панели сайта при редактировании какого-н. контента приходится прокручивать в поиске подходящего значения длинные-предлинные списки (select-ы). На помощь приходит симпатичный и удобный плагин JQuery Chosen (кстати, он так же есть и для Prototype). Вот наглядный пример:

301 редирект (с без www на www)

Apache:

  1. RewriteEngine On
  2. RewriteCond %{HTTP_HOST} ^domain\.ru [NC]
  3. RewriteRule ^(.*)$ http://www.domain.ru/$1 [L,R=301]

nginx:

  1. if ($host = 'domain.ru' ) {
  2.     rewrite ^(.*)$ http://www.domain.ru$1 permanent;
  3. }

PHP:

  1. if ($_SERVER['SERVER_NAME'] == 'domain.ru') {
  2.     header('HTTP/1.1 301 Moved Permanently');
  3.     header('Location: http://www.' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']);
  4.     exit;
  5. }

NetBeans Portable

NetBeans – это открытая кроссплатформенная IDE для разработки на различных языках программирования (Java, C, C++, PHP, Groovy). Официальный сайт: netbeans.org.

Товарищ с ником wkupfer создал Portable-версию NetBeans, за что ему огромное спасибо. Скачать здесь: http://sourceforge.net/projects/nbportable/.

Я затестил версию 7.1.1. Судя по всему, в комплекте идет минимальная версия NetBeans без каких-л. модулей (запускался с ошибками). Кроме того, для работы Portable-версии необходимо скопировать содержимое папки Program Files\java\jre6 в папку NetbeansPortable\App\jdk. Ну, и если у Вас есть уже установленная и настроенная версия Netbeans, достаточно скопировать ее в NetbeansPortable\App\netbeans в замен существующей.

Напоминаю, если хочется включить английскую версию Netbeans, можно поправить файл netbeans/etc/netbeans.conf, добавив в netbeans_default_options параметр --locale en:US.

Корректный часовой пояс для PHP и MySQL

Т. к. в России отменили перевод часов на летнее и зимнее время, пришлось волей-неволей столкнуться с проблемой корректного отображения времени на многих веб-серверах.

Правится это просто (на примере часового пояса Москвы):

PHP:

MySQL:

  1. SET time_zone='-04:00';

Допиливаем стандартный CListView в Yii Framework

Стандартный виджет CListView в Yii Framework в режиме AJAX не изменяет адресную строку. Из-за этого после обновления страницы мы теряем все последние заданные параметры.

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

Стал часто использовать данный фреймворк, так что начинаю новый тег “yii framework” :)

USB3 в массы - тест двух 2.5 HDD

Выпуск материнских плат с поддержкой USB 3.0 состоялся уже достаточно давно, а я только совсем недавно смог воспользоваться этой версией после смены платформы со старой Intel G43 на AMD A75.

В этой статье я расскажу о результатах сводного тестирования двух внешних корпусов Agestar для жестких дисков форм-фактора 2,5”.

Бракованный Llano или Athlon II X4 631

В 2011-м году компания AMD выпустила ряд процессоров с новой микроархитектурой Fusion. Суть проекта заключалась в объединении центрального и графического процессоров в одном кристалле. Подробнее про архитектуру AMD Fusion можно почитать здесь.

Но суть как бы не в этом... В 2011 году AMD так же анонсировала процессор Athlon II X4 631, который не был очередным процессором с архитектурой K10 (под Socket AM3). Этот Athlon стал ничем иным, как отбракованным AMD A6-3650. В отличии от A6, Athlon лишился встроенного графического процессора, а все остальные характеристики остались те же: частота 2.6 ГГц, 4 Мб кэш L2, TDP 100W (хотя вскоре вышла версия 65W). AMD уже давно практикует такой подход, но зато это хорошо сказывается на цене. В январе 2012 г. я приобрел данный процессор всего за ~2700 рублей (это был самый дешевый 4-ядерный процессор).

С наступающим Новым Годом!

Поздравляю Всех с наступающими 2012 годом! В 2011 году произошло два очень важных для меня события: я женился и приобрел квартиру. Желаю всем в новом году не менее ярких и счастливых событий!

Как определить включены ли cookies?

Пример реализации силами Javascript:

  1. function detectCookies() {
  2.     var cookiesEnabled = navigator.cookieEnabled ? true : false
  3.     if (typeof navigator.cookieEnabled == undefined && !cookieEnabled) {
  4.         document.cookie = "detect_cookies";
  5.         cookiesEnabled = document.cookie.indexOf("detect_cookies") != -1 ? true : false
  6.     }
  7.     return cookiesEnabled;
  8. }

На серверной части реализуемо через setcookies, но проверить можно только после обновления страницы. Опять же без перезагрузки страницы придется использовать AJAX/Javascript.

1 2 3 4 5 6 ...