タグ

ブックマーク / qiita.com (369)

  • Pryコンソールのプロンプトをカラフルかつ便利にする - Qiita

    .pryrc Rubyistの皆さんはもうすでにPryを使っていると思います。が、Pryの真の力は~/.pryrcをカスタムすることで発揮されます。ファイルがない人は作りましょう(5秒)。 ~/.pryrcの内容は、Pryのセッションが開始されるたびに実行されます。たくさんのことができますが、今回はプロンプトを改良することに絞ります。 Pry.config.prompt Pryのプロンプトの実体はPry.config.promptで、文字列または文字列を返すProcオブジェクトを指定できます。プロンプトを動的に変更したい場合はProcを使うのがいいでしょう。 ところで、Pryを使っていると、たまに今のRubyのバージョンがいくつか忘れてしまうことがありますね?まあ、puts RUBY_VERSIONすればいいんですけど、どうせならプロンプトに表示しましょう。pryrcに以下を記述してくださ

    Pryコンソールのプロンプトをカラフルかつ便利にする - Qiita
    nsyee
    nsyee 2014/12/12
  • Railsが時代に合わなくなってきた

    追記 RailsでJS辛い問題に関しての結論:http://qiita.com/kaiinui@github/items/dad6180f1910c6a4bfd5 -- 近年、(1) Web/App両対応が増えてきたこと、(2) WebでもJSを多用するようになったこと、の二つがあり、以下の点でRailsが微妙になっている。 ViewのJavascriptRailsから独立している API層のサポートが微妙 最初に書いておきますが、特に決定的な解決策もなく、辛いから今後解消されてほしいよね、な話です。 ViewのJavascriptRailsから独立している Railsはとても堅牢。 モデル、コントローラ、ルーティングと、変にいじらない限りはほとんどテストが要らない。 必要なのは、モデルに新たにpublicメソッドを付けたときくらいだろう。 実際、バックエンドはそうそうバグが出ない。

    Railsが時代に合わなくなってきた
  • Slack を日米全社員で使っている話 - Qiita

    こんにちは。SmartNews の町野です。 このエントリは Slack Advent Calendar 2014 の8日目になります。 はじめに SmartNews では、今年の11月から、チャットツールを HipChat から Slack に移行しました。HipChat の時は基エンジニアしか使っていなかったのですが、今回の移行のタイミングで、エンジニアだけでなく、ビジネスやコーポレートの人間まで使うようになりました。更には、米国のサンフランシスコやニューヨークにいるメンバーも含めて、日米全社員が、同じチームとして Slack を使っています。 (ちなみに、メモ共有ツールとして、Qiita:Team も全社員で使っています。お世話になっております) (先日、SmartNews の Qiita Organization も開設させてもらいました。お世話になっております) HipChat

    Slack を日米全社員で使っている話 - Qiita
  • SendGrid+Node.js(nodemailer)+UTF-8でメールを送信する - Qiita

    クラウドメールサービスSendGridを使ってNode.js(nodemailer)からメールを送ってみます。 SendGridを使ってメールを送る方法はいくつかあります。詳しくは公式ブログを参照してください。 SMTP Web API マーケティングメール機能 今回はSMTPとX-SMTPAPIを組み合わせて宛先毎に内容の異なるメールを送ってみます。 SMTPはWeb APIに比べて細かいメール送信パラメータを指定できるのがメリットですが、それが面倒な場合、デメリットにもなります。今回はUTF-8でメールを送ります。 X-SMTPAPI 名前がSMTPっぽくて紛らわしいですが、X-SMTPAPIはSendGrid独自の拡張ヘッダです。これを利用するとメール送信時にSendGridの様々な機能を使うことができます。今回は、To、Substitution、Sectionを利用してメールの件名

    SendGrid+Node.js(nodemailer)+UTF-8でメールを送信する - Qiita
  • SendGrid+Ruby+UTF-8でメールを送信する - Qiita

    クラウドメールサービスSendGridを使ってRubyからメールを送ってみます。 SendGridを使ってメールを送る方法はいくつかあります。詳しくは公式ブログを参照してください。 SMTP Web API マーケティングメール機能 今回はSMTPとX-SMTPAPIを組み合わせて宛先毎に内容の異なるメールを送ってみます。 SMTPはWeb APIに比べて細かいメール送信パラメータを指定できるのがメリットですが、それが面倒な場合、デメリットにもなります。今回はUTF-8でメールを送ります。JISで送るバージョンはこちら。 X-SMTPAPI 名前がSMTPっぽくて紛らわしいですが、X-SMTPAPIはSendGrid独自の拡張ヘッダです。これを利用するとメール送信時にSendGridの様々な機能を使うことができます。今回は、To、Substitution、Sectionを利用してメールの件

    SendGrid+Ruby+UTF-8でメールを送信する - Qiita
  • EC-CUBE から SendGrid を利用する - Qiita

    EC-CUBE から SendGrid を利用する EC-CUBE からメールを送信する際、通常は EC-CUBE をホスティングしているサーバーを利用します。 しかし、メールの到達・開封確認ができなかったり、大量のメール送信に向いていなかったりします。 クラウドメールサービスである SendGrid を利用すれば、これらの問題を解決することが可能です。 SendGrid の機能をフルに利用するためには、少しだけ手を加えてあげる必要があります。 アカウントの開設 日公式サイト から申込可能です。 SMTP の設定 3.0 以降のバージョン SendGrid プラグイン が利用できます。 2.12.x 以降のバージョン data/config/config.php を以下のように設定します。 define('MAIL_BACKEND', 'smtp'); define('SMTP_HOST

    EC-CUBE から SendGrid を利用する - Qiita
  • これを読むとRSpecの裏側がどうやって動いているのか分かるかもしれないぜ - Qiita

    これはTokyuRuby会議08にて発表した資料を元にQiita向けに再編集したものです。 元々Advent Calendarと共用にしようと思って、どう考えても5分で話せない資料でLTしたのでした。 最初に RubyのテスティングフレームワークとしてはトップクラスにメジャーなRSpecですが、内側の実装が黒魔術感に溢れていて非常に読み辛い。 そしてカスタマイズするにも学習コストが高いという話を聞きます。 最近「RSpec止めますか、人間(Rubyist)止めますか」みたいな風潮が出ていてバリバリのRSpec派の私としては見過ごせない感じになってきたので、いっちょRSpecがどんな感じで動いてるのかを大まかに解説していくことで、世の中に対して再びRSpecを啓蒙していこうと思うわけです。 この話はrspec-core-3.1.7辺りをベースにしています。 起動 rspecのコマンドエンドポ

    これを読むとRSpecの裏側がどうやって動いているのか分かるかもしれないぜ - Qiita
  • Ruby でラインメモリプロファイラ - Qiita

    プロファイラ好きなモニタの前の皆さんこんにちは。@sonots です。この記事では、Ruby コードのどの行がどのぐらいメモリを消費しているか調べる方法を紹介します。 オブジェクトの数を数える Ruby には ObjectSpace というオブジェクトの情報を集めたり操作したりする module があります。 このモジュールの each_object メソッドを使用すると、RubyVM 上の全てのオブジェクトを取り出すことができます。 このメソッドを使って、以下のようなコードを書くと、実行した地点で、RubyVM 中にどのクラスのオブジェクトが何個存在しているのかカウントできたりするわけです。興味深いですね! ObjectSpace.each_object.inject(Hash.new 0) {|h,o| h[o.class]+=1; h } #=> {Class=>241, Strin

    Ruby でラインメモリプロファイラ - Qiita
  • RubyとRailsにおけるTime, Date, DateTime, TimeWithZoneの違い - Qiita

    RubyRailsにおけるTime, Date, DateTime, TimeWithZoneの違いRubyRails 2021.2.11追記:DateTimeクラスは非推奨なクラスになりました DateTimeクラスは非推奨なクラスとなり、DateTimeクラスではなくTimeクラスを使うよう、公式にアナウンスされました。 参考1 But we consider use of DateTime should be discouraged. - matz (Yukihiro Matsumoto) https://bugs.ruby-lang.org/issues/15712#note-4 参考2 DateTime は deprecated とされているため、 Timeを使うことを推奨します。 https://docs.ruby-lang.org/ja/latest/class/DateT

    RubyとRailsにおけるTime, Date, DateTime, TimeWithZoneの違い - Qiita
  • [公開版]社内バッチ処理ガイドライン - Qiita

    このガイドラインについて こちらのガイドラインは社内のバッチ処理スクリプト開発にあたっての、安定運用等に関わるガイドラインを公開用に書きなおしたものになります。 バッチサーバ規則 基礎項目 以下の要項を満たすことを確認する その他の用途で動作しているサーバ上での動作は行っていないこと 運用期間中に想定しうるデータ量にてOOMキラーに殺されないこと 想定の時間で終了すること データの読み込みは極力Read Replicaを見ていること データの書き込みによる番サーバへの影響が見積もれていること 冪等性が担保されており、何度実行しても処理上の不具合は発生しないこと 多重実行時に不整合が発生しないこと エラー時の社内への通知が用意されていること エラー時の通知には再処理のための手順が揃っていること、もしくはそのドキュメントの場所が示されていること 個人ユーザー下にログや成果物を絶対に書き込んで

    [公開版]社内バッチ処理ガイドライン - Qiita
  • 「東京メトロオープンデータ活用コンテスト」②APIの仕様設計を理解し、ドキュメント化する - Qiita

    成果物:apiary.ioによる、APIドキュメント とりあえず見て貰えるとイメージつかみやすいです↑ あらすじ 100万円欲しいのでAPIを利用したアプリ開発を学ぶ絶好の機会なので、東京メトロオープンデータ活用コンテストに挑戦しようとしている。 前回、とりあえずざっと触ってみてAPIのイメージは掴んだ 今回は、公式ドキュメントと実際のレスポンスを咀嚼して、仕様設計を汎用ドキュメント化しつつ理解していくことを目的とする せっかくドキュメント化するからには、汎用性と実用性が高いフォーマットとしたい(オレオレにはしたくない) 成果物 API Blueprintで記述されたテキストをApiary.ioでホスティングし、以下を作った TokyoMetroOpendataAPI · Apiary github上のソース(markdownプレビュー版) やってみてわかった、ApiaryによるAPIドキ

    「東京メトロオープンデータ活用コンテスト」②APIの仕様設計を理解し、ドキュメント化する - Qiita
  • REST APIのドキュメントに書かれているもの - Qiita

    もし急にAPIドキュメントを書く必要が発生したら、何を参考にしたら良いのか。REST APIを提供しているサービスがどういった開発者向けドキュメントを提供しているのかについて調べた。今回対象としたサービスは、GitHubTwitter、Square、DigitalOceanの4つのサービス。 https://developer.github.com/v3/ https://dev.twitter.com/docs https://developers.digitalocean.com/ https://connect.squareup.com/docs/api なお以下の文章の中では、個々のアクセス可能なメソッドとURLの組み合わせを指して「API」という言葉を使うことがある。例えば、GET /gists/:id という特定の投稿を取得するAPIや GET /gists/:gist_id

    REST APIのドキュメントに書かれているもの - Qiita
  • APIドキュメントを書くのが楽になるツールまとめ - Qiita

    さいきんREST APIのドキュメントを書いていて、wiki使うのだるいし他に良い方法ないかな〜と調べてた時に見つけたツール群をまとめてみます。 追記: こちらも便利そうなので参考にどうぞ。 REST APIドキュメント作成ツールはapiary.ioが決定版かもしれない - Qiita swagger Swagger: A simple, open standard for describing REST APIs with JSON | Reverb for Developers デモ: Swagger UI ソースコード中にAPIの概要を書いておくと、それを元にドキュメントを自動生成してくれる。wikiやmarkdownで書くのと決定的な違いは、↓のようにドキュメント上のformからAPIコールを試すことができる点。 様々な言語のWAFに対応したライブラリも開発されてる。 Home ·

    APIドキュメントを書くのが楽になるツールまとめ - Qiita
  • iodocsで便利なREST APIドキュメントを作成する - Qiita

    wikiとかでドキュメントを書くのが面倒で、良いツールを探していたらiodocsというnode製ツールを見つけた。 これを使うとドキュメント作成が楽になるだけじゃなく、 ドキュメント上のformからAPIリクエストを試せて便利っぽい。 普段APIドキュメントを見つつcurlとかでリクエスト送信して試してたのが、全てドキュメント上で完結して良さげ。 使い方 mashery/iodocsからcloneしてアプリを起動すると、FoursquareやLinkedin APIを叩くサンプルをすぐに試せる。redisが必要なのでserver起動を忘れずに。 ~/ $ git clone http://github.com/mashery/iodocs.git ~/iodocs $ npm install ~/iodocs $ redis-server & ~/iodocs $ npm start {

    iodocsで便利なREST APIドキュメントを作成する - Qiita
  • REST APIドキュメント作成ツールはapiary.ioが決定版かもしれない - Qiita

    背景 APIドキュメントを書くのが楽になるツールまとめ - Qiita iodocsで便利なREST APIドキュメントを作成する - Qiita これまでずっとREST APIドキュメントをwiki上で管理していて、重たいページ上で特殊記法使ったり、スタイルの調整に時間を取られるのが辛かった。そこで良さげなドキュメントツールを色々調べてたんだけど、最終的にapiary.ioが一番良さそうという結論になってきた。 このサービスの主な特徴。 markdown記法でAPIドキュメントを記述できる ドキュメントの生成と同時にAPIのモックサーバを用意してくれる サインアップから5分くらいあればドキュメント公開できる。ドキュメントのホスト先を気にしなくてもいい。 特にドキュメントと一緒にモックを作ってくれるのは他にはないポイントでかなり便利。 使ってみる サインアップはGithubアカウントで h

    REST APIドキュメント作成ツールはapiary.ioが決定版かもしれない - Qiita
    nsyee
    nsyee 2014/12/07
  • 複数の計算機をひとつのものとして扱う - Qiita

    日は趣向を変えて複数の計算機を透過的にひとつのものとして使う話です。以前にデータ分析用の計算機環境を用意する話をしましたが、その続きというか補足です。 手元の計算機で開発する問題点 人によっては手元のノート PC の性能にこだわり、ローカルで開発をしたりする人がいるようですが、この場合いくつかの問題があります。 いくら性能の高い計算機を買おうとも、その性能には上限がある 長時間かかるジョブを実行した場合、終了するまでノートを閉じて持ち運んだりできない 複数の拠点で開発する場合、重いノートを持ち歩かなければならない 手元の計算機に障害が発生するとすぐに開発の継続が困難になる ソリューション これに対し、遠隔に設置したものも含む複数の計算機によるクラスタで開発をする場合、さまざまなメリットがあります。 スケールアウトすることができる 長時間かかるジョブを実行し、そのまま接続を切り離せる 複数

    複数の計算機をひとつのものとして扱う - Qiita
    nsyee
    nsyee 2014/12/07
  • Rubyに型を付けるHaskellというgemを作ったヨ!

    2020/12/27追記 https://www.ruby-lang.org/ja/news/2020/12/25/ruby-3-0-0-released/ => Ruby3.0.0にRBSとTypeProfと用いた静的解析に対するソリューションが提供されました。 今後はこちらのエコシステムをガンガン盛り上げていきましょう💪 あいさつ P.S. 12/11 HaskellからRubypeにgemを変更しました こんにちは. 寒さが一段と厳しくなってきた事もありまして心を温めるGemを作りました. Rubyの振る舞いを汚染する事無く型保証の恩恵をゆるふわ受けられるgemです (型をつけるとか型保証という言葉をこの文脈ではメソッドの引数返り値のクラスを実行時にチェックするという意味で使っている.) 得体の知れないGemで抵抗感があるかもしれませんが、コード自体は50行以下の薄いGemなので気

    Rubyに型を付けるHaskellというgemを作ったヨ!
  • zshのコマンドラインからカジュアルにMySQLにクエリを投げるの術 - Qiita

    なんだかんだ、初めてQiitaつかいます。 MySQLをつかった開発をしているとき、ぼくはよくこんな感じのコマンドを打ちます。

    zshのコマンドラインからカジュアルにMySQLにクエリを投げるの術 - Qiita
  • Atomへの誘い - Qiita

    はじめに いよいよ始まりました、Atom Advent Calendar 2014でございます。 思ったより登録数が少なくてちょっと悲しいのですが、それはみんなまだAtomの魅力が分かってないからだ! と気を取り直し、初日はAtomの魅力を紹介したいと思います。 魅力その1: デフォルトで機能的でカッコイイ 機能性と見た目、エディタを選ぶ上で重要なファクターですね。 Atomは後発ということもあり、既存エディタの良い所を標準機能として搭載しています。 注: スクショはPackage(Atomの拡張の呼称)無しの状態で撮っています。 ショートカットはMacのものです。 クールな見た目 初期状態でこんな感じです。 Packageを入れたりすればこんな感じもなります(後述)。 Command Palette Cmd+Shift+p VimのUniteとかEmacsのAnythingのようなコマン

    Atomへの誘い - Qiita
    nsyee
    nsyee 2014/12/05
  • C言語的にJavaScriptを使う - Qiita

    プログラミング言語は世の中にたくさんありますし、用途や好みによって自由に使えることが多いのですが、一部どうしても置き換えができない言語というものがあります。ブラウザやFlashマクロやPhotoshopマクロのJavaScript、Action Script、GPUのシェーダ言語、Visual Basic for Application、SQLなどなどです。それでもaltJSやORMなど、直接書かないという選択肢もあったりもしますが、どうしても直接書くほうが実行効率が良かったりチューニングが効いたりします。 JavaScriptを使ったコーディングを何年かやっていると、C言語で書かれたアルゴリズムをJavaScriptに移植しないといけない事態に遭遇する機会も増えてくると思いますので、それについて説明します。 整数型としてデータを扱う JavaScriptの言語仕様ではJavaScript

    C言語的にJavaScriptを使う - Qiita