DB設計したいNight #6 正規化 [online] https://dbnight.connpass.com/event/177859/
WindowsにRuby on RailsとMySQLを入れ環境を作り、その上で簡単なブックマークアプリケーションを作るまでを記録したムービー。編集ナシでホントに10分以内でアプリケーションを構築してます。 詳しくは、2005年11月18日発売の技術評論社 SoftwareDesign 2005年12月号で解説予定ですしました。 Rails+MySQLインストール編 アプリケーション編 追加情報 Web Developer Study @Sapporo - 2005/11/19 Rails + Selenium - OSC2006 Do 2006/07/15 更新情報 2006/07/15: OSC2006 Doで使った資料 Rails + Seleniumを公開 2005/11/19: Web Developer Study @Sapporoで使った資料を公開しています。 2005/1
ちなみに、最初に結論だけ言っておくと、まずSandi Metzの「オブジェクト指向設計実践ガイド」を読め、という話です それだけで終わってしまいたい気持ちはあるが、不親切過ぎるしもうちょっとRails向けの話を書こうと思う。 ただ言いたいことは、よく分かってないのに使うのは止めろということ。 自分も本で書いたりした手前、それが参考にされた結果なのかもしれないが、世の中には本当に酷いクラスが存在するもので、雑にサンプルで書くと以下の様な感じのコードが存在したりする。 class HogehogeService # Hogehogeはモデル名まんま def process(hogehoge, option_a: nil, option_b: nil, option_c: false) history = hogehoge.histories.last unless hogehoge.activ
shibaraku gem をリリースしました これは何? ActiveRecord で期間を持つ model を扱う gem です。期間限定公開や、予約公開したいときなんかに使います。 作ったのは 1 年前なんですが、ずっと社内 gem として使用していたものを rubygems.org / github.com に上げました。 https://rubygems.org/gems/shibaraku https://github.com/onk/shibaraku USAGE 基本的な使い方 start_at, end_at のあるモデルを用意します。 create_table :campaigns do |t| t.datetime :start_at t.datetime :end_at end shibaraku と 1 行書くと class Campaign < ActiveRe
ずいぶん前のことだが、Webアプリケーション開発フレームワーク「Ruby on Rails」が00年代後半にブームを巻き起こしたとき、強い主張を持つソフトウェアとしてRailsは多くの議論を呼び起こした。その中でも最大のものはプログラマの生産性に関するもの。当時、すでにいくつも存在していたJavaベースのWebアプリケーション開発フレームワークに比べて、Ruby on Railsは10倍の生産性を達成できるという主張だ。 Rubyの生産性はJavaの10倍――。この主張が多くのエンジニアの琴線、もしくは逆鱗に触れた。「さすがに10倍は大げさだ」、「いや、現実に設定ファイルやコードを書く行数が劇的に減るのだから、そのぐらい当然だ」と意見が分かれたのだ。 2005年のリリースから約10年。Railsの生みの親で、今もプロジェクトをリードするデイビッド・ハイネマイヤー・ハンソン氏は当時を振り返り
はじめに このコラムは、 2014年12月5日から始まった「Rails4技術者認定シルバー試験」の推奨教材となった「Ruby on Railsガイド」に沿って、Ruby初心者の筆者がリアルタイムで勉強をしていくコラムです。全12回を予定しています。勉強する上でつまずいた点やその回避法、他のプログラミング言語や職業経験に基づいたアドバイスなども紹介する予定です。RubyやRailsに興味のある方は、ぜひ一緒に勉強してみませんか。 今回参照するガイドはこちらです。 はじめにRailsをはじめよう それでは早速チュートリアルを開始しましょう。 クラウド上に開発環境を構築 何はともあれ、まずは開発環境を揃えないといけませんよね。今回のチュートリアルで一番時間がかかったのが、実はここです(笑)。ガイドには必要なものがさらっと書いてあるだけですが、具体的な手順を把握するために、何度も何度もGoogle
かなり見落としてる。core_ext ら辺からいくつか。 Range#overlaps? 範囲が重なっているか。 (001): >> (1..3).overlaps?(0..1) => true (002): >> (1..3).overlaps?(1..3) => true (003): >> (1..3).overlaps?(3..4) => true (004): >> (1..3).overlaps?(4..5) => false String#exclude?, Enumerable#exclude? include? の逆。 (001): >> [1, 2, 3].exclude?(4) => true (002): >> [1, 2, 3].exclude?(3) => false String#squish, String#squish! ホワイトスペースを圧縮するやつ。
追記:続編です → Ruby on Rails アップグレード 4.1 → 4.2【Ruby on Rails Advent Calendar 2015】 これは Ruby on Rails Advent Calendar 2014 の12日目の記事です。 昨日は takeyuweb さんの Active Job meets Amazon SQS でした。 こんにちは。komiyak です。 これは、Ruby on Rails Advent Calendar の参加記事です。 12月といえば Advent Calendar! 残り少ない 2014 年。 年越しに向けてラストスパートをかけて、 大晦日は、ガキ使でも見ながら、ゆっくり天ぷら蕎麦をすすりたいものですね。 さて、皆様がこの時期にやってしまいたいことといえば、 積もりに積もった1年の汚れを落とす、大掃除ではないでしょうか。 実はわた
Ruby Advent Calendar 11日目 Ruby - Rails開発で有用な便利Gem一覧:2013年版 - Qiita ↑去年のAdventCalendarで書いた上記の記事の2014年版です。 だんだん毎年恒例的になって来ました。 最近はデファクトスタンダードがほぼ固まってきて、かなり毎回使うGemのリストが固定化して来ました。 ※2014/12/11時点 DBアダプタ sqlite3 pg mysql2 この辺りはもう変わらないですね。 RubyやRailsのバージョンが上がっても継続的に開発が続けられているのは素晴らしいと思います。 ログイン認証 omniauth omniauth-twitter omniauth-facebook omniauth-github omniauth-identity (omniauth-githubのリポジトリのURLが変わってました。
11月4日に入社しましたエンジニアの越川です。 本日は、私がコードを書く際に気をつけていることを書こうと思ったのですが、どう書くかに迷った末、ブログ記事駆動ハッカソンを行うことでそのプロセスで考えいたことなどを記事にすることにしました。 私はコードを書く際におもてなしの心が大事だと思っています。おもてなしの心は最終的なアウトプットに触れるユーザーはもちろんのこと、チームメンバー、未来の自身へ向けた思いやりです。 今回題材とするのは、KPTツールです。KPTは、日々の活動を振り返り「Keep」すべきこと「Problem」であること「Try」したいことを上げて、活動を振り返るために使われます。 先日行われた「オレたちが目指す”最強のエンジニアドリブン”」を終えた後に振り返りでKPT使ったので、それをWebアプリにしてみます。 今回のコードはすべて、ppworks/furikaeri/tree/
タイトル長い。すまぬ。PHPerとして約10年近く。Ruby自体は案件によってちょこっとだけ触ったことがある程度。Rails自体を本格的にさわるのは今回が初めて。PHPだとCakePHPを中心にZend/Symfonyなどいくつか。そんな僕が今回、Rails4デビューをして、WebAPIを作り、RSpecでテスト駆動開発風味で、GitHubプルリクベースの、CircleCI経由デプロイをするまでの開発の流れをひと通りやってみて、分かったことがいくつかあったので、それをまとめてみた。過去の自分のために。 注意点としては、今回作ったのはWebサービスではなく、スマホゲーム(ネイティブ)のサーバサイドWebAPIという点。なので、いわゆるViewに関わる部分はあんまり出てこないです。すまぬ。 それと、ひと通りの流れをチュートリアル的に解説するような記事ではなく、躓いたポイントだったり、当時分かり
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 誰も読んでいないブログからの転載 最近MVCがどうとかという内容が話題になっていますが、ちょっと乗っかった内容です。 Railsで初心者によく見られる良くないコードは、コントローラーでたくさんの処理を実装してコントローラーの一つのアクションが30行、40行になってしまうことです。それに対して、モデルに適切に処理を移すのが良いんだということを言うんですが、”適切に”って何?じゃー、コントローラーには何を書くのがいいの?っていう質問への僕なりの回答です。 良いメソッドとは? 直接回答する前に、まずは前提の共有から、プログラムにおいて良いメソ
Rails 4.0からActiveRecordにstrict_modeが導入され、デフォルトでは接続時にsql_mode = STRICT_ALL_TABLESをセットするようになりました。 これは、既に運用されているDBに接続する等なんらかの理由でMySQL側で適切な設定が行えていない場合有用な動作ですが、そうでない場合、サーバー側の設定を鑑みずにクライアント側が設定を上書きするべきではないでしょう。 そのため、database.ymlでstrict: falseと設定することでこの動作を無効にすることができましたが、Rails 4.2.0ではこの動作が変更され、strict: falseのときはstrictでない状態にするためsql_mode = ''をセットするようになりました。 MySQLのデフォルトのsql_modeに依存して既に通っていたはずのテストが通らなかったりすることがあ
railstutorialはRuby on RailsとデファクトスタンダードなGemを使ってTwitter風アプリケーションを作るということを題材に、実際の仕事の開発でも行うGitHub Flowや振る舞い駆動開発をしながら、Webアプリケーション開発を学ぶチュートリアル。 Ruby on Rails チュートリアル:実例を使って Rails を学ぼう 長かったー。一週間以上かかった。本文中にも書いてあったが、飛ばし読みできない。とても濃厚なチュートリアルなので、1日1章ペース。休みの日に8,9,10章を一気にやったら大変過ぎて10章はあまり頭に入ってこなかった。中ボスと呼ばれている演習は全て飛ばした。 勉強になった点や疑問点、ハマった点をメモしながらやってみた。 メモ http://yuheikagaya.hatenablog.jp/entry/2014/10/15/005554 ht
2014-10-09 Railsでよく使う便利なGemまとめ Ruby Ruby On Rails Railsでよく使う便利なGem 一つ一つは細かく説明しませんが、よく使ってる便利系Gemをつらつらと awesome_print consoleの出力を綺麗にしてくれる デバック時にいい感じ! awesome_print無し awesome_print有り paranoia 論理削除の手助けをしてくれる uniqバリデーションで、論理削除されたものを対象に含めたくないならこれも入れとくといい paranoia_uniqueness_validator rails_config 定数を管理するGem 環境ごとに読み込む定数を変更できるので便利 使い方とかはこちらにまとまってます Ruby - Railsで定数を環境ごとに管理するrails_config - Qiita Ruby - R
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
これからRailsサービスを公開したい方に向けて、個人が使うのに最適なコストパフォーマンスに優れたクラウド/PaaS/VPSを紹介していきます。 変更来歴(06/13 13:05) PaasにOpenShift Onlineを追加。 🗽 クラウドクラウドサーバは、アクセスが増加する夜だけサーバの能力を増強させて深夜〜朝は最低限のスペックにするといった使い方が容易にできるサーバです。反面、セットアップは自分で行う必要があり、上手に使うにはそれなりのノウハウが必要。現時点では、AWS(Amazon Web Services)が圧倒的No1なサービスです。 サービスの紹介AWS(Amazon Web Services) マイクロインスタンス(メモリ613MB, 月750時間まで)は1年間無料 東京リージョンなら通信での遅延はほとんどなし スケールアップが容易、各種サービス(Amazon RDB
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く