Pull to refresh
23
0
Вячеслав Łącki @lacki

User

Send message

Централизованная обработка исключений в Node.JS

Reading time6 min
Views9.7K


Преамбула от переводчика: пару месяцев назад я искал решение для возможности использовать исключения в сервере игры, написанном на node.js. К сожалению, исключения в чистом виде не совсем совместимы со средой, работающей на event loop'е. Легче всего это объяснить на примере:
try {
    process.nextTick(function() {
        throw new Error('Catch Me If You Can');
    });
} catch (e) {
    console.log('Exception caught:', e);
}

Это исключение, разумеется, не будет поймано, и оно уронит весь процесс. Месяц назад увидел свет node.js версии 0.8.0 со свеженьким (экспериментальным) модулем domain, который как раз призван решать подобные проблемы. Тем не менее, я бы хотел отдать дань классу, которым я пользуюсь до сих пор. Поехали:
Читать дальше →
Total votes 37: ↑28 and ↓9+19
Comments11

Пайка для начинающих

Reading time6 min
Views827K
Мои отношения с радио- и микроэлектроникой можно описать прекрасным анекдотом про Льва Толстого, который любил играть на балалайке, но не умел. Порой пишет очередную главу Войны и Мира, а сам думает «тренди-бренди тренди-бренди...». После курсов электротехники и микроэлектроники в любимом МАИ, плюс бесконечные объяснения брата, которые я забываю практически сразу, в принципе, удается собирать несложные схемы и даже придумывать свои, благо сейчас, если неохота возиться с аналоговыми сигналами, усилениями, наводками и т.д. можно подыскать готовую микро-сборку и остаться в более-менее понятном мире цифровой микроэлектроники.

К делу. Сегодня речь пойдет о пайке. Знаю, что многих новичков, желающих поиграться с микроконтроллерами, это отпугивает. Но, во-первых, можно воспользоваться макетными платами, где просто втыкаешь детали в панель, без даже намека на пайку, как в конструкторе.
Читать дальше →
Total votes 131: ↑118 and ↓13+105
Comments100

JsRender: Новое поколение jQuery Templates

Reading time3 min
Views37K
Буквально пару месяцев назад, мы начали переписывать весьма крупный сайт, с момента прошлого крупного релиза прошёл не один год, конечно, сайт дорабатывался, правились баги и в итоге в настоящее время создаётся новая версия. В ней будет активно использоваться AJAX, поэтому весьма остро стоял вопрос с генерацией контента на клиенте, полученного в формате JSON. Прошлые шаблоны были собственной разработки, так как на то время вариантов было не так много, которые по разным причинам не подходили, базировались наши шаблоны на jquery, с помощью атрибутов происходило заполнение.

Прежде всего было решено провести тест, при генерации списка из 1500 элементов было получено превосходство в 20 раз, похожие результаты показывает сравнение с jQuery Template (страница с тестами).
Читать дальше →
Total votes 30: ↑27 and ↓3+24
Comments47

А что вы знаете о высоких нагрузках?

Reading time2 min
Views25K

Во всем мире подозревают, что лучшие разработчики, архитекторы, системные администраторы и другие IT-специалисты родом из России.

Было создано много крутых highload проектов, но, к сожалению, сейчас у нас нет комьюнити, где бы мы могли постоянно собираться, общаться и делиться опытом.
С другой стороны у нас очень многие любят писать свои «велосипеды», а не использовать уже готовые решения, которые позволяют сильно сократить время на разработку и внедрение.
Поэтому мы решили постепенно исправлять данную ситуацию:
ITmozg.ru организует конференцию по высоконагруженным системам High Performance Conference.
Своим опытом будут делиться Гуру, которые не понаслышке знают о высоких нагрузках:

  • Badoo
  • Mail.ru Group
  • ITmozg.ru
  • Фотострана




Читать дальше →
Total votes 75: ↑62 and ↓13+49
Comments77

