Как стать автором
Обновить
10
0
Shmavon Gazanchyan @MunGell

Manager

Отправить сообщение

Что если бы Google выпустил свой Bootstrap?

Время на прочтение2 мин
Количество просмотров19K
Поздравляю всех с пятницей и в качестве небольшого развлечения предлагаю представить, как бы выглядел популярный CSS-фреймворк Twitter Bootstrap, если бы он был от Google? Встречайте Plusstrap.


Читать дальше →
Всего голосов 216: ↑200 и ↓16+184
Комментарии91

Поверхностный обзор javascript-enabled BaaS платформ

Время на прочтение9 мин
Количество просмотров21K
Будучи начинающим javascript разработчиком, я заинтересовался темой межплатформенной разработки мобильных приложений. В этой области, в настоящее время, балом правят Cordova (phonegap) www.phonegap.com, Appcelerator Titanium www.appcelerator.com, Mosync www.mosync.com.

Рано или поздно, после выпуска первых мини-приложений, основанных на этих системах, разработчику захочется создать что-нибудь Большое и Светлое, и хотелось бы, чтоб в этом новом приложении/сервисе были пользователи (c аватарами и проч.), push-notifications, user-generated-content и т.д… Но при этом, не хотелось бы тратить время и деньги на написание своей серверной инфраструктуры, а хотелось бы воспользоваться чем-нибудь недорогим, вплоть до бесплатного, и простым в освоении (и ещё чтоб «в облаке»!).

Как раз подобного рода тяжести и взяли на себя многочисленные Backend-as-a-Service (не путать с другими aaS). Я хочу кратко пробежаться по некоторым игрокам на этом рынке. Подчеркну, что меня в первую очередь интересовали те платформы, которые можно было бы легко и безопасно использовать с мобильным javascript (Phonegap/Titanium). Если платформа просто предоставляет REST API, этого мало, т.к. вопрос безопасности требует наличия некоторого специального ограничительного функционала: AccessControlList/permissions/masterKeys/etc. И вообще, желательно отдельный javascript SDK.

(Так как это «поверхностный обзор», я не буду подробно писать кому и зачем нужен BaaS и почему вместо всего этого не использовать старый-добрый PHP/MySQL на VPS или новый-добрый node.js в облаке)

Я начал поиск с www.programmableweb.com/apis/directory/1?apicat=Backend там перечислено почти 40 платформ, просмотрев их, я оставил для обзора те, что легко можно использовать с javascript:
Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии13

Разворачиваем локальный сервер на Windows

Время на прочтение8 мин
Количество просмотров364K

Несколько дней назад меня очередной раз посетила Мысль. Мысль была не нова и довольна навязчива: «давай перейдем на Windows8. Ну пожааалуйста». И так как отогнать её никак не получалось, я запаслась чаем и печеньками и приступила.

На установку системы и всех необходимых программ ушло не более двух часов, но затем наступил самый интересный момент: мне нужно было развернуть рабочее окружение, а именно — GIT + локальный сервер (Apache, MySQL, PHP, nginx, memcached, mongodb). Помятуя об опыте предыдущих установок, на этот раз я решила весь процесс задокументировать и сохранить для потомков.

Читать дальше →
Всего голосов 146: ↑96 и ↓50+46
Комментарии137

Как обойтись без капчи?

Время на прочтение2 мин
Количество просмотров130K
К сожалению, на многих сайтах без особой необходимости используют капчи. Хотя можно побороть спам и незаметными для пользователя способами. Особенно, капчу больно видеть на небольших коммерческих сайтах в форме обратной связи, поскольку, капча заметно снижает конверсию таких сайтов. Для больших сайтов, которые могут специально спамить, такие методы не применимы. Однако, в большинстве случаев, без капчи можно обойтись

Читать дальше →
Всего голосов 159: ↑137 и ↓22+115
Комментарии187

