タグ

rubyに関するwate_wateのブックマーク (80)

  • Excelを扱うRubyGemまとめ 2022 - Qiita

    書き込み部門 rooは読み込み専門なので、spreadsheet, rubyXL, caxlsxで比較していきます。 ちょっと無理やりいろんな書式を使っている感がありますが、以下のような表を作ってみます。 spreadsheet 😄 いろいろな方法でセルにデータを入れられる 🥲 計算式が入力できない デフォルトのフォントが設定できず、行ごと・セルごとに指定する必要がある 色がカラーパレットからしか選べない ドキュメントが手薄なので、ドキュメントに載っていないものはソースコードを見て回る必要がある そもそも.xlsしか対応していない。。 サンプルコード require 'spreadsheet' # Workbookを作成 workbook = Spreadsheet::Workbook.new # Sheetを作成 sheet = workbook.create_worksheet(n

    Excelを扱うRubyGemまとめ 2022 - Qiita
  • Ruby2.0のModule#prependは如何にしてalias_method_chainを撲滅するのか!? | TECHSCORE BLOG | TECHSCORE BLOG

    Ruby2.0のModule#prependは如何にしてalias_method_chainを撲滅するのか!? お久しぶりです。寺岡です。 lazyについて書いた前回に続いて、Ruby2.0について書いてみたいと思います。 今回注目する新機能は、Module#prependです。 Module#prependはRuby2.0で新たに追加された、Module#includeの親戚のような機能です。 一言で表すと「クラスの継承階層の手前にモジュールを追加する」ことができるようになります。 ActiveSupportのMudule#alias_method_chainを使わずに綺麗なモンキーパッチ実装することができる、Module#prependの挙動を探ってみたいと思います。 ruby2.0-rc1のインストール まずは実行環境の準備です。 前回の記事ではruby2.0-preview2を使い

  • Railsプロジェクトへの「頑張らない型導入」のすすめ - メドピア開発者ブログ

    こんにちは。サーバーサイドエンジニアの三村(@t_mimura)です。 主に保険薬局と患者さまを繋ぐ「かかりつけ薬局」化支援アプリ kakariのサーバーサイド開発(Ruby on Rails)を担当しています。 突然ですが! この度kakariプロジェクトは「型導入」をしました! kakariのRailsリポジトリに型導入PRがマージされた様子 皆さんのプロジェクトは「型導入」していますか? 「型導入」しているRailsプロジェクトはまだ少ないのではないでしょうか なぜ型導入しないのか 型を導入すると何かしらが便利になることは分かっているのに何故やらないのでしょうか(煽り気味) 「型の恩恵」と「型を自分たちで書くコスト」の2点を比較していませんか? RubyKaigi 2023開催前の私がまさしくそう考えていました。 当にその2点を比較するべきなのかをここで再考してみましょう。 「型導

    Railsプロジェクトへの「頑張らない型導入」のすすめ - メドピア開発者ブログ
  • Visual Studio Codeでruby-debug-ideを使ってデバッグ

    弊社の開発メンバーは、AtomやVisual Studio Code、Emacsなどそれぞれが好きなエディタを使用してRailsのアプリ開発を行なっています。 私は以前はAtomを使っていましたが、Atomにプラグインを入れすぎたからか重くなったので ここ1年くらいはVisual Studio Codeを使っています。 Railsのデバッグはpryです。 Visual Studio Codeを使っていると右側にDebuggingアイコンが表示されています。 今まであまり気にしていなかったのですが これ、どうやって使うんだと思い使ってみました。 デバッガーをインストール ruby-debug-ideとdebaseをインストールします。 必要なGemをGemfileに追加 ruby-debug-ideとdebaseをGemfileに追加します。 gem "ruby-debug-ide" gem

    wate_wate
    wate_wate 2022/04/21
    メモ
  • A Fast, Concurrent Web Server for Ruby & Rack - Puma

    Speed & Concurrency Current Release: 6.4.0 Unlike other Ruby Webservers, Puma was built for speed and parallelism. Puma is a small library that provides a very fast and concurrent HTTP 1.1 server for Ruby web applications. It is designed for running Rack apps only. What makes Puma so fast is the careful use of a Ragel extension to provide fast, accurate HTTP 1.1 protocol parsing. This makes the se

  • 【ruby】 メソッド探索から見る、モジュール・特異メソッド・特異クラス - 圧倒亭グランパのブログ

    rubyを書き始めて間もない頃、 「なんで NoMethodError なんだ...。あ、メソッド定義にself 付けたら通った。」 みたいなことがありました。 rubyを読んでいると、そのあたりがハッキリとイメージできるようになったのでまとめておきます。 参考にした 年明けからひたすらRubyを読んでいます。読了したのは以下。 現在は Effective Ruby を読んでいます。 これらを読んでいくと、中途半端に理解していた部分がカチッとハマるのでオススメです。 ※ 今回のコードは ruby 2.2.0 で試したものです。 オブジェクトとクラスの関係 サンプルコードを見てみましょう。 class C def c_instance_method @my_var = 1 end end obj = C.new 当初、自分はオブジェクトとクラスの関係を以下のように考えていました。 (

    【ruby】 メソッド探索から見る、モジュール・特異メソッド・特異クラス - 圧倒亭グランパのブログ
  • Rubyのtrueとfalseの話 - Qiita

    この記事は、技術同人誌としてまとめるはずだった原稿をほぼそのまま転載しています。諸事情により向こうかなり長い間同人誌即売会に売り手として参加することが難しくなったためです。 長いですが、お楽しみいただければ幸いです。 まえがき このは、Rubyコミッタである卜部昌平に、そのである私、卜部一恵がRubyのtrueとfalseについて突っ込んで聞いてみた話です。文は両者の対話形式で進んでいきます。 私は昌平と同じ大学同じ研究室に所属していたのでプログラミングについての基礎は一応ありますが、エンジニアとして職を得たことはありません。つまり、プログラミング初級者です。このはそのくらいのレベル感のだと思います。 私自身が初級者なりにRubyを使っていて、if文が思った通りに動かない、そんなときに抱いた疑問からこのが生まれました。 同じような疑問を抱いている方の一助になれば幸いです。 は

    Rubyのtrueとfalseの話 - Qiita
  • Sqids (formerly Hashids) · Generate Short Unique IDs

    What is Sqids? Sqids (pronounced "squids") is an open-source library that lets you generate short unique identifiers from numbers. These IDs are URL-safe, can encode several numbers, and do not contain common profanity words. Read more . This is what they look like: Use Cases The main use of Sqids is purely visual. If you'd like to use IDs instead of numbers in your project, Sqids could be a good

  • gRPC

    Why gRPC?gRPC is a modern open source high performance Remote Procedure Call (RPC) framework that can run in any environment. It can efficiently connect services in and across data centers with pluggable support for load balancing, tracing, health checking and authentication. It is also applicable in last mile of distributed computing to connect devices, mobile applications and browsers to backend

    gRPC
  • Unicorn設定のまとめ - Qiita

    Unicornの設定ファイル Unicornの設定ファイルは大体以下のようになります。 説明は設定ファイル内にコメントとして記載してます。 参考: Rails4.2 を Nginx + Unicorn で動作させる # Railsのルートパスを求める。(RAILS_ROOT/config/unicorn.rbに配置している場合。) rails_root = File.expand_path('../../', __FILE__) # RAILS_ENVを求める。(RAILS_ENV毎に挙動を変更したい場合に使用。今回は使用しません。) # rails_env = ENV['RAILS_ENV'] || "development" # 追記に記載してます。入れた方がいいです。 ENV['BUNDLE_GEMFILE'] = rails_root + "/Gemfile" # Unicornは

    Unicorn設定のまとめ - Qiita
    wate_wate
    wate_wate 2016/03/21
    メモ
  • Railsの基本理念 : Railsの生みの親が掲げる8つの原則 | POSTD

    (訳注: 2016/3/2、頂いたフィードバックをもとに記事を修正いたしました。) Ruby on Railsは最近、急激に注目を集めていますが、その原因はほとんど、この言語が斬新なテクノロジーとしてもてはやされたことと、タイミングにあります。技術的な優位性は時間の経過とともに失われますから、タイミングがよかっただけでは、一過性のブームに終わり、このムーブメントの隆盛は長続きしません。従って、「Railsがいかにして、適切な技術としての位置を維持し続けるるだけでなく、影響力とコミュニティを拡大し続けてきたのか」をより多くの人に説明していく必要があります。そして、その維持・拡大を可能にした/していく要因は、物議を醸すことさえあるRailsの基原則にあると考えています。 この基原則はここ10年ほどの間に進化を続けてきましたが、最も強固な柱となっているルールはやはり、公開当初から制定されてい

    Railsの基本理念 : Railsの生みの親が掲げる8つの原則 | POSTD
  • Padrino - The Elegant Ruby Web Framework

    Padrino is a Ruby web framework built upon the Sinatra web library. Padrino was created to make it fun and easy to code more advanced web applications while still adhering to the spirit that makes Sinatra great! Lightweight The Padrino code base has been kept simple and easy to understand, maintain and enhance. The generator for each new project creates a clean and compact directory structure keep

  • Liquid template language

    Safe, customer-facing template language for flexible web apps. Download View on GitHub Liquid is an open-source template language created by Shopify and written in Ruby. It is the backbone of Shopify themes and is used to load dynamic content on storefronts. Liquid has been in production use at Shopify since 2006 and is now used by many other hosted web applications. Used by

  • Linuxbrew

    Linuxbrew : A fork of Homebrew for Linuxruby -e "$(wget -O- https://raw.github.com/Homebrew/linuxbrew/go/install)" See Dependencies and Installation below for more details. Features Can install software to a home directory and so does not require sudo Install software not packaged by the native distribution Install up-to-date versions of software when the native distribution is old Use the same pa

  • Gyaim

    Gyaim MacOS用の日本語入力システム by Toshiyuki Masui Gyaim.dmg ダウンロード ソース @ GitHub 特徴 GyaimはMacOS用の日本語入力システム(IME)です。 1000行程度のRubyで記述されており、改変が比較的簡単です。 プログラムのソースと辞書データがすべて公開されています。 時刻入力/画像入力/秘密文字列入力 など変な機能があります。 単語登録が簡単です。 Catalinaで動作を確認しています。それ以前のMacOSでは動かないかもしれません インストール Gyaim.dmgをダウンロードして展開し、 Gyaim.appを~/Library/Input Methodsにコピーします。 ターミナルを利用する場合は cp -r /Volumes/Gyaim/Gyaim.app ~/Library/'Input Methods' として

  • http://openbook4.me/projects/92

    http://openbook4.me/projects/92
  • RubyとPythonにおけるガベージコレクションの視覚化 | POSTD

    稿は、ブダペストで開かれたイベント「 RuPy 」で、Pat Shaughnessyが披露したプレゼンの内容をまとめたものです。 プレゼンの映像はここ から視聴できます。 稿は当初、 同氏の個人ブログ に投稿されましたが、同氏の了承を得て、Codeshipに再掲載します。 このイベントは「RubyPython」に関するカンファレンスなので、RubyPythonでは、ガベージコレクション(以下「GC」)の動作がどう違うのかを比較すると面白いだろうと私は思いました。 ただしその題に入る前に、そもそもなぜ、GCを取り上げるのかについてお話しします。正直言って、すごく魅力的な、わくわくするテーマではないですよね? 皆さんの中でGCと聞いて、心がときめいた方はいらっしゃいますか? [実はこのカンファレンス出席者の中で、ここで手を挙げた人は数名いました!] Rubyコミュニティで最近、Rub

    RubyとPythonにおけるガベージコレクションの視覚化 | POSTD
  • PythonとRuby:ワークシェイプの徹底比較! | POSTD

    Workshape.io を作った大きな成果の1つとして、私たちは珍しいデータセットにアクセスできるようになりました。このデータは、他のやり方では得難い情報を示してくれます。ユーザに、自分の求める仕事を”作業に配分する時間”で表してもらうことで、私たちは一次データを集めて区分できるだけでなく、それを今までになかったようなやり方で提示することもできるのです。 私たちの第2の検証では(最初の検証については「 肩書きに関する問題 」をご覧ください)、オープンソース界の原動力となっている主要なプログラミング言語のいくつかに注目すると面白いのではないかと考えました。具体的に言えば、2つの言語をどんな形で直接比較できるか確かめたかったのです。PythonRubyPHPなどの技術的・哲学的な違いについては誰もが知っていますが、そうした違いはその言語のユーザにどんな影響を与えるのでしょうか? どのプロ

    PythonとRuby:ワークシェイプの徹底比較! | POSTD
  • Artoo - Ruby framework for robotics, physical computing, and the Internet of Things

    We believe that it's time to bring Ruby and Robots together. Next generation robotics framework with support for 15 different platforms Get Started Meet The Code Artoo's simple code makes telling robots what to do incredibly simple and fun. All you need to get started is the artoo gem require 'artoo' Example Then hook it up to your robot (in this case, a Sphero) connection :sphero, adaptor: :spher

  • Railsドキュメント

    Rails7の基からビュー、モデル、コントローラなどをわかりやすく解説 メソッドごとに使用できるオプションや使用例などを多く記載

    Railsドキュメント