Как стать автором
Обновить
0
0
Павел Мешков @pashamesh

Пользователь

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

Подборка 10 css3 кнопок

Время на прочтение4 мин
Количество просмотров91K
С каждым днем новые стандарты css3 и html5 всё более глубоко входят в жизнь верстальщиков и web-разработчиков, а браузеры с каждым днем становятся все более совместимыми с этими стандартами.



В связи с этим событием хотелось бы представить Вам подборку 10 css3 кнопок, которые смогут облегчить вам жизнь при верстке и создании web приложений.
Читать дальше →
Всего голосов 266: ↑227 и ↓39+188
Комментарии79

Тонкости (странности?) работы с интефейсами

Время на прочтение3 мин
Количество просмотров13K
Знаешь ли ты что такое интерфейс %username%?
Если да, то я думаю этот код не вызовет у вас вопросов. PHP тонкости (странности?) работы с интефейсами
interface someInterface{
	public function someMethod();
}
interface anotherInterface{
	public function someMethod();
}
class Foo implements someInterface,anotherInterface {
	public function someMethod(){
		echo 'someMethod() was called'.PHP_EOL;
	}
}
$foo = new Foo();
$foo->someMethod();

Итак что выведет на экран скрипт в результате своей работы.
Ответ под кaтом.
Читать дальше →
Всего голосов 90: ↑61 и ↓29+32
Комментарии119

Модульный подход в JavaScript

Время на прочтение8 мин
Количество просмотров49K
Модульный подход довольно распространённая техника программирования в JavaScript. Обычно его понимают довольно хорошо, но продвинутые техники описаны недостаточно. В этой статье я рассмотрю основы и затрону некоторые сложные приёмы, включая один, по моему мнению, оригинальный.

Основы



Мы начнём с несложного обзора модульного подхода, хорошо известного с тех пор, как Эрик Миралья (Eric Miraglia) из YUI впервые об этом написал. Если вам уже знаком модульный подход, переходите сразу к «Продвинутым техникам».

Анонимные замыкания


Читать дальше →
Всего голосов 133: ↑121 и ↓12+109
Комментарии32

Обзор плагинов ++

Время на прочтение2 мин
Количество просмотров3.4K
Очередной топик с обзором нескольких интересных плагинов jQuery.

Mobily Map




Позволяет сделать интерфейс, подобный google-картам, на основе собственных изображений (возможность перетаскивать, ставить маркеры на изображении, реагировать на нажатие по ним и др.).
Узнать больше (англ.) | Посмотреть в действии


Читать дальше →
Всего голосов 162: ↑148 и ↓14+134
Комментарии22

Эффективные и неэффективные веб-сайты

Время на прочтение6 мин
Количество просмотров17K
Сейчас иметь собственный сайт для многих компаний является не просто модным трендом, а скорее насущной необходимостью. Компании разрабатывают сами или заказывают веб-сайты в большом количестве. При этом многие обращаются к услугам разного рода SEO-специалистов в надежде получить гигантский эффект от сайта.

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

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

Вопрос эффективности уже поднимался на хабре, только там человек рассуждает об эффективности рекламы, а не веб-сайта в целом.
Читать дальше →
Всего голосов 73: ↑65 и ↓8+57
Комментарии48

Строгий режим MySQL и почему он должен быть включен

Время на прочтение2 мин
Количество просмотров40K
В MySQL есть такой специальный режим, предназначенный для введения в базу неправильных данных. Например, чтобы вместо 20000000000 вставлять в INT-поле 2147483647. Или наполнять базу несуществующими датами. Или обрезанными строками. Ну или мало ли для чего этот режим может тебе пригодится.

Режим этот называется «обычный режим».

WTF?
Всего голосов 98: ↑83 и ↓15+68
Комментарии42

О стандартах документации

Время на прочтение4 мин
Количество просмотров97K
Документация – такая штука, к которой мало кто питает тёплые чувства: скучно, занудно, однообразно. И, тем не менее, иногда не возникает сомнений в её необходимости: ведь кому-то после вас этим пользоваться или, тем паче, модифицировать. И тогда появляется вопрос: как сделать документацию правильно?

Существует тьма статей на тему «как писать документацию», но если вы решили взяться за неё в первый раз, то в новой для вас области не сразу понятно, дело ли пишет автор, или отсебятину выдумывает.

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

Читать дальше →
Всего голосов 78: ↑74 и ↓4+70
Комментарии46

Делаем консоль чуточку удобнее

Время на прочтение4 мин
Количество просмотров7.2K
Практически все Javascript-программисты пользуются консолью в браузерах. Консоль встроена в Хром, Оперу, IE и устанавливается с Firebug в Фоксе.
Но у неё есть пару неудобств, которые можно очень легко исправить. Это:
  • Ошибки, когда консоль не определена
  • Невозможность использовать вне контекста
  • Невозможность отключить во время production
  • некроссбраузерность

