Search
Write a publication
Pull to refresh
94
0
Ерошенков Сергей @TecHMeaT

Front End Developer

Send message

XSS глазами злоумышленника

Reading time4 min
Views266K
Что такое XSS и как от него защитится все уже давно знают, поэтому буду краток. XSS это возможность злоумышленника определенным образом (ссылку на возможные варианты смотрите в конце статьи) интегрировать в страницу сайта-жертвы скрипт, который будет выполнен при ее посещении.

Интересно, что в большинстве случаев, где описывается данная уязвимость, нас пугают следующим кодом:

http://www.site.com/page.php?var=<script>alert('xss');</script>


Как-то не очень страшно :) Чем же действительно может быть опасной данная уязвимость?
Читать дальше →

HTML 5: Microdata

Reading time3 min
Views10K
image
HTML 5 продолжает удивлять нас своими возможностями. Вот еще одна.

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

Кешируем блоки HTML при помощи nginx

Reading time3 min
Views7.1K
Не секрет, что пользователи любят, когда контент на сайте обновляется чаще, чем раз в год. Эту любовь пользователей к динамическим страничкам разделяют и поисковики. Google, например, умеет определять наличие обновляющихся блоков на страничке и добавляет ей немного кармы (читай, PR).

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

продолжение

17 usability tips to make your CMS rock

Reading time11 min
Views1.9K
image
К вашему вниманию перевод статьи Патрика Кеннеди о том, какой должна быть удобная система управления контентом.

Более чем вероятно, что в вашей CMS будет множество проблем с юзабилити, если вы будете использовать ее в сыром виде. Участвуя в проектах, в которых на меня было возложено внедрение таких систем — систем управления веб-сайтами, интранет-порталами и вики, я заметил, что в их пользовательских интерфейсах есть ряд ключевых областей, требующих исправления с точки зрения удобства использования.
Читать дальше →

XML-шлюз своими руками

Reading time6 min
Views8.2K
Если вам приходилось работать с платежными системами, сервисами регистрации и другими ресурсами, реализующими удаленное взаимодействие с центральным сервером, то наверняка сталкивались с понятием «шлюз». Это сервис, который предназначен для проведения операций на центральном сервере путем обмена электронными сообщениями между центральным сервером (сервером системы, имеющей шлюз) и программным обеспечением некого клиента.

Пожалуй, идеальный шлюз должен уметь принимать и отдавать данные в формате XML, хотя бы потому, что это стандартизированный, самодокументируемый формат, поддержка которого реализована во всех современных языках программирования (и даже на аппаратном уровне). Кроме того, XML поддерживает Юникод-кодировки UTF-8, UTF-16 и даже UTF-32. Вкратце, но с примерами, расскажу о принципах создания простых XML-шлюзов. Отправку запросов, простоты и, одновременно, разнообразия ради рассмотрим на примере POST/GET методов.

Читать полностью

Обзор способов вывода электронных денег в России

Reading time5 min
Views64K
Вступление

Тема весьма избитая, уж что только нам не предлагают всяческие обменники и операторы денежных переводов… Но всё же. В этой статье приведён мой личный опыт и частное субъективное мнение касательно существующих вариантов. Статья не зациклена на одной конкретной системе, приведены различные варианты.
Читать дальше →

Как написать слово в поле для пароля так, что бы его было видно?

Reading time6 min
Views4.6K
Написать эту статью меня натолкнуло общение с администратором сайта одного из футбольных клубов российской Премьер-лиги. Надеюсь, что он ее прочитает и воцарит сие в жизнь.

Сейчас стало очень модно делать формы, в которых заголовок поля для ввода написан в самом поле. Например так:


Но как в таком случае быть с полем для ввода пароля? Ведь он заменяет дефолтное значение на звездочки.
В этом посте я решил рассмотреть несколько вариантов, как сделать поле для пароля со звездочками, но что бы слово «пароль» было видно.
Читать дальше →

Шаркит — новый инвестор в it-проекты

Reading time1 min
Views640

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

И так, добро пожаловать на Шаркит. Если вы ищите инвестиции для своего проекта, мы готовы вам помочь, вложив в него от $5000 до $100 000. Помимо непосредственно денег, мы готовы всячески содействовать и помогать проекту: юридически, технически, с подбором команды и продвижением. Более подробно о принципах нашей работы можно прочитать в соответствующих разделах сайта sharkit.ru. Если же у вас возникнут какие-либо вопросы, то я с радостью отвечу на них здесь в комментариях или лично в почте.

