Search
Write a publication
Pull to refresh
0
0

Dark side eye. А у нас печеньки! А у вас?

Send message

Готовое решение доступного видеоплеера на HTML5

Reading time3 min
Views52K
Видеоконтент уже прочно вошёл в мир Интернета и без него уже трудно представить глобальную сеть. Тем не менее, технологии встраивания видео в гипертекстовые документы за прошедшее время прошли определённую эволюцию: от RealPlayer к QuickTime и Flash, а в настоящий момент до встроенной поддержки видео в HTML5. Тем не менее, всё это время различные реализации видеоплееров страдали как от проблем кроссплатформенности и кроссбраузерности, так и от низкого или вообще нулевого уровня accessibility. И если способы борьбы с первой группой проблем в целом понятны и существуют в форме готовых решений, то вот проблемы доступности для подавляющего большинства web-разработчиков и без того, как правило, сложны для понимания, а в отношении видео совсем оставались загадкой. Однако, к счастью, появилось готовое решение и второй проблемы, так что все желающие смогут обеспечить своим пользователям полностью доступный видеоплеер и без глубоких компетенций в web accessibility.
Читать дальше →

JavaScript метод insertAdjacentHTML и beforeend

Reading time1 min
Views23K
Перевод статьи «JavaScript insertAdjacentHTML and beforeend», David Walsh.

Если вы не знали: чертов DOM очень медленный. А по мере того, как наши сайты становятся все более динамичными и AJAX-использующими, нам становиться все важнее управлять DOM древом с наименьшим ущербом в производительности. Недавно я написал статью о DocumentFragment'ах. Это разумный подход к объединению списка дочерних элементов под неким «псевдо-элементом», для дальнейшего помещения в реальный DOM элемент. Еще один замечательный метод для работы с элементами insertAdjacentHTML: это способ добавлять элементы в родительский элемент не задевая других его потомков.
Читать дальше →

Поиск VPS — осеннее обновление

Reading time6 min
Views8.2K
Наступила осень, поэтому у меня появилось желание отчитаться о проделанной за лето работе на проекте poiskvps.ru



Я думаю, что почти каждый вебмастер или владелец сервера сталкивался с проблемой, когда нужна была резервная копия данных, а ее по какой-то причине не оказывалось. На обычном шаред хостинге принято, что хостеры сами делаю резервные копии и в случае чего готовы предоставить их пользователям. Однако при аренде виртуального или выделенного сервера ситуация ровно обратная: владельцу нужно самостоятельно следить за сохранностью данных и выполнять резервное копирование своими силами. Иногда хостеры предлагают “коробочные” решения, когда вместе в сервером дают пользователю возможность арендовать место для хранения бэкапов. На мой взгляд, это не самая лучшая идея, так как бэкапы нужно хранить как минимум в другом дата-центре, а желательно и в нескольких. Например, можно вспомнить пожар в дата-центре hosting.ua — от такого стечения событий никто не застрахован, однако такой случай показывает, что хранить резервные копии в одном и том же дата-центре не самая лучшая идея. Также, на мой взгляд, хранить резервные копии у хостера тоже не самая лучшая идея, даже если бэкапы хранятся далеко от основного сервера. В последнее время не редки случаи, когда хостер может просто пропасть или у него изымают все оборудование.

Сервис аренды места для резервного копирования




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

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

Параллакс на чистом CSS

Reading time4 min
Views168K
В этой статье показывается, как с помощью CSS трансформаций и махинаций с 3d сделать параллакс-эффект на сайте на чистом CSS.

Параллакс почти всегда создаётся с помощью JavaScript и, чаще всего, получается ресурсоёмким, из-за вешания листенеров на событие скролла, модификации DOM напрямую и срабатывания ненужных перерисовок и перестановок. Всё это происходит асинхронно с потоком, в котором браузер рендерит страницу, из-за чего скролл начинает подтормаживать, а картинка рваться на части. Более правильные реализации параллакса отслеживают скролл и используют отложенные обновления DOM с помощью requestAnimationFrame. Получается качественной другой результат, но почему бы вообще не избавиться от JavaScript?
Читать дальше →

DDoS великий и ужасный

Reading time10 min
Views68K
Знаете ли Вы, что по данным исследований, проведённых Arbor Networks, Verisign Inc. и некоторыми другими компаниями:

  • ежедневно наблюдается порядка 2000 DDoS атак;
  • атака, способная «положить» небольшую компанию на неделю, стоит всего $150;
  • около 2/3 участников исследований (63%) страдали хотя бы раз от DDoS в течение года;
  • помимо прямых убытков и потери лояльности пользователей, атаки также влияют на продуктивность работы персонала;
  • 11% респондентов были под атакой шесть и более раз за год;
  • среди тех, кто за последние 12 месяцев был под атакой, 46% лежали более 5 часов, а 23% — более 12 часов;
  • примерно треть всех случаев даунтайма у респондентов вызваны DDoS атаками.

Каким бывает DDoS, можно ли с ним бороться и как можно предостеречься? Об этом я вкратце поведаю в данной статье.

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

oDesk (Upwork). Мой опыт за полтора года

Reading time12 min
Views445K
Вот уже полтора года я зарабатываю фрилансом на бирже oDesk. За это время у меня накопилось много материалов по данной теме. В данном топике я собрал все в одну статью и адаптировал для аудитории хабра.
image
Читать дальше →

Менеджмент. Краткое руководство для начинающих менеджеров и опытных подчиненных

Reading time6 min
Views70K
Современный менеджмент включает в себя целый ряд дисциплин, которые объединяют в себе самые различные функции, от менеджмента рисков до управления ресурсами и маркетинга. Сегодня же мы взглянем на менеджмент проекта в рамках IT-компании в общем, опишем главные функции менеджера (каждая из которых включает тысячи подфункций и еще больше всевозможных задач) и опровергнем несколько устойчивых и вредных мифов. Эта статья для начинающих PMов, а также для тех, кто вырос в менеджера из программиста.

Контрольный вопрос: чем менеджер отличается от подчиненного? На самом деле, основное отличие – это ответственность за результат. Менеджер отвечает за результат всей команды. На этом фоне ни решение задач, ни зарплата не является основной отличительной чертой между подчиненным и менеджером.
Читать дальше →

Оптимизация Linux для desktop и игр

Reading time8 min
Views176K
В этой статье я хочу поделиться почти 10-летним опытом использования Linux на домашнем компьютере. За это время я провел много экспериментов над ядром, испробовал различные конфигурации для разных применений и теперь хочу все это систематизировать в длинный пост с рекомендациями как выжать из linux максимум и добиться отличной производительности, без необходимости покупать мощное железо.

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

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

fork() vs. vfork()

Reading time15 min
Views41K
Послушайте!
Ведь, если звезды зажигают — значит — это кому-нибудь нужно?

В. В. Маяковский, 1914


Я занимаюсь программированием для встроенных систем, и данную статью решил написать для того, чтобы лучше разобраться с проблемой использования системных вызовов fork() и vfork(). Второй из них часто советуют не использовать, но ясно, что появился он не просто так.

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

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

Кому интересно, прошу под кат.
Читать дальше →

Опыт использования виртуализации на VirtualBox

Reading time14 min
Views219K
Уровень: начинающим

Опыт использования виртуализации на VirtualBox


Введение


Несколько лет назад я начал разбираться с вируализацией, и у меня получились своего рода путевые заметки, которые я сейчас оформил и выкладываю сюда. Никаких откровений тут не будет, статья адресована начинающим админам. Задача которую я здесь решаю состоит в том, чтобы виртуализовать уже имеющиеся не виртуальные сервера на Linux и FreeBSD.



Я хочу попробовать что-нибудь виртуализовать

Как заставить работать старую версию «Скайпа»

Reading time1 min
Views135K
2 августа, прямо во время звонка родителям, «Скайп» выбросил меня и отказался принимать пароль со словами «Skype больше не поддерживает работу своего программного обеспечения в твоей системе». На самом деле, конечно, дело не в версии системы, а в версии самого «Скайпа»: у меня стояла 4.2 (под «Виндоус»). Вариант обновления до более поздних версий я даже не рассматривал. Погоревав с неделю, я всё-таки начал искать способы решения проблемы и, к большому своему удивлению, нашёл.

Итак, процедура запуска «старой» версии «Скайпа» такова (повторюсь, рецепт для «Виндоус»).
Читать дальше →

EtherCalc: электронные таблицы на Node.js

Reading time1 min
Views13K
EtherCalc — отличный инструмент для редактирования электронных таблиц в вебе, в том числе для совместной работы.



Просто перетяните готовый документ CSV или Excel XML (.xlsx) на страницу — и она сразу импортируется в EtherCalc. Или можно создать новый документ одним нажатием кнопки.

EtherCalc кажется более удобным и функциональным, чем «Google Таблицы» и другие подобные программы. В комментариях репозитории на Github автор объясняет, что EtherCalc — это порт на Node.js приложения SocialCalc. Программу можно установить локально для работы в офлайне.

Исходный код опубликован под свободной лицензией.

Дайджест интересных материалов из мира веб-разработки и IT за последние несколько недель №117 (10 — 27 июля 2014)

Reading time7 min
Views41K
Мы вернулись из отпусков и с новыми силами предлагаем вашему вниманию подборку с ссылками на полезные ресурсы, интересные материалы и IT-новости


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

