政府の新たな成長戦略の中で小学校の「プログラミング教育」を必修化し2020年度に開始することが発表され多くの議論を生んでいる。本特集では、さまざまな有識者にその要点を聞いていく。今回は、プログラミングの考え方を身に付けられる絵本『ルビィのぼうけん』に関するワークショップイベントの模様をお伝えする。(2016年8月10日)
思いのほか前回のRailsプチ・デザインパターンの紹介に反応があったので、こういう小ネタも出していったほうがいいのかな、ということで第二弾。 ソーシャル系アプリだと、ユーザとユーザを関連付ける多対多のモデルがたくさんでてきます。たとえば、一般的なところではフォローとかブロックとか足あととか。さらにデーティングサイトになると、ウィンクだったり、Secret admirer(こっそりlikeするけど両思いだったらおめでとうって通知がくるってやつ)だったり、いろいろなモデルがこのパターンにあてはまります。 この場合、「AがBをフォローしている」「BがAをフォローしている」「AとBがお互いにフォローしている」という3つの状態があるわけですが、相互フォローの状態は「AがBをフォローし、かつBがAをフォローしている」と読み替えてSQLでも記述可能なので、以下ではシンプルに単方向のグラフで全てを扱うもの
ちょっと前にTwitterでAPIのバージョニングをどうやるかみたいな話をしていたのですが、そのへんもやもやしているので少し整理しておきたいなと。 APIのURLを/api/v1/*とかってやるの、やめたほうがいいとおもうんだけどなぁ。いざv2を作るとなったときに、大量のコピペが発生して後悔するよ、って伝えたい。— Kenn Ejima (@kenn) February 28, 2014 さて、これについて色々と異論・反論も含めた意見が出たのですが、まずは、大昔にURL方式(=コントローラ分割)でやってきて後悔したぼくが、(5年ぐらい前から)現在はどうやってAPIのバージョンを管理しているか?について紹介します。 基本原理としては、コピペが多発する根っこで分岐(=コントローラ分割)じゃなくて、必要最小限のところで限局的に分岐するのがいい、という考え方に基づきます。 一言でいうと、「パラメー
[Video] http://www.youtube.com/watch?v=s1dhXamEAKQ TildのYehuda KatzのGolden Gate Ruby Conference 2013での講演。 Ruby on RailsのクリエーターであるDavid Heinemeier Hanssonが、「JavaScript勢はダブルMVCで苦しんでいる。サーバとクライアント両方にMVCが必要で複雑すぎる。」とTwitterで発言したのに対して、Yehudaは、それでは誤解を与えると危惧し、GUIプログラミングが歴史的にどのようにMVCに発展してきたかを紹介することで、ダブルMVCが本当に意味するところを解説しています。 DHHの発言は、盛り上がってきたMeteor / Node.js勢に対する単なる批判っぽいですが、それに対してYehudaはロジカルに話をまとめてます。 スライドを
はてなブックマークの関連エントリ機能でお馴染みの Preferred Infrastructure さんが、オープンソースで Jubatus というレコメンデーションエンジン(ひとりひとりの好みを学習して、その人にあったアイテムを提示するためのソフトウェア)を公開しています。(もっと詳しい話はこのへんを見るといいかもしれません。) このエンジンと Ruby On Rails を利用して、閲覧者の好みにあったおすすめアニメを推薦するサイトを作ってみました。 推薦に使うための評価データがまだ少ないため、推薦結果はもうひとつかもしれませんが、多くの人がおすすめ診断を試せば、データが蓄積されておすすめの精度が上がっていくので、興味のある方は是非試していただければと思います。 Jubatus とは もともとこのエンジンは、レコメンデーションを行うための計算を、多くのコンピュータで分散処理しつつ結果を
Ruby on Rails チュートリアル 実例を使って Rails を学ぼう プロダクト開発の0→1が学べる Webサービスを創りながら学んでいく大型チュートリアルです。解説動画や質問対応も提供していて、筑波大学や琉球大学などでも採用されています。Railsチュートリアルで自分のオリジナルサービスを創ってみませんか? 原著者から,日本の読者の皆様へ Ruby on Rails Tutorial が、まつもとゆきひろ (Matz) 氏の母語である日本語でも読めるようになったことを嬉しく思います。ここ数年間で Matz や日本の Ruby 開発者の方々とお会いしましたが、彼らの技術的な才覚と親切さはいつも私に感銘を与えてくれます。 また、安川 要平氏や八田 昌三氏を始めとする多くの協力者の方々が Rails Tutorial を翻訳してくれたことを光栄に思います。彼らの素晴らしい成果に感謝し
初めまして。GMOメディア技術推進室の中村です。私はこの度弊社技術ブログでRubyやRails、Herokuについて書いていこうと思います。現在業務でRailsやHerokuを使う機会があり、個人的にもRuby/Rails/Herokuを使っておりましたので、色々とナレッジを紹介していこうと思っていますので、よろしくお願いいたします。 今回は初回ということもあるので、既にご存知の内容かもしれませんが、RailsアプリをHerokuで動かすまでの流れを説明したいと思います。 今回はRails3.1から3.2、herokuはcedarスタックを使用するとします。作業としては全部で9つあります。 1.Herokuアカウントの登録まず最初にこちらにアクセスしてアカウント登録をしておきます。 2.gitが使えることを確認。Herokuへはgitを使ってアプリケーションをアップしますので、gitは設定
Railsの各種サーバーの速度ベンチマーク: Pound、Varnish、Nginx、Unicorn、Mongrel RailsのアプリをPound、Varnish、Nginx、Unicorn、Mongrelを使用して動かした際の速度ベンチマーク。以下の構成での同一Railsアプリをhttperfでベンチマークした結果をまとめます。 Pound -> Varnish -> Nginx -> Unicorn * 2 Varnish -> Nginx -> Unicorn * 2 Nginx -> Unicorn * 2 Mongrel (Rails.env == 'development') node.js (Express + Socket.IO) 全体の構成Poundを80番ポートを公開し、Varnishを81番ポート、nginxを8080番ポート、Unicornの2プロセスをsocke
209: Deviseの導入 (view original Railscast) Other translations: Other formats: Written by Naomi Fujimoto 今までのエピソードでいくつかの認証の手法について解説してきましたが、今回もひとつ紹介します。今回紹介するのはdeviseという名前で、最近特に人気が出てきています。Deviseは、Rackベースの認証ツールであるWardenの上で、それを隠した状態で動作します。今回のエピソードを理解するためには、直接deviseを操作するので、Wardenに関する知識は必要ありません。 Deviseはフルスタックを使って認証を扱います。エピソード160 [動画を見る, 読む]で紹介したAuthlogicを触ったことがあれば、それがモデル層だけでなりたっていることをご存知でしょう。一方deviseはRa
Rails のユーザー認証システム「Devise」の使い方に関するまとめ。 特に目新しいことを書くわけでもなく、 完全に他人のまわしで相撲をとるわけだが、ひらにご容赦願いたい。 「基本」 [plataformatec/devise - GitHub] ... Devise の公式サイト [Welcome to the Devise Wiki! - GitHub] ... Devise の公式サイト - wiki - 「便利なサイト」 [LazyLoadLife] ... Devise の README ファイル翻訳 日本語で最も詳細 [ASCIIcasts - Episode 209] ... Devise 特集1 [ASCIIcasts - Episode 210] ... Devise 特集2 ASCIIcasts さんの Devise 特集が個人的にはとてもわかりやすくてよかった。
ITエンジニア向けの質問・回答コミュニティ「QA@IT」で、「RSpec のテストがたくさんついたオープンソースの Rails3 アプリはあるでしょうか」という質問に対して回答したところ、少しはてブが付いたりしたようです。Railsに限らないかもしれませんが、ちょっとしたサンプルコードや簡易なアプリというのはたくさんあるのですが、そこそこの規模のアプリ、あるいは実運用されているアプリで参考にできるソースコードとなると、意外にパッと思い付かなかったりします。「Railsアプリなら、これを読め」というべきアプリのリストがあればいいのにと、よく思ったりしています。 そんなわけで、いま読むべきだと私が勝手に考えてGitHubのウォッチリストに入れているRails3アプリを、10個ほどリストアップしてみたいと思います(全部で11個ですが)。ほかにオススメなどがあれば、ぜひコチラで情報をお寄せください
Heroku (ヘロク) とは,Ruby on RailsのWebアプリを簡単にデプロイできるPaaS。 基本的に無料。 拡張機能を使う場合は,段階的に有料になる。 レンタルサーバやVPSを借りず,面倒な「環境構築」作業も一切なく, いま流行りの"クラウド"上で,非常に簡単にWebアプリを本番公開できるわけだ。 Heroku上では,Railsに限らず,Ruby製のアプリを汎用的に公開できる。 本稿は,この「Heroku」の使い方の入門。 ローカルのWindowsマシン上で,Ruby製のブログアプリ「Lokka」を構築し, それをHeroku上にデプロイするまでの手順を解説する。 (※lokkaは,SinatraというRubyの軽量フレームワークで実装されている。) 作業は,全体で1時間もかからないだろう。 (1)Herokuの背景を知る (2)Herokuにユーザ登録 (3)Windows
d:id:nshibazaki:20110723 の続きです。 今日は、公式サイトのGetting Started の"Getting Your App on Heroku" のところをがんばります。 主に、使い方 サンプルアプリの作成 デプロイする前に、サンプルアプリの作成を行います。 ここでは簡単な、Message Board を作ります。 以下のコマンドを実行してください。 $ rails new myapp $ rails generate scaffold message name:string text:string それでは、本題であるデプロイ作業に移ります。 デプロイ手順 ここでは、以下のドキュメントを参照しています。 Getting Started with Heroku (Getting Your App on Heroku) Getting Started on He
タグクラウドを実装したいと思いRails 3 で利用できるプラグインを探していたところacts-as-taggable-onというのを見つけたので実装してみました。 そのメモを残しておきます。 最初にacts-as-taggable-onを使えるようにインストールとマイグレーションを実行します。 インストール: Gemfileに以下のように追加 gem 'acts-as-taggable-on' インストールを実行 bundle install マイグレーション: rails generate acts_as_taggable_on:migration rake db:migrate 今回はEntriesを作って、それにタグを付けられるようにします。 とりあえずscaffoldでジェネレートしておきます。 rails g scaffold entry name:string rake db
Rails3でタグ付けをしたくて、探してみたところacts-as-taggable-onって gemが良さそうだったので使ってみました。実装手順をメモっておきます。 mbleigh/acts-as-taggable-on · GitHub インストール Gemfile gem 'acts-as-taggable-on' タグ関連テーブルを作るマイグレーションを生成します。 $ rails g acts_as_taggable_on:migration タグ付けするモデル(Memo) $ rails g scaffold Memo title:string content:text $ rake db:migrate app/models/mome.rb class Memo < ActiveRecord::Base acts_as_taggable (以下、省略) end 動作確認 コンソ
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
■ GitHubのセキュリティホールがふさがったのでSSH Keyを確認しよう 先日、Railsアプリにありがちなセキュリティホールがあることが判明したGitHub。詳細は@sora_hによる「github の mass assignment 脆弱性が突かれた件」が非常によくまとまっているので参照のこと。脆弱性の内容そのものもだけど、開発者として脆弱性指摘をどのように受容、対応すべきかを考えさせられる事例だった。 で、これはようするに赤の他人が任意のリポジトリへのコミット権を取得できてしまうという事例だったのだけど、脆弱性の内容をみる限りその他のさまざまな入力もスルーされていた可能性がある。ということで、その対策が(おそらく)なされたのだろう、今朝になってGitHubから「SSH Keyの確認をせよ」というメールがいっせいにユーザに配信された。3日で修正とか、GitHubの中の人もずいぶん
へたれの備忘録日記 そのとき興味を持ったOSSを使って、各種インストール、サーバ構築、その他もろもろの備忘録を日記として残しています。 さて、Redmineをインストールしましょう。 構築環境は先日の備忘録どおり以下です Ruby:1.8.7 Rails:2.1.2 DB:MySQL 5 Sever:CentOS5.4 x86 Apache:2.2(Passengerを使用) #MySQLの設定ファイルを修正(文字コードをUTF-8) # vi /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Default to using old password format for compatibility with mysql 3.x # clients (thos
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く