Доклад про отладку node на production

Вот слайды — http://dtrace.org/blogs/dap/2012/05/31/debugging-node-js-in-production-fluent-slides/. В докладе рассказывается, как отлаживать боевой сервер без его остановки и как работать с дампами зависшего сервера. Все сводится к использованию двух инструментов: Dtrace (http://dtrace.org/blogs/dap/2012/04/25/profiling-node-js/, http://dtrace.org/blogs/dap/2012/01/13/playing-with-nodev8-postmortem-debugging/) и mdb_v8 (https://github.com/joyent/illumos-joyent/blob/master/usr/src/cmd/mdb/common/modules/v8/mdb_v8.c, https://github.com/joyent/node/blob/master/src/v8ustack.d)

window.postMessage

Используется для передачи сообщений между фреймами или открытыми всплывающими окнами. Позволяет обходить same origin policy. Также позволяет сделать костыль для того, чтобы не ждать минимальной задержки при setTimeout (сейчас по стандарту — 4мс) — https://developer.mozilla.org/ru/docs/DOM/window.setTimeout#Minimum_delay_and_timeout_nesting. Подробнее — https://developer.mozilla.org/en-US/docs/DOM/window.postMessage.

Видеоуроки по Angular.js

Объясняют базовые вещи, но владение фреймворком очень хорошее. http://egghead.io/

Как подготовиться к установке Windows 7 на SSD-диск

Есть некоторые общие вещи, но в основном речь идет о Windows 7. http://maketecheasier.com/12-things-you-must-do-when-running-a-solid-state-drive-in-windows-7/2012/05/11

Перенос файлов по маске в shell

Сбойнул один старый скрипт и написал он много маленьких (2-3 кб) файлов в одну директорию. Посмотрел я, сколько файлов оказалось, командой

Оказалось файлов таких за миллион. На эти файлы смотрел скрипт демонский, который по ним рассылал почты много. Решил я эти файлы из директории той убрать (чтоб пользователей не расстраивать, а данные сохранить)

Read more

Git: patch из одного репозитория в другой

В старом репозитории сохраняем diff:

В новом репозитории

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

https://stackoverflow.com/a/39943727/801426 https://stackoverflow.com/a/2250170/801426

Git: diff с другой веткой

Сначала переключаемся в нужную ветку, потом

Это покажет только файлы. Если нужно посмотреть еще и сами изменения, нужно убрать —name-only

Параллельные вычисления в браузере или в node.js

https://github.com/adambom/parallel.js — библиотека для параллельных вычислений. Может работать и в браузере (web workers), и на сервере.

Программы для генерации спрайтов

http://spritepad.wearekiss.com/ http://www.spritecow.com/

Templar — кэшер шаблонов для Express (Node.js)

Templar создан для кеширования шаблонов любого шаблонизатора, совместимого с Express. Он сохраняет сгенерированные шаблоны, и если потом этот шаблон вызывается с такими же параметрами, то он берется из файлового кеша, и заново не отрисовывается. При этом еще проставляются правильные заголовки типа ETag.