Под катом описан пример перевода файловых серверов на BitTorrent.
Пользователь
Базовая архитектура веб-приложения на Backbone.js
2 мин
22KРазработчики часто просят рассказать о моём опыте использования Backbone.
Многие слышали об этом MVC-фреймворке, смотрели примеры и документацию, но не решаются начать с ним работать. Поэтому вчера я сделал мини-доклад на встрече MoscowJS, призванный рассказать о том, как мы построили базовую архитектуру и какие получили плюсы. И сегодня в этой статье я публикую слайды, схемы и краткое описание.
Многие слышали об этом MVC-фреймворке, смотрели примеры и документацию, но не решаются начать с ним работать. Поэтому вчера я сделал мини-доклад на встрече MoscowJS, призванный рассказать о том, как мы построили базовую архитектуру и какие получили плюсы. И сегодня в этой статье я публикую слайды, схемы и краткое описание.
+76
Асинхронный UI: будущее веб-интерфейсов
4 мин
7.4KВ то время как Ajax стал мейнстримом, пользовательские интерфейсы по-прежнему не могут похвастаться мгновенной отзывчивостью к действиям пользователя. Причина в том, что многие разработчики привыкли мыслить в терминологии «запрос/ответ» и думают, что UI должен работать параллельно с фронтэндом, дожидаясь ответа от сервера на каждый запрос. Но почему бы не обновлять интерфейс раньше, чем пришёл ответ?
Проблема довольно острая, потому что быстродействие является критически важной характеристикой UI. Например, по оценке Amazon, задержка загрузки страницы всего лишь в 0,1 секунды приводит к снижению оборота магазина на 1%. По оценке Google, задержка в 0,5 секунды уменьшает количество поисковых запросов на 20%.
Ruby/JavaScript-разработчик Алекс Маккоу (Alex MacCaw) из компании Twitter предлагает логичное решение проблемы: распространить принципы Ajax не только на фронтэнд, но и на пользовательский интерфейс. Он разработал соответствующий фремйворк для того, что называется AUI (асинхронный интерфейс пользователя).
Проблема довольно острая, потому что быстродействие является критически важной характеристикой UI. Например, по оценке Amazon, задержка загрузки страницы всего лишь в 0,1 секунды приводит к снижению оборота магазина на 1%. По оценке Google, задержка в 0,5 секунды уменьшает количество поисковых запросов на 20%.
Ruby/JavaScript-разработчик Алекс Маккоу (Alex MacCaw) из компании Twitter предлагает логичное решение проблемы: распространить принципы Ajax не только на фронтэнд, но и на пользовательский интерфейс. Он разработал соответствующий фремйворк для того, что называется AUI (асинхронный интерфейс пользователя).
+91
Будущее началось. 2050 год
1 мин
12K10 августа на youtube появился ролик под названием «Будущее началось», никакого масштабного пиара, судя по количеству просмотров (80+) на момент публикации топика, он не получил, а ролик-то весьма достойный по нескольким техническим параметрам:
— очень гиковая/scifi анимация
— отличный утопический текст, который заставляет все 15 минут смотреть ролик, не отвлекаясь.
— безупречная дикция
Возможно, что это некий вирус, явно рекламирующий ресурс foresight2050.ru (whois), который пока что не функционирует, но даже не принимая во внимание рекламную цель ролика, он достоин вашего внимания.
В комментариях мы можем обсудить степень утопичности того или иного предположения, высказанного автором, коих там не мало. Начиная от виртульной реальности, жизни «от батареек», ухода от геополитической картины мира, заканчивая доминированием машин над людьми, освоением вселенной и поиском инструментов для обеспечения бессмертия.
P.S. Я не имею никакого отношения к ролику. Просто считаю, что он интересен хабралюдям с технической и болтологической точек зрения.
P.S.2 В комментариях все, ожидаемо, пустились в дискус на тему утопий. Но давайте прагматики добавим, какова цель этого ролика? Что предположительно будет на том ресурсе?
— очень гиковая/scifi анимация
— отличный утопический текст, который заставляет все 15 минут смотреть ролик, не отвлекаясь.
— безупречная дикция
Возможно, что это некий вирус, явно рекламирующий ресурс foresight2050.ru (whois), который пока что не функционирует, но даже не принимая во внимание рекламную цель ролика, он достоин вашего внимания.
В комментариях мы можем обсудить степень утопичности того или иного предположения, высказанного автором, коих там не мало. Начиная от виртульной реальности, жизни «от батареек», ухода от геополитической картины мира, заканчивая доминированием машин над людьми, освоением вселенной и поиском инструментов для обеспечения бессмертия.
P.S. Я не имею никакого отношения к ролику. Просто считаю, что он интересен хабралюдям с технической и болтологической точек зрения.
P.S.2 В комментариях все, ожидаемо, пустились в дискус на тему утопий. Но давайте прагматики добавим, какова цель этого ролика? Что предположительно будет на том ресурсе?
+102
Marble drop
1 мин
4.1KДолжен признаться, меня несколько смущало "щелкание винчестера" (WDC WD1200BEVS-75RST0) на моем Dell Inspiron. Я использую Ubuntu Linux и помню шумиху вокруг системы энергосбережения, которая должна была "убивать" жесткие диски наших компьютеров. В то время доказали, что это не более, чем глупости, что все будет исправлено и, вообще, переживать по данному поводу не стоит. Недавняя статья заставила меня еще раз более пристально понаблюдать за HDD и поэкспериментировать с настройками APM (advanced power management) и соотношением шум/производительность. Действительно, оказалось, что странные звуки вызваны парковкой головок диска.
Команды
решили проблему!
Однако, после перезагрузки я начал опять слышать характерные щелчки. Оказалось, что значение параметра '-B' (APM settings) не сохраняется. Для Ubuntu Linux решением этого оказалось редактирование /etc/hdparm.conf (раскомментировав 41-ю сроку получил запись 'apm = 255').
Если после данных манипуляций система не грузится, следует попробовать в grub дать параметр ядру 'nohdparm'.
Дополнительную полезную информацию можно найти на Ubuntu Forums.
Команды
sudo hdparm -M 254 /dev/sda
sudo hdparm -B 255 /dev/sda
решили проблему!
Однако, после перезагрузки я начал опять слышать характерные щелчки. Оказалось, что значение параметра '-B' (APM settings) не сохраняется. Для Ubuntu Linux решением этого оказалось редактирование /etc/hdparm.conf (раскомментировав 41-ю сроку получил запись 'apm = 255').
Если после данных манипуляций система не грузится, следует попробовать в grub дать параметр ядру 'nohdparm'.
Дополнительную полезную информацию можно найти на Ubuntu Forums.
+24
Node: Масштабирование в малом против масштабирования в целом
8 мин
4.7KПеревод
Последние несколько недель я использую все свободное время, которое могу найти, чтобы обдумать, какие технологии мы будем использовать, чтобы реализовать первую версию BankSimple. Многие люди, вероятно, предположат, что я сразу же предпочёл Scala, в связи с тем, что я был соавтором книги об этом языке, но я подхожу к решению инженерных задач совершенно иначе. Каждая проблема имеет соответствующий набор применяемых технологий, и задача разработчика, — обосновать необходимость их использования.
(Кстати, Scala, может быть, хорошо подходит для BankSimple, в немалой степени из-за большого количества стороннего кода на Java, с которым мы должны интегрироваться, но это уже совсем другая тема для блога, и даже, скорее всего, для совершенно другого блога).
Одной из самых обсуждаемых технологий среди Hacker News является Node, окружение для разработки и запуска событийно-управляемых приложений JavaScript на виртуальной машине V8. В рамках выбора технологий для реализации проекта я выполнил оценку Node. Вчера я выразил некоторый общий скепсис относительно Node, и автор этого окружения, Райан Дал, попросил, чтобы я изложил свои мысли более подробно. Так вот, приступаю.
(Кстати, Scala, может быть, хорошо подходит для BankSimple, в немалой степени из-за большого количества стороннего кода на Java, с которым мы должны интегрироваться, но это уже совсем другая тема для блога, и даже, скорее всего, для совершенно другого блога).
Одной из самых обсуждаемых технологий среди Hacker News является Node, окружение для разработки и запуска событийно-управляемых приложений JavaScript на виртуальной машине V8. В рамках выбора технологий для реализации проекта я выполнил оценку Node. Вчера я выразил некоторый общий скепсис относительно Node, и автор этого окружения, Райан Дал, попросил, чтобы я изложил свои мысли более подробно. Так вот, приступаю.
+39
Understanding node.js
4 мин
10KПеревод
Node.js обычно вызывал у людей, которым я о нём рассказывал, две различные реакции. В основном они воспринимали его «как есть», однако многие были сбиты с толку.
Если вы относитесь ко второй группе, я попробую объяснить, что же такое Node.js:
Если вы относитесь ко второй группе, я попробую объяснить, что же такое Node.js:
- Это инструмент командной строки. Вы скачиваете архив, компилируете и устанавливаете его.
- Это позволит вам выполнять программы на JavaScript, набрав 'node my_app.js' в терминале.
- JavaScript выполняется движком V8 (тем самым, благодаря которому так быстро работает Google Chrome).
- Node.js предоставляет API для доступа к сети и файловой системе из JavaScript.
+87
Что такое «асинхронная событийная модель», и почему сейчас она «в моде»
15 мин
54KСейчас в тематических интернетах модно слово «Node.js». В этой небольшой статье мы попробуем понять («на пальцах»), откуда всё это взялось, и чем такая архитектура отличается от привычной нам архитектуры с «синхронным» и «блокирующим» вводом/выводом в коде приложения (обычный сайт на PHP + MySQL), запущенного на сервере приложений, работающем по схеме «по потоку (или процессу) на запрос» (классический Apache Web Server).
+143
Информация
- В рейтинге
- Не участвует
- Зарегистрирован
- Активность