はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena

はてなブックマーク

トップへ戻る

  • 総合
    • 人気
    • 新着
    • IT
    • 最新ガジェット
    • 自然科学
    • 経済・金融
    • おもしろ
    • マンガ
    • ゲーム
    • はてなブログ(総合)
  • 一般
    • 人気
    • 新着
    • 社会ニュース
    • 地域
    • 国際
    • 天気
    • グルメ
    • 映画・音楽
    • スポーツ
    • はてな匿名ダイアリー
    • はてなブログ(一般)
  • 世の中
    • 人気
    • 新着
    • 新型コロナウイルス
    • 働き方
    • 生き方
    • 地域
    • 医療・ヘルス
    • 教育
    • はてな匿名ダイアリー
    • はてなブログ(世の中)
  • 政治と経済
    • 人気
    • 新着
    • 政治
    • 経済・金融
    • 企業
    • 仕事・就職
    • マーケット
    • 国際
    • はてなブログ(政治と経済)
  • 暮らし
    • 人気
    • 新着
    • カルチャー・ライフスタイル
    • ファッション
    • 運動・エクササイズ
    • 結婚・子育て
    • 住まい
    • グルメ
    • 相続
    • はてなブログ(暮らし)
    • 掃除・整理整頓
    • 雑貨
    • 買ってよかったもの
    • 旅行
    • アウトドア
    • 趣味
  • 学び
    • 人気
    • 新着
    • 人文科学
    • 社会科学
    • 自然科学
    • 語学
    • ビジネス・経営学
    • デザイン
    • 法律
    • 本・書評
    • 将棋・囲碁
    • はてなブログ(学び)
  • テクノロジー
    • 人気
    • 新着
    • IT
    • セキュリティ技術
    • はてなブログ(テクノロジー)
    • AI・機械学習
    • プログラミング
    • エンジニア
  • おもしろ
    • 人気
    • 新着
    • まとめ
    • ネタ
    • おもしろ
    • これはすごい
    • かわいい
    • 雑学
    • 癒やし
    • はてなブログ(おもしろ)
  • エンタメ
    • 人気
    • 新着
    • スポーツ
    • 映画
    • 音楽
    • アイドル
    • 芸能
    • お笑い
    • サッカー
    • 話題の動画
    • はてなブログ(エンタメ)
  • アニメとゲーム
    • 人気
    • 新着
    • マンガ
    • Webマンガ
    • ゲーム
    • 任天堂
    • PlayStation
    • アニメ
    • バーチャルYouTuber
    • オタクカルチャー
    • はてなブログ(アニメとゲーム)
    • はてなブログ(ゲーム)
  • おすすめ

    ブラックフライデー