Исправим эти проблемы легко и быстро!

Читать дальше →
Всего голосов 97: ↑92 и ↓5+87
Комментарии35

CSS Pivot: платформа для совместного дизайна веб-сайтов

Время на прочтение1 мин
Количество просмотров3.2K
Многие пользуются различными плагинами, чтобы улучшить внешний вид любимых сайтов: избавить их от рекламы, поменять дизайн и т.д. Например, есть хороший плагин Stylebot для Google Chrome. Всё это замечательно, но только одна проблема: результатами своей работы по изменению дизайна сайта вы не можете легко поделиться с другими. Сервис CSS Pivot (от разработчиков Stylebot) призвана решить эту проблему.

CSS Pivot позволяет применить собственные стили CSS к любому сайту — и поделиться этим URL с другими людьми. Не требуется ни установка расширений к браузеру (то есть работает в любом браузере), ни регистрация в сервисе. Сайты грузятся в iframe.
Читать дальше →
Всего голосов 28: ↑23 и ↓5+18
Комментарии14

CSSO (CSS Optimizer) — структурная минимизация CSS

Время на прочтение2 мин
Количество просмотров19K
CSSO (CSS Optimizer) является минимизатором CSS, выполняющим как минимизацию без изменения структуры, так и структурную минимизацию с целью получить как можно меньший текст.
CSSO написан на Javascript, выполняется как в браузере, так и в командной строке (с помощью NodeJS).
Распространяется под лицензией MIT.
Читать дальше →
Всего голосов 72: ↑69 и ↓3+66
Комментарии58

Оптимизируем процесс работы в консоли

Время на прочтение4 мин
Количество просмотров16K
Все привыкли редактировать текст в текстовых редакторах, блокнотах, веб-формах и т.д. В процессе набора текста мы пользуемся привычными стрелками, кнопками «End» и «Home», более опытные зажимают «Ctrl» и стрелками шагают по словам (что, кстати, не всегда работает). И при переходе на консоль мы ориентируемся на те же самые правила, даже не зная, что bash предлагает очень удобные средства и комбинации клавиш, которые очень упрощают работу и минимизируют количество операций для выполнения задачи. К тому же, в bash есть удобные средства работы с историей, масса различных подстановок и других интересных функций. Самые часто используемые мной и любым опытным администратором я и опишу в этой статье.
Читать дальше →
Всего голосов 256: ↑245 и ↓11+234
Комментарии76

Запускаем сторонний код в песочнице

Время на прочтение8 мин
Количество просмотров5.7K
Как гласит статья из Википедии, Песочница — механизм для безопасного исполнения программ. Песочницы часто используют для запуска непротестированного кода, непроверенного кода из неизвестных источников, а также для запуска и обнаружения вирусов.

Представим, что у нас стоит задача: есть какой-то проект и пользователи могут под него писать свои скрипты (виджеты, дополнения, плагины). Мы хотим, чтобы пользовательские скрипты не делали ничего плохого (кража кук это меньшее, что они могут сделать).

В статье пойдет речь об атаках, которые могут совершать злоумышленники и о методах безопасного выполнения стороннего кода.
Читать дальше →
Всего голосов 97: ↑92 и ↓5+87
Комментарии25

Быстрое восстановление пароля по MD5-хешу методом брутфорса

Время на прочтение3 мин
Количество просмотров26K
Наверное каждый из нас хоть раз забывал пароль от какого-нибудь важного сайта, а потом пытался расшифровать его по сохранившимся кукам в браузере. Возможно это были даже не Ваши куки, но это не важно — если Вам интересна тема скоростного брутфорса, то добро пожаловать под кат!

Сразу скажу, что описанные в статье техники ускорения подходят для любого алгоритма хеширования, но из-за широкой распространённости я выбрал именно md5.
Читать дальше →
Всего голосов 105: ↑84 и ↓21+63
Комментарии54

Храните мелкие картинки в CSS

Время на прочтение10 мин
Количество просмотров147K
Храните мелкие картинки, которые нельзя засунуть в спрайты, в data:image base64 в CSS — это экономит кучу запросов к вебсерверу.
Читать дальше →
Всего голосов 144: ↑105 и ↓39+66
Комментарии131

Определите свое местоположение по WiFi сети

Время на прочтение1 мин
Количество просмотров7.6K
Простой скрипт. Определяет местоположение. Вы должны работать через Wifi.

iwlist wlan0 scan | sed -n 's/.* Address: //p;T;s/ //g;q' |
sed 's/.*/{version:1.1.0,host:maps.google.com,request_address:true,address_language:'${LANG/.*/}',wifi_towers:[{mac_address:"&",signal_strength:8,age:0}]}/' |
curl -sX POST -d @- www.google.com/loc/json |
sed -e 'h;s/.*latitude":\([^,]*\).*/\1/;G;s/\n[^\n]*longitude":\([^,]*\).*/,\1\n/;s|^|http://maps.google.com/maps?q=|;x;s/[,{]/\n/g;s/["}]//g;s/:/\t/g;s/\n//;G'

