JSON には日時型が無いため、任意の日時形式の文字列や Unix time の整数型で表現したりします。 一方 YAML の方は日時型に対応していることを知り衝撃を受けたので、対応するデータ型の違いを比較してみました。 対応データ型の比較表 YAML は JSON のスーパーセット のため、JSON で表現できるものは基本的に全て YAML でも表現出来ます。 型名 Type name YAML JSON 値の例
![JSON と YAML の対応データ型の比較メモ - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/d3238af5f26c77a0afdcbc03a65bfe060ce6dcc4/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9SlNPTiUyMCVFMyU4MSVBOCUyMFlBTUwlMjAlRTMlODElQUUlRTUlQUYlQkUlRTUlQkYlOUMlRTMlODMlODclRTMlODMlQkMlRTMlODIlQkYlRTUlOUUlOEIlRTMlODElQUUlRTYlQUYlOTQlRTglQkMlODMlRTMlODMlQTElRTMlODMlQTImdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtY2xpcD1lbGxpcHNpcyZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPTIwNTY0OWZjYjE1YmFjMjcwMjM2MzFlNjhiNDg0Mzgz%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQweW1tMXgmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPTQ3MGI2NTk4YjU0ZGRkNWMzOWVjODE5OGY1MmEzMDMx%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D6612063befd05d7326a7e0a1ec931958)
はじめに 前の記事の、「配布物にOAuth2で利用するclient_secretを含むことのリスク」 についての続き。 いろいろなケースでも使えるとは思うが、具体的にはAtom用パッケージでGoogleのAPIを利用するためにOAuth2での認証を行う方法になっている。 先日のポストのあと、Twitterでのコメントも合わせて、良く分かってないながらもいろいろ整理してみた。ここらへんが結構わかりやすかった。 → 「RFCとなった「OAuth 2.0」――その要点は?」 まず、公開するプログラムのタイプは2つありそう。 サーバー型のプログラムで利用する前に前準備が必要で対象は不特定多数 クライアント側のプログラムで利用者はほぼ本人のみですぐに使いたい また、公開方法についても2つある。 バイナリで公開 ソースで公開 今回のパターンはAtomのパッケージなので、2-2に該当するパターンとなる。
PKCE とは PKCE をご存知でしょうか? これは、今から一年ほど前の 2015 年 9 月に RFC 7636 (Proof Key for Code Exchange by OAuth Public Clients) として公開された仕様を指しています。認可コード横取り攻撃 (authorization code interception attack) への対策として策定されました。 細かい条件は幾つかありますが、スマートフォンで OAuth クライアントを作る場合は、クライアント側も認可サーバー側もこの仕様の実装が強く推奨されます。これを実装しておかないと、悪意のあるアプリケーションに認可コードを横取りされてしまい、結果、悪意のあるアプリケーションがアクセストークンを取得できてしまいます。 この仕様自体のちょっとした解説は、「OAuth & OpenID Connect 関連仕
今まで、自宅・職場では外部ディスプレイを使って作業をしてましたが最近はRoostを使い始めて、家でも外でもRoostと外部キーボード、マウスで仕事するようになりました。これで肩の痛みが激減したので下を向いて作業する時間が多いと首の筋肉に引っ張られて肩が凝るみたいですね。 ここできになるのはディスプレイ1枚だと画面切り替え大変じゃないのってところなのですが、以前 @reoring さんに教えてもらって自分にすごいフィットしたので共有しておきます。あまりmacのデスクトップについての記事がないような。 [追記2020/11/16] macOS 11.0 Big Sur(Intel) で動作確認できました。Total Spaces2をBig Surより前から使っている場合は最新版(v2.9.6~)を再インストールする必要があります。 TL;DR デスクトップを10画面作成する ショートカットキー
はじめに WatsonのVisual Recognition(VR)は今までもいくつか投稿してきた。 Watson vs Google!? Visual RecognitionとTensorFlowでMNISTをやってみた Visual RecognitionとTensorFlowをもっとちゃんと比べてみた WatsonのVisual RecognitionがV3になりGAされたので早速試してみた で、半年ほど前に「コレをVRにかけたらどうなるんだろう?」と思って試してみたネタがあったので、今回はそれを紹介してみたい。 (11/24追記)なお、VR V3だと結果スコアは違ったものとなった。V2とV3はそのまままるっと移行できるわけではなさそうだ。そのあたりのまとめはこちらを見てほしい。 Visual Recognition V3利用時の考慮事項~フライドチキンと犬の再評価からわかったこと~
概要 自分用のメモとして、機械学習に関する情報を浅く ( それなりに ) 広くをモットーに、ざっくり整理してみました。 少しでも、他の方の理解に役立ったら嬉しいです。 機械学習とは コンピュータプログラムが経験によって自動的に出力結果を改善していく仕組み。 機械学習の代表的な手法について記載します。 1.教師あり学習 2.教師なし学習 3.強化学習 に分けて記載しました。 ※概要説明は一例です。 1.教師あり学習 1-1.線形回帰 予測したい値を算出する式を連続する多項式として表し、各係数を最小二乗法や最尤推定法で求めることでモデルとなる式を決定する Pythonライブラリ:scikit-learn(sklearn.linear_model.LinearRegression) 参考:最小二乗法による線形回帰のアルゴリズム (自身のQiitaの過去記事です) 1-2.ロジスティック回帰 2択
SPSS Modelerの拡張機能を利用して、Cloudantに接続をします。SPSS ModelerはVersion18(Windows)を利用しました。この方法では、SQL Pushback(*1)の機能が効かないため、データの取得等に相当時間がかかります。あくまでも、Cloudantに格納されたデータの基礎解析目的の用途だと思います。 以下を参考にしました。 Mining Cloud Data with SPSS – Direct Connection of Cloudant to Bluemix (*1)SQL Pushbackに関しては以下をご参照ください。 SPSS+dashDB連携 —SQLプッシュバックによる分析処理のパフォーマンス向上— SPSS Modelerのインストール SPSS Modelerを起動し、メニューの「拡張機能」>「拡張ハブ」から「Cloudant」の
当記事は2016/1月に投稿しましたが、現時点(【2019/2月】)では既に古くなっています。記事自体はアーカイブの目的でこのまま残しますが、当記事の内容を参考になさらないようにお願いいたします。代替の記事としては下記などがございます。 IBMのThink 2018で発表されたAIプラットフォーム「Watson Studio」をザクッと紹介してみる Predictive Analyticsとは? こんにちわ!石田と申します。( Qiita初投稿です ) 追記) 2016/10/25付でPredictive Analyticsの名前はWatson Machine Learningになりました。 BluemixのPredictive Analyticsとは、昨今流行の「予測分析」をするものです。(この人がこの商品を買う確率はx%、みたいな将来の予測をするやつですね)予測分析は様々な統計解析手法
RFC 6749 (The OAuth 2.0 Authorization Framework) で定義されている 4 つの認可フロー、および、リフレッシュトークンを用いてアクセストークンの再発行を受けるフローの図解及び動画です。動画は YouTube へのリンクとなっています。 English version: Diagrams And Movies Of All The OAuth 2.0 Flows 追記 (2019-07-02) 認可決定エンドポイントからクライアントに認可コードやアクセストークンを渡す方法については、別記事『OAuth 2.0 の認可レスポンスとリダイレクトに関する説明』で解説していますので、ご参照ください。 追記(2020-03-20) この記事の内容を含む、筆者本人による『OAuth & OIDC 入門編』解説動画を公開しました! 1. 認可コードフロー RF
前回までは、python版のpaho-mqttライブラリを使ってきたが、pahoにはAndroid版もあるので、Androidのセンサ値をモニタするプロトタイプを作ってみる。 プロトタイプのコードは github fnishio/mqtt-sampleのSensorSampleを参照。 Androidセンサ値のモニタ Android側 Lightセンサーの値をMQTT eventとして定期的にpublishする。 サービス側 センサー値のeventをWebSocketに出力する。 ブラウザからWebSocketに接続してセンサー値をモニタリングする。 Android側 MQTT Brokerにつなぐ Android版のpahoライブラリを使ってMQTT Brokerに接続する。 MyMqttClient(Context context) { mClient = new MqttAndroi
ネットワークのトラブルシュートなどをする時にtcpdumpやwiresharkといったツールを使ってキャプチャデータを取得し、正常ではない通信を特定するなど分析します。その時にIPアドレスやポート番号といったことは当然確認すると思いますが、本記事ではそれ以外に分析に利用できそうな小技をいくつか紹介したいと思います。お題は以下のとおりです。 MACアドレスからNICのベンダーが分かる IPヘッダからおおよそのホップ数が推測できる TCP/IPヘッダからOSを推定できる TCPの3-way-handshakeからネットワークの遅延を測れる TCPの再送状況からネットワーク品質の変化を見れる DHCP/mDNS/NBNS/LLMNR から同一ネットワーク内のホスト名がわかる TLSのclient helloから接続先のホスト名がわかる 【注意事項】 本職のネットワークエンジニアの方にとっては当た
良いものを書きたいので指摘などは大歓迎です。 その際はコメントや編集リクエストをいただければ修正します。 大きな変更が加わるときは通知すると思います。 はじめに これまでのフロントエンドの開発には多くの問題や面倒ごとを抱えています。 その解決手段としてよくビルドツールやaltJSといったワードを目にしますが,これらがどういった目的で利用されているのかについて触れながら進めていきます。 主にパッケージ管理やビルドツールを初めて見る人向けになっているので全編通すとそれなりに長いです。 動かすまでが長めになっていますが理解してしまえば本当に必要な手順はさほど多くありません。 実際に開発を始めるために必要な準備はせいぜい1~2つのファイルを記述してコマンドを数回叩く程度なので,過度な抵抗感を持たずに読んでいただけたらなと思います。 登場するツールや技術は多くの問題を解決してくれますが,これらは飽く
さまざまなブラウザのテスト大変ですよね・・・・ いろんなブラウザ使っている人が多いのでWebアプリ作る人にとって対応は必須です。 特にIEってWindowsでしか確認できないし、バージョンごとにJavascriptまわりの挙動が違うので色んなバージョンで操作テストするのは非常に骨が折れます。 1つのマシンに複数のバージョンのIEを入れることはできないので、テストのためだけに複数台Windowsを用意するのも大変です。 なんとかならないのでしょうか・・・・ 実はマイクロソフトがテスト用の環境を提供してくれていた! マイクロソフトはそんな状況を打開できるように、検証用環境を用意してくれています。 modern.IE https://www.modern.ie/ja-jp/ modern.IEは以下の機能を提供してくれています。 仮想マシン IE6〜11まで各バージョンのIEがインストールされた
最近はamazonでのwindow?ショッピングと作業効率アプリの探索がもっぱらの人生の楽しみな僕ですが,いままでMacを数年使ってきたなかで「これ使えるじゃん!」と思った作業効率アプリをメモ書き程度に書いておきます. Pocketを追加しました (2017/04/07) Pocket 「あとで読みたい!」と思った記事をワンクリックで登録出来るアプリ Mac版アプリ,iPhone版アプリとChrome拡張がなんでもあるため,あとで読みたいと思った記事をすぐに保存できる 情報収集にめちゃくちゃ便利 SourceTree いわずと知れたgit管理用のGUI tool. GUI上でfetch, pull, pushなどの基本コマンドが打ててdiffも非常に見やすい. CUIもいいですが,それと同時にSourceTreeも使い始めると止められません. CotEditor ちょっとしたメモに最適なE
base64とは base64という言葉を聞いたことがあるでしょうか?? base64とは、64進数を意味する言葉で、すべてのデータをアルファベット(a~z, A~z)と数字(0~9)、一部の記号(+,/)の64文字で表すエンコード方式です ただ、データ長を揃えるためにパディングとして末尾に記号の=を使用するので、厳密にはbase64は、65文字の英数字から表現されます (URLや正規表現のなかでbase64を用いると一部の記号(+,/)は特別な意味を持つことがあるので-や_などが用いられることがあります) なぜbase64をつかうの?? かつての電子メールを送るためのプロトコルSMTPでは、ASCIIといわれる7bitで表現される英数字しか送ることができませんでした したがって、メールを使って画像や音声などのデータをやりとりしたいと思った時に、英数字しか対応していないSMTPでは、それら
アメリカ人です。 Hello 👋 この記事の目的 多くの日本人は自分の英語力には自信がないではないでしょうか。残念ながら「英語がわからん」、「英語が全然できない」という声をしょっちゅう聞いています。でも、今まで英語ができて意味がちゃんと伝わる何人かの日本人に会ったがあります。完璧な英語ではないけど(外国人も英語でミスる時もある...)、がんばって話そうとするので充分仕事ができる人たち。そういうがんばる姿勢はオープンソースのプログラムや英語圏のプログラムに手を出すためには一番大事なことだと思います(外国人側もすごく助かります)。日本の文化では「私はできる!」と自慢することは少ない中、この記事を通して、流暢に話せなくても自分のプログラミングの命名の仕方にはちょっとだけでも自信を持たせたいなと思います。完璧じゃなくていいです。Let's go! 合わせて読んでいただきたい 【日本人エンジニア必
目的 2017/3/1 に us-east-1 の S3 大規模障害がありました。過去にもいくつか発生しているのと、いつ使っているリージョンで同じ事態が起きてもおかしくないと思い、これを機に過去どのような障害があったのか遡って調べました。 所感 毎年どこかのリージョンで大規模な障害が起きている ap-northeast-1 で起きていないのはたまたま、運がいいだけ AWS は復旧時間の改善・可用性向上に全力を尽くしているものの、未知の障害はいつかどこかで起きるもの ステータスダッシュボードは時に嘘をつく クラウドシェアトップである AWS はインターネット全体の SPOF になりつつある Chaos Monkey の思想は必須 報告書読むの面白い AWS の中身がすこし透けて見えてきます 前回データセンターについて調べたことが役に立った AWS のデータセンターに侵入する(妄想で) - Q
って海の向こうの人が言ってました。 私はjQueryさえあれば概ね生きていけるので全然知らないけど、 あなたは全部知ってるフロントエンドエンジニアなんだね。すごーい! 以下はFront-End Developer Handbook 2017の第三部、Front-end Developer Toolsからリンクされているツールと、その簡単な紹介です。 ドキュメントツール Dash 150以上のライブラリのAPIリファレンスを検索できる。有料、Mac専用。 DevDocs 200以上のライブラリをオンラインで検索できる。無料。 Velocity 中身はDashと同じ。 有料、Windows専用。 Zeal 200以上略 無料のオフラインドキュメント。 SEOツール Keyword Tool 検索ワードを入れると関連キーワードを教えてくれる。 Google Webmasters Search C
概要 Web アプリケーションを開発しているときに、開発環境に MySQL や Redis を用意しバージョンを揃え、いや Redis はキャッシュにしか使ってないし必須じゃないから開発環境に無い場合のコードも書いて…… というようなことを2017年にもなってやりたくないので、Docker を使って良い感じにやっていきます。 Docker や Docker Compose に関する基本的な説明は割愛するので、公式ドキュメントをあたってください。 目標 コマンド一発で必要なサービス群が全て立ち上がるようにする Docker Compose を使い、1サービスごとに1コンテナを立ち上げる vendor や node_modules は、ホスト側のものと完全に分離する。OS が違う場合、Native extension があると問題の原因になるので避けたい。 ホスト側ではエディタと git さえ
英語サイトでは、日本語のサイトでは絶対に手に入らないレベルの記事がわんさか読めます。今日はCodeProjectよりシステム構築をする上で知っておくべき深い知識を解説した記事を3行要約と共にご紹介します。 C#と.NETの記事 C#や.NETのかなりディープな記事たちです。日本語ではあまり見かけない深い部分まで知れます。 ■高パフォーマンスなクラスのデザイン方法 Performance Considerations of Class Design and General Coding in .NET - CodeProject ・クラスvs値型のメモリ使用の詳細 ・値型のGetHashCodeとEqualメソッドをオーバーライドする ・シールドクラスによりVirtualメソッドを避ける ・インターフェースのDispatchについて ・ボクシングを避ける ・for vs foreachはfo
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く