Pull to refresh
18
0
Павел @pahaz

C-level, startupper, co-founder, делаю ит-компании

Send message

Создаём parallax scrolling эффект с помощью jQuery и CSS

Reading time3 min
Views132K
В последнее время, сайты с parallax scrolling эффектом стали появляться повсюду. Я не хотел это пропускать, поэтому я создал демонстрационную страницу с parallax scrolling эффектом с помощью jQuery и CSS.


Читать дальше →
Total votes 66: ↑58 and ↓8+50
Comments31

Дистанционное управление презентацией со смартфона

Reading time3 min
Views13K
Делал я недавно доклад (на Percona Live). И как-то ночью (jet-lag все-таки) подумал, что неплохо бы как-нибудь видеть свои комментарии к слайдам — подсказки — и переключать слайды не подходя к ноутбуку. Чудо-устройства, чтоб и слайды переключало и комментарии показывало, у меня не было. Но был смартфон с Андроидом. Гугл-маркет разочаровал. Большинство подобных приложений работало только с PowerPoint, для LibreOffice я нашел только одно, платное, и выглядело оно как-то не так.

Но есть простое решение — браузер. Можно поднять http-сервер на ноутбуке, зайти с телефона, и по ссылкам переключать слайды. И будет работать не только с Андроидом, а и с яблочными, и с виндофонами. Да вообще смартфон не нужен, можно хоть через WAP заходить, или с другого ноутбука.
Читать дальше →
Total votes 27: ↑24 and ↓3+21
Comments10

TodoMVC — «Hello, world» на стероидах

Reading time1 min
Views18K
Cуществует уже несколько десятков JavaScript-фреймворков для построения сложных приложений в браузере. Чтобы сравнить их между собой и выбрать наиболее подходящий, примитивного примера вроде классического «Hello, world» явно недостаточно. Более сложные и реалистичные примеры программ в книгах и документации каждого фреймворка могут сильно отличаться, и сравнивать их между собой затруднительно. Проект TodoMVC решает именно эту проблему. Это набор примеров реализации одного и того же простого, но вполне законченного веб-приложения с использованием разных фреймворков + эталонный пример на чистом JavaScript.

Приложение TodoMVC — это список дел. Дела можно добавлять, помечать как выполненные и удалять. Список должен сохраняться в локальном хранилище браузера. Приложение должно по возможности использовать стандартный шаблон HTML и CSS. Вот подробная спецификация приложения.
Читать дальше →
Total votes 51: ↑41 and ↓10+31
Comments17

Сканируем в 3D с помощью фотоаппарата или 123D Catch

Reading time3 min
Views133K
В современном мире трехмерные технологии стали очень популярны. 3D стремительно и разнообразно входит в жизнь даже обычного человека. Начиная от 3D телевизоров, 3D сканеров и даже принтеров. Хотя последние два устройства в большей степени пока доступны только специалистам. Но технологии не стоят на месте. Появляются трехмерные принтеры стоимостью около $2000, что уже приближает время, когда они появятся, если не у каждого школьника/студента на столе, то как минимум, у каждого инженера или дизайнера. Что касается методов получения трехмерной модели с реального физического объекта, то тут тоже не все однозначно. Требуются наличие либо дорогостоящего лазерного сканера, либо можно попытать счастье с помощью лазерного строительного уровня, веб-камеры и специального программного обеспечения. Наличием всех этих вещей тоже не может похвастаться абсолютно любой человек.
Однако есть очень простой способ “сканировать” объект в 3D модель, используя обычный цифровой фотоаппарат. Как это сделать? Об этом и пойдет речь далее.
Читать дальше →
Total votes 136: ↑133 and ↓3+130
Comments59

GeoIP и Django

Reading time3 min
Views14K
Вебразработчики частенько сталкиваются с классической задачей определения местоположения пользователя по его IP-адресу. Существует множество различных решений, например на основе мировой базы Maxmind Geolite или российской IpgeoBase. Все они обладают достаточно низкуровневыми API, ну оно и понятно: на входе айпишник, на выходе страна, либо город и, если повезёт, ещё какая-нибудь полезная информация.

У всех сайтов с GeoIP, которые мы запускали, есть общая черта: они не только нуждаются в простой геолокации, необходимо также выводить различный контент на сайте в зависимости от месторасположения пользователя. Чтобы упростить для себя эту задачу мы написали небольшую батарейку django-geoip, вдохновившись приложением django-ipgeobase.
Читать дальше →
Total votes 29: ↑24 and ↓5+19
Comments32

10 лучших инструментов для разработки и администрирования MySQL

Reading time6 min
Views728K
Многие компании создают различные многофункциональные приложения для облегчения управления, разработки и администрирования баз данных.