JQuery Deferred — примеры использования

Reading time5 min
Views66K
В этой статье я не буду говорить о том зачем в javascript нужны промисы и в частности JQuery.Deferred. Также не буду приводить справочную информацию, ее достаточно в интернете. Например тут или тут или вот тут.
Эта статья для тек кто уже немного знаком с объектом Deferred из библиотеки JQuery, но не имеет опыта написания сложных цепочек (очередей).

Подготовка

Все примеры кода, рассмотренные здесь, используют асинхронный метод $.ajax(), который возвращает так называемый jqXHR в котором реализованы промис-методы (done, fail, always, then). Нам нужны будут только они, поэтому будем считать что $.ajax возвращает промис (promise).
В некоторых примерах используются методы $.map() и $.each(), которые входят в состав библиотеки JQuery.

Последовательное выполнение

Простейшее использование промисов — это последовательное выполнение асинхронных операций. То есть следующая операция не начинается пока текущая не закончится.

$.ajax('http://echo.jsontest.com/id/1')
.then(function(result){
    console.log(JSON.stringify(result));
    return $.ajax('http://echo.jsontest.com/id/2')
}).then(function(result){
    console.log(JSON.stringify(result));
    return $.ajax('http://echo.jsontest.com/id/3')
}).then(function(result){
    console.log(JSON.stringify(result));
});

Живой пример тут.
Читать дальше →

Автоматическая очистка старых драйверов, или выжмем немного места из Windows 7

Reading time6 min
Views233K
В один прекрасный (или печальный, кому как) день мне надоело, что у меня периодически заканчивается место на ноутбуке. Да, я в курсе, что жёсткие диски сейчас дешевы, но это для меня не выход, потому что:
  • У меня SSD, а он всё-таки подороже будет, чем обычные HDD (объём моего текущего SSD — 120 гигов)
  • Ноутбук рабочий, соответственно данные на нём тоже, должны быть шифрованы, всё такое, поэтому самопальный и не утверждённое работодателем носитель втыкать не стоит
  • Я жадный :)

Этот топик, пожалуй, предназначен и может быть полезен тем людям, кого волнует свободное место на системном диске, обычные средства очистки уже испробованы, а хочется выжать ещё чуть-чуть (как в старом анекдоте — первая попавшаяся в гугле ссылка на анекдот, если сайт плохой — пардон).
Если заинтересовало - милости просим

Модульные комиксы — простой способ увлечь аудиторию

Reading time2 min
Views34K
Борьба за внимание читателя/аудитории набирает обороты. Автор длительное время наблюдает за поведением людей на презентациях (сидя рядом) и слегка шокирован скоростью вхождения большинства индивидуумов в полусонное состояние.

Лекции о визуальном мышлении и разнообразные рецепты улучшения «перевариваемости» информации уже успели набить оскомину. Собственно, почему комиксы?

image

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

18 неожиданностей при чтении исходного кода jQuery

Reading time4 min
Views56K
Перевод статьи «18 Surprises From Reading jQuery's Source Code», David Aragon.

Я люблю jQuery, и хотя я считаю себя продвинутым JavaScript разработчиком, я никогда, до сих пор, не читал исходники jQuery с начала и до конца. Вот несколько вещей, которые я при этом узнал:
Читать дальше →

Никогда не «не делай» того, о чем пожалеешь или умный дом с CCU.IO

Reading time12 min
Views119K
На хабре последнее время появляется много статей об автоматизации дома. Какие-то статьи с пространными размышлениями на тему умного дома, не несущие полезной нагрузки. Какие-то с конкретной реализацией на конкретном проприетарном железе, но им не хватает чего то для того, что бы быть установленными или запущенными в другом доме.

Хочу представить программную платформу автоматизации для дома на базе Node.js, которую можно скачать со всеми исходниками и установить прямо сейчас практически одним кликом (Windows) или одной командой (Linux/Debian).


Подробности

Модулятор REM-фазы сна

Reading time4 min
Views29K
В данной статье предлагаю рассмотреть создание достаточно быстро (~30 секунд) устройства вводящего человека в состояние транса или гипнотического состояния.

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

Началось все с попыток научным образом описать и объяснить феномен осознанных сновидений или другими словами ОСов. Для чего мне пришлось сделать массу экспериментов над собой и окружающими. Как правило эти эксперименты были безболезненными хотя случались исключения. В конечном мне довелось познакомиться с ребятами которые которые занимались этим исследованием более основательно. В частности у ребят оказался электроэнцефалограф (далее ЭЭГ), при помощи которого была снята ЭЭГ работы мозга человека во время осознанного сновидения.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity

Specialization

Application Developer, Software Architect
Lead