Finding New Pastures: Big Nerd Ranch’s Next Chapter News It is with a mix of emotions that we announce the upcoming sunsetting of some key aspects of Big Nerd Ranch and the transition...
Rubyでちょっとしたこと、例えばテキスト処理などをしたくてスクリプトを書くことはよくあります。そんなスクリプトは意外と再利用したくなるものです。しかし、作業用ディレクトリに適当なファイル名で保存していたりすると探し出すのは困難ですし、コマンドラインにワンライナーで書いたものだとそもそも残っていないこともあります1。別のPCでの再利用も、それらの保存方法では当然ながら不可能でしょう。 そこで、どこか整理された場所に保存しておいて再利用に備えたいのですが、保存先が問題になります2。そんなとき、私は次のような理由からgem(RubyGems)にしてしまうことにしています。手元ですぐに実行できますし、別の環境へのインストールも簡単です。また、他の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 当初、自分はオブジェクトとクラスの関係を以下のように考えていました。 (
会社で使っている Qiita Team に投稿した記事を画像ファイルも一緒にエクスポートしたくて書いたスクリプトがあったのですが、せっかくなのでコードを整理して gem にして公開してみました。 https://rubygems.org/gems/qiita-export 以下でインストールできます。 % gem install qiita-export 使い方は以下のような感じです。 # 普通の Qiita の方の記事 % qiita-export -Uakishin -i -o ./outputdir # team の記事 % qiita-export -texample -Uakishin -i -a <API Token> -o ./outputdir ついでに Mac 版 Kobito の SQLite からエクスポートできる機能もつけてみました。 % qiita-export
ビジネスバンクグループは、「日本の開業率を10%に引き上げる」をミッションに、起業家支援を行う会社だ。1997年の開業以来、セミナーの開催や、起業に役立つ支援事業などを行ってきた。 主に大企業で導入されていたERP(経営に必要なシステムを一元化するシステム)を中小企業の経営者に提供するべく、成功企業のベストナレッジをもとに、中小企業向けクラウド型ERPパッケージ【ALL-IN(オールイン)】を開発、2015年7月にリリースした。 こちらは、【ALL-IN(オールイン)】のプロモーションムービーだ。 一からサービスをつくりだす。Webサービス開発の醍醐味を味わえる リリース前夜の2015年6月、松江開発オフィスは始動した。 テクノアークしまね内にある松江開発オフィスには、現在4名のスタッフが在籍する。メンバーは開発2名と、運用・カスタマーサポートが2名。 カットオーバーしたばかりのシス
At RubyConf 2015 in San Antonio, Yukihiro "Matz" Matsumoto announced Ruby 3x3. The goal of Ruby 3x3 is to make Ruby 3 be 3 times faster than Ruby 2. At AppFolio, we think this is awesome and want to help. [Update: watch Matz's keynote ] We have been using Ruby for the past nine years. Like most people, we initially came to Ruby via Rails. One of the main ideals of Rails was that developer happines
2018年4月25日をもちまして、 『CodeIQ』のプログラミング腕試しサービス、年収確約スカウトサービスは、 ITエンジニアのための年収確約スカウトサービス『moffers by CodeIQ』https://moffers.jp/ へ一本化いたしました。 これまで多くのITエンジニアの方に『CodeIQ』をご利用いただきまして、 改めて心より深く御礼申し上げます。 また、エンジニアのためのWebマガジン「CodeIQ MAGAZINE」は、 リクナビNEXTジャーナル( https://next.rikunabi.com/journal/ )に一部の記事の移行を予定しております。 今後は『moffers by CodeIQ』にて、 ITエンジニアの皆様のより良い転職をサポートするために、より一層努めてまいりますので、 引き続きご愛顧のほど何卒よろしくお願い申し上げます。 また、Cod
Rails アプリケーションの開発をするとき、頻繁にメソッドの定義内容や Gem のコードを参照することがあります。 そこで、ソースコードタグ付けツールの GNU GLOBAL (gtags) を使って少しでも楽に、快適にしたい、という話です。 タグ付けツールでは ctags が有名で、こっちは Ruby や Rails での利用例も結構見つかるのですが、GLOBAL は定義へのジャンプだけでなく、参照へのジャンプもできる点が優れています。ビルトインパーサーが対応している言語が少ないのが難点なのですが (Ruby も未対応)、プラグインパーサーとして先の ctags と Pygments を利用することで、多くの言語に対応させることが可能です。 やりたいこと 以下を実現するのが目的です。 アプリケーションコードで「定義」「参照」「シンボル」のタグジャンプを使えるようにする アプリケーション
『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0063 号 バックナンバー Rubyist Magazine 0063 号 Rubyist Magazine 0062 号 Kaigi on Rails 特集号 RubyKaigi Takeout 2020 特集号 Rubyist Magazine 0061 号 Rubyist Magazine 0060 号 RubyKaigi 2019 直前特集号 Rubyist Magazine 0059 号 Rubyist
Go and Ruby-FFI How to write a shared library in Go that can be loaded by Ruby-FFI. With the release of Go 1.5 we got access to a new buildmode called c-shared, which allows you to build shared libraries that Ruby-FFI can load. (Also, anything else that can load shared libraries) Inspiration Filippo Valsorda has already written a very nice article on Building Python modules with Go 1.5 but I natur
Crystal の OptionParser を試してみる。 class OptionParser http://crystal-lang.org/api/index.html#http%3A//crystal-lang.org/api/OptionParser.html まずはプロジェクトを作成。 require "./hello/*" require "option_parser" name = "World" times = 1 OptionParser.new do |opt| opt.on("-n NAME", "--name=NAME", "name option") { |v| name = v } opt.on("-t TIMES", "--times=TIMES", "times option") { |v| times = v } end.parse! times.to
Thibault Denizet Thibault Denizet is a french Ruby on Rails developer based in Bangkok. He's been working with Ruby on Rails for almost 4 years and writes programming stuff at samurails.com. He also hates to write bio in third person. In this article, I want to share with you a different way to build Ruby on Rails applications. I call it the Modular Way, and the main idea behind that name is to se
The most amazing feature of Parse Server is that it’s accessible for developers of all skill levels. Personally, I started playing around with Objective-C in 2012. Parse was a way for me to build a complete online app, without having the in-depth knowledge of how to build networking, storage, user systems, etc. The more I built with Parse, the more I learnt JavaScript, which has fortunately allowe
変更されたファイルのみ実行 $ bundle exec rspec `git diff --name-only` インタラクティブに対象を選んで実行 peco便利。 $ bundle exec rspec `git ls-files | peco` そういえば、最近GuardやListenで自動実行しなくなってしまった。理由は特にない。 RSpecの変化が速すぎてついていけない。常にRubyを書いているわけではないので(JavaScriptが多くて常にRubyを書いているわけではないので、rspec-mocksも含めると気がつけばAPIが変わっていて、毎回ググっている。APIが安定しないライブラリは辛い。 そもそも、凝ったDSLを覚える事自体が辛い。特定のDSLの理解は再利用性が低いのが良くない。覚えても、そのライブラリ・フレームワークを使えるようになるだけという応用の効かなさが悲しい。逆
Concurrency and parallelism are hard. With the traditional threading model, a developer has to constantly ensure threads are not in conflict, which is a very difficult task. The team behind Go implemented fantastic concurrency primitives within the language that make reasoning about concurrent code far easier. Fortunately, all that goodness is no longer locked up inside Go; there’s now a library f
前回インストールした Sentry に Ruby からイベントを登録してみます。 Ruby から Sentry を使うには、プロジェクトの設定画面の Ruby のところにも書いてあるように sentry-raven という gem を使います。 getsentry/raven-ruby https://github.com/getsentry/raven-ruby インストール gem から入れる場合は以下。 # gem install sentry-raven --no-rdoc --no-ri bundler から入れる場合は Gemfile を作成。 # bundle init # vi Gemfile 以下を追記します。 gem "sentry-raven" bundle install します。 # bundle install Ruby から使う 以下のような Ruby コード
前回から一年以上が経過しているけど、最近lambda_driver.gemに機能を追加したので、そのことについて書こうと思う。 Rubyで、モナ……っぽい関数合成を実装した話だ。 Rubyで関数合成とかしたいので lambda_driver.gem というのを作った - ( ꒪⌓꒪) ゆるよろ日記 関数合成 関数合成については以前に書いたので、こちらを見て欲しい。 「関数型Ruby」という病(2) - 関数合成 Proc#compose - ( ꒪⌓꒪) ゆるよろ日記 おさらいをしておくと、関数合成とは、 関数gと関数fから、g(f(x))という関数hを新たに作り出すことだ。 (g ∘ f)(x) = g(f(x)) 関数gと関数fの合成関数g ∘ fに引数xを渡した結果は、関数gにf(x)の結果を渡したものと等しい。つまり、このような操作である。 f = lambda{|x| x + 1
JMeterはとても強力なツールなんですが、UIがいまいち(ですよね?)なのとテストケースがXMLなので、あまり積極的に使っていませんでした。 しかし、どうしてもJMeterを使わざるを得ないケースが出てきて*1、GUIツールとXMLを避ける方法をいろいろと探していたところ、ruby-jmeterがというライブラリが見つかりました。 ruby-jmeter https://github.com/flood-io/ruby-jmeter Tired of using the JMeter GUI or looking at hairy XML files? はい、疲れました…というひとのためにRubyのDSLでjmxを出力 or JMeterを実行してくれます。 require 'ruby-jmeter' test do thread_group count: 3, duration: 60
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く