Большинство реляционных баз данных, за исключением MS Access, состоят из двух отдельных компонентов: «back-end», где хранятся данные и «front-end» — пользовательский интерфейс для взаимодействия с данными. Этот тип конструкции достаточно умный, так как он распараллеливает двухуровневую модель программирования, которая отделяет слой данных от пользовательского интерфейса и позволяет сконцентрировать рынок ПО непосредственно на улучшении своих продуктов. Эта модель открывает двери для третьих сторон, которые создают свои приложения для взаимодействия с различными базами данных.

В Интернете каждый может найти много продуктов для разработки и администрирования баз данных MySQL. Мы решили собрать 10 самых популярных инструментов в одной статье, чтобы вы смогли сэкономить свое время.
Читать дальше →
Total votes 64: ↑61 and ↓3+58
Comments67

Введение в SELinux: модификация политики targeted для сторонних веб-приложений

Reading time8 min
Views32K
Привет, коллеги!
Многие из нас занимаются настройкой рабочих серверов для веб-проектов. Я не буду рассказывать о том, как настроить Apache или Nginx: вы знаете об этом больше меня. Но один важный аспект создания frontend-серверов остается неосвещенным: это настройки подсистем безопасности. «Отключите SELinux», — вот стандартная рекомендация большинства любительских руководств. Мне кажется, что это поспешное решение, ибо процесс настройки подсистем безопасности в режиме «мягкой» политики чаще всего весьма тривиален.

Сегодня я расскажу вам о некоторых методах настройки подсистемы безопасности SELinux, применяемой в семействе операционных систем Red Hat (CentOS). В качестве примера мы настроим связку для веб-сервера Apache + mod_wsgi + Django + ZEO на CentOS версии 5.8.

Читать дальше →
Total votes 54: ↑49 and ↓5+44
Comments32

Подробно о свойстве float

Reading time4 min
Views215K
Правильное использование CSS свойства float может стать непростой задачей даже для опытного верстальщика. В этой статье собраны варианты применения float, а также некоторые ошибки, с наглядными примерами.

Читать дальше →
Total votes 153: ↑140 and ↓13+127
Comments89

Шаблонизация в JavaScript с использованием Razor

Reading time5 min
Views9.4K
В силу всё большего и большего усложнения веб-приложений на стороне клиента, хочется иметь шаблонизаторы, которые работали бы прямо на клиенте. И таких средств, надо сказать, появилось не мало. Но так как я легких путей не ищу все они мне не нравятся, я решил сделать свой с блэкджеком и дамами лёгкого поведения (я так понял, на Хабре жестко карают и банят, если этой фразы нет в посте).

И вот я решил создать строготипизированный шаблонизатор на Razor.
А как это у меня получилось и чем мне помог SharpKit, скрывается под катом
Total votes 25: ↑19 and ↓6+13
Comments10

Dynamic Binary Instrumentation в ИБ

Reading time7 min
Views13K
    Сложность программного обеспечения растет – программы становятся более динамическими, и их поведение возможно оценить только в процессе выполнения. Производить оценку безопасности (поиск уязвимостей, недокументированных возможностей и т.д.) таких приложений значительно сложнее. Использовать только статические подходы анализа становится невозможным, так как из-за динамически генерируемого кода мы даже не можем гарантировать полное покрытие кода при анализе. На помощь приходят динамические методы анализа.

    Есть такая замечательная технология, как динамическая бинарная инструментация (Dynamic Binary Instrumentation, DBI), которая заключается во вставке в бинарный исполняющийся код анализирующих (в общем случае) процедур. Основная прелесть данного подхода заключается в том, что нет необходимости в исходном коде анализируемого приложения – работа происходит непосредственно с бинарным файлом.
Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments0

7 причин, почему AngularJS крут

Reading time2 min
Views35K
Достаточно вольный перевод заметки 7 reasons why angularJS rocks.

AngularJS
Я backend-разработчик и мир Javascript фреймворков для меня достаточно нов, хотя в последние полгода мой интерес к ним сильно растет. Причина проста: я считаю, что стек технологий REST + JSON + Rich JS все больше подходит для широкого круга веб-приложений. Такой подход помогает победить дерьмовую сомнительную концепцию MVC в серверных приложениях. Почему MVC можно считать вредным — это отдельная история, сейчас лучше поговорим об AngularJS.

Что в AngularJS особенного?
Читать дальше →
Total votes 34: ↑23 and ↓11+12
Comments34

Сборка: markitUp, fancybox, elFinder — отличная замена WYSIWYG редакторов

Reading time3 min
Views8.3K
Я давно занимаюсь написанием систем управления контентом для сайтов и всегда в них использовал визуальные редакторы. В виду того, что я часто не только пишу cms, но и осуществляю дальнейшую их поддержку, мне надоело, что юзеры регулярно норовят намудрить с html-кодом (о копипасте из ворда я вообще молчу). И с этого года я стал вместо визивиг-редакторов вставлять markitUp с поддержкой markdown.

И действительно, проще за 3-4 часа объяснить основы html разметки, чем отучить пользователя копипастить из ворда. Все замечательно в markitup, но не хватает возможности загружать файлы на сервер и вставлять ссылки на них.

Сегодня решил посвятить время симбиозу замечательных jquery плагинов: markitUp, fancybox, elFinder. Результатом своего труда решил поделиться.
Читать дальше →
Total votes 11: ↑10 and ↓1+9
Comments23

Знакомство с Parallax Scrolling

Reading time4 min
Views292K
Любой, кто играл или наблюдал за игрой друзей, либо в принципе видел игры, которые были выпущены в 80-90-х годах, должны быть знакомы с техникой параллакс-скроллинга.

Вспомните такие игры, как Mario Bros, Streets of Rage, Mortal Kombat, Turtles in Time или оригинальную игру Moon Patrol. В этих играх техника параллакса наблюдается в тот момент, когда несколько фоновых слоев с различными текстурами двигаются с разной скоростью, что создает эффект трехмерного пространства.

Почему я начал говорить о ретро-играх в статье о веб-разработке? Самым простым ответом мог бы быть «потому что они клевые», но нет. Параллакс-скроллинг является классным дизайнерским концептом, который прокладывает свой путь в мир веб-дизайна. Nike были одними из первых, кто использовал эту технику с большим успехом, когда они наняли маркетинговых гигантов Weiden and Kennedy для разработки их оригинального сайта Nike Better World. Сайт Nike Better World с того времени был обновлен и заменен на новый, однако есть другой сайт, довольно похожий на то, как выглядел первый параллакс-дизайн от Nike — сайт о спортивных напитках Activate.


Читать дальше →
Total votes 99: ↑92 and ↓7+85
Comments35

Интерактивная визуализация данных Envision.js

Reading time1 min
Views5.2K
Envision.js библиотека для создания быстрых динамических и интерактивных визуализаций данных на HTML5.


Возможности:

1) Визуализация в реальном времени.
2) Временная шкала
3) Визуализация валют ( как на яндексе прям )
4) Поддержка Ajax в интерактиве.
5) Можно побаловаться фракталами.

Читать дальше →
Total votes 88: ↑84 and ↓4+80
Comments17

oEmbed. Делаешь веб-сервис? — Делай и oEmbed

Reading time3 min
Views15K


Конечно вы видели этот эффект, когда вставляешь в фейсбуке или вконтакте ссылку, и в посте тут же начинает подгружаться какой-то контент с сайта, на который ведет ссылка. И я видел, но даже не представлял, насколько это легко можно сделать с oEmbed'ом.

oEmbed.com — впринципе, на этом можно было бы и закончить читать тем, кто хочет провести самостоятельное мини-исследование.
Но вот мой рассказ, как этим пользоваться и много ссылок
Total votes 79: ↑76 and ↓3+73
Comments29

Ajax сайт индексируемый всеми поисковиками

Reading time2 min
Views6.1K
Вижу очень много статей на тему того что люди пытаются сделать Ajax сайты но их смущает то что такие сайты не будут проиндексированы поисковиками. У Google с этим все в порядке, можно использовать специальный синтаксис.

Некоторое время назад у меня стояла задача сделать Ajax сайт работающий «как твиттер» но при этом индексируемый поисковиками.

Читать дальше →
Total votes 38: ↑20 and ↓18+2
Comments29

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

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

Python threading или GIL нам почти не помеха

Reading time7 min
Views24K
Наверное всем, кто хоть раз интересовался Python, известно про GIL — его одновременно и сильное и слабое место.
Не мешая однопоточным скриптам работать, он ставит изрядные палки в колеса при многопоточной работе на CPU-bound задачах (когда потоки выполняются, а не висят попеременно в ожидании I/O и т.п.).
Подробности хорошо описаны в переводе двухгодичной давности. Побороть GIL в официальной сборке Python для настоящего распараллеливания потоков мы не можем, но можно пойти другим путем — запретить системе перебрасывать потоки Python между ядрами. В общем пост из серии, «если не нужно, но очень хочется» :)
Если вы знаете про processor/cpu affinity, пользовались ctypes и pywin32, то ничего нового не будет.
Читать дальше →
Total votes 31: ↑29 and ↓2+27
Comments34

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

Reading time2 min
Views3.4K
Очередной топик с обзором нескольких интересных плагинов jQuery.

Mobily Map




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


Читать дальше →
Total votes 162: ↑148 and ↓14+134
Comments22

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity

Specialization

Chief Technology Officer (CTO), Pentester
Lead
From 1,200,000 ₽
People management
Building a team
Company management
Startup management
Strategic management
Business development
Strategic planning
Budgeting projects
Information Technology
Negotiation