Search
Write a publication
Pull to refresh
14
0
evilbloodydemon @evilbloodydemon

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

Send message

Офлайновый дистрибутив Google Earth

Reading time1 min
Views44K
Скачать Google Earth — не такая уж простая задача. Особенно, если вы хотите получить полный дистрибутив, и при этом избежать дополнительных «бонусов» от Google. По умолчанию Google выдаёт маленький веб-инсталлятор, который скачивает Google Earth, Google Chrome и Google Updater. Даже если в опциях вы снимите птичку ″Include Google Chrome, a fast new browser for Windows and Mac″, то всё равно получите веб-инсталлятор.
Читать дальше →

Велосипед: межсайтовая авторизация собственных проектов

Reading time2 min
Views2.8K
Это обсуждалось много и долго, напрмер в посте… Реализовал свой велосипед межсайтовой авторизации.

Итак, вернемся к задачи:
есть несколько оригинальных проектов (project1,project2,projectN...), для которых должна быть единая авторизация. То есть, Пользователь залогинившись в проекте project1 имел доступ к ресурсам project2...projectN как авторизованный пользователь.

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

Ограничение: все проекты лежат в одном датацентре и находятся в одной локальной сети. Все проекты имеют единое хранидище для сессий и соответственно единый sid.
Читать дальше →

OAuth: описание протокола простым и понятным языком

Reading time16 min
Views201K
OAuth — популярный протокол, который позволяет социальным сервисам интегрироваться между собой и дает безопасный способ обмена персональной информацией. OAuth может связать между собой 2 сервиса, каждый из которых имеет свою пользовательскую базу — именно их я в данном случае называю «социальными». Когда начинаешь работать с OAuth, первое ощущение — что протокол весьма сложен и избыточен. В этой статье я попытаюсь объяснить основы OAuth человеческим языком.

Пример кросс-авторизации


Вернемся в 2005-й год и представим, что мы пишем социальную сеть. В ней имеется форма импорта контактов из адресной книги GMail. Что нужно для доступа к контактам GMail? Конечно, логин и пароль от ящика. Но если мы попросим ввести их на нашем сайте, пользователь заподозрит неладное. Где гарантия, что мы не сохраняем на сервере введенные пароли? Поэтому нам хочется, чтобы пароль вводился только на сайте GMail, и после этого доступ к контактам через API GMail предоставлялся нашей социальной сети (возможно, на время).
Под катом - повествование с примерами

Пол Экман «Психология лжи»

Reading time4 min
Views12K
Пол Экман. Психология лжи
Вероятно, многие видели американский сериал «Lie to me». На бит-торрент трекерах он распространяется под названием «Теория лжи», а первый канал его показывает отчего-то под названием “Обмани меня”. Сериал рассказывает о команде суперпрофессиональных психологов, занимающихся расследованиями самого разного рода: от брачных дел до поимки маньяка-убийцы. Объединяет эти расследования только одно: всегда нужно выявить лжеца, узнать в чем он лжет, что скрывает – и тем самым решить дело. Именно распознавание лжи – профессиональная область героев сериала, именно для решения этой задачи их нанимает ФБР, полиция, пожарные и многие другие.

Однако, немногие видевшие сериал знают, что у доктора Кэла Лайтмана, главного героя, блестяще исполненного Тимом Ротом, есть вполне реальный прототип – выдающийся психолог, профессор Калифорнийского Университета Пол Экман. Манипуляции, микровыражения, техники выявления лжи, столь ярко демонстрируемые в каждом эпизоде, стали известны именно благодаря многолетним исследованиям доктора Экмана и его коллег. В 1985 году он написал книгу «Telling Lie», в которой подробно, почти скрупулезно рассказал о своих работах, разобрал виды и классифицировал признаки лжи, изложил техники выявления обмана в самых различных обстоятельствах: повседневной жизни, уголовных расследованиях и политике. Как оказалось, в закрытых и секретных организациях, вроде ЦРУ, АНБ и ФБР, психологических журналов особенно не читали, а книга, напротив, стала известна, а вместе с ней и её автор. Доктора Экмана начали приглашать для проведения тренингов и семинаров; выяснилось, что люди, стоящие на страже национальных интересов разбираются во лжи ничуть не лучше нас с вами. Т.е. они, как и большинство простых обывателей, думают, что способны выявить обман, но в действительности их результаты в среднем не лучше случайного угадывания, более того они часто просто не знают куда смотреть – таковы результаты исследований Экмана и его коллег.

В 1992 году «Telling Lie» была переиздана и дополнена с учетом опыта работы с секретными службами, а в 2009 году в издательстве «Питер» эта книга вышла в русском переводе под названием «Психология лжи». Найти книгу можно, к примеру, на ozon.ru
Читать дальше →

Дерево категорий с чекбоксами на JQuery

Reading time2 min
Views1.8K

Begin



Делаем каталог. Понадобилось сделать дерево категорий товара/фирм/услуг с бесконечной вложенностью. Каждую категорию можно отметить чекбоксом, чтобы потом можно было получить список/массив всех отмеченных категорий (например для поиска по ним).

