Как стать автором
Обновить
20
0
Александр Зинченко @yumitsu

Пользователь

Отправить сообщение
Важных изменений там много. В частности правообладатель должен сначала попытаться досудебно урегулировать вопрос. Обязательно указывать конкретный урл (на самом деле очень большая дыра, способная вообще все запреты нивелировать — урл поменять не проблема для большинства CMS, да и просто настарные пользователи будут заливать и заливать). Предусмотрена процедура обжалования. То есть если хостер по жалобе тебе «забанил», то после подачи встречной пртензии, он должен «разбанить».
request должен использовать ты, мой юный падаван.
Да, чем дальше в лес, тем больше дров. Я привёл node-get как пример инструмента, способного преодолевать редиректы — а есть инструменты куда более функциональные; не только restler, но также ещё и superagent (см. код и документацию), и request, и fetch, и shred, и http-get это только наиболее известные.
А еще есть restler который ходит по редиректам и умеет кучу разных плюшек.
Вы пробуете описать психологическую модель творчества
Поиск, индукция, инсайт.
www.youtube.com/watch?v=ojCkgU5XGdg&feature=player_detailpage#t=290s
Тем кто на rails 2.3.* пригодится плагин github.com/customink/sprockets-rails2

Или http://pivotallabs.com/users/dwfrank/blog/articles/1972-giving-rails-2-the-asset-pipeline- более подробно о том как вкручивать asset pipeline в rails 2.3.
Для гугло плюса вынес в ready, без этого он продолжал тормозить общую загрузку

$(document).ready(function(){
(function() {
window.___gcfg = {lang: 'ru'};
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
po.src = 'https://apis.google.com/js/plusone.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
});
подловили :) document

ну и такими гадостями как у меня в коменте я не занимался. просто через console — писал window.blur()? а код выше это уже идея как можно напакостить.

нашел такой баг в ИЕ когда в одном месте проекта был вот такой кусочек кода
jQuery(":focus").blur();

фиксил через:
if(jquery(':focus').parents('body').length){
    jQuery(":focus").blur();
}


тут наверное интересно еще то что в ИЕ возвращается всегда то-ли window то-ли document
в FF есть ничего не найдено — просто пустой jQ массив
1. Я сейчас работаю на фултайм (зарабатываю на учебу); с одной стороны, пишу на Rails, с другой, времени не очень много. По мере возможности я слежу за разработкой, но моего вклада в Rubinius пока нет.
2. Зайдите на #rubinius на irc.freenode.net ) Даже если вы просто расскажете, как работает (или, возможно, не работает) тот ваш проект на 2.0.0pre, это все равно будет полезно. Ну и, конечно, вам объяснят, что и как писать.
Мне тоже можете задавать вопросы, низкоуровневую часть Ruby я вроде как себе представляю.
Я кстати выработал в себе привычку оставаться прстегнутым в полете, после того как прочитал "Раздумья ездового пса" Ершова.

На юге посветлело. Фронт кончался, проглянула полоска вечерней зари, и мы приняли решение идти домой по трассе Канск — Красноярск.

Где-то в районе Заозёрного дорогу нам ещё преграждал небольшой хвост, как раз на нашей высоте, и мы запросили снижение с 1200 до 900 м, норовя поднырнуть. Уже прямо по курсу виден был закат, и только этот хвост, южная оконечность фронта, вуаль, вроде бы ничем не угрожающая нам, тянулась на юг ещё километров на полсотни.

Мы снизились; получалось, что пройдём как раз под нижней кромкой. Командир из осторожности снизился ещё на пятьдесят метров, хотя в этом и не виделось особой нужды.

Какой-нибудь километр пути. Десять секунд — и мы на свободе: дальше чисто, оранжевый закат на полнеба; а на севере…но мы уже убежали.

Хорошо, что мы выработали привычку в полёте быть всегда пристёгнутыми. Самолёт выдернуло из-под нас так резко, что мелочь из незастёгнутого кармана рубашки фонтаном брызнула в потолок и разлетелась по кабине. Грузный командир пушинкой взлетел под потолок, выпустив штурвал, но удержался не слишком затянутым ремнём; я пристегнулся потуже и усидел, а вот слабо затянувший ремень бортмеханик от рывка растянул поясницу. Вдобавок ещё два амбарных замка — от входной двери и двери пилотской кабины, — болтающиеся на трубке его сиденья, сгуляли в потолок и оттуда рикошетом проехались ему по лысине. Радист не пострадал, упёршись ногами в перегородку своей тесной каморки.

Самолёт провалился всего-то метров на пятьдесят. Акселерометра на нем не было, и не известно, какую отрицательную перегрузку выдержало его толстое крыло.

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

Этим уже ничего насчёт ремней объяснять не надо.


Кстати очень хорошо человек про авиацию пишет, всем рекомендую, кто не знаком.
Было бы неплохо упомянуть, что пакет runit это развитие (форк) DJBшного пакета daemontools. Софт DJB отличается надёжностью и простотой, но DJB очень не любит добавлять ненужные лично ему фичи — дабы не усложнять и не плодить баги. Пакет runit разрабатывается с учётом принципов DJB, автор тоже крайне неохотно добавляет новые фичи и стремится сохранить простоту кода, но всё-таки фич там больше и пользоваться runit удобнее, чем daemontools.

Стабильность runit, в принципе, не хуже, чем у daemontools — фактически я знаю только про один баг, который проявляется буквально у нескольких пользователей (включая меня, к сожалению), и который много лет не могут поймать (автору runit этот баг повторить не удаётся). Впрочем, для этого бага есть workaround, так что в результате всё работает много лет без нареканий.

Было бы неплохо упомянуть, что runit состоит из нескольких независимых частей: процесс N1 (т.е. замена стандартному /sbin/init), супервизор сервисов (который описан в статей) и утилита для управления логами. И можно пользоваться как всеми тремя составляющими, так и отдельно любой из них.

Мы много лет используем runit и для загрузки систем (вместо стандартного /sbin/init) и для запуска всех сервисов (вместо скриптов в /etc/init.d/). Для Gentoo пакет с runit, с примерами скриптов для загрузки системы и пакеты со скриптами для типовых сервисов доступны в моём оверлее для portage.

Так же мы используем супервизор сервисов из runit для запуска и управления всеми сервисами необходимыми для наших веб-проектов, при этом и супервизор и сервисы запускаются под обычным юзерским аккаунтом.

В статье не упомянуто одно из основных достоинств runit — он не использует .pid-файлы для контроля сервисов, т.к. это не атомарно и не надёжно. Вместо этого каждый сервис контролируется отдельным процессом-родителем, который в случае креша сервиса гарантированно и моментально получит SIGCHLD и перезапустит сервис.

Что касается каталогов /etc/sv/ и /etc/service/ — насколько я помню официальную позицию автора runit, рекомендуется использовать немного другие каталоги. Но вообще пути к каталогам нигде не прошиты, указываются параметром и можно выбирать их по своему вкусу — например, у меня это /service/ и /var/service/.

Что касается «демонизирования», то в статье это описано некорректно. Во-первых runit ничего не демонизирует (процесс демонизации несколько шире чем просто запуск процесса в фоне). Во-вторых runit не требует того, чтобы сервисы не демонизировали себя, в частности не отцеплялись от STDIN/OUT/ERR — он требует только того, чтобы сервисы не форкались в фоновый процесс. Логи сервисы не обязаны выводить на STDOUT/ERR, хотя это предпочтительный вариант. Впрочем, даже если сервисы выводят логи в файлы самостоятельно (как apache и mysql, к примеру), то это не мешает на месте файлов access_log, etc. разместить FIFO-шки, из которых будут читать svlogd-сервисы и выводить логи в традиционном для runit формате (у нас всё работает именно так).
да и вообще можно заюзать тот же god или bluepill для такого.
authlogic и will_paginate уступили место в мейнстриме devise и kaminari
А вот мой джентельменский набор:
authlogic — авторизация пользователей
paperclip — загрузка и обработка картинок
enum_column3 — поддержка enum для MySQL
will_paginate — постраничный пэйджинг для отображения данных
delayed_job — фоновая обработка любых заданий

Из специфичных гемов могу посоветовать осветить:
  • * draper — позволяет отделить модель предметной области от её представления, в качестве приятного бонуса получаем очень чистые представления
  • * cells — незаменимая штука для борьбы с жирными контроллерами (которые помимо основных данных, выбирают ещё кучу сопутствующих из различных моделей)
  • * trucker — очень полезная штука для переноса данных из унаследованной базы данных
  • * metric_fu — помогает отслеживать динамику качества кода вашего проекта с помощью кучи других гемов, считающих разнообразные метрики
Первый канал меняет формат?! Я с разжвала Союза этого ждал!
Ну эта тема гораздо обширнее, чем 200 параметров libx264 степень влияния на результат которых, может свести с ума =)

Вам же требуется многомерная оптимизация по следующим характеристикам:
1) результирующее качество
2) битрейт
3) флуктуации битрейта
4) время сжатия

Могу по своим наблюдениям сказать: один из самых сильно влияющих параметров — это qpmin
Если он ниже 25, то условно SD на атоме не сжимается. Если выше, то сжимается с запасом.
Второй очень важный параметр — subme. Если его опустить с 5 до 3, то скорость сжатия может без особого изменения битрейта увеличиться в два-три раза.

Остальные параметры так же важны, но они не на каждом видео дают такой же резкий и хорошо наблюдаемый результат.
Да какие там танцы то?
Все точно так же
Кодим:
ffmpeg -i source.file -s 640x360 -f mp4 -vcodec libx264 -vpre hq -threads 0 -b 1500k -bt 1500k -r 25 -g 25 -acodec libfaac -ab 96k -ar 22050 filename.mp4
Хинтим:
MP4Box -inter 500 filename.mp4

Натачиваем кривоватый h264.code-shop.com/trac/wiki/Mod-H264-Streaming-Nginx-Version2
PROFIT!
Для фаерфокса есть аддон, который дает скачивать музыку/видео с вконтакта, а ещё удаляет дубли addons.mozilla.org/en-us/firefox/addon/vkontakteru-downloader-musicvi/
попробуйте расширение MusicSig Vkontakte для хрома — дублей будет значительно меньше, добавятся ссылки на скачку песен и видео и еще куча всяких косметических изменений. Раньше еще позволяло в обход приватности получать дополнительные сведения о контактах, часто с доступом в фотоальбомы.
1

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность