Удобный валидатор даты (для любого ORM) https://github.com/codegram/date_validator Например:
validates :expiration_date,
date: { after: Proc.new { Time.now },
before: Proc.new { Time.now + 1.year } }
GitHub
GitHub - codegram/date_validator: A simple, ORM agnostic, Ruby >=2.2 compatible date validator for Rails, based on ActiveModel.
A simple, ORM agnostic, Ruby >=2.2 compatible date validator for Rails, based on ActiveModel. - codegram/date_validator
Сегодня поговорим о том, как установить и настроить Hardhat для работы со смарт-контрактами Ethereum. https://youtu.be/E9kkzeFiCrY
YouTube
Установка и настройка Hardhat для работы со смарт-контрактами Ethereum
ХОТИТЕ СТАТЬ РАЗРАБОТЧИКОМ Solidity, узнать об Ethereum, блокчейне и многом другом ещё больше?!
Мои друзья из GUIDE DAO (бывшая школа MCS) предлагают скидку 0,1 ETH на ВСЕ СВОИ БУТКЕМЫ ПО КРИПТЕ! Материалы этих буткемов подготовлены мной и другими специалистами:…
Мои друзья из GUIDE DAO (бывшая школа MCS) предлагают скидку 0,1 ETH на ВСЕ СВОИ БУТКЕМЫ ПО КРИПТЕ! Материалы этих буткемов подготовлены мной и другими специалистами:…
Друзья, если вдруг кто-то всё ещё использует мою библиотеку jquery-slick-rails для подключения карусели, с сегодняшнего дня она официально считается устаревшей. Подробности здесь: https://github.com/bodrovis/jquery-slick-rails#deprecation-notice
GitHub
GitHub - bodrovis/jquery-slick-rails: Integrates Slick carousel, a jQuery plugin, into your Rails app.
Integrates Slick carousel, a jQuery plugin, into your Rails app. - GitHub - bodrovis/jquery-slick-rails: Integrates Slick carousel, a jQuery plugin, into your Rails app.
Как вы наверное слышали, TravisCI прикрыл лавочку для проектов open source: теперь запускать автотесты бесплатно в любых количествах запрещено. Из-за того, что на их мощностях пытались майнить криптовалюту, они сильно ограничили количество бесплатных билдов, введя концепцию "кредитов". В моём случае (да и для многих других юзеров) это привело к тому, что буквально после нескольких билдов кредиты заканчивались, а затем по прошествии месяца не восполнялись. Поддержка молчит, что делать - неясно. В общем, в связи с этим я попробовать GitHub Actions и могу сказать, что это очень удобная штука, которая тоже позволяет запускать автотесты, выбирая интересующие вас платформы, версии языка и фреймворка. Получается примерно вот такое: https://github.com/bodrovis/lokalise_manager/actions Думаю, в будущем сделать более подробный обзор этого дела
GitHub
Actions · bodrovis/lokalise_manager
This gem provides Lokalise integration for Ruby and allows to exchange translation files easily. - Actions · bodrovis/lokalise_manager
Ruby on Rails 7 уже не за горами, поэтому самое время перейти на новую версию! В этом видео мы обсудим основные изменения в Rails 7, проведём непосредственный процесс миграции, а также обсудим новые интересные функции, которые доступны после обновления. https://www.youtube.com/watch?v=pbagOfP-__I
YouTube
Ruby on Rails, урок #21 | Миграция на Rails 7
Ruby on Rails 7 уже не за горами, поэтому самое время перейти на новую версию! В этом видео мы обсудим основные изменения в Rails 7, проведём непосредственный процесс миграции, а также обсудим новые интересные функции, которые доступны после обновления.
…
…
Друзья, уже несколько человек спрашивали, как реализовать настройки для пользователя в приложении Rails. Безусловно, это можно сделать самому с нуля, но я тут набрёл на вот такое решение (честно скажу, сам не пробовал, но выглядит интересно) https://github.com/ledermann/rails-settings
GitHub
GitHub - ledermann/rails-settings: Manage settings with Ruby on Rails
Manage settings with Ruby on Rails. Contribute to ledermann/rails-settings development by creating an account on GitHub.
Забавно, нашёл в твиттере свою запись 2017 года о StimulusJS. Собственно да, сколько-нибудь серьёзной ниши фреймворк так и не занял, но для Rails решение хорошее, особенно если вместе с другими новыми фичами https://i.imgur.com/80NLBNZ.png
В общем, посмотрел тут более подробно, как создаётся новое приложение Rails 7.
По умолчанию для JS используется https://github.com/rails/importmap-rails - эта штука не требует NodeJS и просто подрубает модули напрямую из CDN (хотя может и локально их скачать). То есть не делается ни bundle, ни transpile. Но остаётся открытым вопрос, что тогда делать, если я хочу писать на TS или как обрабатывать Sass (видимо, никак - для sass придётся использовать sassc-rails). Кроме того, там неясно, как проверять наличие новых версий библиотек и их удобно скачивать - короче, пока importmap оставляет больше вопросов, чем ответов.
Но зато если сказать
По умолчанию для JS используется https://github.com/rails/importmap-rails - эта штука не требует NodeJS и просто подрубает модули напрямую из CDN (хотя может и локально их скачать). То есть не делается ни bundle, ни transpile. Но остаётся открытым вопрос, что тогда делать, если я хочу писать на TS или как обрабатывать Sass (видимо, никак - для sass придётся использовать sassc-rails). Кроме того, там неясно, как проверять наличие новых версий библиотек и их удобно скачивать - короче, пока importmap оставляет больше вопросов, чем ответов.
Но зато если сказать
rails new MyApp -j esbuild то будет задействован собственно esbuild, который куда проще, чем Webpack и там можно нормально и Sass, и что угодно использовать. Да, если нужен Sass, то пишем rails new MyApp -j esbuild —css sassGitHub
GitHub - rails/importmap-rails: Use ESM with importmap to manage modern JavaScript in Rails without transpiling or bundling.
Use ESM with importmap to manage modern JavaScript in Rails without transpiling or bundling. - rails/importmap-rails
В этот раз мы узнаем, как компилировать смарт-контракты через Hardhat, разворачивать их блокчейн, а также взаимодействовать с ними через библиотеку Ethers.js: отправлять и снимать деньги, а также вызывать другие функции из-под разных аккаунтов. https://youtu.be/K608okBC3L0
YouTube
Работа со смарт-контрактами Ethereum с помощью Ethers.js
ХОТИТЕ СТАТЬ РАЗРАБОТЧИКОМ Solidity, узнать об Ethereum, блокчейне и многом другом ещё больше?!
Мои друзья из GUIDE DAO (бывшая школа MCS) предлагают скидку 0,1 ETH на ВСЕ СВОИ БУТКЕМЫ ПО КРИПТЕ! Материалы этих буткемов подготовлены мной и другими специалистами:…
Мои друзья из GUIDE DAO (бывшая школа MCS) предлагают скидку 0,1 ETH на ВСЕ СВОИ БУТКЕМЫ ПО КРИПТЕ! Материалы этих буткемов подготовлены мной и другими специалистами:…
👍2
Друзья, представляю вашему вниманию ОБНОВЛЁННЫЙ первый урок по Ruby on Rails 7, где рассказывается, как настроить среду, установить всё необходимое и создать приложение.
Даже если вы уже это знаете, вас может заинтересовать процесс создания нового приложения и его запуск (с таймкода 13:00), так как там есть кое-какие особенности по сравнению с Rails 6: например, теперь можно указать, какой фреймворк CSS использовать и какой движок выбрать для JS. Кроме того, сам запуск сервера выполняется иначе (не просто rails s).
Все остальные уроки, как я уже упоминал, остаются актуальными 🚊https://www.youtube.com/watch?v=tqSkBmODHBk
Даже если вы уже это знаете, вас может заинтересовать процесс создания нового приложения и его запуск (с таймкода 13:00), так как там есть кое-какие особенности по сравнению с Rails 6: например, теперь можно указать, какой фреймворк CSS использовать и какой движок выбрать для JS. Кроме того, сам запуск сервера выполняется иначе (не просто rails s).
Все остальные уроки, как я уже упоминал, остаются актуальными 🚊https://www.youtube.com/watch?v=tqSkBmODHBk
YouTube
Ruby on Rails 7, урок #1 (обновлённый) | Подготовка среды и создание приложения
Уроки по Ruby on Rails 7 - популярному web-фреймворку. Сегодня мы поговорим о том, как установить весь необходимый софт, настроить рабочую среду, и создать несложное приложение Rails.
Таймкоды:
00:00 Введение
00:40 Зачем потребовалось записывать обновлённый…
Таймкоды:
00:00 Введение
00:40 Зачем потребовалось записывать обновлённый…
Итак, друзья, немного поделюсь последними событиями - возможно, для кого-то будет полезным. Вчера я получил третью дозы вакцины, на этот раз Moderna (если в первые два раза вживлялся Чип и Дейл, то теперь, видимо, Гаечка). В принципе, теперь процесс выглядит уже как-то совсем рутинно, как будто такая вакцинация появилась ещё при царе Горохе. Ощущения на данный момент, скажем так, не самые лучшие: как будто начинается грипп. Впрочем, о подобном упоминали многие мои коллеги. Зато, судя по тестам, комбо из Pfizer+Moderna даёт самый мощный ответ иммунитета... Впрочем, это весьма предварительная информация.
Как-то так, пока пару дней буду приходить в себя, тем более, что послезавтра праздничный день. Тем временем можно посмотреть моё более старое "развлекательное" видео о забавном языке программирования LOLCODE. Берегите себя и до скорых встреч 😝 https://www.youtube.com/watch?v=MnZJTq1gN6Y
Как-то так, пока пару дней буду приходить в себя, тем более, что послезавтра праздничный день. Тем временем можно посмотреть моё более старое "развлекательное" видео о забавном языке программирования LOLCODE. Берегите себя и до скорых встреч 😝 https://www.youtube.com/watch?v=MnZJTq1gN6Y
YouTube
LOLCODE: язык программирования для любителей котиков
В этом видео мы поговорим об эзотерическом языке программирования LOLCODE, созданном на основе мемом о забавных котах. Хотя этот язык и не используется в реальных проектах, поработать с ним будет довольно интересно.
Таймкоды:
00:00 О языке
01:50 Компилятор…
Таймкоды:
00:00 О языке
01:50 Компилятор…
В этот раз мы посмотрим, как развернуть смарт-контракт в тестовую сеть Hardhat, а затем как настроить Alchemy и развернуть тот же контракт в тестовую сеть Rinkeby. Кроме того, узнаем как верифицировать этот контракт на Etherscan. https://youtu.be/yPHZOD9eEnw
YouTube
Hardhat, Ethers.js, Rinkeby, Alchemy, Etherscan
ХОТИТЕ СТАТЬ РАЗРАБОТЧИКОМ Solidity, узнать об Ethereum, блокчейне и многом другом ещё больше?!
Мои друзья из GUIDE DAO (бывшая школа MCS) предлагают скидку 0,1 ETH на ВСЕ СВОИ БУТКЕМЫ ПО КРИПТЕ! Материалы этих буткемов подготовлены мной и другими специалистами:…
Мои друзья из GUIDE DAO (бывшая школа MCS) предлагают скидку 0,1 ETH на ВСЕ СВОИ БУТКЕМЫ ПО КРИПТЕ! Материалы этих буткемов подготовлены мной и другими специалистами:…
Материал "свои рельсы с нуля" (ну, почти). Во всяком случае, рассказывается о том, как это работает https://launchschool.com/books/demystifying_rails (прислал Леонид)
Некий анонимный товарищ выложил на GitHub скрипты, написанные на Python, которые позволяют скачивать видео с популярных сервисов типа Netflix, причём, судя по всему, нелегально. Я ни в коем случае не призываю к пиратству и использование этих скриптов является нарушением закона в большинстве стран мира, но эти скрипты могут быть интересны именно с точки зрения программиста, то есть как поставленная задача была решена. Впрочем, вероятно, этот аккаунт GitHub очень скоро забанит. В общем, мораль сей басни такова: уязвимости бывают даже у компаний-гигантов https://github.com/widevinedump ⚠️ Запускать скрипты, назначение которых вы не знаете или не понимаете их принцип работы, весьма не рекомендуется
GitHub
widevinedump
GitHub is where widevinedump builds software.
🔥2
В этом видео мы поговорим о менее известных методах Ruby: zip, pack/unpack/rotate, а также ещё раз затронем pattern matching. Поговорим о том, как строку можно представить в виде байтового массива и последовательности бит. Также мы напишем программу, которая позволит шифровать и дешифровать текстовые данные с помощью операции XOR (исключающее "или", оно же сложение по модулю два). Бонусом новогоднее поздравление! :) https://www.youtube.com/watch?v=F8LX13V1ye0
YouTube
Шифрование XOR на Ruby | Байтовые массивы, методы zip, pack/unpack/rotate
В этом видео мы поговорим о менее известных методах Ruby: zip, pack/unpack/rotate, а также ещё раз затронем pattern matching. Поговорим о том, как строку можно представить в виде байтового массива и последовательности бит. Также мы напишем программу, которая…
👍6🔥1
Любопытная дискуссия о том, почему React стал более популярным, чем Angular https://www.quora.com/Has-Google-lost-the-battle-with-angular-vs-react
Quora
Has Google lost the battle with angular vs react?
Answer (1 of 16): Yes, it is. Google is a big fan of making your application ‘enterprise grade’. Look at the Android framework… Tons of boilerplates… Things get better with the new architecture components, but still, over complex, the core reason is they…
Всем отличных выходных 😄 Не могу не поделиться внезапно обнаруженной записью: Heart исполняет Stairway to Heaven в 2012, звучит вполне достойно https://www.youtube.com/watch?v=2cZ_EFAmj08
YouTube
Heart - Stairway to Heaven Led Zeppelin - Kennedy Center Honors HD
Please keep the politics out of the comments and enjoy the music.
Heart w/ Jason Bonham - Stairway to Heaven Led Zeppelin - Kennedy Center in HD
Heart w/ Jason Bonham - Stairway to Heaven Led Zeppelin - Kennedy Center in HD
Сегодня мы поговорим о том, как настроить GitHub Actions для запуска автотестов Ruby. Узнаем, что такое GitHub workflows, настроим CI, посмотрим, как добавлять бэйджи GitHub Actions, как управлять переменными среды и как просматривать информацию о запущенных задачах. Кроме того, обсудим использование нескольких Gemfile в процессе запуска тестов. https://www.youtube.com/watch?v=vVWTUujffLg
YouTube
GitHub Actions и автотесты Ruby | RSpec, CI/CD, Gemfile
Сегодня мы поговорим о том, как настроить GitHub Actions для запуска автотестов Ruby. Узнаем, что такое GitHub workflows, настроим CI, посмотрим, как добавлять бэйджи GitHub Actions, как управлять переменными среды и как просматривать информацию о запущенных…
🔥7