Rails transactions are a way to ensure that a set of database operations will only occur if all of them succeed. Otherwise they will rollback to the previous state of data. Our examples will demonstrate it in the most useful scenario for transactions: money transfers. In this case you only want Ted to receive money if John loses the same money. Basic usagedef transfer_money ActiveRecord::Base.tran
いつもSkebをご利用いただき、誠にありがとうございます。 12月23日12時よりskeb.jpにアクセスできない大規模な障害が発生しておりましたが、12月24日07時に復旧いたしました。 12月23日、および12月24日が納品期限のリクエストは納品期限を12月25日23時59分までに延長させていただきます。 みなさまには多大なご迷惑をお掛けしましたことをお詫び申し上げます。 本障害につきまして詳細をご報告させていただきます。 概要日時: 12月23日12時22分〜12月24日7時00分 (JST) ダウンタイム: 18時間38分 内容: skeb.jpにアクセスできない不具合 原因: SkebはすべてのサーバとシステムをHerokuに設置していたが、障害発生時刻より同サービスのアカウントが理由の通知なく利用できなくなった。 解決: Herokuの一切の利用を中止し、すべてのサーバとシステ
さんにずっとお世話になりっぱなしでkawasaki.rbのレポートブログをほぼ3年寄稿していただいていて、主催者の自分が何も書かないのはまずいなと思ったからです😅 言語によらないRubyコミュニティkawasaki.rbはかれこれ4年半ほど続いている、Rubyistが集まる技術コミュニティです。初回から「Pythonのハッシュの方がRubyより速かったんで置き換えました」とかいう話をRubyコミッタがいる前でするなど、Rubyに縁がある人が集まって技術的なことを話すという事を続けて来ました。 今でこそ、RubyKaigiでGoやRustの話が出てくるのは自然ですし、ソフトウェアエンジニアが単一の言語だけで仕事をするのではなく、多くの言語を使い分けるというのも当たり前になってきたと思います。 そうした中で、kawasaki.pyと言われたりすることもありますが、2014 年の 第9回にはP
ソフトウェア開発の世界では「名前重要」とよく言われます。Rubyの開発者であるまつもとゆきひろさんの言葉として有名であり、るびまのインタビューや書籍『プログラマが知るべき97のこと』(オライリー・ジャパン)に収録されたエッセイでも言及されています。 個人的には適切な名前をつけることができた機能については、その設計の8割が完成したと考えても言い過ぎでないことが多いように思います。 (まつもとゆきひろ - プログラマが知るべき97のこと/名前重要) 「東京工業大学エンジニアリングデザインプロジェクト」は「タンジブルなものづくり」をテーマに掲げていますので、ソフトウェア開発だけを行なうことはないのですが、この「名前重要」はソフトウェア以外のものづくりの分野でも重要な概念だと私は考えています。したがって、最初の企画段階から、いろんなチームに「プロダクトにはとにかくイイ名前をつけろ!!」と言い続けて
こんにちは、法人開発のnakamoriです。本エントリでは健康診断データを安全に扱うために、それらに暗号化を施しどう運用していったかを紹介しています。 ただし、暗号化のアルゴリズムやモードに関しては本エントリでは扱いません。 暗号化の背景以前にも紹介しましたが、「FiNC INSIGHT」では様々なヘルスケア関連のデータを扱っています。その中には暗号化して保持しておいた方が良いものも存在します。 その中でも特に健康診断データは個人情報やヘルスケア情報を扱っています。 これらのデータをより安全に運用していくために、健康診断データを論理レベルで暗号化することにしました。 attr_encryptedによる暗号化の紹介特定のカラムを暗号化するには、attr_encryptedというgemを使うと便利です。 ここではUserモデルのemailフィールドを暗号化する場合を例にします。 attr_en
パーフェクトRuby読書会今回は「10–2–3 クラスの継承構造を調べる」からでした。 Moule#ancestorsであるクラスの継承構造や Module#included_modulesを使用してインクルードしているモジュール、Module#nestingを使用したクラスのネスト構造の取得など、さまざまなクラスの構造を取得するメタプログラミングの手法を学びました。 今回のiruby notebookはこちらです。 https://github.com/kawasakirb/meetups/blob/master/pruby/kawasakirb087.ipynb 次回は「10–2–6 クラスやモジュールからインスタンスメソッドを削除する」からです。 セッションGoogle Colaboratory上でVS Code(code-server)を動かす from Aki Ariga
Spring is here, at least where I’m sitting. And that means a new version of Ruby on Rails is on its way! As I write this, we’re getting our first look at Rails 6. Are you ready to upgrade? If you’re like a lot of Rails shops, you may be a version or two, or three, behind. Upgrades are hard work, especially for large codebases that have been around for awhile. There are plenty of reasons to adopt n
みなさん、進捗どうでしょう?最高ですか?そんなことないよね!なぜならあなた達は呪われている。事前の計画よりも、常に、3倍の期間が必要になる。常にだ!!この呪いは強力であり、解放されるのは難しい。我々はどうすればよいだろうか? パーキンソンの呪いある資源に対する需要は、その資源が入手可能な量まで膨張する パーキンソンの法則 — Wikipedia ある仕事の作業量を見積もったとしよう。機能Aの追加に2週間程度必要そうだ、とする。順調にいけば、再来週には動き出し、価値が出せそうだ。ペースを作り、粛々と仕事を進めていこう。 ところが、現実的にはそんなに上手くはいかない。新しく導入するライブラリがうまく動かないとか、くだらないtypoに悩まされて半日失ったとか、既存コードの改修箇所が想像してたより多かったとか、何らかの別の仕事をやらなければいけなかったり、もしくは休暇が必要だったりとか。当初計画よ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く