2016年3月1日のブックマーク (13件)

  • 大手Webサービスがクライアント側で発生したJavaScriptのエラーをどう収集しているのか まとめ - Qiita

    Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

    大手Webサービスがクライアント側で発生したJavaScriptのエラーをどう収集しているのか まとめ - Qiita
    Dai_Kamijo
    Dai_Kamijo 2016/03/01
    大手Webサービスがクライアント側で発生したJavaScriptのエラーをどう収集しているのか まとめ by @grapswiz on @Qiita — 上條 大 (@Dai_Kamijo) March 1, 2016 from Twitter https://twitter.com/Dai_Kamijo March 01, 2016 at 10:29PM via IFTTT
  • Facebook, Twitter, Instagram等がどうやってIDを生成しているのか まとめ - Qiita

    まえがき データにIDを持たせたいとき、単純な方法としては、DBの提供するauto incrementを使う場合やUUIDを利用することがある。それぞれの方法の利点欠点は以下の通り。 データベースのauto incrementを使う場合 利点: 特別な実装が必要ない 欠点: DBを1台で運用するとデータベースがパフォーマンス・障害のボトルネックになる DBを二台にするとIDのユニークさや順序の保証が困難 UUID(v4)※1を利用する場合 利点: 分散環境で各々がIDを生成しても衝突しない IDを公開したくない場合に、推測されにくいIDを生成できる 欠点: 128ビット必要、DBのインデクシングやプログラミング言語で扱うときに不利なことがある IDから時間の情報が失われる、例えば2つのIDを比べてどちらが古い投稿か判断できない 世界の大企業がどうしてるか 調べてみると多くの企業がブログなど

    Facebook, Twitter, Instagram等がどうやってIDを生成しているのか まとめ - Qiita
    Dai_Kamijo
    Dai_Kamijo 2016/03/01
    Facebook, Twitter, Instagram等がどうやってIDを生成しているのか まとめ by @daisy1754 on @Qiita — 上條 大 (@Dai_Kamijo) March 1, 2016 from Twitter https://twitter.com/Dai_Kamijo March 01, 2016 at 10:31PM via IFTTT
  • Goのバイナリサイズを削減する — そこはかとなく書くよん。 ドキュメント

    あれ、 "-s"では変わってないですね…darwin環境ではでないのかななld周りのなにかだと思うのでそれはあとで追うとして、元々が26MBだったのが、5.2MBまで減りました。 圧縮に upx -9 を使った場合、かかった時間は15.70秒でそこそこ時間がかかりますね。3回ほど実行してだいたい同じぐらいでした。伸長時は0.10秒ほどでした。もちろんメモリなどにも依存しますので、この結果は鵜呑みには出来ませんが、あくまで目安として。 さらにいうと、 upx -1 で圧縮した場合は 0.78秒しかかかりません。それでいて、6.4MBと充分な圧縮効率となりました。この辺りはターゲットとする環境に合わせて決めればいいと思いますが、 -1 で十分な気もします。 まとめ¶ Goのバイナリが大きい問題は、ldflagsとUPXを使うことである程度解決できるのではないか、という話でした。 UPX知らなか

    Dai_Kamijo
    Dai_Kamijo 2016/03/01
    すごい / “Goのバイナリサイズを削減する — そこはかとなく書くよん。” — Hiraku (@Hiraku) March 1, 2016 from Twitter https://twitter.com/Dai_Kamijo March 01, 2016 at 05:42PM via IFTTT
  • https://www.computerhope.com/jargon/a/arpanet.jpg

    Dai_Kamijo
    Dai_Kamijo 2016/03/01
    ARPANET 1977 — Akihito Koriyama (@koriym) February 29, 2016 from Twitter https://twitter.com/Dai_Kamijo March 01, 2016 at 12:45PM via IFTTT
  • Webアプリケーションエンジニアにこそ薦めたい「ITインフラ監視[実践]入門」 | おそらくはそれさえも平凡な日々

    ソフトウェアエンジニアのための ITインフラ監視[実践]入門 技術評論社様よりご恵贈頂きました。著者のkoemuさん、ありがとうございます。 この当に監視入門にふさわしく、以下のように網羅的かつ、そして何より陳腐化しない、普遍的な監視に対する心構えや考え方に対して非常によくまとまっていました。 レイヤリングと状況分析、システムの把握 監視システムをどのように設計、構築し育てていくか 監視の人員体制と業務設計 実際の障害の際の心構えと対応方法 自動化を見据えた話 監視に対する心構えや、「監視システムをどのように運用していくか、閾値をどのように決めていくか」、そして、なかなか無い観点として「監視体制の業務設計」といった話が印象深かったです。 モデルケースとして、Linuxサーバー上のApache、MySQL、Tomcatの監視などが取り上げられており、実際に Mackerel!!!を使っ

    Dai_Kamijo
    Dai_Kamijo 2016/03/01
    Webアプリケーションエンジニアにこそ薦めたい「ITインフラ監視[実践]入門」 | おそらくはそれさえも平凡な日々 — Takuya Arita (@ariarijp) February 29, 2016 from Twitter https://twitter.com/Dai_Kamijo March 01, 2016 at 12:48PM via IFTTT
  • 暗号化は鍵管理まで仕様に盛り込め

    暗号化すれば終わりじゃない 暗号鍵の管理も仕様に入れよ 間違った暗号実装はむしろ危険 「暗号」は、ITを安全に利用する上で必要不可欠の技術です。例えば、PCやスマートデバイスのWebブラウザーからインターネットバンクやオンラインショップを利用する際は、アクセスプロトコルにHTTPではなくHTTPS(SSL/TLSプロトコル)が使われるのが一般的になっています。HTTPSは暗号技術を用いて、通信内容を盗聴や改ざんから保護すると同時に、アクセス先Webサイトの認証を行います。 最近では、GoogleやFacebook、Twitterといった大手のB2Cサービスでも、常にHTTPSが利用されます。皆さんにとって、暗号技術は身近なものになっているといえるでしょう。しかし、暗号技術をきっちり理解して使いこなすのは、結構難しいことなのです。 重要なデータをデータベースやファイルシステムに保管する場合、

    Dai_Kamijo
    Dai_Kamijo 2016/03/01
    ほんとこれ>『それゆえ、暗号化することだけではなく、暗号化や復号に使う鍵をどこに保管し、どうやって管理するかまで、きちんと仕様に盛り込む必要があります』 / “1分で理解するプロの知恵[セキュリティ編] -
  • Ray.Di/03-injection-point.php at 2.x · ray-di/Ray.Di · GitHub

    Dai_Kamijo
    Dai_Kamijo 2016/03/01
    依存先のクラスに応じて依存を決定するInjectionPoint と組み合わせることができます。 — Akihito Koriyama (@koriym) February 29, 2016 from Twitter https://twitter.com/Dai_Kamijo March 01, 2016 at 09:43AM via IFTTT
  • RESTful#とは勉強会13 を開催しました #RESTudy - tkawaのはてぶろ。

    一昨年からだいたい月1回ぐらいのペースで、Webの基的な仕組みを基礎から学ぶ「RESTful#とは勉強会」を開催しています。主催はshokolaさんで、私は進行役を担当しています。 2月23日に開催したRESTful#とは勉強会13では、ヴァル研究所さんの協力のもと、駅すぱあとWebサービスをレビューするという企画をやりました。いろんな意見が出てとてもおもしろかったです。みなさんありがとうございました。 RESTful#とは勉強会13 当日の内容とポイント RESTful#とは勉強会13 ツイートまとめ ゲストとして来ていただいた@Keisuke69さんがブログ記事を書いておられたので、これは私も書かなければ、ということで感じたことを書いていきます。 keisuke69.hatenablog.jp 駅すぱあとWebサービスについて、当日思っていて言い忘れたこと トークンをURLのクエリパ

    RESTful#とは勉強会13 を開催しました #RESTudy - tkawaのはてぶろ。
    Dai_Kamijo
    Dai_Kamijo 2016/03/01
    Web APIについて最近思っていること、という感じでブログ書きました / “RESTful#とは勉強会13 を開催しました #RESTudy - tkawaのはてぶろ。” — Toru KAWAMURA (@tkawa) February 29, 2016 from Twitter https://twitter.com/Dai_Kamijo March 01, 2016 at 09:41AM vi
  • Ray.Di/07-assisted-injection.php at 2.x · ray-di/Ray.Di · GitHub

    Dai_Kamijo
    Dai_Kamijo 2016/03/01
    実行メソッドに直接DIする@Assisted インジェクション cc/ @kawanamiyuu — Akihito Koriyama (@koriym) February 29, 2016 from Twitter https://twitter.com/Dai_Kamijo March 01, 2016 at 09:43AM via IFTTT
  • Is a microservices architecture with RESTful APIs an implementation of Alan Kay's concept of object-oriented programming?

    Dai_Kamijo
    Dai_Kamijo 2016/03/01
    Is a microservices architecture with RESTful APIs an implementation of Alan Kay's concept of OOP ? — BEAR.Sunday (@BEARSunday) February 29, 2016 from Twitter https://twitter.com/Dai_Kamijo March 01, 2016 at 09:39AM via IFTTT
  • 生成・使用分離の原則 - Strategic Choice

    生成・使用分離の原則*1オブジェクトは、他のオブジェクトの生成か、使用のいずれかのみを行い、双方を行ってはならない。どういうこと?設計の簡素化のため、オブジェクトの利用、オブジェクトの生成・管理を混ぜて考えてはならない。どうして?この規則に従えば、作業分担が明確化され、結合度が低下する。オブジェクトの使用は概念レベルを取り扱う。オブジェクトの生成は具象レベルを取り扱う。これらレベルの違うものを混ぜて設計すべきではない。これらを分けて考えることで、それぞれに集中できる。特に概念レベルの洗い出しの時、つまりオブジェクトの責任を考えている時、「生成方法や管理方法を後から考えればいい」と思っていられることは、設計を非常にやりやすくする。それに、概念レベルのオブジェクトが出そろってからじゃないと、生成のビジネスルールはわからない。この原則の世界「使用するオブジェクト」(クライアント)は実際に使用する

    Dai_Kamijo
    Dai_Kamijo 2016/03/01
    “オブジェクトは、他のオブジェクトの生成か、使用のいずれかのみを行い、双方を行ってはならない。” — BEAR.Sunday (@BEARSunday) February 29, 2016 from Twitter https://twitter.com/Dai_Kamijo March 01, 2016 at 09:36AM via IFTTT
  • Dependency Injection is EVIL

    Other questions about DI Dependency Injection breaks Encapsulation Comments on Disco with Design Patterns: A Fresh Look at Dependency Injection Criticisms by so-called "experts" A simplified definition Conclusion References Amendment History Comments Introduction Way back in 2004 I made the following observation: There are two ways in which an idea, principle or rule can be implemented - indiscrim

    Dai_Kamijo
    Dai_Kamijo 2016/03/01
    @naka_aki_spl 分野というとは違うかも知れませんが典型的な批判はYAGNIに反するとかでしょうか / When is Dependency Injection a bad idea? — BEAR.Sunday (@BEARSunday) February 29, 2016 from Twitter https://twitter.com/Dai_Kamijo March 01, 2016 at 09:37AM via IFTTT
  • アジャイル設計と5つの原則 - かまずにまるのみ。

    アジャイルソフトウェア開発の奥義 第2部「アジャイル設計」の自分用まとめ。 アジャイル設計 アジャイルな設計 「原則」「パターン」「プラクティス」を継続的に適用することで、読みやすく変更に強い状態を保つことができる設計。 悪い設計 第2部の中で「貧弱な設計の兆候」「腐敗するソフトウェアの兆候」として、以下の7つが挙げられている。 硬さ (設計変更が難しい) 脆さ (設計が壊れやすい) 移植性のなさ (再利用が難しい) 扱いにくさ(正しい設計をするのが困難なソフトウェア、面倒な開発環境) 不必要な複雑さ("後で必要になるかもしれない"と考えて先行実装したコード) 不必要な繰り返し (コピペ) 不透明さ (目的や意図がわかりにくい) 原則 システムに悪い設計の兆候が見られるとき、その原因がオブジェクト指向設計の原則に反していることだったりする。 ただし無条件で原則に従うと「不必要な複雑さ」を招

    アジャイル設計と5つの原則 - かまずにまるのみ。
    Dai_Kamijo
    Dai_Kamijo 2016/03/01
    アジャイル設計と5つの原則 — BEAR.Sunday (@BEARSunday) February 29, 2016 from Twitter https://twitter.com/Dai_Kamijo March 01, 2016 at 09:37AM via IFTTT