Не забудьте поставить curl.

В моем случае правильно определил город и улицу, ошибся с номером дома на 4.

Как это работает? Google собирает информацию о том, где расположены какие точки доступа (по MAC).
Первая часть (iwlist wlan0 scan | sed -n 's/.* Address: //p;T;s/ //g;q' ) — это просто определение мака.
Всего голосов 73: ↑64 и ↓9+55
Комментарии30

MarkHtml

Время на прочтение1 мин
Количество просмотров1.8K
Библиотека для чистки HTML кода от XSS вставок и лишних закрывающих тегов, позволяет фильтровать входные данные, способные нарушить работу сайта.

В отличии от других аналогичных библиотек, например Jevix, ставка сделана не на разрешающие теги и атрибуты, а на запрещающие. То есть, возможно вводить всё, кроме запрещённого.

Читать дальше →
Всего голосов 25: ↑23 и ↓2+21
Комментарии15

Принципы дизайна веб-форм для мобильных устройств

Время на прочтение10 мин
Количество просмотров14K
Представляю вашему вниманию перевод статьи "Mobile Form Design Strategies" от Chui Chui Tan. Перевели в компании UXDepot. Специально для пользователей Хабрахабра с одобрением издания UX Booth.


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

Интернет на экране мобильного телефона находится под влиянием нескольких важных факторов:
  • Окружающей среды — человек может пользоваться гаджетом в толпе, в режиме цейтнота или на ярком свету (соответственно, качество изображения на экране ухудшается)
  • Сети — соединение может быть медленным и ненадежным
  • Особенностей девайса — например, маленького экрана устройства

Читать дальше →
Всего голосов 112: ↑110 и ↓2+108
Комментарии12

Синхронизация профилей между linux-системами

Время на прочтение2 мин
Количество просмотров3.9K
Когда количество машин, на которые я постоянно заходил по ssh достигло 3х, я понял, что просто быстрой авторизации мне мало, и пора перетащить bash-алиасы, конфиги к редактору и прочие элементы окружения на удаленные системы. С другой стороны, нужен был способ не путаться в многочисленных вкладочках с терминалами. В итоге я пришел к связке из scp, screen и цветовой дифференциации хостов :)
Скриншоты результатов:
Домашняя система:

Одна из удаленных машин:

Команда для синхронизации профиля:
$ profsync
Подробности под катом.
Читать дальше →
Всего голосов 77: ↑71 и ↓6+65
Комментарии45

Gitimmersion — Курс фундаментальных основ Git

Время на прочтение1 мин
Количество просмотров3.3K
image
Парни из EdgeCase создали сайт gitimmersion.com, посетив который вы сможете познать фундаментальные азы Git, там предлагается пройти курс из 52 шагов, в каждом из которых описываются разные аспекты использования Git. Так, переходя от простого к сложному, можно влиться в число активных пользователей этой VCS.

Например я, недавно начал коммитить в репозиторий, конфигурационные файлы от своих серверов, таким образом я в курсе истории изменений, не надо чесать репу, что же там было раньше.
Всего голосов 80: ↑77 и ↓3+74
Комментарии39

Рабочий процесс как важная часть договорённостей с клиентом

Время на прочтение5 мин
Количество просмотров5.9K
Написать эту статью нас побудила отличная статья Данила Снитко «Как хороший договор спасает нервы и монетку».

К этой статье мы бы хотели добавить, что ооочень полезно дополнять договор так называемыми Правилами работы над проектом.

Основная цель правил: избежать проблем в процессе работы над сайтом, сделать её максимально эффективной. Вторичная, но также очень важная, цель: повысить удовлетворенность клиента от работы. Если клиент информирован — он готов к нашим требованиям, и их предъявление не будет для него «шоком».

Правила решают следующие задачи:
  1. Информировать клиента о процессе работы: как будет проходить работа, что от него потребуется в процессе и когда. В результате мы получим более образованного клиента и необходимые для работы материалы вовремя.
  2. Информировать клиента об ограничениях, которые мы на него накладываем в процессе работы, чтобы они не были для него сюрпризом. В результате мы получим более спокойного и удовлетворённого клиента.
  3. Юридически зафиксировать договорённости, чтобы потом на них можно было сослаться. Если клиент пытается сказать, что дизайн-концепция — это свёрстанный HTML-прототип, нам есть, на что сослаться.
Правила исключительно полезны, потому что они организуют процесс с самого начала, что позволяет избежать потерь времени и ресурсов.

Читать дальше →
Всего голосов 39: ↑35 и ↓4+31
Комментарии21

Информация

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