Мы опубликовали на GitHub вики-страницу Лондонской конференции Ruby!

Каждый может редактировать Wiki-страницу, предлагая темы для обсуждения в субботу, 22 октября.

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

На данный момент мы представим предметы с кратким описанием:

1. Язык программирования Crystal

Язык программирования Crystal преследует следующие цели:

  • Иметь синтаксис, похожий на Ruby (но совместимость с ним не является целью)
  • Статическая проверка типов, но без указания типа переменных или аргументов метода.
  • Уметь вызывать код C, записывая привязки к нему в Crystal.
  • Имейте оценку времени компиляции и генерацию кода, чтобы избежать шаблонного кода.
  • Скомпилируйте в эффективный нативный код.

2. Язык программирования Elixir

Эликсир также имеет схожий с Ruby синтаксис.

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

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

3. GraphQL на Руби

Проще говоря, GraphQL — это язык запросов прикладного уровня от Facebook. Вы можете описать свой API, используя схему (график). Затем все ваши клиенты смогут запрашивать ваши данные через схему. GraphQL пытается решить одну из самых больших проблем с REST API в наши дни: изменение требований к данным в клиентах.

GraphQL можно использовать с рельсами, этот пост исследует этот вариант.

4. Volt Framework и реактивные фреймворки

Volt — это веб-фреймворк Ruby, в котором ваш код Ruby выполняется как на сервере, так и на клиенте (через Opal). DOM автоматически обновляется, когда пользователь взаимодействует со страницей. Состояние страницы может быть сохранено в URL-адресе. Если пользователь нажимает URL-адрес напрямую, HTML-код сначала будет отображаться на сервере для ускорения загрузки и упрощения индексации поисковыми системами. Последующие взаимодействия с локальной страницей будут отображаться на клиенте.

5. Функциональное программирование на Ruby

Ruby — интересный язык, поскольку он поддерживает использование нескольких парадигм. Одной из них является «функциональная парадигма».

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

Этот пост исследует методы функционального программирования на Ruby.

6. Архитектуры микросервисов с Ruby

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

Этот пост показывает, как настроить архитектуру микросервисов с помощью ruby.

7. Интернет вещей с Artoo: Ruby на роботах

Artoo — микрофреймворк для робототехники на Ruby.

Artoo предоставляет простой, но мощный предметно-ориентированный язык (DSL) для робототехники и физических вычислений.

Artoo находится под концептуальным влиянием Синатры (Sinatra), а также заимствует у него некоторый код.

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

8. Дизайн, управляемый доменом, с Ruby/Rails

Domain-driven design (DDD) — это подход к разработке программного обеспечения для сложных нужд путем подключения реализации к развивающейся модели.

Предпосылка доменно-ориентированного дизайна заключается в следующем:

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

Этот пост исследует, как применять концепции DDD с ruby.

9. Ruby Book Review: 99 бутылок ООП

В качестве примера книги об объектно-ориентированном проектировании с Ruby хорошей темой для обсуждения может послужить книга Сэнди Мец под названием 99 бутылок ООП.

В этой книге исследуются:

  • Как распознать, когда код «достаточно хорош»
  • Получение максимальной отдачи от разработки через тестирование (TDD)
  • Правильный рефакторинг, а не случайный «рехакинг»

10. Расширенные сценарии оболочки с помощью ruby

Ruby широко используется в администрировании компьютерных систем.

Сообщество DevOps с Puppet и Chef использует ruby ​​для автоматизации управления инфраструктурой.

Ruby — фантастический язык, который очень хорошо интегрируется с оболочкой Linux.

В этом посте предлагаются некоторые продвинутые методы написания сценариев оболочки с помощью ruby.

Если вы хотите представить свою собственную тему или принять участие в одной из тем, указанных выше, укажите свое имя на Вики-странице Лондонской неконференции по рубину или оставьте комментарий в этом сообщении!

Здесь продаются билеты раннего бронирования! Присоединяйтесь к нам, чтобы провести отличный день Ruby!

Пожалуйста, помогите нам сделать это мероприятие успешным и поделитесь им в Твиттере здесь!