Мультиязычность в Drupal 7

Время на прочтение2 мин
Количество просмотров13K
В этой статье я расскажу вам как за четверть часа сделать ваш сайт мультиязычным.
Итак, что бы сделать контент мультиязычным в Drupal 7 у нас есть два способа:
1) Модуль Internationalization и его подмодули
2) Модуль Entity Translation + модуль Title
Их мы сейчас и рассмотрим.
Читать дальше →
Всего голосов 19: ↑15 и ↓4+11
Комментарии9

Мультиязычность в Drupal 7. Меню

Время на прочтение2 мин
Количество просмотров22K
Ранее я рассказал как быстро и легко можно переводить контент (ноды) в D7.
Сейчас я расскажу про 2 способа перевода меню.

В обоих случаях мы будем использовать модули i18n, i18n_menu. На этот раз Entity translation нам не помошник, так как он может переводить только entity. В Drupal 6 для этого использовался Menu Translation, позже он был объеденен с Internationalization.
Читать дальше →
Всего голосов 19: ↑14 и ↓5+9
Комментарии7

Одно предложение, которое делает нас сильнее

Время на прочтение2 мин
Количество просмотров93K
Это мой самый короткий топик, суть которого в одном предложении. Часто именно с этого предложения начинается успешный стартап, бизнес и любое другое начинание.

Это шаблон описания сути вашей компании или проекта в одном предложении. Я открыл его для себя во время стажировки в США. Составив его, мы реально становимся сильнее. В последствии мне это помогло выбрать правильный курс, сфокусироваться и расставить приоритеты.
Читать дальше →
Всего голосов 198: ↑168 и ↓30+138
Комментарии51

Шпаргалка начинающего Debian/Ubuntu администратора по управлению пакетами

Время на прочтение3 мин
Количество просмотров292K
Долгое время меня глодало незнание того, как сделать некоторые элементарные вещи в дебиановских менеджерах пакетов, но, как часто бывает, спросить рядом было не у кого, а до написания куда-либо руки не доходили. И вот наконец вопросы вызрели и я написал свой вопрос в дебиановскую рассылку. Естественно оказалось что пропустил что-то очевидное, но и узнал много неочевидных полезностей, посему решил набросать шпаргалку, авось кому пригодится.
Читать дальше →
Всего голосов 103: ↑90 и ↓13+77
Комментарии64

Создаём тему для Drupal 6. Часть 1

Время на прочтение11 мин
Количество просмотров29K
image
По созданию тем для друпала в интернете можно найти несколько статей (хорошая статья, советую почитать), однако обычно всё заканчивается банальным набором шаблонов и инфо-файлом. В этом топике я постараюсь доступно рассказать как создать гибкую и не самую простую тему.

Начало


Для начала нам потребуется создать директорию в каталоге sites/all/themes с названием нашей темы. Я назвал тему mytheme и создал каталог sites/all/themes/mytheme.
В созданном каталоге создаем директории css — для стилей, js — для скриптов, images — для картинок, templates — для шаблонов, preprocess — об этом позже. Также создаем файл template.php в котором мы будем писать всю логику темы и mytheme.info для описания темы. Можно еще добавить favicon.ico и logo.png.
Читать дальше →
Всего голосов 67: ↑56 и ↓11+45
Комментарии16

Начинаем работать с Drupal: полное практическое руководство (часть 1)

Время на прочтение17 мин
Количество просмотров202K
Здравствуйте!

Выношу на суд хабраобщества перевод замечательной статьи Getting Started with Drupal: A Comprehensive Hands-On Guide. Данный материал является незаменимым руководством для начинающих друпальщиков, поскольку в нем рассматриваются не только установка и базовые принципы, но и два из «трех китов» Друпал-сайтостроения — Views и CCK. Самое приятное, что вся статья посвящена практическому созданию полезного сайта (доски объявлений). Право, во времена Друпала 4.7, когда я только начинал с ним знакомиться, о таких подробных и внятных руководствах можно было только мечтать.
Читать дальше →
Всего голосов 102: ↑92 и ↓10+82
Комментарии26

Начинаем работать с Drupal: полное практическое руководство (часть 2)

Время на прочтение6 мин
Количество просмотров33K
Продолжение первой части.

Создадим страницу вакансий с помощью модуля Views

Хотя вы и можете самостоятельно писать запросы к базе данных для чтения содержимого, дело это долгое и сложное, даже с учетом мощного API Друпала.
Для построения страницы со списком вакансий мы задействуем Views — модуль, позволяющий извлекать содержимое из базы данных вообще без написания кода.
Попросту говоря, Views — это пользовательский интерфейс построения MySQL-запросов. Views — это невероятно мощный модуль, но порой его бывает трудно освоить начинающим пользователям. Лучший способ разобраться с Views — немного с ним поиграть, чем мы сейчас и займемся.
Читать дальше →
Всего голосов 89: ↑79 и ↓10+69
Комментарии24

Темизация на основе Zen

Время на прочтение1 мин
Количество просмотров4K
Cледующее видео доклада c DrupalCamp Kyiv 2009, подготовленное Александром Митасовым и нашим видео-партнером «Николаевским курьером» — «Темизация на основе Zen».

Всего голосов 5: ↑4 и ↓1+3
Комментарии6

Kickstrap — форк Twitter Bootstrap с темами и бонусами

Время на прочтение1 мин
Количество просмотров20K
image
Kickstrap это то, что будет если соединить Twitter Bootstrap, HTML5 Boilerplate, значки от IcoMoon и Font Awesome, добавить проверенные jQuery плагины Chosen и jGrowl, включить поддержку разных цветовых схем и тем оформления Bootswatch, дополнительную CSS сетку и вменяемую поддержку ранних версий IE.
Читать дальше →
Всего голосов 137: ↑127 и ↓10+117
Комментарии34

Почему не Drupal?

Время на прочтение6 мин
Количество просмотров24K
Dries Buytaert
Недавно, я столкнулся с некоторыми проблемами при разработке проекта на Drupal 7 (при переходе на Drupal 7), но речь не о них. В поисках решений, я натолкнулся на статью "The Drupal Crisis", одного из разработчиков Drupal — Daniel F. Kudwien, которая пролила свет на происходящее в кузнице Drupal. Сразу скажу, что большая часть проблем описанных в статье уже не актуальна, т.к. статья прошлогодняя. Тем не менее многим будет интересно ознакомиться с ее переводом.
Читать дальше →
Всего голосов 137: ↑107 и ↓30+77
Комментарии288

Защита для NGINX — NAXSI

Время на прочтение3 мин
Количество просмотров38K

Что такое NAXSI ?


NAXSI = NGINX ANTI XSS & SQL INJECTION
Проще говоря, это файрвол веб-приложений (WAF) для NGINX, помогающий в защите от XSS, SQL-инъекций, CSRF, Local & Remote file inclusions.
Отличительными особенностями его являются быстрота работы и простота настройки. Это делает его хорошей альтернативой например mod_security и апачу.

Зачем нужен NAXSI ?

Очевидно, лучше всего защищаться от вышеперечисленных атак правильно написанным кодом. Но есть ситуации, когда WAF (и в частности naxsi), поможет:
  • Низкое качество кода сайта, при отсутствии возможности/ресурсов все выкинуть и переписать нормально.
  • “Закрытый” код, в котором невозможно исправить ошибки.
  • Неизвестное качество кода в важном для бизнеса участке.


Читать дальше →
Всего голосов 102: ↑100 и ↓2+98
Комментарии60

Настройка и оптимизация MySQL сервера