Написал такое вот деревце. Реализовал в виде плагина к любимому JQuery )

Что умеет:


  • Если указан пустой див — загружает из указанного скрипта все категории, и подкатегории(вложенные ul, если li имеет класс folder и не имеет вложенного списка(ul) — дерево будет автоматом подгружать этот список из указанного скрипта с указанной глубиной рекурсии(это забота скрипта выдавать запрашиваемые данные с требуемыми параметрами).
  • Если указан готовый список — то можно сворачивать/разворачивать подкатегории, отмечать нужные, которые будут подсвечены заданным классом
  • Получать выбранные номера категорий (value чекбоксов) в массиве
  • Возможность поиска по всем загруженным веткам дерева, вывод результата поиска в указанный див(указывается див для поиска, в котором строка для ввода запроса + див(пустой) для вывода результатов)
  • Число результатов поиска можно ограничить (в параметрах)
  • При клике на одном из найденных результатов — дерево открывается чтобы отобразить заданную ветку и она подсвечивается классом(указывается в параметрах)
  • Можно задать чтобы при клике на родительской категории — внутренние также выделялись
  • Можно задать сообщение которое выдается при попытке выделить лишний чекбокс если число их ограничено.


Вроде ничего не забыл )

Параметры:
Читать дальше →

Автоматизированный приём webmoney платежей на вашем сайте.

Reading time6 min
Views3.4K
0. Вступление

Ни для кого не секрет, что в последнее время webmoney набрало достаточную популярность для того, чтобы стать одним из самых удобных и доступных средств для безналичного расчёта через интернет. Пополнить баланс своего мобильного, оплатить покупку товаров в веб-магазине — всё это можно сделать с помощью webmoney.

Я бы хотел рассказать вам несколько способов, как можно устроить приём оплаты за какие либо товары или услуги на вашем сайте электронной валютой webmoney. Это, кстати, не так сложно, как могло бы показаться на первый взгляд!
Читать дальше →

Продолжаем работать на oDesk

Reading time9 min
Views14K
Пару месяцев назад я написал статью о том, как начинать работать на oDesk людям привычным к обычным фрилансерским биржам типа free-lance.ru, weblancer, getafreelancer и т.д. Настало время для следующей статьи с советами для людей которые уже стартовали и хотят раскручиваться на этой бирже.

Все изложенное в статье — мое мнение. Можете соглашаться или не соглашаться, но для меня эти правила работают.

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

Инструменты скринкастинга (Windows)

Reading time8 min
Views65K
Здравствуйте, друзья!

Итак, в последние дни меня очень сильно заинтересовал скринкастинг как жанр подкастинга. Если быть точнее, то я бы отнес скринкастинг к видеоподкастингу. Весьма своеобразному.

Что же такое скринкаст? (Дурацкое клише — задавать вопросы самому себе и отвечать! больше не буду...) Скринкаст — от англ. screen — экран и cast как и в случае podcast — корень broadcast — вещать. То есть буквально — экрановещание. Скринкаст это видеозапись того, что происходит на экране со звуковыми или текстовыми комментариями. Как если бы вещающий сидел рядом с вами и показывал действие на реальном компьютере и при этом что-то объяснял.

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

Используем Adobe Illustrator для создания макета страницы

Reading time4 min
Views93K
Данное руководство создано для тех, кто уже умеет пользоваться Adobe Illustrator, но пока не знает всех тонкостей работы с ним и хочет познакомиться поближе.

Товарищ CurlyBrace уже сверстал представленный здесь макет, спасибо ему!

Для начала посмотрите на то, что мы будем стараться сделать:



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

Кладезь электронных книг и журналов на английском языке — Netbks

Reading time1 min
Views1.9K
Здравствуйте!

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

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

О правде, которую не должен знать пользователь

Reading time3 min
Views785

Здравствуй.

У Горького в пьесе «На дне» одним из ключевых моментов идет диалог героев о правде, о том нужна ли правда, в каких количествах и под каким соусом она должна быть подана. Сегодня я тоже хочу поговорить о правде, о той которую говорят или скрывают от пользователя администраторы и создатели сайта.

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

Итак, список того, о чем не должен знать пользователь:

Пользователи не должны видеть, кто как проголосовал. По собственному опыту знаю, что такое пользователь, знающий кто какие оценки ставит. В своем первом проекте я разрешил видеть оценки (уж настолько сильно просили об этом).
Читать дальше →

Поиск — это просто

Reading time3 min
Views3.7K
Google, конечно, ищет хорошо, но корпоративные ресурсы вывешивать на открытый доступ нельзя, покупать google-mini с его ограничениями тоже не вариант. А поиск по базе внушительных размеров(4 гигабайта текстов, по которым и необходим поиск) надо. А если добаить к поиску по тексту еще и поиск по каким-то параметрам, то тут и google-mini не поможет и совсем страшно становится.

Но не стоит паниковать! На помощь нам приходит Sphinx — поисковый движок с открытым исходным кодом, который можно прикрутить практически к чему угодно не прилагая особых усилий

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

jQuery для продолжающих (с плагинами)