Кроме основного сайта, в скором времени мы собираемся также запустить коммьюнити people.sharkit.ru. Что это будет? Мы хотели бы вырастить из него интересное сообщество, основными участниками которого были бы разработчики, желающие стать предпринимателями и создать собственный it-бизнес (или уже сделавшие это).

Сообщество people.sharkit.ru будет открытым, но модерируемым. Чтобы зарегистрироваться, вам потребуется просто написать свой первый пост. Разумеется, пост должен быть хотя бы отдаленно связан с it-бизнесом и предпринимательством. Мы всячески будем поощрять обсуждение острых вопросов (в т.ч., например, поднятую на Хабре проблему поиска инвесторов) и обязуемся соблюдать нейтралитет. В отличие от Хабра, у топиков не будет заголовков, да и атмосфера предполагается более свободная и неформальная. И, конечно, было бы интересно сейчас услышать ваши идеи и мысли на этот счет. Что бы вы хотели увидеть в таком сообществе и какие по вашему важные моменты следует учесть?

Всем спасибо за внимание.

Дерево в выпадающем списке средствами XSLT

Reading time6 min
Views4.4K
Допустим, у нас на сайте есть у нас нечто иерархическое. Например, категории товаров. У категорий есть подкатегории и так далее. И пусть нам захотелось вывести эту иерархию в выпадающий список.
Далее

Один шаблон формы для всего проекта

Reading time6 min
Views5.3K
Часто в одном проекте встречаются различные по структуре формы, где-то label элемента и сам элемент формы находятся на одной строке, где-то друг под другом, в одном случае нужна форма занимающая всю предоставленную ей ширину (например написание/редактирование статьи), в другом лишь определенную, заданную ширину (например форма регистрации/авторизации), да и внешнее оформление бывает разным.

Из за этого многие верстальщики начинают верстать каждую форму по отдельности, давая им и их элементам различные стили, тем самым усложняя работу себе и тем людям, кто будет собирать эти макеты.
Читать дальше →

Прекрасные шрифты посредством @font-face

Reading time9 min
Views143K
Хотя Firefox 3.0 улучшил отображение шрифтов, привнеся поддержку кернинга, лигатур, различных толщин, а также поддержку отображения сложных начертаний, всё же авторов ограничивало использование в своих дизайнах только общедоступных шрифтов. Firefox 3.5 снимает это ограничение, вводя поддержку CSS-правила @font-face это способ прицеплять шрифты TrueType и OpenType точно так же, как нынче прицепляют код и иллюстрации. Браузер Safari поддерживал этот вид гиперсвязи со шрифтом, начиная от версии 3.1, а в Opera объявили, что планируют поддержать его в Opera 10.

Использовать @font-face для гиперсвязи со шрифтом — сравнительно несложно. Внутри стилевого файла каждое свойство @font-face задаёт используемое имя шрифтового семейства, и подгружаемый шрифтовой ресурс, и стилевые характеристики заданного начертания — скажем, полужирное ли оно, курсивное ли. Firefox 3.5 скачивает шрифты только по мере нужды, так что стилевой файл может задать полный набор шрифтов, из которых лишь выборочно несколькие станут использоваться в действительности.

/* Graublau Sans Web (www.fonts.info) */
 
@font-face {
  font-family: Graublau Sans Web;
  src: url(GraublauWeb.otf) format("opentype");
}
 
body {
  font-family: Graublau Sans Web, Lucida Grande, sans-serif; 
}

Браузеры, поддерживающие @font-face, отобразят текст при помощи Graublau Sans Web, тогда как более старые браузеры отобразят его при помощи либо Lucida Grande, либо начертания по умолчанию для sans-serif. Вот пример:

[Grumpy Grandpas!]
больше примеров, больше иллюстраций

Расширенный сборник CSS-хаков

Reading time4 min
Views37K
Статья является расширенным сборником CSS-хаков в сравнении с аналогичной статьей.
Под хаком подразумевается метод, позволяющий воспринимать CSS только определенному браузеру.
Хаки могут использоваться не только для исправления багов в верстке, но и в случае использования определенных особенностей браузера для ускорения рендеринга web-страницы в нём (к примеру CSS3-свойства)

Подробности под катом

Реализация небольшого асинхронного сервера

Reading time9 min
Views21K
Целью публикации данного топика является представление аудитории Хабрахабра кода небольшого асинхронного сервера, написанного на Питоне с использованием практически «голых» сокетов.

Мне приходилось писать достаточно много приложений, работающих в качестве сетевых сервисов. Эти сервисы были написаны на разных языках, под разную нагрузку и каждый раз реализация нового сервиса чем-то отличалась от предыдущей. Под хабракатом я привожу пример довольно удачной, на мой вгляд, реализации «учебного» сервера, сопровождая код своими комментариями по мере необходимости.
Читать дальше →

IE8 и поддержка стандартов — transparent PNG + opacity, а также data:URI + AlphaImageLoader

Reading time1 min
Views8.3K
Наковырял пару проблем работы браузера IE8. Может кому пригодится.

Прозрачный PNG + filter:alpha(opacity)



.class{
background:url(transparent.png);
filter:alpha(opacity=50);
}

результат — прозрачные пиксели становятся черными

Лекарство


нужно применить мульти-фильтр

.class{
background:none;
filter:alpha(opacity=50) progid:DXImageTransform.Microsoft.AlphaImageLoader(src=transparent.png, sizingMethod='crop');
}


Следующая проблема нашлась благодаря предыдущей
Читать дальше →

Раменский (группа Тэглайн) о рынке web-разработок

Reading time1 min
Views799
imageИнтервью Алексея Раменского (руководитель экспертной группы Тэглайн), прошедшее на конференции «Сайт 2009». Алексей рассказал про объем рынка, про тенденции развития, ситуации и проблемах отрасли в связи с кризисом.

Помимо этого, еще ряд интересных интервью с конференции, которая стала первой в России, посвященной отрасли разработки сайтов:

Почему дизайнеры должны уметь верстать

Reading time4 min
Views9K
Довольно часто дизайнеров справедливо обвиняют в том, что, создав дизайн сайта, они уходят в свой кокон и замыкаются в неведении, оставляя всю «грязную работу» по воплощению дизайна в жизнь разработчикам. Такая равнодушная позиция отмечается не только в индустрии создания сайтов, но и при разработке программного обеспечения и игр.

Почему дизайнеры должны уметь верстать

Суровая действительность указывает на то, что весь процесс разработки должен происходить при участии дизайнеров. Для достижения оптимальной эффективности дизайнер должен уметь не только нарисовать картинку, но и встроить ее! В этой статье я хотел бы поделиться несколькими соображениями о том, почему дизайнеры должны уметь верстать сайты.
Читать дальше →

qutIM 0.2 beta — теперь банановый

Reading time2 min
Views1.3K
После трёх месяцев томительного ожидания команда разработчиков юбилейным 300-ым коммитом представила нам бета-версию замечательного кроссплатформенного мессенджера qutIM. За это время было сделано много всего нового и интересного, много переписано, сломано и исправлено, добавлен новый функционал и оптимизирована работа. С момента выхода альфа-версии её скачали более 90 тыс. человек (без учёта регулярных сборок и свн-ревизий), в бета-версии мы надеемся на увеличение этого числа :)

(альтернативная ссылка на картинку)

Что нового?

этот удивительный tabindex

Reading time1 min
Views18K
Многие веб-разработчики часто забывают или совсем не используют параметр tabindex, который определяет последовательность перехода между полями при нажатии на клавишу «Tab». Таким образом, при переходе из одного поля в другое прощелкиваются еще несколько элементов, что рано или поздно начинает уничтожать нервные клетки пользователей.

image

Читать дальше →

Как открыть интернет-магазин с голой жопой

Reading time3 min
Views6.5K
Последнее время часто слышу жалобы, что нет юрлица, а значит ничего сделать нельзя, ибо непреодолимый страх, что «придут злые опера и закроют за незаконную предпринимательскую деятельность».

Не буду растекаться по древу насчет «до 5-7 тыс. у.е. в месяц в качестве физлица вы никому в упор не интересны».

Допустим без юрлица ну никак нельзя, да еще и на сайт с рекламой денег нет.  Что делать? 

По шагам:
1. Изучаете товары (Я.Маркет, запросы в Директ, ближайший рынок) на предмет «что бы такого не слишком приевшегося и конкурентного, но при этом простого в доставке, и чтобы геморроя с гарантиями/лицензиями поменьше.
Хинт: сувениры, игрушки, коллекционеры всех мастей. Берете одну/несколько специфических ниш для отработки.
Не надо брать строительство, окна, бытовую технику/электронику. Там, где кокурентов дофига.

2. Идем на ближайший рынок, торговый комплекс, а лучше отраслевую выставку(там народ крупнее и плотнее).

Читать дальше →

Information

Rating
Does not participate
Location
Сербия
Date of birth
Registered
Activity