https://github.com/textacular/textacular - решение для полнотекстового поиска с привязкой к ActiveRecord (поддерживается только Postgres)
GitHub
GitHub - textacular/textacular: Textacular exposes full text search capabilities from PostgreSQL, and allows you to declare full…
Textacular exposes full text search capabilities from PostgreSQL, and allows you to declare full text indexes. Textacular will extend ActiveRecord with named_scope methods making searching easy and...
🎉2
Сегодня мы узнаем, как делегировать методы в Ruby и обсудим три подхода: простое делегирование (проброс), делегирование с помощью method_missing, а также модуль Forwardable, который позволяет использовать def_delegators и решать данную задачу весьма лаконично и эффектно. https://www.youtube.com/watch?v=DoJz__qxoTM
YouTube
Секреты классов Ruby | Делегирование методов и Forwardable
Сегодня мы узнаем, как делегировать методы в Ruby и обсудим три подхода: простое делегирование (проброс), делегирование с помощью method_missing, а также модуль Forwardable, который позволяет использовать def_delegators и решать данную задачу весьма лаконично…
👍14
Всем привет! Рад сообщить, что сегодня на канале стало доступно спонсорство, иными словами вы можете поддержать выпуск видео на регулярной основе :) На данный момент я добавил 4 уровня спонсорства, каждый со своими бонусами, поэтому будет, из чего выбрать. Кнопка "Спонсировать" находится на главной странице канала, либо под видео. В ближайшее время обязательно выпущу анонс, где расскажу обо всём подробнее. Есть есть мысли или идеи по поводу уровней и предлагаемых бонусов, обязательно поделитесь :) Увидимся!
🎉19
Итак, свершилось: наконец-то на канале включено спонсорство! В этом видео я расскажу, как стать спонсором и какие бонусы вы можете получить :)
ВАЖНОЕ ЗАМЕЧАНИЕ! Друзья, похоже, в некоторых странах спонсорство почему-то недоступно: точную причину я пока установить не смог, но это явно какие-то чудеса YouTube. Что можно сделать: подключиться к YT через VPN, либо попробовать сменить страну в настройках (например, попробовать поставить какую-нибудь европейскую страну). Прошу прощения за эти неудобства, но я боюсь, со своей стороны я вряд ли что-то могу сделать, так как никаких региональных настроек у меня в творческой студии нет. https://www.youtube.com/watch?v=1FDjuDGolds
ВАЖНОЕ ЗАМЕЧАНИЕ! Друзья, похоже, в некоторых странах спонсорство почему-то недоступно: точную причину я пока установить не смог, но это явно какие-то чудеса YouTube. Что можно сделать: подключиться к YT через VPN, либо попробовать сменить страну в настройках (например, попробовать поставить какую-нибудь европейскую страну). Прошу прощения за эти неудобства, но я боюсь, со своей стороны я вряд ли что-то могу сделать, так как никаких региональных настроек у меня в творческой студии нет. https://www.youtube.com/watch?v=1FDjuDGolds
YouTube
АНОНС! Спонсорство на канале
ВАЖНОЕ ЗАМЕЧАНИЕ! Друзья, похоже, в некоторых странах спонсорство почему-то недоступно: точную причину я пока установить не смог, но это явно какие-то чудеса YouTube. Что можно сделать: подключиться к YT через VPN, либо попробовать сменить страну в настройках…
🔥7👍1
Это первый урок в серии язык Solidity и написание смарт-контрактов Ethereum. Сегодня мы обсудим, что такое Ethereum и Solidity, обговорим их основные особенности, научимся работать с Remix IDE и напишем первый контракт, который позволит получать и отправлять денежные средства. Даже если вы не планируете становиться разработчиком смарт-контрактов, эти уроки имеет смысл смотреть просто для собственного развития, так как криптовалюта и блокчейн весьма распространены в наше время. https://www.youtube.com/watch?v=8A8-7Ks26yY
YouTube
Solidity и смарт-контракты Ethereum, урок #1 (АПДЕЙТ В ЗАКРЕПЕ) | Интро, Remix IDE, первый контракт
ХОТИТЕ СТАТЬ РАЗРАБОТЧИКОМ Solidity, узнать об Ethereum, блокчейне и многом другом ещё больше?!
Мои друзья из GUIDE DAO (бывшая школа MCS) предлагают скидку 0,1 ETH на ВСЕ СВОИ БУТКЕМЫ ПО КРИПТЕ! Материалы этих буткемов подготовлены мной и другими специалистами:…
Мои друзья из GUIDE DAO (бывшая школа MCS) предлагают скидку 0,1 ETH на ВСЕ СВОИ БУТКЕМЫ ПО КРИПТЕ! Материалы этих буткемов подготовлены мной и другими специалистами:…
👍10🎉7
Друзья, небольшая подсказка для разработчиков Ruby. Будьте аккуратны, если вы используете memoization в коде, который может крутиться в нескольких процессах параллельно.
Memoization это примерно вот такое:
И, соответственно, если создаются разные потоки
Memoization это примерно вот такое:
@my_var ||= do_complex_stuff()
И, соответственно, если создаются разные потоки
Thread.new {} и там задействуется эта переменная, то в ряде случаев результаты могут быть совершенно непредсказуемые, особенно, если потоки эту переменную модифицируют. Я вот уже на это только что напоролся👍10😱2
Небольшая новость для рубистов, использующих Faraday 🤓 Вышла версия 2, и, в числе прочего, было заявлено, что faraday_middleware более не будет поддерживаться. Вместо этого будет создана коллекция отдельных библиотек для Faraday, которые можно будет устанавливать отдельно. Список тут, но мигрированы пока не все, так что если у вас используется middleware, то обновляться до faraday 2, возможно, пока рановато https://github.com/lostisland/awesome-faraday
GitHub
GitHub - lostisland/awesome-faraday: A curated list of awesome middleware and adapters for Faraday
A curated list of awesome middleware and adapters for Faraday - lostisland/awesome-faraday
Сегодня мы поговорим о классе Thread, встроенном в Ruby, который позволяет легко внедрять многопоточность в ваши скрипты. Мы узнаем, в чём его отличие от Process, как создавать и завершать потоки и напишем приложение, которое будет конвертировать файлы Markdown в HTML с использованием множества потоков. https://www.youtube.com/watch?v=XhRv-vx7uoU
YouTube
Ruby Thread | Многопоточность без сторонних библиотек
Сегодня мы поговорим о классе Thread, встроенном в Ruby, который позволяет легко внедрять многопоточность в ваши скрипты. Мы узнаем, в чём его отличие от Process, как создавать и завершать потоки и напишем приложение, которое будет конвертировать файлы Markdown…
🔥8👍3
Друзья, давненько мы не играли в вопрос-ответ 🤓 Пока готовится новое видео (а оно выйдет уже завтра), предлагаю загадку, которую я придумал пару лет назад (она уже игралась на одном турнире, так что если кто знает, просьба не спойлерить).
Итак, название группы
Итак, название группы
Sunn O))) - это не только отсылка к логотипу усилителей, но и дань уважения другой более ранней группе под названием "ТРЕТЬЯ", которая играет в том же стиле и даже считается его основательницей. На эту дань уважения, в частности, намекает стилизация O))) и, конечно же, слово Sunn. Какое слово было заменено словом "ТРЕТЬЯ", как на самом деле называется эта группа?👍1
Продолжаем уроки по Solidity и Ethereum! Сегодня поговорим о таких типах данных, как bool (булев или логический тип), а также о целых числах uint и int. Узнаем, в чём между ними разница, какая бывает размерность, как работать с этими типами данных, какие существуют операции и зачем нужен unchecked. https://www.youtube.com/watch?v=alK0PY-Qa4Q
YouTube
Solidity и смарт-контракты Ethereum, урок #2 | Типы данных bool, uint, int
ХОТИТЕ СТАТЬ РАЗРАБОТЧИКОМ Solidity, узнать об Ethereum, блокчейне и многом другом ещё больше?!
Мои друзья из GUIDE DAO (бывшая школа MCS) предлагают скидку 0,1 ETH на ВСЕ СВОИ БУТКЕМЫ ПО КРИПТЕ! Материалы этих буткемов подготовлены мной и другими специалистами:…
Мои друзья из GUIDE DAO (бывшая школа MCS) предлагают скидку 0,1 ETH на ВСЕ СВОИ БУТКЕМЫ ПО КРИПТЕ! Материалы этих буткемов подготовлены мной и другими специалистами:…
🔥10
Если вы хотите использовать в своём приложении Ruby/Rails для перевода Gettext (а не стандартный I18n с файлами YAML), то решение fast_gettext - это то, что вам нужно. Эта библиотека весьма шустрая, поддерживает все фичи Gettext и развивается на протяжении многих лет. На днях ещё скину материал по теме (когда допишу 😄) https://github.com/grosser/fast_gettext
GitHub
GitHub - grosser/fast_gettext: Ruby GetText, but 12x faster + 530x less garbage + simple + clean namespace + threadsafe + extendable…
Ruby GetText, but 12x faster + 530x less garbage + simple + clean namespace + threadsafe + extendable + multiple backends - grosser/fast_gettext
👍3
Пора поставить точку в этом противостоянии. На какой вы стороне?
Anonymous Poll
85%
RSpec
11%
Minitest
4%
Cucumber
Итак, друзья, как и обещал: обзор и краткая инструкция по использованию популярных решений для перевода приложений Ruby https://lokalise.com/blog/i18n-gem-ruby/
Lokalise Blog
I18n gems: Easily translate your Ruby apps with these 5 gems
This article provides an in-depth overview of the available i18n gems that can be used to translate your Ruby and Rails applications.
🔥9
Друзья, небольшая новость для тех, кто хочет использовать Faraday 2.0 и при этом сохранить модуль Gzip, который был встроен в устаревший middleware. Сегодня я выпустил первую версию библиотеки faraday-gzip, которая возвращает этот функционал в Faraday 2. Так что пользуйтесь на здоровье 🤟P.S. В нашем опросе с огромным отрывом выиграл RSpec - в принципе, предсказуемо, но всё же любопытно 🤓 https://github.com/bodrovis/faraday-gzip
GitHub
GitHub - bodrovis/faraday-gzip: The Gzip middleware adds the necessary Accept-Encoding headers and automatically decompresses the…
The Gzip middleware adds the necessary Accept-Encoding headers and automatically decompresses the response - GitHub - bodrovis/faraday-gzip: The Gzip middleware adds the necessary Accept-Encoding h...
👍8🔥1
Engine для Rails, который добавляет возможность входа без пароля https://github.com/mikker/passwordless
GitHub
GitHub - mikker/passwordless: 🗝 Authentication for your Rails app without the icky-ness of passwords
🗝 Authentication for your Rails app without the icky-ness of passwords - mikker/passwordless
Senior developer fixing a bug in production https://www.youtube.com/watch?v=aQHZ6LhPRzM
YouTube
Senior developer fixing a bug in production
😁9👍3
Уроки по RSpec 3 (aka "Самоучитель RSpec") наконец-то на канале! Сегодня мы узнаем, как настроить среду для выполнения автотестов, поговорим, что это вообще такое, подключим Rubocop, а также напишем наши первые тесты. https://youtu.be/60g460qWDTU
YouTube
RSpec 3, урок #1 | Настройка среды и первые тесты
Уроки по RSpec 3 (aka "Самоучитель RSpec") наконец-то на канале! Сегодня мы узнаем, как настроить среду для выполнения автотестов, поговорим, что это вообще такое, подключим Rubocop, а также напишем наши первые тесты.
Таймкоды:
00:00 Введение
00:50 Что такое…
Таймкоды:
00:00 Введение
00:50 Что такое…
🔥24👍4
Друзья, у меня иногда спрашивают: во что поиграть? Дескать, хороших игр не выпускают. Что ж, не сказать, что у меня остаётся так уж много времени на игры, но вообще я считаю, что это весьма неплохое времяпрепровождение, если нужно отвлечься. Вообще, я люблю японские RPG, но, увы, ничего стоящего последние лет 15 не выпускалось, поэтому небольшой топ в других жанрах:
👍6
1. Banner Saga - красивая рисовка, интересный сюжет, довольно неплохая боевая система, пусть и простая. Лично мне нравится именно атмосферность
2. Disco Elysium - играть просто ради сюжета. Это фактически книга, только рассказанная в форме игры. На большого любителя
3. Not For Broadcast - новая игра, которой я посвятил несколько часов. Очень помогает в прокачке английского, интересный игровой процесс, хороший юмор
4. Dungeons of Naheulbeuk - классическая партийная RPG, которая пародирует буквально всё. Отличный юмор, нескучный игровой процесс
5. Kingdom Come - пожалуй, единственная игра "в тренде". Да, в ней полно багов, но сделано очень добротно, здорово проработан мир, и в целом впечатление очень приятное.
В общем, не скучайте!
2. Disco Elysium - играть просто ради сюжета. Это фактически книга, только рассказанная в форме игры. На большого любителя
3. Not For Broadcast - новая игра, которой я посвятил несколько часов. Очень помогает в прокачке английского, интересный игровой процесс, хороший юмор
4. Dungeons of Naheulbeuk - классическая партийная RPG, которая пародирует буквально всё. Отличный юмор, нескучный игровой процесс
5. Kingdom Come - пожалуй, единственная игра "в тренде". Да, в ней полно багов, но сделано очень добротно, здорово проработан мир, и в целом впечатление очень приятное.
В общем, не скучайте!
👍13
Продолжаем уроки по языку Solidity! Сегодня обсудим типы данных string, address, mapping. Узнаем их особенности, попробуем отправить и получить денежные средства в контрактах и посмотрим некоторые другие вещи на практике. https://www.youtube.com/watch?v=WTmyFzfwn04
YouTube
Solidity и смарт-контракты Ethereum, урок #3 | Типы данных string, address, mapping
ХОТИТЕ СТАТЬ РАЗРАБОТЧИКОМ Solidity, узнать об Ethereum, блокчейне и многом другом ещё больше?!
Мои друзья из GUIDE DAO (бывшая школа MCS) предлагают скидку 0,1 ETH на ВСЕ СВОИ БУТКЕМЫ ПО КРИПТЕ! Материалы этих буткемов подготовлены мной и другими специалистами:…
Мои друзья из GUIDE DAO (бывшая школа MCS) предлагают скидку 0,1 ETH на ВСЕ СВОИ БУТКЕМЫ ПО КРИПТЕ! Материалы этих буткемов подготовлены мной и другими специалистами:…
👍5