Reading time3 min
Views1.9K
jQuery — библиотека о которой в последнее время говорит практически каждый web-разработчик, верстальщик и дизайнер. Написанная с учётом CSS, она упрощает доступ к одному или нескольким DOM-элементам. Если вы ещё используете prototype, то можно использовать режим совместимости (правда не факт что у вас будут работать плагины). Стандартно доступ происходит благодаря функции $ или JQuery. Элементу можно добавить (.addClass) или отнять (.removeClass) CSS-класс. Если это input-элемент, то запись и чтение происходит в аттрибуты элемента (.attr). Внутренние элементы можно задать как через (.html).
Кроме минимализма, ускоренности и CSS-селекторов библиотека мало чем по функциональности отличается от prototype, mootools. Она не расширяет родные JS-объекты, как это делает protype и существует в своём пространстве переменных, поэтому не конфликтует с другими библиотеками.

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

Азбука хорошего разработчика. Книжки для чтения

Reading time2 min
Views3.6K
Часто разработчиков нужно направить, поскольку они не имеют понятия о том, что им нужно изучить для повышения своего уровня. В этой заметке я опишу источники знаний, в моем понимании, необходимые для этой цели. Пишу в порядке, в котором я их предлагаю читать.

Паттерны проектирования

Википедия — там, в принципе, на хорошем уровне все описано и приведены примеры на разных языках.
Базовая книга – классика:
«Приемы объектно-ориентированного проектирования. Паттерны проектирования» — читал книгу давно, и раза 3. Вам того же советую. Даст возможность понимать большое количество терминов, произносимых другими разработчиками.

Рефакторинг

«Рефакторинг. Улучшение существующего кода» — вероятно, эта книга сделала революцию в написании кода. Читается быстро и интересно. Методы рефакторинга должны отложиться в голове до конца жизни. Ваш код отныне будет лучше. В книге есть упоминание про юнит тестинг.
Читать дальше →

Памятка для SEO оптимизаторов

Reading time1 min
Views1.9K
Вот решил поделиться некоторым материалом, который сам составил в ходе экспресс-изучения SEO оптимизации и раскрутки сайтов. Просто попался видео-курс Юсуфа Губайдуллина, который продает его на promoguide.ru и решил воспользоваться случаем. Честно говоря, курс не понравился — нудно как-то рассказывается. Оценил содержание на 4 с минусом, а изложение — на 2 с плюсом. Само SEO весьма скучная вещь, но нужная, поэтому составил небольшую памятку для себя — чтобы не держать это в голове и легко вспомнить когда понадобится. Здесь два файла: первый — просто картинка, второй — в формате freemind, для тех, кто желает что-то для себя добавить.

SEO-карта
Читать дальше →

Как IT-фрилансеру стать предпринимателем. Часть 3

Reading time4 min
Views36K
Всем привет! Мы продолжаем серию постов о том, как IT-фрилансеру стать предпринимателем. Вы уже знаете, почему ИП лучше, чем ООО и как зарегистрировать ИП самостоятельно. Сегодня мы расскажем, что ждёт предпринимателя после регистрации.



Краткий путеводитель для начинающих предпринимателей от «Я люблю ИП»
Читать дальше →

Разбор Underscore

Reading time10 min
Views34K
В этом посте любитель javascript, вооружившись бензопилой, безжалостно распиливает одну из лучших, на его взгляд, универсальных библиотек.



Препарируем вот этот исходник с точки зрения ученика 5-го «Б» Васи Пупкина, прочитавшего книжку по основам javascript, и страстно желающего получше запутаться в полученных знаниях.
Слабонервным не смотреть!

Основные виды поисковых запросов, которые используют пользователи интернет-магазинов, готов ли ваш сайт к ним? (Часть 3)

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

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

Эффект неисправного монитора для текста, картинок и SVG

Reading time4 min
Views116K
Эффект Glitch Лукаса Беббера выглядит очень круто — как будто вы смотрите на текст на старом мониторе, который слишком часто роняли на пол и у него «плавает» вертикальная синхронизация и сведение.

Реализация этого эффекта на CSS выглядит вполне убедительно. Мне пришлось немного поломать голову, чтобы выяснить, как он работает, и теперь я хочу объяснить это вам. Кроме того, я воспроизвёл этот эффект не только для текста, но и для растровых изображений и SVG, а так же написал несколько примесей Sass, чтобы облегчить работу с ним.


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

Анализ рендеринга через Skia Debugger: как можно найти самые дорогие для отрисовки элементы

Reading time4 min
Views23K
Доброго дня, недавно я решал проблему притормаживания скролла на страницах Почты Mail.Ru. Особенно эта проблема была заметна на retina-дисплеях. После простого анализа я пришел к выводу, что одна из основных проблем — это медленная отрисовка страницы.

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

Как и многие подобные проблемы оптимизации, данную проблему можно решить множеством способов. Я взялся за оптимизацию рендеринга, так как на нее затрачивалось значительное количество времени. Тем самым, я достаточно быстро смог бы получить прирост производительности и, соответственно, улучшить плавность скролла, ускорив отрисовку.


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

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity