den8のブックマーク (477)

  • 滑りの悪いトラックボールにボナンザのフッ素コーティング剤を塗る - けふまな

    2015/06/21PC 早朝のトラックボールは眠たげに転がる。マルチモニタ間を大きく横断させると、やれやれと言わんばかりの動きです。ボールが重たい。働きたくないんだ。それでも使っているうちに徐々に軽快な動作へと変わるのですが、翌朝になれば元通り。 そこで、フッ素樹脂コーティング剤をボールに塗布し、滑りの改善を試みました。 目次 購入したフッ素樹脂コーティング剤 効果 安全性 ボールをコーティングする コーティング後の操球感 購入したフッ素樹脂コーティング剤 購入したのは、ボナンザ ワンタッチ 50g という商品。オンラインのアウトドアショップで見つけました。このコーティング剤は、クーラーボックスやロッドなど釣具のメンテナンスに使われる他、冷蔵庫や浴槽などにも効果があるのだそうです。 効果 メーカーサイトにある説明によると、フッ素樹脂には次の効果が期待できるとのこと。 撥水効果 防汚効果

    滑りの悪いトラックボールにボナンザのフッ素コーティング剤を塗る - けふまな
    den8
    den8 2018/12/05
    こういう失敗したことも共有してくれるの助かる。
  • [速報]マイクロソフト、クラウドアプリケーションのパッケージ仕様「CNAB」発表。Docker、HashiCorpと協業。Microsoft Connect(); 2018

    [速報]マイクロソフト、クラウドアプリケーションのパッケージ仕様「CNAB」発表。Docker、HashiCorpと協業。Microsoft Connect(); 2018 マイクロソフトは開発者向けイベントMicrosoft Connect(); 2018を開催。基調講演で、複数のサービスなどから構成されるクラウドアプリケーションを1つにパッケージするための仕様「CNAB」(Cloud Native Application Bundle)を発表しました。 CNABにはマイクロソフトだけでなく、Docker、HashiCorp、bitnamiらが協力しています。

    [速報]マイクロソフト、クラウドアプリケーションのパッケージ仕様「CNAB」発表。Docker、HashiCorpと協業。Microsoft Connect(); 2018
    den8
    den8 2018/12/05
    この種の試みはもう何回目かわからないけど、勝算はあるのかなあ。
  • HTTP APIの詳細なエラー情報をレスポンスに持たせるための仕様

    今日では HTTP(s) で API が公開されることは当たり前の時代ですが、エラーをアプリケーションにどう伝えるかは、個々の API の設計に依存していました。特に、HTTP ステータスコードは有限であり、元々持っている意味があるので、自由に使うことはできません。API はそのドメインごとにもっと複雑で細かなエラー情報があるはずで、それらはレスポンスボディに載せてアプリケーションに伝えることになりますが、その書式に規定は今までありませんでした。 HTTP API にて、アプリケーションにエラー情報を伝達するための(レスポンスボディに載せられる)標準的な形式が、RFC7807 Problem Details for HTTP APIs で定められています。適用例としては、以下のようになります。 HTTP/1.1 403 Forbidden Content-Type: application

    den8
    den8 2018/12/04
  • Microservices と DDD - 魔女の一撃

    記事はドメイン駆動設計 Advent Calendar 2018 - Qiitaの4日目の記事です。 3日目は、bigwheelさんの「集約の境界と整合性の維持の仕方に悩んで2ヶ月ぐらい結論を出せていない話」でした。 5日目は、yoskhdiaさんの「エンティティの同一性を表現するためにequalsをオーバーライドすべきか否か」です。 Microservices の利点 技術異質性 回復性 スケーリング デプロイの容易性 組織面の一致 合成可能性 交換可能にするための最適化 Monoliths, Microliths での境界づけられたコンテキストの統合 Monoliths Monoliths なアプリケーションに複数の境界づけられたコンテキストを統合するケースでは、共有ライブラリや、モジュールによって 分散コンピューティングで遭遇する煩わしい問題の多くを回避できます。 Monolith

    Microservices と DDD - 魔女の一撃
    den8
    den8 2018/12/04
  • 集約の境界と整合性問題に関する感想 - Qiita

    集約の境界と整合性の維持の仕方に悩んで2ヶ月ぐらい結論を出せていない話 - kbigwheelのプログラミング・ソフトウェア技術系ブログ 個人的に、非常に面白い記事なので、私見を晒したいと思います。 「上の何が問題?」 のコード例について(細かい指摘) このコードは、ユーザーリポジトリを呼び出す時点で、ドメイン層ではなくアプリケーションサービスの責務に見えます(一般的にドメインオブジェクトは永続化責務を持たないためです)。あと、以下の理由もあり、createは使わない方がよいと思います。createは生成責務に見えるのでユーザファクトリではないでしょうか? あと、Repository#createは、リポジトリなのに生成責務あるの?と誤解しやすいので、Repository#putとか#storeとかのがよいと思いますよw — かとじゅん (@j5ik2o) 2018年11月30日 はい。

    集約の境界と整合性問題に関する感想 - Qiita
    den8
    den8 2018/12/03
    “このコードは、ユーザーリポジトリを呼び出す時点で、ドメイン層ではなくアプリケーションサービスの責務に見えます(一般的にドメインオブジェクトは永続化責務を持たないためです)。” これ目から鱗でした。
  • ServiceとDCIについて - かとじゅんの技術日誌

    面白そうなネタがあったので、自分なりの考えをまとめてみる。 Ruby/Rails 用 DI コンテナ Dee をつくった、あるいは Ruby のカルチャーについて この記事はRuby用のDIコンテナの話題なんですが、DCIについても言及されているようです。比較軸はDIそのものというより、サービスとDCIだと思うので、それについてダラダラといくつか考えをまとめてみます。多分返事になるようでならないかも。それと宗教上の都合でDDDの視点から書きます...。 サービスという言葉はあいまい まず、簡単に前提の整理から。単に"サービス"って言葉が何を指すのか結構曖昧です。 サービスは簡単にいうと手続きとか振る舞いのことですが、細かくいうと、PofEAAでいうサービスと、DDDいうサービスは、目的が異なります。前者はアプリケーションのためにドメインモデルを再利用可能にするためのものです。後者はドメイン

    ServiceとDCIについて - かとじゅんの技術日誌
    den8
    den8 2018/11/29
    いいね
  • sbtの密結合な内部アーキテクチャ - xuwei-k's blog

    sbtというと、独特なSettingのシステム*1や、Scalaで記述する内部DSL*2ばかりが注目されがちです。それらは、初心者にわかりづらかったりして批判されることが多かったり、逆にsbtを使い慣れた人にとってはとても強力で面白い仕組みです。 Settingのシステムに注目すると、汎用的に色々な言語のビルドにも使えそうに思えます。事実、sbtでC++のpluginを作っている人もいます。 しかし、sbtはあくまで「Scala(とJava)のためのビルドツール」です。 これは「単にScalaをデフォルトでサポートしてる」という意味にとどまらず、おそらく皆さんが思っているよりもずっと深い意味で「Scalaに特化したビルドの仕組み」が内部に備わっています。 今回は、そんな「sbtの内部アーキテクチャ」の紹介をします。 以下、かなり長いです。読み物としては面白いかもしれませんが、単にsbtを使

    sbtの密結合な内部アーキテクチャ - xuwei-k's blog
    den8
    den8 2018/11/23
    アーキテクチャが良くないように感じる。sbtがそこまで頑張らなくて良いようscalaコンパイラ側でインクリメンタルビルドのインターフェイスを提供すればよいのでは?
  • 最新のログもすぐクエリできる速くて容量無限の最強ログ基盤をRedshift Spectrumで作る - クックパッド開発者ブログ

    こんにちは。去年の今頃は Rust を書いていました。 インフラストラクチャー部データ基盤グループの id:koba789 です。 背景 クックパッドではデータ基盤の DBMS として Amazon Redshift を利用しています。 既存のデータ基盤について詳しいことは クックパッドのデータ活用基盤 - クックパッド開発者ブログ を参照してください。 今まで、ログは数時間に1度、定期実行ジョブで Redshift 内のテーブルにロードしていました。 ロードジョブの実行間隔が "数時間" と長めなのは、Redshift のトランザクションのコミットが遅いためです。 クックパッドでは数百ものログテーブルがあるため、仮に1分おきにすべてを取り込もうとすると秒間数回以上のコミットを行わなければなりません。 このような頻繁なコミットは Redshift 全体のパフォーマンスを悪化させてしまいます

    最新のログもすぐクエリできる速くて容量無限の最強ログ基盤をRedshift Spectrumで作る - クックパッド開発者ブログ
    den8
    den8 2018/11/21
    redshiftのコストを考えたらちょっとうちの規模で真似はし辛い。コスト面でもうまくスケールするソリューションないかなあ。
  • Swagger、GraphQL、gRPC+Protocol Buffersの概観 - Qiita

    この記事について この記事は、DroidKaigi2018の以下の発表に刺激を受けて書いた記事です。 まだAPI定義管理で消耗してるの?〜Swaggerを用いた大規模アプリ時代のAPI定義管理とコードジェネレート〜 すばらしきGraphQLのSEKAIへようこそ gRPCとProtocol Buffersで一味違うAndroid通信 上記の発表では、Swagger、GraphQLgRPCとProtocol Buffersという言葉が出てきました。これらはサーバー/クライアント間のAPI通信を実現するために役立つものです。しかし、Swaggerはツール、GraphQLはクエリ言語、gRPCとProtocol Buffersは設計指針(を実装したライブラリ)とデータフォーマットというように同格に扱えるものではないので、ちょっと混乱してしまいます。 そこで、この記事ではサーバー/クライアント間

    Swagger、GraphQL、gRPC+Protocol Buffersの概観 - Qiita
    den8
    den8 2018/11/18
  • フェールソフト、フェールセーフ [徹底研究!情報処理試験]

    フェールソフト(Fail Soft)とは、ハードウェアやソフトウェアに障害が発生した場合、機能を低下させてでも、正常な部分を利用して運用を続行しようとする考え方です。ハードウェアでは、RAID や リダンダント電源など、冗長化によってフェールソフトを実現することが多いようです。 似た用語としては、フェールセーフ(Fail Safe)があります。フェールセーフは、ハードウェアやソフトウェアに障害が発生した場合、システムを安全第一の状態にしようとする考え方です。安全性には、人間の生命に関わることや、貴重なデータをしっかりと保護する、といった意味が含まれています。 下図は、フェールソフトとフェールセーフの考えによる故障発生時の対処法です。排熱ファンは、コンピュータ内部の熱を外部へ排出し、熱によるハードウェアの誤動作や故障を防ぐためのものです。この排熱ファンが故障してしまったとき、フェールソフトの

    den8
    den8 2018/11/15
  • Qiitaでのアカウント停止に関する考えについて - Qiita Blog

    いつもQiitaをご利用いただきありがとうございます。 Qiita運営スタッフです。 このたび運営として実施したあるユーザーアカウントの停止措置について、なぜアカウント停止とされたのか不安に思う声をいくつかいただきました。そのためQiitaでのアカウント停止に関する考えについてご説明させていただきます。 Qiitaでは「技術的にレベルが低い」「技術的に間違っている」「Qiitaというサービスや運営に批判的である」といった理由で記事の非公開化やアカウント停止という措置を取ることはございません。 過去にも何度か事例がありますが、アカウント停止措置の実施理由は殆どの場合、他のユーザーに対して攻撃的な発言や誹謗中傷を繰り返すなど、コミュニティガイドラインや利用規約に沿わないというものです。 現在のところアカウント停止に連動し、当該アカウントにより公開されていた記事やコメントを非公開とする仕様として

    Qiitaでのアカウント停止に関する考えについて - Qiita Blog
    den8
    den8 2018/11/12
    1人の人間が100個星つけたらブコメリストの一番上に表示されるはてぶも大概問題あると思うな。
  • zsh-autoenvを使って、virtualenvの自動activate/deactivateを実現する - $shibayu36->blog;

    pyenv + venvでPython3環境を構築する - $shibayu36->blog; の記事で、特定のPythonプロジェクト用のvirtualenv環境を導入することが出来ました。しかし、このプロジェクトに入るたびにsource venv/bin/activateし、逆に抜ける時にdeactivateするのは 面倒 どう考えても実行を忘れる という問題があります。 そこでzsh-autoenvというzshプラグインを使って、自動でactivateとdeactivateを出来るようにしたのでメモしておきます。 zplugを導入する 今回の題から外れますが、zshのプラグインの管理ツールをこれまで入れてこなかったので、この機会にzplugを導入しました。 おい、Antigen もいいけど zplug 使えよ - Qiita https://github.com/zplug/zpl

    zsh-autoenvを使って、virtualenvの自動activate/deactivateを実現する - $shibayu36->blog;
    den8
    den8 2018/10/29
    良い。これ相当がもっと楽にできたらいいのになあ。
  • Google、Webブラウザで「doc.new」と入力するだけで新規ドキュメント作成可能に - ITmedia NEWS

    これは、Googleが「.new」というトップレベルドメイン(gTLD)を持っているので実現できた。同社はインターネットドメイン管理団体ICANNが2011年6月に自由化する方針を発表した後、「.docs」や「.apps」など多数のgTLDを申請した。.newは2014年に取得している。 Googleのツイートによると、今のところ新規ページを開けるのはGoogleドキュメントとGoogle Sitesの新規ページのみだが、「mail.new」でGmail新規メール作成が、「contacts.new」で新規連絡先追加が可能になるかもしれない。 関連記事 「Chrome 70」でChromeへのログイン必須を解除へ フィードバックを受けて修正 Googleが「Chrome 69」でGoogleサービスへのログインとChromeへのログインを連携させたことに対する批判が高まったことを受け、同社は

    Google、Webブラウザで「doc.new」と入力するだけで新規ドキュメント作成可能に - ITmedia NEWS
    den8
    den8 2018/10/28
    悪かない機能だけど、それ以前に今のドキュメントのクソダサURLなんとかしてくれよ。 https://docs.google.com/spreadsheets/d/{すげー長いid}/edit?usp=sharing → https://sheet.ggl/[0-9a-f]{8} とかが理想
  • Steve Yegge の Google とプラットフォームに関するぶっちゃけ話を訳した(前編)

    Google エンジニアの Steve Yegge 氏、Google+ への懸念を漏らす http://japan.internet.com/busnews/20111013/8.html で記事になってたけど、原文とちょっと要旨が変わっちゃってサービスへの警鐘みたいになってしまってたので、全文訳してみた。くそ長い。お暇な方どうぞ。 (2011/10/19 08:14)ありがたい誤訳の指摘をいただいたので3カ所修正。 Stevey の Google プラットフォームぶっちゃけ話 僕は6年半ばかり Amazon にいて、今はそれと同じくらい Google にいる。この二つの会社について強く感じることは(しかもその印象は日々強まるのだけれど)、 Amazon は全てにおいて間違っていて、 Google は全てにおいて正しいということだ。そう、やりすぎな一般化だけど、驚くほど正確だと思う。いやも

    Steve Yegge の Google とプラットフォームに関するぶっちゃけ話を訳した(前編)
    den8
    den8 2018/10/25
  • RustでLinux用シングルバイナリを作るまで

    Table of Contents はじめに 経緯 二週間前にRustでツールを作り始めた記事を書きました。 文にもある通り、シングルバイナリを作成できどこでも実行できると思ったのが理由の1つです。 しかし世の中はそう甘くありませんでした。 何が起きたかは次章で説明します。 筆者の環境 WindowsホストOSとして、VMで16.04.5 LTS (Xenial Xerus)を使っています。 Rustのコンパイルも上記VMのUbuntu上で行っています。 筆者のスペック 先の記事にある通り、C系やローレイヤーの知識に疎いです。 そのおかげで随分と苦戦しました。 対象ツール 今回対象としたのは以下のツールです。 Miroirをお使いでなければ利用価値は全く無いと思いますので参考程度に.. 普通にビルドしてはどこでも実行できない 有識者の方なら当たり前の話なのですが、私の中ではシングルバイ

    RustでLinux用シングルバイナリを作るまで
    den8
    den8 2018/10/24
    これgolangだとデフォルトでこうやってくれるであっているかな?もっともその代償としてバイナリサイズが数十、場合に寄っては数百MBオーダーになっちゃんだけど。
  • 11. フロントエンドエンジニアのキャリアパス - bkkcast

    bkkcast はフィードバックを積極的に受け付けています。聞いてみたいことがあれば質問箱もしくは @bkkcast まで連絡ください! お品書き 1. フロントエンドエンジニアのキャリアパス (0:30) 発端は勝又さんのツイート フロントエンドエンジニアは CTO になれないのか? @laiso アプリ開発をやる人がいないから始めた 昔からいるアプリエンジニアは Web 系から来たわけではない? @mtfum くらいの若いエンジニアはフロントやアプリから入ってくる事が多い @tamanyan55 学生時代 CakePHP など Web App や API 開発をしていた @tamanyan55 �入社のタイミングでアプリリニューアルの話があり面白そうだから iOS エンジニアとしてキャリアをスタートした 将来的に「CTO」を目指している方は、キャリアのどこかで「バックエンド」を経験して

    11. フロントエンドエンジニアのキャリアパス - bkkcast
    den8
    den8 2018/10/12
    生の感想があっていいね。
  • なぜビンゴゲームで同じ数字を書いてはいけないのか

    先日、結婚式の二次会に招待していただきました。新郎・新婦ともに大学時代からの友人です。 歓談中にビンゴゲームが開催されました。私はビンゴゲームに完全に勝利にしたにも関わらず、景品をもらうことができませんでした。 あまりに理不尽な経験だったので、泣き寝入りしてたまるものかと思い、Qiita に初投稿してみようと思います。 ビンゴゲームとは ビンゴはビンゴですよね。「ビンゴ!」って叫ぶやつです。 今回のビンゴゲームは $3 \times 3 = 9$ マスのカードを利用しました。縦・横・ナナメに一直線に 3 マス穴を開ければ「ビンゴ!」になります。 実は、各参加者には白紙のビンゴカードが配られ、各テーブルにはビンゴゲームのルールが書かれた紙が配られていました。下記がその内容です。 真ん中のマスに "free" と書いてください。(i.e. 真ん中のマスはゲーム開始時に穴を開けて良い) それ以外

    なぜビンゴゲームで同じ数字を書いてはいけないのか
    den8
    den8 2018/10/03
    こういうサイコパス的思考と論理展開、大好きです。
  • 技術系カンファレンスのスポンサーシップへの考え方 | F's Garage

    社内slackで、「良いエンジニアを採用するにはどうしたらいいか」の記事で少し盛り上がったので、こっちにも書いておきたくなった。 カンファレンスではたいてい企業スポンサーを募っています。ここでスポンサーに名乗りを上げると知名度向上が期待できます。例えば日最大のRubyカンファレンスであるRubyKaigiをスポンサーしたら「この会社はRubyに力を入れているのだな」と認知されるでしょう。しかし、単にスポンサーをしただけだと効果は限定的です。 BASE社でCTOにならせてもらってから、PHPカンファレンスやPAY.JP立ち上げ期には、僕の方でPyCon JPにスポンサーとして携わらせてもらったりしました。スポンサーになること自体は、お金さえ出せれば簡単なのですが、ブースを出して、1日張り付いているのも結構難しく、最近はちょっと疲れて手を抜いていたら、カンファレンス活動に積極的なメンバーが何

    技術系カンファレンスのスポンサーシップへの考え方 | F's Garage
    den8
    den8 2018/09/26
  • 「ホンダは自社で技術開発をしていない?」というブログがSNSで拡散中 (国沢光宏) - 個人 - Yahoo!ニュース

    「新卒で入社したホンダを3年で退職しました」というブログの記事が様々なSNSで拡散している。ここであらすじを紹介するのもなんなので(そもそもすぐ読めます)まだ御覧になっていない方はぜひ。読んだ多くの人が「ホンダって自社で技術開発していないのか!」と驚き、ダメ出しをしている。けれどこれを書いた人も読んだ人も、根的な「思い違い」をしてると考えます。 ・当該ブログへのリンク ホンダに厳しいと言われる私が少し状況を説明したい。まずブログを書いた方は先進安全や自動運転の部門にいたとのこと。この分野、タイヤや変速機などと似ています。タイヤは自動車に必ず付いている部品ながら、開発はタイヤメーカーに丸投げしている。自動車メーカーが行うのはスペック出しと、要求値通り仕上がっているかのチェックです。これ、全メーカー同じ。 変速機も同じ。自動車メーカーはスペック出しをして要求に沿った製品を作って貰う。さらに言

    「ホンダは自社で技術開発をしていない?」というブログがSNSで拡散中 (国沢光宏) - 個人 - Yahoo!ニュース
    den8
    den8 2018/09/20
    “今回ブログを書いた人と同じような悩みを持っている若手がいるなら、もう少し頑張ってみて欲しい。” ふんふんと思って読んでたけど最後の1文で致命的にわかってないことが露見して吹いたw
  • OSSの継続性を推測する基準の例 - Qiita

    はじめに みなさんは自分が欲しい機能を持ったOSSを見つけたものの「使っているうちに開発が止まったりしないだろうか」と思ったことはないでしょうか。あるいは似たような複数のOSSのうちのどれを採用するかという選択を迫られて悩んだ経験はないでしょうか。筆者はどちらもよくあります。記事はこのようなときOSSの継続性が高いかどうか(言い方を変えると今後も開発が続きそうかどうか)を推測するための筆者の基準についていくつか紹介します。題材とするのはgolangのデバッガとして知られる二つのソフトウェア、delveとgodebugです。 delveとgodebugはそれぞれ2014年5月と2015年という比較的近い時期に誕生した(initial commitされた)、golangで作られたプログラムのデバッガです。ソースコードの規模も数千行と、それほど違いはありません。現在前者は勢いよく開発中、後者は

    OSSの継続性を推測する基準の例 - Qiita
    den8
    den8 2018/09/18
    コミット数やコミッタ数って簡単にチェックできないから(この記事でもわざわざExcel使って描画している)星の数が一番手軽。あとmavenやrubygemでの依存ライブラリ数とか。