タグ

ブックマーク / frasco.io (4)

  • なぜ git rebase をやめるべきか - Frasco

    Git での開発を数年間経験した後、徐々に日々の仕事の一部として、より高度な Git コマンドを使うようになりました。私は Git rebase を見つけてすぐにそれを毎日の仕事に使いました。リベースに精通している人は、どれだけ強力で魅力的なツールであるのか知っているでしょう。しかし、リベースには、初めてリベースを触ったときにはわからなかったのですが、いくつかの課題があることに気が付きました。これを説明する前に、マージとリベースの違いをおさらいしておきましょう。 最初に、feature ブランチを master にマージする例を考えてみましょう。マージすることにより、新しいマージコミット g を作成します。下のコミットグラフではマージした際に何が起こるのかを説明しています。また、開発が盛んなリポジトリでよく見かける「線路」のようなグラフになっているのが見て取れるでしょう。 マージの例 ある

    なぜ git rebase をやめるべきか - Frasco
  • Web サービスにパスワードは必要ない - Frasco

    Web サイトを開発する際のアーキテクチャ設計において、ユーザーの認証にはメールとパスワードを利用するのが一般的でしょう。この設計は身に染み付いていて、なぜユーザーにパスワードを作成させるのか、考えもしないかもしれません。私たちは慣れてしまったのです。 しかし、ユーザーはパスワードを必要としない可能性があります。 一つの解決策は OAuth 2.0 ですが、すべてのユーザーがSNSのアカウントを持っているわけでもなく、あなたのサイトでそのアカウントを使用したいと考えているとも限りません。 では、あなたはどのようにしてパスワードを使わずユーザーを認証しますか?その回答はこの記事を読めばわかります。 何が問題か? 最も安全なパスワードは、あなたが覚えられないパスワードです Troy Hunt そもそもパスワードそれ自体に問題があります。あなたや、あなたのユーザーにとっても良いものではありません

    Web サービスにパスワードは必要ない - Frasco
    roirrawedoc
    roirrawedoc 2017/11/03
    g.o.a.t がこれだった
  • Git 爆弾 - Frasco

    もしあなたが冒険好きな人なら(そして起こるかもしれない再起動に対処できる人なら)、この小さなリポジトリをクローンしてください: $ git clone https://github.com/Katee/git-bomb.git クローンできましたか?あなたのマシンが相当なメモリ(RAM とストレージ合わせて)を積んでいない限り、git が殺されたか、メモリ不足になったか、再起動しなければならなかったと思います。なぜでしょう?これは、たった12個のオブジェクトで構成されたリポジトリです。 どのようにして、この小さなリポジトリがメモリ不足を起こすのでしょうか?その秘密は、git が行う blobs(ファイルを保存しておくもの)の de-duplication(重複排除)です。これは、リポジトリを小さく、そしてコミット間でファイルが変更されていない場合に同じ blob を使うようにするためのもの

    Git 爆弾 - Frasco
    roirrawedoc
    roirrawedoc 2017/10/26
    へー
  • なぜ私達は Python から Go に移行したのか - Frasco

    新しい言語に移行するのは常に大きな決断です。その言語をよく知る人がチームメンバーに1人しかいない時などは特にそうです。今年の初め、我々は Stream の主要言語を Python から Go に切り替えました。この記事では、なぜ私達が Python から Go に移行しようと決断したのか、その理由を説明します。 Go を使う理由 理由1 - パフォーマンス Go は速いです! Go は極端に速い。そのパフォーマンスは Java もしくは C++ に匹敵します。私達のユースケースでは、GoPython より30倍速いです。GoJava を比較したベンチマークはこちらです。 理由2 - 言語パフォーマンスの問題 多くのアプリケーションにとって、プログラミング言語は、単にアプリとデータベースを繋ぐものにすぎません。言語そのもののパフォーマンスは通常あまり重要ではありません。 しかしな

    なぜ私達は Python から Go に移行したのか - Frasco
  • 1