Загрузка...

Ruby & Rails: веб-разработка с удовольствием

Ruby on Rails — фреймворк для создания веб-приложений. Является открытым программным обеспечением (лицензия MIT). Здесь мы обсуждаем новости RoR, делимся учебными материалами и интересными находками С RoR даже сложные веб-приложения могут быть написаны за считанные дни. Это действительно разработка с удовольствием!

Lazy

     

Шаблон функционального программирования MapReduce с одной стороны идейно очень прост, а с другой - реализация распределенной эффективной системы MapReduce довольно сложная задача, с можеством интересных подзадач и расширений. На основе этого шаблона

  • придумывают эффективные распределённые хранилища данных
    • забавно, что идеи, которые пришли из функционального программирования (ФП), стали основой для архитектуры хранилищ данных; у новичков, изучающих ФП, может сложится мнение, что хранение данных неестественно для ФП, так как там нет состояния, но это мнение ошибочно; ФП является источником множества полезных идей для структур данных
  • масштабируют поточные преобразования данных
  • решают повседневные задачи обработки логов и вычисления разнообразных статистических величин

На язык Ruby "map and reduсe" переводится как "map and inject", но, конечно, за MapReduce стоит больше, чем просто комбинирование двух методов.

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


Читать полностью

Этот пост также отчасти навеян статьей Томаса Дейва про pipelines. Если бы мне пришло в голову делать в ruby аналог команды pipe "|" для командной строки, то я бы лучше добавил метод to_lazy для Enumerables, который возвращал бы LazyEnumerable. Есть по крайней мере три концептуально разных способа реализации LazyEnumerable - 1) с помощью вложенных лямбд и 2) с помощью alias_method_chain 3)  с помощью Fiber.


Читать полностью
Ближайшие события
август 2017
июль 2017
июнь 2017
Пн
Вт
Ср
Чт
Пт
Сб
Вс
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6