Grunt, инструмент для сборки javascript проектов

Reading time4 min
Views132K
Grunt — это инструмент для сборки javascript проектов из командной строки с использованием задач. Релиз вышел совсем недавно, автор Ben «Cowboy» Alman, проект есть на github. В этой статье я рассмотрю основы Grunt, его установку и использование.
Читать дальше →
Total votes 35: ↑32 and ↓3+29
Comments15

Кроссбаузерный скроллинг

Reading time1 min
Views15K
На сегодняшний день эффекты при скроллинге набрали достаточно большую популярность (так называемый параллакс). Но, к сожалению, эти эффекты нейтивно не поддерживаются мобильными устройствами. Не так давно Mark Dalgleish предложил свой вариант решения этой проблемы:

Читать дальше →
Total votes 19: ↑17 and ↓2+15
Comments3

Коаны о программировании

Reading time4 min
Views36K
От переводчика: The Codeless Code — сборник побасенок о философии программирования. Побасенки в сборнике разные — некоторые весьма кровожадные, некоторые достаточно хардкорные с технической точки зрения (родной язык автора — Java), но встречаются очень емкие. Представляю вам перевод семи наиболее полюбившихся мне историй, остальные 30+ (новые добавляются каждую неделю) можно найти на сайте.

Пустяк


Три дня и три ночи мастер не появлялся из своей кельи. На четвертый день монахи отправили послушника проведать его.

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

Мастер ответил: «Здесь есть изъян, и я размышляю, как лучше его исправить.»
Читать дальше →
Total votes 253: ↑240 and ↓13+227
Comments74

Вещание онлайн-видео с помощью nginx

Reading time3 min
Views88K

Что такое онлайн-видео?


Под термином онлайн-видео я понимаю длительное вещание какого-то живого видеосигнала (к примеру, из телестудии). Традиционные средства отдачи видео (flv- и mp4-стриминг) в данном случае не работают, просто потому что файла, содержащего весь видеопоток, не существует.

В этой статье речь будет идти не об организации видеохостинга, а об организации видеовещания в прямом эфире. Это две принципиально разные задачи, и обычно способы их решения существенно отличаются друг от друга.
Читать дальше →
Total votes 89: ↑88 and ↓1+87
Comments61

Построение минимальных выпуклых оболочек

Reading time7 min
Views137K

Проведя небольшое научное исследование (проще говоря, выполнив поиск на сайте), обнаружил, что на хабре имеется всего две статьи с тегом вычислительная геометрия, причем одна из них оказалась моей. Т.к. в последнее время я несколько заинтересовался этой тематикой, то решил продолжить тему алгоритмической геометрии рассмотрением задачи построения так называемых минимальных выпуклых оболочек. Хотя рисунок справа и дает проницательному хаброчитателю исчерпывающее объяснение того, что это такое, тем не менее под катом будут даны чуть более формальные определения и описаны два классических алгоритма построения минимальных выпуклых оболочек.
Читать дальше →
Total votes 99: ↑94 and ↓5+89
Comments56

Разработка приложений для телевизоров: в ожидании своего iPhone

Reading time7 min
Views10K
Светлое многоэкранное будущее все ближе и ближе, производители мобильных телефонов и гиганты бытовой электроники сражаются на новом поле — телевизионном. Но как насчет разработчиков — насколько просто создавать приложения, которые работают на экранах всех устройств? Бен Хуквей обсуждает вопросы кросс-экранной разработки, проблемы и возможности рынка «умных» телевизоров.

Представь на мгновенье мир приложений, где для выбора существует более 10 платформ — и где большинство из этих платформ закрыты для разработчиков. Мир, где существует лишь несколько приложений. Мир, где и этими приложениями никто не пользуется.



Естественно, это текущее состояние рынка соединяемых с Сетью телевизоров (connect TV). Впрочем, описание можно в равной степени отнести и к мобильному миру до iPhone-овской эпохи, когда проблема в разработке приложений была в удручающем разнообразии платформ.
Читать дальше →
Total votes 11: ↑9 and ↓2+7
Comments10