Время на прочтение9 мин
Количество просмотров314K
В этой статье будут описаны различные настройки MySQL, преимущественно те, которые влияют на производительность. Для удобства все переменные разделены по разделам (базовые настройки, ограничения, настройки потоки, кэширование запросов, тайминги, буферы, InnoDB). Сначала уточним имена некоторых переменных, которые изменились в версии 4 MySQL, а в сети продолжают встречаться и старые и новые варианты имен, что вызывает вопросы.
Читать дальше →
Всего голосов 180: ↑171 и ↓9+162
Комментарии19

Wi-Fi: неочевидные нюансы (на примере домашней сети)

Время на прочтение14 мин
Количество просмотров1.4M
Сейчас многие покупают точки доступа 802.11n, но хороших скоростей достичь удается не всем. В этом посте поговорим о не очень очевидных мелких нюансах, которые могут ощутимо улучшить (или ухудшить) работу Wi-Fi. Всё описанное ниже применимо как к домашним Wi-Fi-роутерам со стандартными и продвинутыми (DD-WRT & Co.) прошивками, так и к корпоративным железкам и сетям. Поэтому, в качестве примера возьмем «домашнюю» тему, как более родную и близкую к телу. Ибо даже самые администые из админов и инженеристые из инженеров живут в многоквартирных домах (или поселках с достаточной плотностью соседей), и всем хочется быстрого и надежного Wi-Fi.
[!!]: после замечаний касательно публикации первой части привожу текст целиком. Если вы читали первую часть — продолжайте отсюда.
Читать дальше →
Всего голосов 234: ↑231 и ↓3+228
Комментарии138

Учимся писать многопоточные и многопроцессные приложения на Python

Время на прочтение6 мин
Количество просмотров413K
Эта статья не для матёрых укротителей Python’а, для которых распутать этот клубок змей — детская забава, а скорее поверхностный обзор многопоточных возможностей для недавно подсевших на питон.

К сожалению по теме многопоточности в Python не так уж много материала на русском языке, а питонеры, которые ничего не слышали, например, про GIL, мне стали попадаться с завидной регулярностью. В этой статье я постараюсь описать самые основные возможности многопоточного питона, расскажу что же такое GIL и как с ним (или без него) жить и многое другое.
Читать дальше →
Всего голосов 94: ↑88 и ↓6+82
Комментарии93

Денормализация БД. Зачем? Когда? Как?

Время на прочтение6 мин
Количество просмотров94K

денормализация — это зло, или просто надо уметь её готовить?


Денормализация- это не результат кривых рук. Это не недоделанная нормализация, это намеренное нарушение нормальных форм, для увеличения производительности.
Вопрос о денормализации у меня возникал не раз. Каждый раз, когда приходилось идти на сделку с совестью, нарушая принципы нормальных форм, оставалось ощущение неудовлетворённости, ложное осознание своей некомпетентности. Со временем, при работе в команде, обнаружилось, что это не только моя проблема. Настало время разобраться: денормализация — это зло, или просто надо уметь её готовить?
Читать дальше →
Всего голосов 33: ↑32 и ↓1+31
Комментарии22

Набор заметок. Производительность и защита, от сайта до системы

Время на прочтение15 мин
Количество просмотров4.3K
Краткий анонс

Собирался добавить пару предположений на счет авторизации и регистрации на сайте, но то ли от недосыпания, то ли от многочисленных выпитых сегодня чашек кофе меня потянуло в дебри. Набросал некоторые заметки. Возможно кто-то из Вас найдет что-то новое для себя, возможно кто-то подскажет новое правило для кого-то, возможно кто-то поправит меня тем самым дав и мне урок, и другим. Ниже идут некоторые заметки работы с БД, еще ниже уже несколько заметок про работу самого сервера и т.д.
Читать дальше →
Всего голосов 44: ↑31 и ↓13+18
Комментарии33

Информация

В рейтинге
Не участвует
Откуда
London, England - London, Великобритания
Дата рождения
Зарегистрирован
Активность