タグ

railsに関するwadackelのブックマーク (15)

  • Railsの基本理念 : Railsの生みの親が掲げる8つの原則 | POSTD

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

    Railsの基本理念 : Railsの生みの親が掲げる8つの原則 | POSTD
  • 新米エンジニアが月300万PVのサイトを作った時に役立ったGem20選(+SEOの小技) - Qiita

    はじめに 皆様こんにちは。@naotaka1128と申します。 データサイエンティスト(?)としてWEB広告のアトリビューション分析などを担当してます。 リブセンスでは今までSEO担当/WEBマーケター/WEBディレクターもしてました。 え?なにやってる奴かよくわかんない? 僕も正直わかんないです。 そんな僕ですが、個人の趣味Ruby on Rails 勉強してサイト作ってます。 個人サイトのアクセス伸ばすのが最近の密かなマイブーム(死語)です。 ますます意味わかんないですね。 プロエンジニアの皆様の足元にも及ばない新米素人エンジニア(?)なので、 サイト制作は全面的にライブラリに頼りっぱなしです。 初めてサイト制作した時は「サイト制作に必要な Gem まとめ」とかなくて ググりまくりながら作ったものです。凄く時間が掛かったのを今でも覚えてます。 (その分、新しい発見をするたびに嬉しか

    新米エンジニアが月300万PVのサイトを作った時に役立ったGem20選(+SEOの小技) - Qiita
  • フロントエンド開発における革命とビルドプロセスについて - Qiita

    こんにちは、freeeフロントエンドエンジニアをしている @joe_re です。 freee Engineers Advent Calendar 2015の4日目を書きます。 僕からはfreeeで現在進行中の革命について、フロントエンドのビルドプロセスを中心に書こうと思います。 革命 ってなんのこと? というのはフロントエンドヤンキーこと @ymrl が 2日目で書いたので詳しくはそちらをご参照頂ければ幸いです。 背景 弊社ではRuby on Railsを主軸にしてWebサービスを作っています。 Railsは素晴らしいフレームワークですが、めまぐるしく変化する昨今のフロントエンドについては、このままRailsの用意しているRailに乗ったままでは時代に取り残されてしまう危機感があります。 僕たちは時代に取り残されている場合じゃない。 最先端でかつ適切な技術を用いて未来を切り開いていかなく

    フロントエンド開発における革命とビルドプロセスについて - Qiita
  • RailsのAsset PipelineとPrecompileをNode.jsのみで処理できるgulp-sprocketsを作った - yo_waka's blog

    RailsのAsset PipelineとPrecompileをNode.jsのみで処理できるgulp-sprocketsを作った 仕事ではRailsアプリを書いていて、JSやCSSなどのフロントエンドRailsのAsset Pipelineの仕組みに則ってビルドしてる。 普通にRailsアプリ作ってると普段Sprocketsについて特に意識しないと思う。 Sprocketsはそこが凄くて、あまり考えなくてもドキュメント通りにやってれば、必要なAssetを結合できて、リリース時は変更がなければブラウザキャッシュから、変更があれば 新しく読み込まれるみたいなことをやってくれる。 なんだけど、もうそろそろ新しい機能はES2015で書きたいよねという人が増えてきた。 とはいえSprocketsは独自のディレクティブ以外は使えなくて、SprocketsWayから外れると途端に脆い。 ES2015

  • 教えることで得られたもの - ゆるりブログ

    11月20、21日とRails Girls Kyoto 4thという、プログラミングに触れたことのない女性向けのワークショップにスタッフ側で参加しました。わたしはコーチとして、ふだん見ているウェブサイトがどのようにできているかを、実際にwebアプリケーションを作りながら教えました。 もともと口頭ベースで人に何かを伝えるのってものすごく苦手だったんだけど、なぜだかうまくいったような、そんな実感が湧いています。苦手ながらも、気をつけたのが、「サーバー」とか「ライブラリ」みたいな専門用語は一切使わないこと。何かを説明するときは、その人が知っている言語で話す、ということ。例えばhomebrewの説明で、「パッケージ管理システム」って言っても伝わらないと思うから、使わない。自分が初めてやった時を思い出してみて、よくわからなかった部分は、とくにていねいにする。(ちなみに、我ながら気にいっている説明は「

    教えることで得られたもの - ゆるりブログ
  • RailsでReact.jsをサーバーレンダリングする - Rails Webook

    react-railsというReact.jsをRailsに簡単に統合できるgemを使い、React.jsをサーバーレンダリングする方法を説明します。 サーバーレンダリングすることで、初期値をHTMLの初期レンダー時に渡せるようになるので、ロード中による画面のばたつきや、ロード中といった表示をなくせます。 RailsReactを使ってメッセージボックスアプリを作成 - Rails Webookをベースに説明しています。 また、この記事のソースコードは https://github.com/nipe0324/rails_samples/tree/master/react_server_rendering_test です。 目次 RailsReactコンポーネントをレンダーする Reactコンポーネントをサーバーレンダリングする コントローラーでReactコンポーネントをレンダーする 動作確

    RailsでReact.jsをサーバーレンダリングする - Rails Webook
  • RailsでReactを使ってメッセージボックスアプリを作成 - Rails Webook

    react-railsというReact.jsをRailsに簡単に統合できるgemを使い、React.jsについて説明します。 次のような画面をReact.jsで実装し、Reactとサーバ(Rails)間でメッセージ一覧の取得や作成をできるようにします。 ソースコードはこちらです。 https://github.com/nipe0324/rails_samples/tree/master/react_test 目次 react-railsのインストール Reactのコンポーネントの表示 メッセージボックスの概要 メッセージボックスのリストを作成 メッセージフォームを作成 サーバーサイド(Rails)との連携 動作確認 Ruby 2.2.0 Rails 4.2.3 react-rails 1.4.2 react 0.14.2 0. React.jsとはReact.jsはMVCフレームワークでい

    RailsでReactを使ってメッセージボックスアプリを作成 - Rails Webook
  • Ruby on Railsを仕事にしていくための第一歩 - 酒と泪とRubyとRailsと

    最近仕事Railsコードレビューをする時間が長くって、いろいろ指摘するんですが、 Railsって「Railsチュートリアル」には書いていないのに覚えないと仕事にならないこと多すぎだなと気付かされます。 どこでどんなふうにすれば、プロになろうとしている人が最短距離で知識を獲得できるかはわからないですが、 今思っている特に大事だなと思うことつらつらと書いていきます。 😀 プログラミングの重要な要素まず、Railsの前にプログラミングで全般的に特に重要と思っている要素を紹介します。 - リーダブルなコード - ネーミングルールについて - 言語・フレームワークのルール - 変数のスコープについて - プロジェクトの設計思想 - オブジェクト指向・コードの再利用性 - 正しいテストケースを作る プロジェクトによって変わるので、すべては書きませんが、ぜひ意識してどこを学ぶべきかを考えてみてくだ

    Ruby on Railsを仕事にしていくための第一歩 - 酒と泪とRubyとRailsと
  • Rails / Deviceでないユーザー登録・ログインを実装する

    Railsでサインアップやログインを実装する時どうしてますか? だいたいどのアプリ書くときも必要になってくるので、結構つまらない作業だったりする。 個人的には自分でつくるのが好みですが、plataformatec/devise 使ってる人が圧倒的に多い印象。 Deviceていろんな機能がある、けど、結構使わない。 のでもっとシンプルなGemを試してみました。 NoamB/sorcery 今回は、下記の機能を実装します。 サインアップ ログイン( + ログインを記憶する) パスワードリセット ログインに失敗しすぎたらアカウントロック だいたいこんなもんなんだよね。欲しいのは。 あとはSNS認証とかかな。 インストール

    Rails / Deviceでないユーザー登録・ログインを実装する
  • rails newしたときの開発を効率化するためにまず行いたい6つの設定まとめ - Rails Webook

    よくRailsプロジェクトを作るので、Railsプロジェクトを作った後に最初にやっておきたい設定をまとめました。 主に、開発を効率化させるためにやることをまとめてますので、ざざっと眺めて取り入れそうな知識があったら開発効率を上げれるかもしれません。 また、nanapiさんの次の記事もとても参考になります。Rails Templateでプロジェクト作成を楽にしよう 動作確認 mac os X 10 rails 4.2.0 目次 1. Railsプロジェクトの作成 2. Gitプロジェクトを登録 3. 開発を効率化させるGemをがっつり導入 3.1. gemのインストール 3.2. jquery-turbolinksの設定 3.3. 開発を効率化する関連gemの設定 3.4. 保守性を上げる 3.5. 表示整形関連(ログなど見やすくなる) 3.6. テスト関連 4. 言語設定 5. タイムゾ

    rails newしたときの開発を効率化するためにまず行いたい6つの設定まとめ - Rails Webook
  • Railsアプリケーションにおけるエラー処理(例外処理)の考え方 - Qiita

    はじめに Railsアプリケーションを格的に作り込んでいくと、「エラー」とは無縁ではいられません。 しょうもないバグでエラーが発生することもありますし、ほとんど不可抗力ともいえるような大規模なネットワーク障害でエラーが発生することもあります。 エラーの種類がなんであれ、エラーが起きた場合は「原因を素早く特定し、速やかに復旧させること」と「あるエラーが引き金になって、さらに大きなエラーに引き起こさないようにすること」が重要です。 エラー処理を適切に実装していれば、原因の特定や復旧もすばやくできますし、さらに大きなエラーを引き起こす可能性も少ないです。 また、ソースコードも比較的シンプルに保てます。 逆にエラー処理が不適切だと原因の特定に時間がかかったり、異常なデータがどんどん増えてさらに大きなエラーを引き起こしたりします。 ソースコードにも無駄に複雑な処理フローや条件分岐がたくさん出てきて

    Railsアプリケーションにおけるエラー処理(例外処理)の考え方 - Qiita
  • Railsで入力の確認画面を出すときの定石 - Qiita

    よくあるお問い合わせフォームみたいので、ユーザーの入力を一度確認画面みたいな感じで表示してから送信したい時・・ ユーザーが問い合わせの入力 「確認」ボタンをクリック 入力した項目を一度確認画面に表示(入力とほとんど一緒) 「送信」ボタンをクリック 実際にモデルとして保存 という流れをRailsで実装する時の定石 Model Question validates :title, presence: true validates :name, presence: true validates :content, presence: true validates_acceptance_of :confirming after_validation :check_confirming def check_confirming errors.delete(:confirming) self.conf

    Railsで入力の確認画面を出すときの定石 - Qiita
  • Rails + React + ES6 のためのアセット環境構築 - 破いて捨てたノート

    結論 Sprocketsの動作を維持しつつ、npmgulpなどのモダンなパワーも取り入れた、いいとこどりな環境を構築してみた。 やりたいこと SEOのため、Reactでserver-side renderingをしたい JSコードをES6で記述したい 既存のCoffeeScriptのコードも共存させたい(後ほど書き換える予定) npmgulpといったモダンな環境でアセット管理をしたい browserifyを使いたい Sprocketsが実現している機能は維持したい そもそもSprocketsは何をしているか 周知のことでしょうが念のためおさらい。 ファイル毎の依存関係の管理 application.jsなどのマニュフェストファイルがやってること altJSのコンパイル アセットのminify アセットの連結 アセットファイル名にMD5フィンガープリントを挿入 Sprocketsの問題点

    Rails + React + ES6 のためのアセット環境構築 - 破いて捨てたノート
  • 既存のRailsアプリケーションにVue.jsを採用した話 - スパイスな人生

    こんにちは、id:ukstudioです。今回は弊社サービスの1つであるSPOTLIGHTSにVue.jsを採用した話をしようと思います。 SPOTLIGHTS自体は一般的なRailsアプリケーションといって問題ない作りになっているので、既存のRailsアプリケーションにどういった形でVue.jsを投入していったかを中心に書いていきます。 Vue.js採用前の状況 SPOTLIGHTS初期のJavaScriptHTML/CSSと共に外注し納品してもらったものです。 フレームワークといった類はほぼ使っておらずjQueryに頼りきったコードでした。 当時は様々な事情によりこれはこれで妥当な判断だったと思うですが、今後社内でメンテナンスしていくうえで足かせになるであろうというのはなんとなく予想ができていました。jQueryのイベントハンドラやDOM操作がひとつのファイルにひたすら連なっているとい

    既存のRailsアプリケーションにVue.jsを採用した話 - スパイスな人生
  • tumblrみたいなやつのRoutingパターン

    tumblrみたいなやつのRoutingパターンtumblrみたいなやつ (そろそろ適当な名前を決めたくなってきた) をRuby on Railsを利用して実装するにあたって、主にRoutingの周りで考えたことについてまとめておく。他の人がWebアプリ書くときの参考になれば。 機能 tumblrみたいなやつには以下のような機能がある。 ログイン・ログアウト・サインアップ 記事の一覧・詳細・投稿・編集・削除 あるタグの付いた記事一覧 あるユーザの投稿した記事一覧 記事にスターを付ける・外す 記事にタグを付ける・外す 通知一覧 画像投稿 config/routes.rb Routingのコードはコピペするとこうなってる。 Rails.application.routes.draw do root to: "posts#index" get "/@:user_id" => "users#sho

  • 1