Настройка IPTV в OpenWRT

Reading time3 min
Views139K
Хотя я практически не смотрю телевизор, иногда появляется непреодолимое желание посмотреть что сейчас вещают в новостях. Часто это желание возникает когда дочка спит, и телевизор уже вне зоны доступа. Как вы понимаете выход один — IPTV.
Читать дальше →
Total votes 38: ↑30 and ↓8+22
Comments65

Opera TV Store: каталог HTML5-приложений для телевизора

Reading time1 min
Views49K


«Если вы разрабатываете приложения для смартфонов или планшетов, то Opera TV Store станет для вас большим шагом вперёд», — такими словами компания Opera анонсирует свой новый проект: каталог HTML5-приложений Opera TV Store. Его презентация состоялась вчера на конференции CES в Лас-Вегасе.

На сайте для разработчиков уже выложены полнофункциональный эмулятор Opera TV для тестирования приложений и документация. Эмулятор поддерживает все функции Opera Devices SDK:
  • HTML/CSS/JavaScript/DOM
  • SVG, Canvas
  • W3C виджеты
  • HTML5 <video> and <audio>
  • Симуляция ограниченного объёма RAM
  • Дебаггинг в Opera Dragonfly
Читать дальше →
Total votes 40: ↑32 and ↓8+24
Comments18

Не нужно обижать «матрас»

Reading time7 min
Views6.9K
image
Желаю доброго дня уважаемому Хабра-сообществу. Данная заметка навеяна постом о правильной настройке телевизора. Я не лелею больших надежд на то, что внезапно начнется «неделя настройки телевизоров на Хабре», но поделиться некоторыми мыслями захотелось.

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

Окунуться в магию цветных полосочек
Total votes 89: ↑68 and ↓21+47
Comments30

62 полезных инструмента для адаптивного дизайна (Responsive web design)

Reading time14 min
Views203K
UPD. Для краткого введения в адаптивный дизайн рекомендую прочитать статью «Как сделать один сайт для всех устройств (Responsive Web Design)».

Перевод крайне ценной статьи «Responsive Web Design Techniques, Tools and Design Strategies» популярного интернет-издания для разработчиков Smashing Magazine.

Еще в январе мы опубликовали статью об адаптивном дизайне «Responsive Web Design: What It Is and How To Use It» (Адаптивный веб-дизайн: Что это такое и как им пользоваться). Адаптивный веб-дизайн продолжает привлекать к себе много внимания, но, учитывая, насколько он отличается от традиционных методов разработки сайтов, он может показаться заоблачно сложным для тех дизайнеров и разработчиков, которые его не пробовали.

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

Техники Responsive web design


1. CSS Transitions and Media Queries
CSS Transitions и Media Queries

Elliot Jay Stocks подробно рассказывает о методе сочетания CSS Media Queries и CSS transitions. Основная идея в следующем: разрабатывая адаптивный сайт с помощью Media Queries, вы постоянно изменяете ширину вашего браузера, чтобы посмотреть, как сайт ведет себя при этом. Но каждый раз, когда отрабатывает один из ваших Media Queries, виден жесткий переход между стилями (первый, например, для десктопов, второй — для планшетов). Почему бы не использовать CSS transitions для сглаживания этих жестких переходов с помощью анимации?



Читать дальше →
Total votes 112: ↑107 and ↓5+102
Comments14

Перевод официальной документации по Backbone.JS

Reading time1 min
Views9.9K
Доброго времени суток!



В полку Open Source прибыло! Мы (@kulakowka, k12th, dhomich и я) рады представить вашему вниманию перевод официальной документации по Backbone.JS — каркасу для создания RIA приложений на JavaScript, автором которого является Jeremy Askenas — создатель CoffeeScript.
Читать дальше →
Total votes 125: ↑122 and ↓3+119
Comments48

Онлайн генератор документации для Node.JS проектов

Reading time3 min
Views5.8K
Документация — одна из самых важных составляющих любого проекта, особенно если этот проект с открытым кодом, который будут читать другие люди. Чтобы сделать мир opensource чуточку лучше, я попытался собрать свои знания в области организации модулей nodejs проектов и сделать такой инструмент как Makedoc!. Ремарка для адептов ruby: это почти то же, что и rdoc.info для руби.

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

В кратце шаблон использования такой: идем на jsdoc.info/[githubusername]/[projectname] и видим готовую документацию по проекту. Либо идем на jsdoc.info/[githubusername] и получаем список проектов для которых можно сгенерировать документацию.

За деталями реализации прошу под кат.
Читать дальше →
Total votes 20: ↑19 and ↓1+18
Comments34

Принимаем платежи на сайте с банковских карт при помощи Skrill

Reading time7 min
Views52K


Платежи по банковским картам в интернете являются самым популярным и наиболее универсальным способом оплаты услуг. Бытует мнение, что организация приема карточных платежей на своем сайте является сложным и затратным делом. На самом деле это совсем не так. Любой грамотный IT-специалист или фрилансер сможет это сделать даже без образования юридического лица! Единственное необходимое условие — иметь свой сайт, остальное постигнем в процессе.
Подробности
Total votes 53: ↑47 and ↓6+41
Comments58

О том, как нас проинвестировали и что из этого получилось

Reading time4 min
Views3.6K
image

Около двух лет назад мы с друзьями решили воплотить в жизнь одну из наших многочисленных идей и тем самым основать свой стартап. Но непонимание многих вещей в этой области сыграло свою роль и ни один из двух начатых нами проектов так и не увидел жизни. Однако, огонь в наших глазах не погас, и мы решили разобраться с проблемой, которая к тому времени достала каждого из нас и связана она с государственным образованием.
Читать дальше →
Total votes 88: ↑66 and ↓22+44
Comments71

JUST — JavaScript шаблонизатор

Reading time7 min
Views21K
Во время разработки своего экспериментального WEB-проекта на Node.JS, о котором я рассказал в двух предыдущих статьях, я столкнулся с проблемой выбора шаблонизатора. Несмотря на то, что готовых решений существует довольно много, мне не удалось найти то, которое бы удовлетворяло меня на 100%. Так родился JUST.

Конкуренты


Jade
github.com/visionmedia/jade

Этот шаблонизатор достаточно популярен среди Node.JS разработчиков. Он обладает хорошим функционалом и скоростью работы, но содержит и спорные моменты:
  1. Отказ от использования тегов в том месте, для которого они, собственно, и были придуманы. С таким подходом я, мягко говоря, не согласен. Конечно, это очень субъективно, но вид разметки страницы без привычных тегов, взрывает мозг. Верстальщик, далёкий от новомодных технологий шаблонизации, не скажет спасибо, если ему придётся вносить изменения в такой код. Также потребуется дополнительная работа при перенесении вёрстки в шаблоны, что замедлит ход разработки.
  2. Перегруженность функционалом. Любой разработчик старается сделать свой продукт максимально универсальным, но иногда нужно уметь вовремя остановиться. На мой взгляд, Jade уже перешёл эту грань.
Читать дальше →
Total votes 37: ↑32 and ↓5+27
Comments124

Лайфхаки в веб-разработке

Reading time3 min
Views4.1K
Upgrade your Life

Ссылки открытия файлов в IDE


Это облегчит вам поиск нужного файла.
Вы сможете создавать ссылки на код прямо на странице ошибки. Или в журнале ошибок.
Сделайте ссылки в dev панели на класс контроллера и файл шаблона (или что там у вас?)
Клик на такую ссылку будет переносить вас в соответствующий файл открытой IDE.

Читать дальше →
Total votes 78: ↑50 and ↓28+22
Comments32

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity