Pull to refresh
14
0

User

Send message

Липкий эффект

Reading time5 min
Views31K
Буквально недавно Крис написал про «Эффект капельного преобразования в CSS». Эффект реально крутой и сама техника реализована по-умному, но данный подход через обычные CSS фильтры имеет определенные недостатки: нельзя использовать непрозрачность, добавлять контент внутрь капель, проблемы с фоновыми цветами.

В последние дни я достаточно много экспериментировал с SVG фильтрами и заметил, что с их помощью можно решить вышеописанные проблемы в CSS реализации. Посмотрите на липкое меню, которое я сделал для демонстрации:

CodePen


Читать дальше →
Total votes 37: ↑36 and ↓1+35
Comments16

Начались продажи первой в мире электронной книги с экраном Qualcomm Mirasol

Reading time2 min
Views7.4K
Почти 2 года прошло с тех пор, как на Хабре писали о дисплеях Qualcomm Mirasol, основанных на технологии близкой к e-ink и сочетающей в себе достоинства как электронных чернил, так и традиционных дисплев.



И вот наконец проект превратился из очередного лабораторного экперимента в рыночный продукт. Первая читалка с таким экраном поступила в продажу в Южной Корее. Выпущена в сотрудничестве с крупнейшим книжным магазином на этом рынке, Kyobo Book Centre, называется Kyobo eReader. Розничная цена составляет 310$, для владельцев клубной карты Kyobo — всего 265$.

Остальные характеристики устройства очень хороши для читалки, хоть и не вызывают восторга, если воспринимать девайс как планшет (коим он по сути и является):
Читать дальше →
Total votes 76: ↑75 and ↓1+74
Comments49

Firefox 10 получит «тихий» режим обновлений

Reading time1 min
Views1.2K

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

В связи с этим, Ахгари анонсировал новый режим обновлений, который, вероятно, появится в 10-й версии Firefox в начале 2012 года. Все эти процессы будут происходить без участия каких-либо окон, незаметно от пользователя. Так, как это делает ближайший конкурент Firefox — браузер Google Chrome.

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

[Источник]
Total votes 48: ↑43 and ↓5+38
Comments71

Создание msi-пакетов и установка любого ПО средствами групповых политик Windows

Reading time4 min
Views275K
Доброго времени суток, Хабр! Хочу представить интересный, по моему мнению, способ создания msi-инсталляторов для любого программного обеспечения и, как следствие, развертывание его средствами GPO. Подчеркну, что описанный метод не подразумевает создание «слепков» системы, а использует нативные инсталляторы софта, при чем для создания msi применяются только бесплатные для коммерческого использования продукты.
Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments26

CSRF уязвимости на примере ХабраХабра

Reading time3 min
Views29K
Уязвимости уже нет — её исправили задолго до появления этого топика.

Очень часто многие веб-разработчики забывают о существовании этого метода взлома, а некоторые даже не знают о нём.

К сожалению, подобные уязвимости встречаются даже в таких крупных системах, как ХабраХабр.



Читать дальше →
Total votes 369: ↑356 and ↓13+343
Comments67

Разбираем исходный код GNU Coreutils: утилита yes

Reading time6 min
Views10K
(Статья доступна для оффлайн чтения: Markdown | PDF | PDF (print) | HTML)

Зачем?


Все вокруг постоянно говорят: «Хочешь научиться писать профессиональные программы? Посмотри, как это делают другие!». Вот и я решил последовать этому совету, тем более что моё обучение в университете как раз подходит к концу. Особенно интересно сравнить то как учили делать и то как делается в реальном мире. В качестве примера для подражания был выбран пакет GNU Coreutils. В нём есть всё:
  1. Жёсткие требования к переносимости.
  2. Большой жизненный цикл.
  3. Огромная команда разработчиков.
  4. Код различной сложности: от тривиального echo до супер-изощерённого sed, от чисто прикладного wc до более близкого к ОС mkdir.
Читать дальше →
Total votes 103: ↑93 and ↓10+83
Comments46

Silex — микрофреймворк от создателей Symfony2

Reading time4 min
Views61K
Почти год назад я опубликовал статью о микрофреймворке под названием 'fat-free', написанном на PHP. Тогда этот фреймворк и сама статья вызвали некоторый интерес, поэтому я решил сделать обзор еще одного PHP микрофреймворка в стиле популярного Sinatra — Silex project.
image
Созданный в известной в РНР кругах Sensio Labs, не менее известным Fabien Potencier — автором одного из самых популярных на сегодня PHP фреймворков — Symfony, Silex является облегченной версией ожидаемого армией фанатов (к которым осмелюсь отнести и себя) Symfony2.

Для своей работы Silex использует ключевые компоненты Symfony2 в связке с несложной реализацией шаблона проектирования “Внедрение зависимостей” в виде сервис-контейнера Pimple, который позволяет максимально просто отделить логические части кода друг от друга — сделать их независимыми.

Как и у Symfony2 — у Silex интуитивно понятный API, что делает процесс разработки достаточно приятным и позволяет практически в несколько шагов добавлять свой функционал в сам фреймворк.
Читать дальше →
Total votes 92: ↑87 and ↓5+82
Comments72

Коралина. Мир наоборот

Reading time3 min
Views9.2K
Коралина
Друзья, с некоторой периодичностью я делюсь с вами шедеврами современной мультипликации. Сегодня я расскажу вам о фильме, который скрасит ваш пятничный вечер и капнет бальзам на эстетические раны. «Коралина» долгие месяцы лежала на ближайшей полке, именованной: «Смотреть обязательно и срочно». Я боялся не прочувствовать его до конца, не насладиться каждым кадром, упустить настроение.
Но вот земля налетела на небесную ось и я посмотрел. Это поучительная история одной семьи, центральный персонаж которой — Коралина (Coraline). Фильм снят по повести Нила Геймана (чувак, кстати, крайне разносторонен). Если отбросить сюжет, картинку и условности, то суть сводится к фразе: «какими бы не были твои родители, они всё равно твои родители». Но мы не будем их отбрасывать(:
Coraline
Итак, в детали.
Графика фильма очень своеобразная, такую вы не встретите практически нигде: ни в 3д фильмах пиксара, ни в кукольных мультиках СССР. Пейзажи, интерьеры, герои уникальны и неподражаемы по своей красоте. Это очень оправданный шаг со стороны Лайки, и вы, пожалуй очень удивитесь, узнав, что в этом фильме практически, нету 3д и компьютерной анимации. Он чуть более, чем полностью кукольный. Создатели в количестве полутысячи человек провернули гигантскую работу по моделированию и анимации. И результат, надо признать, потрясающий — получился самодостаточный, очень красивый мультфильм.
Coraline
И, разумеется, речь не только о графической составляющей, но и о сценах, невероятной фантазии режиссёра, своеобразном юморе (мальчика — друга Коралины — зовут Вайборн = WhyBorn) и индивидуальности каждого персонажа. Вообще, кстати, местами мультфильм напоминает антиутопии Жёне.
Как это бывает в такого масштаба проектах, музыкальное сопровождение доставляет. Мелодия льётся от начала до конца, почти не прерываясь — она органичная нить повествования, задаёт настроение сцене и зрителю.
Стоит ли говорить, что я крайне рекомендую смотреть, фильм в оригинале?
Пора бы, составить, пожалуй список таких душевных фильмов?
Кстати, у Коралины есть свой интерактивный вебсайт. Живой, приятный. Не сказать, что потрясающий или уникальный, он такой, каким он должен быть: coraline.com
Под катом я чуть-чуть расскажу о сюжете
Total votes 119: ↑96 and ↓23+73
Comments74

Попытка просто объяснить сложные, для новичков, вещи в javascript

Reading time8 min
Views24K
Я попытаюсь просто объяснить, как работают замыкания в Javascript, как работает this, как создавать конструкторы для своих классов и чем различаются различные подходы к их созданию.
Статья не претендует на новаторство, но достаточно доступные объяснения how it works для новичков я не видел, и на мой взгляд — это три самых узких места в Javascript (не привязанному к какому либо контексту, серверу или браузеру, например).
Читать дальше →
Total votes 82: ↑73 and ↓9+64
Comments34

Быстрое шифрование ваших сообщений

Reading time1 min
Views3.9K
Мы часто передаём по сети разные сообщения — в форумах, социальных сетях, по аське, по почте и т.д.
И зачастую хочется скрыть содержимое от посторонних глаз (да-да, в почтовых сервисах и в социальных сетях могут читать ваши сообщения, если оно попадётся в результатах внутреннего поиска по сообщениям).
Так вот. Ставить какие-то шифрующие программы для этого утомительно, затруднительно, а по большей части — просто лень.
И вот тут появляется на арене очень полезный букмарклет Encipher.it
Представляет он из себя обычный Javascript. Ставится он элементарно просто — сохраняете его в «Избранном», выносите на главную панель браузера и пользуетесь. Либо просто через drag-and-drop перемещаете на панель закладок.
image

Например, для того, чтобы зашифровать какое-то сообщение, то просто выделите его, нажмите на иконку «Encipher.it», который появился на панели браузера, введите пароль в появившемся окошке и ваше сообщение тут же зашифруется. Декодируется всё точно так же — выделяем зашифрованный текст, жмём на букмарклет, вводим пароль и сообщение расшифровывается.




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

Шифрование/дешифрование происходит полностью на стороне клиента.
Total votes 61: ↑46 and ↓15+31
Comments29

Пять способов ускорить запросы API Facebook на практике

Reading time7 min
Views14K
Ни для кого не секрет, что самым узким местом веб-приложений чаще всего являются HTTP-запросы к внешним серверам. Так, время загрузки данных запроса API много больше чем время, необходимое для выполнения большинства самых сложных скриптов веб-приложения.

За время работы с API Facebook я накопил несколько рецептов оптимизации запросов: как увеличить скорость работы скриптов, уменьшить их количество и ресурсоёмкость.



Способы, изложенные в этой статье, работают только с API Facebook. Но я не исключаю, что они могут быть применимы и в других сервисах, предоставляющих API.
Читать дальше →
Total votes 84: ↑81 and ↓3+78
Comments27

Нифига себе сходил за хлебушком, или история одного взлома

Reading time8 min
Views115K
Всё началось с того, что ко мне (как к фрилансеру) обратились за помощью и попросили настроить exim4 так, чтобы почтовая рассылка не попадала в спам. Даже заботливо ссылку прислали на замечательную статью.

Работы на пару часиков включая обновление DNS, но не тут то было. Залогинившись под рутом я включил свой любимый screen по привычке командой screen -x и лицезрел прелюбопытнейшее действо в любимой многими папке /dev/shm. Злоумышленник не удосужился прикрыть сессию screen, либо всё еще работал в ней. И тут начинается квест:

Первое, что я сделал — просмотрел, чем же занимался злоумышленник:

Читать дальше →
Total votes 592: ↑576 and ↓16+560
Comments150

Актуализируем учетные данные Active Directory

Reading time10 min
Views81K
Многие помнят то чувство, когда компания расширяется до тех размеров, когда рабочих групп недостаточно, и поднимается первый домен Active Directory: «О, уж теперь-то все будет как следует!» Ан нет, домен потихонечку разрастается, создаются новые учетки, блокируются старые, добавляются, удаляются компьютеры, девушки выходят замуж, меняют фамилии и, в конце концов, база данных службы каталогов выглядит, как полный швах. В этом топике мы наладим связь между базой Active Directory и кадровой системой предприятия, а также создадим механизм для поддержания данных сотрудников в AD в актуальном состоянии.
С чего начать?
Total votes 30: ↑29 and ↓1+28
Comments21

CubeStormer II собирает «Кубик Рубика» за 5 секунд

Reading time1 min
Views6.7K


В детстве у меня было две или три этих игрушки, и я более-менее научился приводить «Кубик» в первоначальное состояние, но только в том случае, если хаос был не слишком уж и велик. В противном случае приходилось действовать при помощи грубой силы, разбирая «Кубик», и собирая его снова в буквальном смысле слова. Так приходилось делать потому, что кубик все же нужно было привести в первоначальное состояние, хотелось порядка. Возможно, на Хабре есть специалисты сборки «Кубика», но сравниться с устройством CubeStormer II вряд ли кому под силу.

Читать дальше →
Total votes 60: ↑56 and ↓4+52
Comments52

Сделано у нас — проекту год

Reading time4 min
Views2.5K
Сделано у нас
Когда я начинал этот проект, многие говорили — ну о чем же ты там будешь писать, ведь все знают, что в «рашке» все только рушится, ничего не производится, а если что и открылось новое иногда, так это исключение подтверждающее правило, это все «вопреки» да и то исключительно для распила.

Но я наивный, как говорят мне некоторые, поэтому я был уверен, что писать на сайте будет о чем. И что такая идея — первый сайт пишущий о реально сделанном в России — он найдет свою аудиторию. Так и случилось.

За год на сайте появилось крепкое сообщество. Первые месяцы мне приходилось самому искать новости, добавлять на сайт, писать обзоры. Теперь это делают пользователи сайта. Посещаемость выросла уже до 6000 человек в день, и продолжает расти примерно по 30% в месяц. В будний день на сайте появляется до 30-40 новых записей, большая часть из них о том что уже сделано.

Но главным нашим достижением, наверное, стал ответ на вопрос, а сколько же производств открывается в России.
Читать дальше →
Total votes 273: ↑252 and ↓21+231
Comments235

Изменение часовых зон в России, Белоруссии и на Украине

Reading time44 min
Views39K
Как вы, наверняка, уже слышали, осенью 2011 сразу несколько государств приняли решение об изменении порядка исчисления времени на своей территории, а также об отмене сезонного перехода на летнее время.
В списке этих государств: Россия, Белоруссия, Украина, частично признанные государства: Абхазия и Южная Осетия, а также непризнанное государство Приднестровье. Т.е. во всех часовых поясах этих стран теперь круглый год будет фиксированный сдвиг относительно UTC, без дополнительных сезонных сдвигов.
(Примечание: Украина сначала приняла решение о переходе на время UTC+3 без летнего времени, но потом отменила принятое ранее решение и пока вернулась к прежнему порядку исчисления времени с сезонными переводами часов. Подробности ниже.)

Server clockВ этой статье я опишу суть принятых изменений часовых поясов и опишу техническую сторону вопроса касательно IT-систем (корпоративной инфраструктуры, серверов, рабочих станций, сервисов, приложений и т.п.). Постараюсь ответить на ряд основных вопросов, возникающих в связи с этими изменениями:
— Какие IT-системы может затронуть изменение часовых поясов?
— Какие проблемы это может вызвать?
— Как подготовиться к этому, чтобы по возможности избежать проблем?

Полагаю, многим системным/прикладным администраторам, а также некоторым разработчикам приложений/сервисов, полезно будет ознакомиться с этим материалом. А потом предлагаю всем заинтересованным обсудить и дополнить эту информацию в комментариях.
Для начала немного общей информации...
Total votes 263: ↑254 and ↓9+245
Comments101

Information

Rating
Does not participate
Registered
Activity