タグ

JavaScriptとRubyに関するYassLabのブックマーク (30)

  • Rails7 + ViewComponent + Hotwireでのコンポーネント指向なフロントエンド開発を試してみた

    はじめに 記事では環境構築について取り扱いません。 詳細につきましてはリポジトリを参照してください。 Railsフロントエンド開発でつらいところ Railsフロントエンド開発する場合に、よく使う部品はPartialなどで共通化しますよね? 小規模であればPartialだけで十分なのですが、コードベースが成長したり、複雑なユースケースを満たすようになると以下のような課題が生まれてきます。 1. データフローを把握しづらい PartialはControllerで定義したインスタンス変数を参照できるため、以下のようにデータフローが複雑になりがちです。 Partialに値を受け渡すときにlocalsでの受け渡しを必須にすれば解消できますが、曖昧な方針でPartialを実装しているとカオスになります。 2. JavaScriptとViewの依存関係が曖昧で保守しづらい View単位でJavaS

    Rails7 + ViewComponent + Hotwireでのコンポーネント指向なフロントエンド開発を試してみた
    YassLab
    YassLab 2024/04/27
    "JavaScriptの動作をテストするための方法も用意されており、コンポーネント単位でのユニットテストを少ないコストで実装できる / ViewComponentのプレビュー機能とcapybaraのsystem specを組み合わせることで、簡単に実装できます"
  • From Next.js to Rails then Elixir: My journey through React.js burnout

    DEV Community Follow A space to discuss and keep up software development and manage your software career Future Follow News and discussion of science and technology such as AI, VR, cryptocurrency, quantum computing, and more.

    From Next.js to Rails then Elixir: My journey through React.js burnout
    YassLab
    YassLab 2024/01/23
    "huge amount of complexity: Multiple separate repos, thousands of libraries and frameworks to achieve simple things, GraphQL, microservices, serverless, static site generation, incremental static regeneration, partial hydration, redux, redux-thunk, babel, webpack, react server components, ... etc."
  • Remove TypeScript - laiso

    経緯 world.hey.com DHHが「オタクくん見てる〜? 今からうちのレポジトリからTypeScriptを剥しま〜す」と宣言したことにより、Web開発者界隈でTypeScriptの是非自体の話になり騒ぎになった*1*2。 github.com その後、野次馬がたくさん集ってきてrevertプルリクエストを立てる人やTypeScript公式リポジトリから全ソースコードを消すプルリクエストを出す*3ようなキッズムーブをする人も出てきた world.hey.com 実際の変更 8617行のTypeScriptJavaScript化された。(Sloc 便利) ❯ scc src/ ─────────────────────────────────────────────────────────────────────────────── Language Files Lines Blan

    Remove TypeScript - laiso
    YassLab
    YassLab 2023/09/08
    "誰に影響があるのか: Turbo のコントリビューター / Turbo のインターフェイスをコードから直接呼び出すようなことはない / アプリ側ではひき続き TypeScript で書くことができる / Laravel 版があるけど彼等も JavaScript で書いてる"
  • ruby.wasmに対する思いとか、企んでいることとか - @ledsun blog

    ruby.wasmについて、現時点で僕が思っていることを記録しておきます。 思っていること 主にonブラウザ 僕がruby.wasmに興味があるのは、ブラウザで動かす方です。 エッジワーカーで動かす方は今のところあまり興味がありません。 また、ruby.wasmがプロダクションで使えることは期待していません。 つまり「Reactをひっぺがして、ruby.wasm + Railsで大統一Ruby Webアプリケーション開発だ!」みたいな線はあんまり考えていません。 というか次の2点で大統一理論に勝ち目はないと思っています。 言語を統一したところで、ブラウザとサーバーはプログラミングモデルが違いすぎる JavaScriptエコシステムの規模はRubyエコシステムの規模を圧倒している わざわざJavaScriptの資産を捨てて、イベントプログラミングに向いているわけでもないRubyを選択するメリ

    ruby.wasmに対する思いとか、企んでいることとか - @ledsun blog
    YassLab
    YassLab 2023/06/20
    “勝算はともかく、Rubyが「Flashのような入門的なプログラミング環境」の位置を目指せるということに夢を感じます。Flashはアニメーションが作りやすかった点が大きい / Ruby Association Grantは所属企業で応募できる”
  • Ruby に >>> 演算子を実装して遊ぶ

    私は Ruby ビギナーなんですが、最近ちょっとしたきっかけがあって、Ruby に興味津々です。 そこで、Ruby(MRI)をちょっとだけ改造して遊んでみました。 Ruby に貢献!みたいな良い話ではなくて、自分の手元の Ruby に対してあんまり意味のない改造を施して、楽しいね! っていう類の話です。 ちなみに C 言語はほとんど書いたことありません。 どう遊ぶか 私はパーサーがちょっとだけ好きなので、パーサーを触ってみたいと思いました。 パーサーを触るような改造をするなら、新しい構文を追加してみるのがてっとり早そうです。その中でも二項演算子なら簡単なのではないかと考えました。 ということで、(私が日頃から書いている)JavaScript にあって Ruby にはない演算子として、>>> 演算子を実装してみることにしました。 >>> 演算子は、符号なし右シフト演算子というやつで、Java

    Ruby に >>> 演算子を実装して遊ぶ
    YassLab
    YassLab 2023/06/01
    “parse.y や lrama をもっと読み込んでいじってみたいなー / VM もちょっと気になっています。それなりに簡単にビルドできて、日本語情報も豊富なので楽しいです。いずれは Ruby に意味のある貢献ができたら良いですね。”
  • Mapkick - Create beautiful JavaScript maps with one line of Ruby

    Installation Add this line to your application’s Gemfile: gem "mapkick-rb" Mapkick uses Mapbox GL JS v1. To use tiles from Mapbox, create a Mapbox account to get an access token and set ENV["MAPBOX_ACCESS_TOKEN"] in your environment. Then follow the instructions for your JavaScript setup: Importmap (Rails 7+ default) Bun, esbuild, rollup.js, or Webpack Sprockets Importmap In config/importmap.rb, a

    YassLab
    YassLab 2023/01/30
    "Mapkick uses Mapbox GL JS v1. To use tiles from Mapbox, create a Mapbox account to get an access token and set ENV["MAPBOX_ACCESS_TOKEN"] in your environment. / This is brilliant if you need a map in your Ruby or Rails app, and it supports many options around markers, tooltips, controls, and more."
  • 今年のオープンソース活動振り返り @ 2022

    2022年のオープンソース活動の振り返り記事です。 今までの振り返りの一覧です。 今年のオープンソース活動振り返り @ 2021 | Web Scratch 今年のオープンソース活動振り返り @ 2020 | Web Scratch 今年のOSS活動振り返り @ 2019 | Web Scratch 今年のOSS活動振り返り @ 2018 | Web Scratch 今年のOSS活動振り返り @ 2017 | Web Scratch 今年のOSS活動振り返り @ 2016 | Web Scratch 今年のOSS活動振り返り @ 2015 | Web Scratch 今年のOSS活動振り返り @ 2014 | Web Scratch 2022年のGitHubのPublicなContributionsは7000~8000ぐらいを推移していました。 Privateリポジトリも含めると大体1.5

    今年のオープンソース活動振り返り @ 2022
    YassLab
    YassLab 2022/12/31
    #jsprimer のご参考になったようであれば嬉しいです...!! 😻✨ "企業がスポンサーになるイメージで、何かいいバランスの仕組みがないかなと考えている。 #Railsガイド の協賛プランとかの話は、だいぶ近いのかもしれない。"
  • Rubyを手軽にブラウザ上で動かすことが可能に WebAssemblyを使って解消する、Rubyの動作環境問題 | ログミーBusiness

    プログラミング言語Rubyの国内最大級のカンファレンス「RubyKaigi」。「RubyKaigi 2022」のKeynoteで登壇したのは、齋藤優太氏。「Ruby meets WebAssembly」のテーマで、WebAssembly上でRubyが動くようになった経緯、テクニック、ユースケースについて発表しました。全2回。前半は、なぜWebAssembly対応をするのか、そのモチベーションと経緯について。 登壇者の自己紹介とアジェンダ紹介齋藤優太氏(以下、齋藤):いやぁ~、緊張しますね(笑)。みなさんおはようございます。 会場:おはようございます。 齋藤:「Ruby meets WebAssembly」ということで、今日は最近少し話題になっているRubyWebAssemblyの話をしようと思います。よろしくお願いします。 (会場拍手) RubyWebAssembly上で動くようになっ

    Rubyを手軽にブラウザ上で動かすことが可能に WebAssemblyを使って解消する、Rubyの動作環境問題 | ログミーBusiness
    YassLab
    YassLab 2022/11/16
    #Ruby #WebAssembly “『ブラウザ上でirbを動かす』これが本題ですね。次のデモは、なんとirb(Interactive Ruby)が動きます。これ見えますかね? 普通のirbですね。これはブラウザで動いているんですよ。コンソールじゃないんです
  • 研修で初めてRuby on Railsを触って学んだこと - ドワンゴ教育サービス開発者ブログ

    はじめに 配属研修の課題について エンジニア新入社員研修の個人課題:「JavaScriptでの開発」 配属研修課題1:「RailsAPIサーバのみ構築」 配属研修課題2:「Railsフロントエンドも含めた開発」 作ったアプリケーションの概要 JavaScript・Expressで開発した時との違いに関する感想 letやconstが要らない変数定義 falsyな値の違い ブロックをそのまま変数に代入できない 暗黙のreturn 条件文の後置 フレームワークの機能が豊富 ディレクトリ構造の一貫性 リソースベースルーティング 課題を取り組みながら学んだこと OpenAPIを使ったAPI定義ファイルの作成 N+1問題対策 テストコードに関する考えの変化 おわりに We are hiring! サムネイル画像 はじめに こんにちは。2022年4月に新卒で入社しました教育事業部サービス開発部バッ

    研修で初めてRuby on Railsを触って学んだこと - ドワンゴ教育サービス開発者ブログ
    YassLab
    YassLab 2022/11/15
    "失敗したことだけを教えてくれるより、何がどう失敗したかを教えてくれるように書くことが重要 / OpenAPIの活用とN+1問題の対策、テストコードの書き方に関する認識変化等、バックエンド開発一般に関する知識も広く習得"
  • Railsの技: "プログレッシブエンハンスメント"でHotwire的思考を身につける(翻訳)|TechRacho by BPS株式会社

    概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Thinking in Hotwire: Progressive Enhancement | Boring Rails: Skip the bullshit and ship fast 原文公開日: 2022/08/16 原著者: Matt Swanson サイト: Boring Rails語タイトルは内容に即したものにしました。 Turboについては以下の記事もどうぞ。 参考: でもわかるHotwire入門 Turbo編 Hotwireを始める方法や個別のパーツの利用法を学べるチュートリアルはたくさんあります。しかし私は「Hotwireで考える」コツを会得するのにしばらく時間がかかりました。 Hotwireそのものは「HTML-over-the-wire」という包括的なコンセプトに過ぎず、以下のような部品をいつどのように

    Railsの技: "プログレッシブエンハンスメント"でHotwire的思考を身につける(翻訳)|TechRacho by BPS株式会社
    YassLab
    YassLab 2022/09/12
    "Hotwireはプログレッシブエンハンスメントという考え方に基づいています。欲しい結果を得るには使うツールをできるだけ少なくしておく / 下のレイヤになるほど機能が強力になりますが、トレードオフとして複雑さが増す"