Словари азербайджанского языка от Obastan.com

Интересный сайт Obastan

Разные словари: толковый словарь, азербайджано-русский, русско-азербайджанский, лезгинский.

И довольно удобный поиск. Вообщем - советую :)

Краткий обзор книги "JQuery in Action"


Вчера наконец то до конца прочитал книгу. Первую за последние несколько лет (первую до конца).
Книга "JQuery in Action", авторы: Бер Бибо и Иегуда Кац.

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

15 библиотек для построения графиков на JavaScript

Отображение данных в виде графиков часто может если не заменить, то заметно дополнить табличное отображение, а во многих случаях облегчить восприятие информации. Есть множество способов отрисовывать графики, но в данной заметке я расскажу о 15 бесплатных библиотеках на JavaScript. Надеюсь вам они будут полезны.

Доступ к дискам(разделам) виртуальных машин (lvm in lvm)

Иногда бывает необходимо получить доступ к дисковым разделам виртуальных машин. Здесь я постараюсь описать возможности доступа как для файлов-имидждей виртуальных машин, так и для LVM, в случае, если виртуалки стоят на LVM разделах.

В случае с разделами на файлах-имиджах, будем использовать lood-девайсы.
Далее, несколько возможных вариантов файлов-имиджей:

1. имидж содержит один раздел, например sda1, именно раздел, а не диск с один разделом.

VPN-сервер (pptpd/xl2tpd+mysql+radius) на CentOS 6

Здесь я постараюсь описать процесс установки и настройки VPN-сервера на CentOS6 с пользователями в MySQL и авторизацией через radius по chap для xl2tpd и для шифрованного соединения по ms-chap-v2 и mppe для pptpd.
Дано

Виртуальная машина на KVM со свежеустановленной CentOS6 x86_64 minimal.
Задача

1. Установить и настроить в связке pptpd/xl2tpd, freeradius2, radiusclient-ng и mysql.
2. Создать 2-х клиентов для подключения к настроенному VPN-серверу, с выходом в нет четез NAT. Один клиент с динамическим получением адреса, второй с постоянным IP.
3. Перенести pool адресов для раздачи динамическим клиентам из pptpd в radius.

Министерство печати

А в Великобритании есть министерство печати. Так то.

http://ministryoftype.co.uk/

Hetzner и IPv6

При заказе на Hetzner блока IPv6, Вы получите письмо примерно следующего содержания:
IPs: 2a01:4f8:110:4121:: /64
Gateway: 2a01:4f8:110:4116::1 /59
Теперь необходимо всё это дело прописать у себя. У меня на одной из машин крутится несколько виртуальных, соответственно адреса выдадим и им. Все машины на CentOS.

Синхронизация DNS-зон c сервера с Plesk-панелью

Задача может возникнуть когда на сервере с Plesk-панелью имеется всего один IP-адрес. В данном случае, что-бы не заводить slave-зоны на другом сервере каждый раз вручную, можно в крон поставить скрипт, который и будет производить синхронизацию зон. Причем, не только добавлять новые зоны, но и удалять старые, а также не только основные домены,но и алиасы к ним.

ip sla, ipsec и event manager

Заметку делаю для себя, чтоб не забыть.
Итак, столкнулся с тем, что track отбивает маршрут, но сессия ipsec висит. Соответственно, пока её не прибить, трафик не ходит по новому маршруту с новым тунелем.
Проблему решил с помощью event manager. Настраивалось все на 2811.

Nginx с php на CentOS

Установим и настроем Nginx с PHP на примере CentOS 5.4. Все делается довольно быстро и просто.

Первым делом ставим репозитарий epel:

# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/$(uname -m)/epel-release-5-3.noarch.rpm

Устанавливаем nginx:

# yum install nginx

Изменение размеров файлов-имиджей XEN Dom-U

В случае, если, Вы пользуетесь файлами имиджей с сайта stacklet.com, все совсем просто:
Отключаем машину. Создаем пустой файл нужного размера:

dd if=/dev/zero of=Tempfile bs=1M count=10010

добавляем этот файл в конец файла-имиджа, например:

cat Tempfile >>ubuntu.9-10.x86.img

Google Maps. Преобразование координат

Google Maps очень удобный инструмент для встраивания карт в корпоративные приложения. Существует развитый API для использования Google Maps в веб-интерфейсе на JavaScript. Однако при попытке использовать Google Maps в иных языках программирования может оказаться удобнее использовать простой статический API от Google Maps.

Некоторые тонкости по настройке сервера под себя

Статья про то, как упростить жизнь админа. Ни в коем случай не претендует на учебное пособие, а основана на личном опыте, как и написано в топике “под себя”.
Мы получили новый сервер, не важно, арендовали, взяли на колокейшн или ставим у себя в офисе.
Я не буду вдаваться в подробности установки OS, выбора RAID и прочего, каждому свое. Так же я не буду здесь описывать как установить LAMP или тому подобное.

CDP на Linux

Всем известно про замечательный протокол CDP (Cisco Discovery Protocol) для Cisco. Оказывается что и для Linux тоже есть возможность использовать его прелести. Есть проект LLDP, который нам в этом и поможет.

Для тех, кто в танке: на cisco можно посмотреть соседей с включенным CDP коммандой sh cdp nei. Комманда выведет оборудование которое подключено, на каком порту и т.д., более подробно sh cdp ent Device_ID, уже по конкретному девайсу.

XEN в CentOS

В общих чертах про установку XEN и вирутальных машин под CentOS.
Начнем с того, поддерживает ли процессор виртуализацию:
если у Вас Интел (VT-x), то
# grep -i vmx /proc/cpuinfo
если АМД (SVM), то
# grep -i svm /proc/cpuinfo

Горячие клавиши в вебе, давайте обсудим.

Одна из важнейших вещей, над которой стоит подумать при реализации горячих клавиш на JavaScript для веб-приложения, это исключить переопределение клавиш предоставляемых клиентским браузером. Представьте себе, что вы используете некое веб-приложение, и вам понадобилось закрыть вкладку надав Ctrl+W, но при этом вкладка не зарывается, а отрабатывает некоторое действие приложение, только потому, что разработчик переопределил горячую клавишу используемую вашим браузером. Какая досада. По этой причине рекомендую с осторожностью использовать клавиши Ctrl (Windows) или Cmd (Mac) в ваших приложениях.

Полезные классы PHP

Ниже перечислен список, с кратким описанием, PHP-классов, которые облегчат работу разработчика в той или иной сфере.

В данной статье, я – это не я, а реальный автор, ссылка на которого в конце поста. Хотя во многом я с ним согласен.
PHP PSD Reader

OpenVPN с сертификатами X.509

В догонку к предыдущей статье , в этой будем настраивать OpenVPN на работу с сертификатами.

Для создания сертификатов для OpenVPN, разработчики уже позаботились, все команды есть в /usr/share/doc/openvpn-2.0.9/easy-rsa/2.0
создадим папку
# mkdir /etc/openvpn/keys
для начала правим файл vars
export KEY_DIR=”/etc/openvpn/keys”
export KEY_COUNTRY=”двухбуквенный код страны”
export KEY_PROVINCE=”провинция”
export KEY_CITY=”город”
export KEY_ORG=”организация” # вот это самая важная строка
export KEY_EMAIL=”почта”

OpenVPN-объединяем сети

Имееться 2-е сети в двух офисах 192.168.1.0/24 и 192.168.2.0/24
В качестве маршрутизатора, в одной сети стоит машина с CеntOS, в другой с Debian
Задача: создать туннель между маршрутизаторами посредством OpenVPN и настроить маршруты таким образом, чтобы сети за маршрутизаторами видели друг друга.


Для примера будем считать что IP на CentOS – 10.10.11.1, а на Debian – 10.10.12.2

FreeRadius+MySQL

Рассмотрим как настроить радиус-сервер с привязкой к базе данных в MySQL на примере CentOS, FreeRadius и MySQL.

Сейчас очень многие девайсы поддерживают работу через радиус, например точки доступа Wi-Fi.

Устанавливаем MySQL, если он конечно у Вас уже не стоит

Конфигурация cisco-рутера в качестве pptp-клиента

И так, все просто, даж очень, главное знать что есть такая скрытая команда service internal , по “?” не отображается.

Собственно, выкладываю куски конфигов:

vpdn enable
!
vpdn-group 1
request-dialin
protocol pptp
rotary-group 0
initiate-to ip адрес_куда_коннектимся
!

IPsec – Linux<->Linux

Соединение по ipsec двух серверов Linux RH, с другими не эксперементировал, ибо на серверах на 90% использую CentOS. На Debian-подобных дистрах, настройка несколько иная.

Будем делать ipsec по ключу.
Настройки для одной стороны, для второй все идентично.

VPN сервер на Linux

Быстро поднять pptp vpn-сервер на Linux для Windows пользователей (и не только).

Дебиан: apt-get install ppp pptpd

RH: yum install ppp pptpd

если pptpd пакета нет в репозиториях, то скачать его отсюда.

VPN-сервер

В догонку к предыдущему посту про VPN-сервер на Linux, приведу пример на cisco. Приведу только куски конфигов необходимых для функционирования VPN

добавляем

aaa authentication ppp default local

VIM — кратко обо всём.

1 Опции командной строки

-t {tag} — Открывает файл с функцией и позиционирует курсор на неё. Должен присутствовать файл tags сформированный командой ctags (ctags -h “.h.cpp” ./*).
+N — При открытии файла позиционирует курсор на строке с номером N.

Работаем с LINQ to XML

В первой статье в блоге .NET «Работаем с XML» в комментариях народ потребовал статьи LINQ to XML. Что же, попробуем раскрыть принципы работы этой новой технологии от Microsoft.

Создадим базу для ведения каталога аудиозаписей. База будет состоять из треков:

* Код
* Название
* Исполнитель
* Альбом
* Продолжительность
* Жанр

Bridge на cisco рутере

Понадобилось настроить Bridge на портах cisco-рутера? Все просто… недавно столкнулся… и сразу решил… и , чтобы не забыть, пишу сюда. Итак:
!
!
bridge irb
!
bridge 1 protocol ieee
bridge 1 route ip
далее обозначаем интерфейсы которые будут в бридже (в данном случае bridge-group 1) :
!
interface Ethernet0/1
no ip address
full-duplex
no cdp enable
bridge-group 1
!
interface Ethernet0/2
no ip address
full-duplex
no cdp enable
bridge-group 1
!
Далее создаем новый интерфейс BVI и даем ему IP-адрес:

interface BVI1
ip address 192.168.1.3 255.255.255.0

Все работает… ну, то есть, мы можем воткнуть в эти 2 порта все что нам надо и между портами будет мост, интерфейс BVI же служит для задания адреса самого рутера в бридже.

Проброс порта/адреса в локалку на cisco.

Итак, проброс порта:

ip nat inside source static tcp $local_address 22 $external_address 22 extendable

к примеру, пробрасываем tcp порт 22 с адреса 78.108.241.87 на внутренний адрес 192.168.0.17:

ip nat inside source static tcp 192.168.0.17 22 78.108.241.87 22 extendable

Проброс всего адреса совсем просто:

ip nat inside source static 192.168.0.17 78.108.241.87 extendable

Как убрать комментарии из файла

Иногда бывает нудно просматривать конфигурационный файл из-за кучи коментариев, в таком случае, чтоб наглядно видеть конфиг можно сделать просто вот так:

sed '/^#/d; /^$/d' real.conf >new.conf

здесь имеется ввиду что в новом файле new.conf будут все не пустые и незакомментированные строки из файла real.conf

Начинающим Java программистам

Наткнулся на интересную статью для начинающих Java-разработчиков (меня например). И даже не одну :)

Программирую на Java вот уже 7 лет. Но на работе часто приходится обучать новое поколение. В связи с этим и решил сделать некоторую шпаргалку, которая, надеюсь, пригодится и для хабрчан. Если кто-то может помочь дополнить чем-то информацию из этой статьи, то пишите! Итак:
Основные ресурсы для начального обучения

www.javable.com — сайт со статьями и tutorial’ом по Java. Все в основном на русском.
www.exampledepot.com — очень полезный ресурс, где собраны краткие примеры использования классов для тех или иных пакетов
java.sun.com — без первоисточника не обойтись. Для любого Java программиста JavaDoc должен быть истиной в последней инстанции. Так же здесь можно найти серию tutorial’ов на все возможные темы.

Задачи для начинающих Java программистов

Тоже понравилось. Действительно, изучать новый язык лучше на конкретном проекте, практически. Ну а если нет проекта, помогут задачки, о чем и пойдет речь ниже.

В продолжение моего поста “Начинающим Java программистам” публикую очередную свою шпаргалку, а именно список задач, которые я обычно даю новичкам. Опытным разработчикам они покажутся тривиальными, а только начинающим изучать Java, причём самостоятельно, надеюсь будут в самый раз. Так же если Вы используете какие-то ещё задачи для обучения, то поделитесь ими, пожалуйста.:) Так как мне, иногда, как-то не по себе в …-цатый раз рассказывать стажёрам одну и ту же задачу — пусть даже они её слышат впервые:)

Еще раз о ClickOnce

Еще одна статья о ClickOnce. На мой взгляд очень и очень хорошо описывает технологию. Приятного чтения.

“На сладкое” остается совсем уж не control и не компонент, а технология, имеющая прямое отношение к WinForms. Дело в том, что разработка, тестирование и отладка приложения – это совсем не весь жизненный цикл программного обеспечения. Не менее ответственной и сложной задачей является естественное продолжение этих усилий – развертывание (deployment) и регулярное обновление (updating) поставляемого ПО. Общепринятой практикой развертывания как раз таки .NET-WinForms приложений является сегодня создание установочных пакетов в рамках старой (не в смысле устаревшей, а в смысле существующей уже не первый месяц) технологии – Windows Installer (MSI). И все бы ничего, но при таком подходе к распространению приложения возникают три проблемы:

LAN-2-LAN ipsec vpn gre

Заметка будет практического характера. Рассчитано на тех, кто уже знаком с общей теорией работы ipsec и примерами построения туннелей. Итак, построение статического туннеля. Все пакеты подлежащие шифрованию будут инкапсулироваться в gre туннель и потом в ipsec .

Создание панорамных фотографий

Понадобилась программа для создания панорамных фотографий из нескольких. Хотелось бесплатного. Нашел :). На www.sourceforge.net

Программа называется Hugin. Есть возможность задавать точки для сшивания, есть автоматический режим. Качайте, пробуйде. Ниже приведена фотка сшитая из 3, в автоматическом режиме, фотки сняты телефоном, так что качество – не ахти. Красным помечены точки не стыковки(Опять же это всего 3 фотки и авто-режим).
Еще одна программа, от Microsoft и бесплатно :) Microsoft Image Composite Editor

Parallel Extensions для .net 3.5

Количество ядер у процессоров растет год от года. Но многие программы до сих пор умеют использовать только одно. В небольшой заметке хочу рассказать о дополнении к библиотеке System.Threading, которое называется Parallel Extensions. Это дополнение позволяет на высоком уровне выполнять задачи на всех доступных ядрах/процессорах.

Данная статья является лишь кратким вводным обзором в Parallel Extensions. Так же в конце статьи вы найдете ссылки на ресурсы, которые раскрывают тему во всех деталях.

Если интересно, то смело ныряем под кат.

Получение IP-адреса одной строкой из ifconfig

Иногда надо бывает в скриптах получить IP-адрес интерфейса. Так вот, это делается просто, одной строкой
ifconfig eth0 | awk /eth0/'{next}//{split($0,a,":");split(a[2],a," ");print a[1];exit}'

Манипуляции с текстом в коммандной строке

Для напоминания некоторых комманд по манипуляции с текстом:

cat file_originale | [operation: sed, grep, awk, grep и т.п.] > result.txt
общий синтаксис выполнения действий по обработке содержимого файла и вывода результата в новый

Очень полезные команды Linux

Наиболее полезные команды Linux. Все не упомнить… значит надо записать :)

uname -m
uname -r отобразить используемую версию ядра
dmidecode -q показать аппаратные системные компоненты – (SMBIOS / DMI)
hdparm -i /dev/hda вывести характеристики жесткого диска
hdparm -tT /dev/sda протестировать производительность чтения данных с жесткого диска
cat /proc/cpuinfo отобразить информацию о процессоре
cat /proc/interrupts показать прерывания

Как работает JOIN в SQL

Статья для новичков, тех кто либо не использовал JOIN на практике, либо использовал, но по каким то причинам не совсем понял, как они работают. Было время, когда не пользовался ими, а обходился огромным WHERE, почему то считая, что так “круче” :)

Итак, приступим. Представим, что у нас есть 2 таблицы: Таблица А слева, и Таблица Б справа. Заполним их какими нибудь данными:

id name id name
-- ---- -- ----
1 Pirate 1 Rutabaga
2 Monkey 2 Pirate
3 Ninja 3 Darth Vader
4 Spaghetti 4 Ninja
(красным помечены "пересекающиеся" поля, т.е. одинаковые для обоих таблиц)

Постраничная навигация

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

К сожалению, очень немногие люди пытаются сломать стереотипы, и продолжают творить нечто странное под видом навигации по страницам. Сегодня я постараюсь с вашей помощью решить эту ситуацию, чтобы сделать интернет лучше.
Задачи

Дать возможность в одно действие переключать страницу.
Удобный переход на последнюю и первую страницу.
Правильное переключение на следующую и предыдущую страницы.
Удобочитаемый вывод списка страниц.
Выделение активной страницы.
Сделать всё вышеперечисленное по возможности в простом и симпатичном виде.

Постраничная навигация с MySQL при большом количестве записей

Рано или поздно многие крупные проекты сталкиваются с проблемами производительности при постраничной навигации по записям. Некоторые из них решают эту проблему ограничением количества доступных для просмотра записей (скажем, не больше 1000). Вполне приемлемое решение. Но в этом случаем могут возникнуть проблемы с индексированием сайта сторонними поисковиками, которые и представляют наибольшую угрозу. В этой статье я хотел бы отказаться от привычной для всех панели навигации вида «1..2..3..4..» в пользу простой «вперед… назад» (будет проще объяснить), но это не проблема реализовать подобное и с первым вариантом.
Более точно определить тему, назвав, какое количество записей считать достаточно большим для появления тормозов, не получится, так как эта цифра для всех разная и сильно зависит от того, насколько быстрые у Вас жесткие диски, сколько памяти, и какая часть Ваших данных уже закеширована в ней и тд. Но если Вы и Ваши сервера ощущают, что n-ная страница при выводе даётся тяжелее первой, и при этом не знаете, что с этим делать – статья для Вас. Но для начала, я хотел бы на пальцах объяснить, почему ОНО работает медленно.

Кстати, тест происходит на виртуальной машинке, работаю я с СУБД под рутом, версия MySQL – 5.0.32.
1 Начнем с данных

22 наилучших скрипта для создания форумов

Ниже предоставлен список скриптов форумов
1. bbpress – от создателей wordpress. Чистый код и самый предпочитаемый на данный момент.
2. vanilla – опен сорс код, в стиле Web 2.0. Остается только купить хостинг.
3. simple machines forum – поддерживаемый мультиязычность, популярный скрипт.
4. phpbb – известный всеми форум
5. syndie
6. seo-board
7. phorum
8. simpleboard – форум, написанный для Mambo CMS
9. ikonboard
10. the snitz forums
11. vikingboard
12. punbb
13. minibb
14. usebb
15. nextbbs
16. icebb
17. ovbb
18. quicksilver forums
19. yabb – на Perl-е
20. think tank forums
21. web wiz forums
22. mybb

Источник: bloggingbits

Высота блока в 100% окна браузера

Что требуется: задать блоку высоту в 100% процентов высоты окна браузера, не используя JavaScript.

Прописываем в CSS следующее:

html {height:100%}
body {height:100%}

#block {
height:100%;
min-height:100%;
}

Проверялось в FF и IE. Если кто проверит в других браузерах, просьба отписаться.

Выравнивание блока горизонтально по центру.

Задача: сделать так, чтобы блок находился горизонтально в центре родительского.

Добавим стиль:
#block
{
margin:0 auto;
width: 1000px;
}

Ширина может быть и другой, по вашему усмотрению. При этом DOCTYPE в HTML выставлен в xhtml1-strict.dtd

Еще один способ, предложенный порльзователем marapper,

#block-main {
text-align:center;
}

#block-inside
{
margin:0 auto;
text-align:left;
}
inside – соответственно вложен в main

ClickOnce

Столкнувшись с задачей установки програмного обеспечения у клиента, набрел на интересную технологию – ClickOnce. Из описания:

Что такое развертывание ClickOnce?
ClickOnce – это технология развертывания, позволяющая создавать приложения Windows с возможностью самообновления, которые могут устанавливаться и запускаться с минимальным вмешательством пользователя. Развертывание ClickOnce разрешает три основные проблемы развертывания.

Всю остальную инфу нетрудно получить поиском в Google, по фразе ClickOnce.
Несмотря на сложности, организация практического взаимодействия инновационна. Организация практического взаимодействия спорадически детерминирует направленный маркетинг, работая над проектом. Продуктовый ассортимент, анализируя результаты рекламной кампании, основан на тщательном анализе. Побочный PR-эффект, как принято считать, притягивает департамент маркетинга и продаж, повышая конкуренцию. Стимулирование сбыта индуцирует медиаплан, осознав маркетинг как часть производства. Привлечение аудитории, не меняя концепции, изложенной выше, изменяет инвестиционный продукт, оптимизируя бюджеты.
Dodex 2012 - 2020
Электронная почта: contact@dodex.org
Skype: dodexorg
Twitter: @dodexorg