『qiita.com』

  • 人気
  • 新着
  • すべて
  • Go - Headless Chrome を使って SPA をスクレイピングする - Qiita

    4 users

    qiita.com/yoheimuta

    はじめに SPA では JavaScript によるクライアントレンダリングを考慮しないと、すべての要素をスクレイピングすることはできない。 そのため、実際のブラウザを使ってスクレイピングを行うことになる。 これを行うデファクトライブラリの一つに、Chrome チームが公式にサポートしている Puppeteer がある。Puppeteer は Chrome DevTools Protocol を介して Chrome の操作を行うためのライブラリである。Chrome DevTools Protocol とは Chrome を操作するための Protocol であり API 定義が含まれている。例えば、特定の URL に遷移して画面を描画したり、ボタンをクリックしたり、要素の情報を抜き取ったり、スクリーンショットを取得したりできる。 ただ、Puppeteer は JavaScript のライブ

    • テクノロジー
    • 2019/03/22 15:57
    • chrome
    • gRPC クライアントの keepalive の薦め

      13 users

      qiita.com/yoheimuta

      Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 以下では grpc-go (v1.12.2) を前提に書きます。 ただ、 grpc/proposal を参照しているので、ほかの言語のライブラリにも当てはまるところがあると思います。 gRPC クライアントの再接続 gRPC クライアントがサーバーと接続を確立したあとにネットワークが切れた場合、gRPC ライブラリ側で再接続を期待すると思います。 しかし、keepalive が適切に機能していない場合、基本的に再接続は行われません。 grpc-go では、デフォルトでアプリケーションレイヤーでの keepalive は無効です。 RPC

      • テクノロジー
      • 2018/10/02 17:12
      • grpc
      • Pocket
      • データベースの Primary Key を Auto Increment ではなく UUID にするメリット - Qiita

        5 users

        qiita.com/yoheimuta

        データベースの Primary Key (の少なくとも一部)をアプリケーションが生成した UUID にすると、冪等性のある API を設計しやすい。 例えば、iOS アプリからリソース生成リクエストが重複して行われることはよくある。リトライの仕組みを実装しなくてもボタンの重複タップを UI 側で完全に制御することは難しい。古い端末ではどうしても画面描画は遅くなるので、重複タップを画面描画でコントロールしていると間に合わなかったりする。このリソースにユニークな ID (相当の値)がなければサーバー・データベース側で冪等性を確保することはできない。こういったときに、リクエスト発行元である iOS アプリで生成した UUID をリソースに含めると冪等性は簡単に確保できる。ユニーク制約に従ってエラーになるからである。 上記の例以外でも、マイクロサービス化によってアプリケーションの外側にあるプロキシ

        • テクノロジー
        • 2018/08/02 11:02
        • Go - gRPC での認証・認可を Interceptor を使って実装する - Qiita

          5 users

          qiita.com/yoheimuta

          tl;dr すべての RPC に共通する処理には gRPC Interceptor を利用する 認証 Interceptor はすべての RPC で同じ処理を行って、認可 Interceptor は gRPC サービスごとに別の処理を行えるようにする 認証に使う Authorization 値は Metadata として送信する 複数の Interceptor をまとめて書くには go-grpc-middleware の chain を使う ここでは簡単のため Unary RPC を前提にまとめる gRPC Interceptor gRPC サーバーはオプションとして UnaryServerInterceptor 型を渡すことができる。UnaryServerInterceptor 型はすべての RPC の実行前後に処理のフックを追加することができるので、いわゆるミドルウェアを実装するために

          • テクノロジー
          • 2018/07/12 07:37
          • grpc
          • qiita
          • HTML, CSS, JavaScript それぞれのロード時間が First Paint に与える影響を検証して整理する - Qiita

            54 users

            qiita.com/yoheimuta

            Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? tl;dr First Paint はウェブページの何らかが描画されたタイミングのこと。これが遅いということは、初回の真っ白な状態が長いということ。 First Paint は Chrome Developer Tool の Audit で簡単に確認できる。 HTML は描画の起点になるので、ロード時間はそのまま First Paint Timing の遅延になる。 CSS は描画に必須なので ロード時間はそのまま First Paint Timing の遅延になる。 JavaScript は同期で読み込むと、ロード時間がそのまま Fi

            • テクノロジー
            • 2018/06/28 09:47
            • javascript
            • css
            • あとで読む
            • HTML
            • performance
            • イベント
            • browser
            • dev
            • techfeed
            • Go で JWT を使うユースケースとその実装例 - Qiita

              10 users

              qiita.com/yoheimuta

              はじめに JWT{JSON Web Token} は RFC7519 で規定されている、JSON をセキュアにやり取りするための仕様です。特徴は次の通り。 鍵になる文字列(以降 secret )か公開鍵ペアのどちらかを使って署名することで「セキュアにやり取り」できるようにしている。前者は HMAC アルゴリズム、後者は RSA か ECDSA が使われる。 「セキュアにやり取り」の意味はこの JSON が適切な者によって発行されて、改ざんもされていないことが保証されるということ JSON は署名されるだけで暗号化されるわけではないので、中身は誰でも閲覧可能な点に注意が必要 JWT は eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM

              • テクノロジー
              • 2018/06/21 16:05
              • 3/16 の BigQuery Release Notes (Maximum rows per second が 1/10 に) - Qiita

                4 users

                qiita.com/yoheimuta

                Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

                • テクノロジー
                • 2017/03/21 14:17
                • バッチごとのプロセスメトリクス (CPU, Memory など) を可視化してみた所感 - Qiita

                  9 users

                  qiita.com/yoheimuta

                  モチベーションとしては、複数のバッチが並行して実行されているサーバーで、それぞれのバッチごとの CPU 使用率やメモリ使用量を可視化したかった 可視化して良かった点 バッチサーバーの CPU 使用率 or メモリ使用量を減らしたいときに、どのバッチを改修すればいいのかすぐに決めやすくなった その後、バッチの改修によって CPU 使用率 or メモリ使用量が減ったかどうかがひと目でわかるようになった 既存のプラグインなどで適うものがなかったので自作した 実装方法 https://github.com/yoheimuta/Linux-GetPidstat https://metacpan.org/pod/Linux::GetPidstat Perl 製 linux-get-pidstat というコマンドラインツールが付属する 名前の通り Linux 向け pidfile をもとに、プロセスメト

                  • テクノロジー
                  • 2016/08/01 07:07
                  • BigQuery の課金仕様と注意点をまとめてみた(2015-07 時点) - Qiita

                    65 users

                    qiita.com/yoheimuta

                    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 最初は安く収まっていた BigQuery の費用もだんだん膨らんできた ので、自分(社内)用にまとめたものです 広告事業(アドネットワーク)のログを BigQuery に入れているので、それなりにデータ量も増えてきて、こういうことも考えていかないといけなくなってきました どの操作にお金がかかるのか データを保存しておく データを Streaming Insert(≒ 追加)する データを走査して取得する クエリを発行する データの保存 $0.020 per GB, per month 1 TB を 1 ヶ月保持すると、$20 かかる デ

                    • テクノロジー
                    • 2015/07/25 21:19
                    • bigquery
                    • cost
                    • google
                    • money
                    • あとで読む
                    • dbq(CLI tool to easily Decorate BigQuery table name)を作ってみた - Qiita

                      4 users

                      qiita.com/yoheimuta

                      Go 言語製 BigQuery にクエリ投げるときに簡単にデコレータをつけられるラッパーツール BigQuery の課金仕様と注意点をまとめてみた(2015-07 時点) - Qiita に書いたとおり、BigQuery の検索費用は、テーブルデコレータを使えば節約できますが、bq コマンドでアドホックに実施するには使いづらいところがあります 数時間前までの指定くらいなら自力でも計算できるが、開始日時から終了日時の Unixtime を計算するのは面倒 さらにタイムゾーン込みで計算するのも面倒 ドライランで確認できるバイト数(6862860066238 bytes of data など)からどれくらいコストがかかるのかを計算するのも面倒 ということで、bq query コマンドをラップする CLI ツールを作ってみました # ドライラン # この例では 2015-07-20 00:00:0

                      • テクノロジー
                      • 2015/07/25 21:18
                      • BigQuery
                      • ZenHub を使って Kanban 方式をプロジェクトに取り入れる - Qiita

                        23 users

                        qiita.com/yoheimuta

                        Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 複数の github レポジトリの issue を一元管理できるいい感じのツール をいくつか試しながら検討した結果、ZenHub がダントツで良さげなので紹介します 会社の hp からしてイケてる感あります Chrome extension を使って github レポジトリの 1 画面としてダッシュボードが追加されます これは普段 github を使っているエンジニアからすると、とても肌に合います 他の競合サービスと違って、github を拡張するという意味合いを強く意識したサービスのため、管理ツールとしてだけではなく、様々な拡張機能

                        • 学び
                        • 2015/05/23 18:30
                        • github
                        • ZenHub
                        • kanban
                        • スクラム
                        • development
                        • エンジニア
                        • management
                        • Hugo + Github Pages + Wercker CI = ¥0(無料)でコマンド 1 発(自動化)でサイト・ブログを公開・運営・分析・収益化 - Qiita

                          32 users

                          qiita.com/yoheimuta

                          完成イメージ 今回は、プロダクトを紹介するサイト(ブログ)を公開します 公開されているサイトは http://yoheimuta.github.io/hugo-uno-mobile-videoplayer.js/ という URL で github pages 上にホスティングされています この中で紹介されているプロダクトは mobile-videoplayer.js という iOS Safari 上で動画を自動再生するための JavaScript ライブラリ です コード管理は github で、https://github.com/yoheimuta/hugo-uno-mobile-videoplayer.js にあります 公開・運用までの流れ 自動化するための準備が必要です(下記に詳述しています、この点はタイトルから誤解されたらお手数です) 準備が整えば、それ以後は次の手順だけを手元の

                          • テクノロジー
                          • 2015/04/03 12:50
                          • ci
                          • github pages
                          • github
                          • 無料
                          • あとで読む
                          • Packer で開発環境の Vagrant Box を自作して、post-processors 処理を通して S3 に保存・バージョン管理・ホスティングする - Qiita

                            8 users

                            qiita.com/yoheimuta

                            Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? サーバー上のシステムをチームで開発する場合、開発環境の構築をどう共有するかは課題になると思いますが、いくつかの既存のやり方には問題があります 今までの開発環境構築のやり方 README.md などに手順を書く方法 これには次の問題が発生することがあります 本番環境(ex. Ubuntu)と開発環境(ex. Mac)で土台となる OS が違う 手順書の更新漏れがある 手順書の再現性の検証がおろそかになる 手順書の更新に対して、既存の開発環境をアップデートしないメンバーが出てくる Vagrant を使う方法 これは上記のいくつかを解消します

                            • テクノロジー
                            • 2015/03/17 07:46
                            • packer
                            • vagrant
                            • aws
                            • Travis CI 上の環境変数(PULL_REQUEST, BRANCH, TAG)を使って、ワークフローの改善とリリース自動化を実現する - Qiita

                              6 users

                              qiita.com/yoheimuta

                              CI を中心としたワークフローやリリース(デプロイ)自動化システムを構築するには、現在対象としているコードベースの状態を把握する必要があります ブランチは、feature か master か プルリクエストをマージしたのか タグはついているのか Travis CI でそれらを把握するためには表題にある 3 つの環境変数の意味と組み合わせを理解しないと出来ないのですが、まとまった公式のドキュメントやネット上のレファレンスが見つからなかったので書きます http://aniszczyk.org/2012/04/05/travis-ci/ より Travis CI を使ったリリース自動化の例 例えば、最近試した iOS のプロジェクトでは、次のような、Travis CI を使った比較的複雑な、ワークフローの構築とリリース自動化を行いました なぜこうしているのかという意図などは、リンク先の RE

                              • テクノロジー
                              • 2015/03/15 20:15
                              • 設定
                              • [まとめ] gcp ja night #29 - Qiita

                                10 users

                                qiita.com/yoheimuta

                                Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 日時: 2014-12:12 19:00~22:20 場所: FreakOut イベントURL: http://gcpja.connpass.com/event/9647/ togetter: http://togetter.com/li/756806 スライドは見つけ次第、追記予定 トレタのBigQuery / Google Apps Script活用術 Apps Script 最も簡単に動かせる Server Side Javascript 無料 DB, bq にもアクセスできる たかはしさん slack ボット、勤怠管理、おはよう

                                • テクノロジー
                                • 2014/12/14 08:01
                                • gcp
                                • Google Cloud Platform
                                • Google Apps Script
                                • BigQuery
                                • Kubernetes
                                • docker
                                • mysql
                                • google
                                • [まとめ] Go Conference 2014 autumn - Qiita

                                  138 users

                                  qiita.com/yoheimuta

                                  日時: 2014-11:30 10:00~18:00 場所: 品川シーサイド 楽天タワー イベントURL: https://github.com/GoCon/GoCon/blob/master/2014autumn.rst togetter: http://togetter.com/li/751700 スライドは見つけ次第、追記予定 当日の品川シーサイドはミニ四駆大会があった Keynote1: Rob Pike (@rob_pike) (45min) Title: Simplicity is Complicated Go の成功の要因について話したい ちまたで言われているような早さ、容易さ、ツール、ライブラリ、並行性、インターフェースも違う 単純さが要因だと私は思ってる でもそれについて理解してもらうのは難しい 収束しようとしている言語たち Lang.Next カンファレンスにて、様々な

                                  • テクノロジー
                                  • 2014/11/30 18:10
                                  • golang
                                  • gocon
                                  • go
                                  • event
                                  • conference
                                  • channel
                                  • プログラミング
                                  • *プログラミング
                                  • development

                                  このページはまだ
                                  ブックマークされていません

                                  このページを最初にブックマークしてみませんか?

                                  『qiita.com』の新着エントリーを見る

                                  キーボードショートカット一覧

                                  j次のブックマーク

                                  k前のブックマーク

                                  lあとで読む

                                  eコメント一覧を開く

                                  oページを開く

                                  はてなブックマーク

                                  • 総合
                                  • 一般
                                  • 世の中
                                  • 政治と経済
                                  • 暮らし
                                  • 学び
                                  • テクノロジー
                                  • エンタメ
                                  • アニメとゲーム
                                  • おもしろ
                                  • アプリ・拡張機能
                                  • 開発ブログ
                                  • ヘルプ
                                  • お問い合わせ
                                  • ガイドライン
                                  • 利用規約
                                  • プライバシーポリシー
                                  • 利用者情報の外部送信について
                                  • ガイドライン
                                  • 利用規約
                                  • プライバシーポリシー
                                  • 利用者情報の外部送信について

                                  公式Twitter

                                  • 公式アカウント
                                  • ホットエントリー

                                  はてなのサービス

                                  • はてなブログ
                                  • はてなブログPro
                                  • 人力検索はてな
                                  • はてなブログ タグ
                                  • はてなニュース
                                  • ソレドコ
                                  • App Storeからダウンロード
                                  • Google Playで手に入れよう
                                  Copyright © 2005-2025 Hatena. All Rights Reserved.
                                  設定を変更しましたx